Sziasztok! Csináltam egy scriptet ami lerak egy objectet rá egy markert és ha valaki bele megy ad neki pénzt, de a function destroy résszel valami gond van, mert nem törli ki az objectet 15 másodperc után. :(
if box_pos == 13 then
x = 2259.3
y = 1459
z = 14.2
basketball_13 = createObject ( 2114, x, y, z, 0, 0, 0, false )
basketball_marker_13 = createMarker ( x, y, z,\"corona\",5,255,255,255,50)
setObjectScale ( basketball_13, 3)
function destroy()
destroyElement ( basketball_13 )
destroyElement ( basketball_marker_13 )
end
setTimer(destroy,15000,1)
function onMarkerHit(source,moneyvalue)
plus_money = getElementData(source,\"driftmoney\")
old_money = getPlayerMoney(source)
new_money = old_money + (plus_money/2)
--outputChatBox(iDriftScore)
setPlayerMoney(source,tonumber(new_money))
if plus_money >= 30 then
triggerClientEvent ( getRootElement(), \"play\", getRootElement())
destroyElement ( basketball_13 )
destroyElement ( basketball_marker_13 )
end
end
addEventHandler(\"onMarkerHit\",basketball_marker_13,onMarkerHit)
end
function destroy()
destroyElement ( basketball_13 )
destroyElement ( basketball_marker_13 )
end
E helyett ezt próbáld meg:
setTimer(function()
destroyElement ( basketball_13 )
destroyElement ( basketball_marker_13 )
end,15000,1)
Amennyiben akkor akarod töröltetni az objectet, mikor valaki bele megy a markerba akkor oda tedd csak be. Illetve gondolom egy /debugscript 3 is esetleg kiírná a hibát, így nézd meg azt is.
function destroy()
destroyElement ( basketball_13 )
destroyElement ( basketball_marker_13 )
end
setTimer(destroy,15000,1)
Ennek így semmi értelme, nincs ha nincs meg rá az hogy mi alapján törölje. Tehát pl jelen esetben lefut egy timer ami elvileg akkor indul el mikor a resource. Mellesleg én kerülném a function belüli function halmazokat is. Na meg mi a fenének törölteted kétszer az objectet? :D