Jump to content

Finde nicht den Fehler


Nevo

Recommended Posts

Hallo leute,

ich habe mich mal an einen Farmerjob rangewagt,

doch leider ist da irgendwo ein Fehler

und ich bin echt am Verzweifeln

Clientseitig:

  
  
local farmingJobTargetMarker, farmingAreaMarker 
local playerToGroundLevel = 1.3085 
  
local farmer_boden = { 
[1]={-1079.5439,-1095.34460,129.21875}, 
[2]={-1089.5899658,-1095.5360107,129.21875}, 
[3]={-1104.4857177,-1095.616577,129.21875}, 
[4]={-1116.9200439453,-1095.7744140,129.21875}, 
[5]={-1129.0928955,-1095-3354492188,129.21875}, 
[6]={-1139.94982,-1095.595947,129.21875}, 
[7]={-1141.01538,-1084.146118,129.21875}, 
[8]={-1126.7314453125,-1084.2661132813,129.21875}, 
[9]={-1094.706787,-1084.253173,129.21875} 
} 
  
function showNextFarmerJobMarker ( x, y, z, typ ) 
  
    local size = 1 
    if typ == 2 then 
        size = 10 
    elseif typ == 3 then 
        size = 10 
    end 
    local marker = createMarker ( tostring(x), tostring(y), tostring(z), "checkpoint", size, 200, 0, 0, 125, nil ) 
    farmingJobTargetMarker = marker 
    local blip = createBlip ( tostring(x), tostring(y), tostring(z), 0, 2, 255, 0, 0, 255, 0, 99999 ) 
    setElementParent ( blip, marker ) 
    if typ == 1 then 
        addEventHandler ( "onClientMarkerHit", marker, farmerJobMarker1Hit ) 
    elseif typ == 2 then 
        addEventHandler ( "onClientMarkerHit", marker, farmerJobMarker2Hit ) 
    elseif typ == 3 then 
        addEventHandler ( "onClientMarkerHit", marker, farmerJobMarker3Hit ) 
    end 
end 
addEvent ( "showNextFarmerJobMarker", true ) 
addEventHandler ( "showNextFarmerJobMarker", getRootElement(), showNextFarmerJobMarker ) 
  
function getNewFarmerLocation(player, ID) 
    local x, y, z = farmer_boden[ID][1], farmer_boden[ID][2], farmer_boden[ID][3] 
    showNextFarmerJobMarker (x,y,z,tonumber(getElementData(player,"farmerMod"))) 
end 
  
function farmerJobRecieve(player, art) 
setElementData(player,"farmerData",1) 
setElementData(player,"farmerMod",1) 
getNewFarmerLocation(player, tonumber(getElementData(player,"farmerData"))) 
end 
addEvent ( "farmerJobRecieve", true ) 
addEventHandler ( "farmerJobRecieve", getRootElement(), farmerJobRecieve ) 
  
function farmerJobMarker1Hit ( player ) 
  
    if player == lp and not getPedOccupiedVehicle ( player ) then 
        setElementFrozen ( lp, true ) 
        local x, y, z = getElementPosition ( lp ) 
        local z = z - playerToGroundLevel * 2 
        setTimer ( 
            function ( x, y, z ) 
                local crop = createObject ( 3409, x, y, z ) 
                moveObject ( crop, 5000, x, y, z + playerToGroundLevel ) 
                setTimer ( destroyElement, 60000, 1, crop ) 
                setElementFrozen ( lp, false ) 
            end, 
        1500, 1, x, y, z ) 
         
    --  triggerServerEvent ( "farmerJobMarkerHit1", lp, 1 ) 
        destroyElement ( source ) 
        setElementData(lp,"FarmerData",tonumber(getElementData(hit,"farmerData"))+1) 
        getNewFarmerLocation(lp, tonumber(getElementData(lp,"farmerData"))) 
    end 
end 
function farmerJobMarker2Hit ( player ) 
  
    if getPedOccupiedVehicle ( lp ) and player == lp then 
        triggerServerEvent ( "farmerJobMarkerHit2", lp, 2 ) 
        destroyElement ( source ) 
    end 
end 
function farmerJobMarker3Hit ( player ) 
  
    if getPedOccupiedVehicle ( lp ) and player == lp then 
        triggerServerEvent ( "farmerJobMarkerHit3", lp, 3 ) 
        destroyElement ( source ) 
    end 
end 
  
function startFarmingJob () 
  
    farmingAreaMarker = createMarker ( -1186.4422607422, -1048.7531738281, 129.21875, "checkpoint", 450, 200, 0, 0, 125, nil ) 
    addEventHandler ( "onClientMarkerLeave", farmingAreaMarker, 
        function ( player ) 
            if player == lp then 
                cancel_farming ( "", "farming" ) 
            end 
        end 
    ) 
end 
addEvent ( "startFarmingJob", true ) 
addEventHandler ( "startFarmingJob", getRootElement(), startFarmingJob ) 
  
function cancel_farming ( cmd, arg ) 
  
    if arg == "farming" or arg == "job" then 
        if isElement ( farmingAreaMarker ) then 
            destroyElement ( farmingAreaMarker ) 
        end 
        if isElement ( farmingJobTargetMarker ) then 
            destroyElement ( farmingJobTargetMarker ) 
        end 
        triggerServerEvent ( "cancelFarmingJob", lp ) 
         
        infobox ( "Du hast die Arbeit\nabgebrochen.", 5000, 125, 0, 0 ) 
        setElementData(player,"farmerData",0) 
        setElementData(player,"farmerMod",0) 
    end 
end 
addEvent ( "cancelFarming", true ) 
addEventHandler ( "cancelFarming", getRootElement(), cancel_farming ) 
addCommandHandler ( "cancel", cancel_farming ) 
  
function clientFarmerWasted () 
  
    if isElement ( blip ) then 
        cancel_farming ( "", "farming" ) 
    end 
end 
addEventHandler ( "onClientPlayerWasted", lp, clientFarmerWasted ) 
  

Server:

  
farm = createPickup ( -1057.5656, -1195.8160400, 129.1480255127, 3, 1239, 1000, 0 ) 
farmerColSphare = createColSphere ( -1057.5656, -1195.8160400, 129.1480255127, 5 ) 
  
  
function pick ( player ) 
  
if vioGetElementData ( player, "job" ) == "farmer" then 
-- triggerClientEvent ( player, "prompt", getRootElement(), "\nLeider wurde dieser Job noch nichts ganz Fertiggestellt!", 10, 200, 200, 0 ) 
triggerClientEvent ( player, "showFarmingWindow", getRootElement()) 
--showFarmingWindow 
end 
if vioGetElementData ( player, "job" ) == "none" then 
triggerClientEvent ( player, "infobox_start", getRootElement(), "Tippe: /job ein\num Farmer zu werden!", 7500, 255, 255, 0 ) 
end 
end 
addEventHandler ( "onPickupHit", farm, pick ) 
  
function FarmerJobRecieve(player) 
triggerClientEvent ( player, "farmerJobRecieve", getRootElement()) 
end 
addEvent ( "farmerJobRecieve", true ) 
addEventHandler ( "farmerJobRecieve", getRootElement(), FarmerJobRecieve ) 
  
function farmerJobMarkerHit1(player, cmd, marker) 
vioSetElementData ( player, "money", vioGetElementData ( player, "money" ) + 7 ) 
givePlayerMoney ( player, 7 ) 
end 
addEvent ( "farmerJobMarkerHit1", true ) 
addEventHandler ("farmerJobMarkerHit1", getRootElement(), farmerJobMarkerHit1) 
  
function farmerJobRecieve(player, cmd, mode) 
--if mode == "job1" then 
triggerClientEvent ( player, "startFarmingJob", 0, 0, 0, 1) 
triggerClientEvent ( player, "showNextFarmerJobMarker", 0, 0, 0, 2) 
--end 
end 
addEvent ( "farmerJobRecieve", true ) 
addEventHandler ("farmerJobRecieve", getRootElement(), farmerJobRecieve) 
  

Link to comment
  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...