Hallo,
Ich bin langsam am Verzweifeln, ich finde in meinen Farmerjob echt nicht den Fehler
Irgendwie erscheint nicht der nächste Marker und bei setElementData(lp
"FarmerData" wird die Zahl nicht um 1 erhöht, hoffendlich könnt ihr mir
helfen:
Client:
Lua
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, type)
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 )
end,
1500, 1, x, y, z )
setElementFrozen ( lp, false )
triggerServerEvent ( "farmerJobMarkerHit1", lp, 1 )
destroyElement ( source )
getNewFarmerLocation(tonumber(getElementData(player,"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 )
Alles anzeigen
Server:
Lua
function testf(player)
dat = getElementData(player,"farmerData")
outputChatBox ( ""..dat.."", player )
end
addCommandHandler("checking", testf)
function FarmerJobRecieve(player)
triggerClientEvent ( player, "farmerJobRecieve", getRootElement())
end
addEvent ( "farmerJobRecieve", true )
addEventHandler ( "farmerJobRecieve", getRootElement(), FarmerJobRecieve )
function farmerJobMarkerHit1(player)
setElementData ( player, "farmerData", getElementData ( player, "farmerData" ) + 1 )
setElementData ( player, "money", getElementData ( player, "money" ) + 7 )
givePlayerMoney ( player, 7 )
end
addEvent ( "farmerJobMarkerHit1", true )
addEventHandler ("farmerJobMarkerHit1", getRootElement(), farmerJobMarkerHit1)
Alles anzeigen