Wenn ich den Drogenjob starte geht am Anfang alles gut aber sobald ich in den Marker laufe um die Drogen abzuholen passiert nicht es kommt kein Error im Debugscript einfach nichts.
Wie kann ich das Problem lösen. PS: Fange gerade erst mit dem Scripten an.
drugs_server.lua
Lua
drugjobicon = createPickup ( -1868.9344482422, -144.03060913086, 11.665347099304, 3, 1239, 1000, 0 )
drugfarmicon = createPickup ( -1096.7784423828, -1614.6346435547, 76.240158081055, 3, 1239, 1000, 0 )
local drugblip = createBlip ( -1868.9344482422, -144.03060913086, 11.665347099304, 58, 2, 255, 255, 0, 255, 0, 200 )
--[[local drugcar1 = createVehicle ( 422, -1854.0776367188, -1678.4970703125, 21.836410522461, 0, 0, 0, "COLORS!" )
toggleVehicleRespawn ( drugcar1, true )
setVehicleRespawnDelay ( drugcar1, 1000*10 )
setVehicleIdleRespawnDelay ( drugcar1, 1000*60 )
setVehicleLocked ( drugcar1, true )
setElementFrozen ( drugcar1, true )
setVehicleDamageProof ( drugcar1, true )]]
function usedrugs_func ( player )
if vioGetElementData ( player, "drugs" ) >= 3 then
if isControlEnabled ( player, "enter_exit" ) then
vioSetElementData ( player, "lastcrime", "drogen" )
vioSetElementData ( player, "drugs", vioGetElementData ( player, "drugs" ) - 3 )
takeDrugs ( player )
end
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "\n\nDu hast nicht\ngenug Drogen\ndabei ( mind. 3 g)!", 7500, 200, 0, 0 )
end
end
addCommandHandler ( "usedrugs", usedrugs_func )
function jobicon_dealer ( player )
triggerClientEvent ( player, "infobox_start", getRootElement(), "Tippe /job, um\nDealer zu werden -\ndazu brauchst du\nnichts, aber es\nist illegal!", 7500, 200, 200, 0 )
end
addEventHandler ( "onPickupHit", drugjobicon, jobicon_dealer )
function jobicon_drugs ( player )
triggerClientEvent ( player, "infobox_start", getRootElement(), "Tippe /buydrugs\n[Summe], um hier\nDrogen fuer "..drugprice.."$\nje Gramm zu\nerwerben.", 7500, 200, 200, 0 )
end
addEventHandler ( "onPickupHit", drugfarmicon, jobicon_drugs )
function buydrugs_func ( player, cmd, zahl )
if tonumber ( zahl ) then
local zahl = math.floor ( math.abs ( tonumber ( zahl ) ) )
if vioGetElementData ( player, "job" ) == "dealer" then
if zahl <= 30 then
if vioGetElementData ( player, "money" ) >= zahl*drugprice then
local jobtime = tonumber ( vioGetElementData ( player, "jobtime" ) )
if jobtime == 0 then
vioSetElementData ( player, "drugs", vioGetElementData ( player, "drugs" ) + zahl )
vioSetElementData ( player, "lastcrime", "drugdealing" )
vioSetElementData ( player, "jobtime", tonumber ( vioGetElementData ( player, "jobtime" ) ) + 20 )
vioSetElementData ( player, "money", vioGetElementData ( player, "money" ) - zahl*drugprice )
playSoundFrontEnd ( player, 40 )
triggerClientEvent ( player, "infobox_start", getRootElement(), "\nDu hast nun\n"..vioGetElementData ( player, "drugs" ).." Gramm Drogen\ndabei!", 7500, 125, 0, 0 )
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "Du musst noch\n"..jobtime.." Minuten warten,\nbis du wieder\nDrogen kaufen\nkannst.", 7500, 125, 0, 0 )
end
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "Du hast nicht\ngenug Geld!\n"..zahl.." Gramm Drogen\nkosten "..drugprice*zahl.." $!", 7500, 125, 0, 0 )
end
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "Du kannst max.\n30 Gramm pro\n20 Minuten er-\nwerben!", 7500, 125, 0, 0 )
end
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "\n\nDu bist kein\nDealer!", 7500, 125, 0, 0 )
end
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "\n\nUngueltige Zahl!", 7500, 125, 0, 0 )
end
end
addCommandHandler ( "buydrugs", buydrugs_func )
function drugRecieve_func ( drugs )
if source == client then
if drugs == "boom" then
setTimer ( Boomplane, 3000, 1 )
setTimer ( Boomplane2, 3500, 1 )
elseif drugs == "cops" then
if vioGetElementData ( source, "wanteds" ) >= 5 then
vioSetElementData ( source, "wanteds", 6 )
else
vioSetElementData ( source, "wanteds", vioGetElementData ( source, "wanteds" ) + 2 )
end
setPlayerWantedLevel ( source, vioGetElementData ( source, "wanteds" ) )
else
vioSetElementData ( source, "drugs", vioGetElementData ( source, "drugs" ) + drugs )
end
vioSetElementData ( source, "jobtime", tonumber ( vioGetElementData ( source, "jobtime" ) ) + 20 )
end
end
addEvent ( "drugRecieve", true )
addEventHandler ( "drugRecieve", getRootElement(), drugRecieve_func )
function Boomplane ()
createExplosion ( -2301.7600097656+math.random ( -1, 1 ), -2804.5095214844+math.random ( -1, 1 ), 14+math.random ( -.3, .3 ), math.random ( 4, 7 ) )
end
function Boomplane2 ()
setTimer ( Boomplane, 400, 4 )
end
function givedrugs_func ( player, cmd, target, summe )
if player == client or not client then
if vioGetElementData ( player, "job" ) == "dealer" then
local target = getPlayerFromName ( target )
local summe = math.abs(math.floor(tonumber(summe)))
if vioGetElementData ( player, "drugs" ) >= summe then
playSoundFrontEnd ( player, 40 )
vioSetElementData ( player, "lastcrime", drugdealing )
playSoundFrontEnd ( target, 40 )
vioSetElementData ( player, "drugs", vioGetElementData ( player, "drugs" ) - summe )
vioSetElementData ( target, "drugs", vioGetElementData ( target, "drugs" ) + summe )
outputChatBox ( "Du hast "..getPlayerName(target).." "..summe.." Gramm Drogen gegeben!", player, 0, 125, 0 )
outputChatBox ( "Du hast von "..getPlayerName(player).." "..summe.." Gramm Drogen bekommen!", target, 0, 125, 0 )
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "\n\nDu hast nicht\ngenug Drogen dabei!", 7000, 125, 0, 0 )
end
else
triggerClientEvent ( player, "infobox_start", getRootElement(), "\n\nDu bist kein\nDrogendealer!", 7000, 125, 0, 0 )
end
end
end
addEvent ( "givedrugs", true )
addEventHandler ( "givedrugs", getRootElement(), givedrugs_func )
addCommandHandler ( "givedrugs", givedrugs_func )
Alles anzeigen
drugs_client.lua
Lua
-------------------------
------- (c) 2010 --------
------- by Zipper -------
-- and Vio MTA:RL Crew --
-------------------------
function boatfix ()
--setElementCollisionsEnabled ( drugboat, false )
end
addEventHandler ( "onClientResourceStart", getResourceRootElement(getThisResource()), boatfix )
function createDrugJobMarker_func()
drugJobMarker = createMarker ( -1862.1405029297, -144.07493591309, 10.876323699951, "cylinder", 3, getColorFromString ( "#FF000099" ) )
addEventHandler ( "onClientMarkerHit", drugJobMarker, hitDrugJobMarker_func )
end
addEvent ( "createDrugJobMarker", true )
addEventHandler ( "createDrugJobMarker", getRootElement(), createDrugJobMarker_func )
function destroyDrugJobMarker_func()
if isElement(drugJobMarker) then
destroyElement ( drugJobMarker )
end
if isElement(drugJobPlaneMarker) then
destroyElement ( drugJobPlaneMarker )
end
if isElement(drugSFPDBlip) then
destroyElement ( drugSFPDBlip )
end
if isElement(drugSFPDMarker) then
destroyElement ( drugSFPDMarker )
end
if isElement(drugPlaneMarker) then
destroyElement ( drugPlaneMarker )
end
end
addEvent ( "destroyDrugJobMarker", true )
addEventHandler ( "destroyDrugJobMarker", getRootElement(), destroyDrugJobMarker_func )
function hitDrugJobMarker_func ( player )
if getPedOccupiedVehicle ( player ) == false then
if player == localPlayer then
if tonumber ( vioClientGetElementData ( "jobtime" ) ) == 0 then
destroyDrugJobMarker_func()
rnd = math.random( 1, 2 ) -- 1 = Flugzeug, 2 = Bootcheckpoints, 3 = SFPD, 4 = Autos, 5 = Tauchen
if rnd == 1 then
planeDrugRoute()
drugJobPlaneMarker = createBlip ( -2301.7600097656, -2804.5095214844, 14.660495758057, 0, 2, 255, 0, 0, 255, 0, 99999.0, getLocalPlayer() )
elseif rnd == 2 then
sfpdDrugRoute()
curjob = "sfpd"
elseif rnd == 3 then
outputChatBox ( "Route 3 - Coming soon!" )
elseif rnd == 4 then
outputChatBox ( "Route 4 - Coming soon!" )
else
outputChatBox ( "Route 5 - Coming soon!" )
end
else
infobox_start_func("Du musst noch\n"..vioClientGetElementData("jobtime").." Minuten\nwarten, bevor du\ndie naechste Tour\nmachen kannst!", 7500, 125, 0, 0 )
end
end
if source == drugPlaneMarker and player == localPlayer then
setTimer ( drugsFoundClient, 3000, 1 )
toggleAllControls ( false, true, false )
end
if source == drugSFPDMarker and player == localPlayer then
setTimer ( SFPDdrugsFoundClient, 3000, 1 )
toggleAllControls ( false, true, false )
end
end
end
function sfpdDrugRoute()
infobox_start_func("Einem Informanten zu\nfolge wurde vom\nSFPD eine große\nMenge Drogen\nbeschlagnahmt.", 7500, 125, 0, 0 )
drugSFPDBlip = createBlip ( -1605.7623291016, 711.326171875, 14, 0, 2, 255, 0, 0, 255, 0, 99999.0, getLocalPlayer() )
drugSFPDMarker = createMarker ( 223.98358154297, 127.49185180664, 1009.2152099609, "cylinder", 1, getColorFromString ( "#00ff0099" ) )
setElementInterior ( drugSFPDMarker, 10 )
end
function drugsFoundClient ()
rnd = math.random ( 1, 6 )
destroyDrugJobMarker_func()
if rnd == 1 or rnd == 2 or rnd == 3 then
drugsfound = math.random ( 10, 30 )
infobox_start_func("\nDu hast soeben\n"..drugsfound.." Gramm Drogen\ngefunden!", 7500, 0, 125, 0 )
elseif rnd == 4 then
drugsfound = math.random ( 3, 12 )
infobox_start_func("Der Beutel ist\nvoellig zerfetzt -\nDu hast nur \nnoch "..drugsfound.." Gramm Drogen\nretten koennen!", 7500, 200, 200, 0 )
elseif rnd == 5 then
infobox_start_func("Es ist eine\nFalle - Die Cops\nhaben dich\nbeobachtet!", 7500, 125, 0, 0 )
drugsfound = "cops"
else
infobox_start_func("Der Tank des\nFlugzeugs ist in\nFlammen aufgegangen\n- RENN!!!", 7500, 125, 0, 0 )
createFire ( -2301.7600097656, -2804.5095214844, 14.660495758057, 3 )
drugsfound = "boom"
end
toggleAllControls ( true )
createDrugJobMarker_func()
triggerServerEvent ( "drugRecieve", getLocalPlayer(), drugsfound )
end
function SFPDdrugsFoundClient ()
rnd = math.random ( 1, 5 )
destroyDrugJobMarker_func()
if rnd == 1 or rnd == 2 then
drugsfound = math.random ( 10, 30 )
infobox_start_func("\nDu hast soeben\n"..drugsfound.." Gramm Drogen\ngefunden!", 7500, 0, 125, 0 )
elseif rnd == 3 then
drugsfound = math.random ( 3, 12 )
infobox_start_func("Der Beutel ist\nvoellig zerfetzt -\nDu hast nur \nnoch "..drugsfound.." Gramm Drogen\nretten koennen!", 7500, 200, 200, 0 )
elseif rnd == 4 then
infobox_start_func("Es ist eine\nFalle - Die Cops\nhaben dich\nbeobachtet!", 7500, 125, 0, 0 )
drugsfound = "cops"
else
infobox_start_func("\nOffenbar war jemand\nvor dir da -\nalle Drogen sind\nschon weg!", 7500, 125, 0, 0 )
createFire ( -2301.7600097656, -2804.5095214844, 14.660495758057, 3 )
drugsfound = "nil"
end
toggleAllControls ( true )
createDrugJobMarker_func()
triggerServerEvent ( "drugRecieve", getLocalPlayer(), drugsfound )
end
function planeDrugRoute ()
infobox_start_func("Einem Informanten zu\nfolge ist im\nCounty ein Flug-\nzeug abestuertzt.\nBerge die Drogen!", 7500, 125, 0, 0 )
drugPlaneMarker = createMarker ( -2311.2800292969, -2804.0612792969, 11.192306518555, "cylinder", 2, getColorFromString ( "#00ff0099" ) )
end
function SFPDEnterClient_func ()
if drugSFPDBlip then
infobox_start_func("\nDie Drogen befinden\nsich im oberen\nStockwerk!", 7500, 125, 0, 0 )
destroyElement ( drugSFPDBlip )
end
end
addEvent ( "SFPDEnterClient", true )
addEventHandler ( "SFPDEnterClient", getRootElement(), SFPDEnterClient_func )
Alles anzeigen