Tipo isso?
local prizeMin, prizeMax = 5000, 10000 -- Prêmio mínimo e máximo.
local segundos = 120 -- Duração da animação de roubo até o prêmio.
function givePrize(thePlayer)
local randomprize = math.random(prizeMin, prizeMax) -- Gera um valor aleatório entre o valor mínimo e máximo de prêmio.
local sujo = getElementData(thePlayer, "DSujo") or 0 -- Obtém a quantidade atual de dinheiro sujo do jogador.
setElementData(thePlayer, "DSujo", sujo + randomprize) -- Aumenta a quantidade de dinheiro sujo no jogador.
-- givePlayerMoney(thePlayer, randomprize) -- Usado para testes sem o dinheiro sujo. Dá dinheiro normal ao jogador.
setPedAnimation(thePlayer) -- Remove a animação do jogador.
outputChatBox("Você coletou #00ff00R$ "..randomprize.."#ffffff de dinheiro sujo.", thePlayer, 255, 255, 255, true)
theTimer = nil -- Anula a variável do timer para liberar espaço na memória.
end
theMarker = createMarker(2487, -1667, 12.4, "cylinder", 1.5) -- Cria um marker na Grove Street.
addEventHandler("onMarkerHit", theMarker, function (hitElement, dimension) -- Ativa essa função quando algum elemento colidir no theMarker.
if getElementType(hitElement) == "player" and dimension then -- Se o elemento que colidiu no marker for um player e estiver na mesma dimensão que o marker, então:
if isTimer(theTimer) then return end -- Se já tem alguém roubando, cancela a função e nada acontece.
setPedAnimation(hitElement, "ROB_BANK", "CAT_Safe_Rob", true, false, false, false) -- Seta essa animação de roubo em loop no jogador que colidiu no marker.
theTimer = setTimer(givePrize, 1000 * segundos, 1, hitElement) -- Inicia o timer para dar o prêmio ao jogador após X segundos. Após esse tempo, a função givePrize será chamada.
end
end)