Here is the solution.
Serverside:
function createMoney(player)
local x, y, z = getElementPosition(player);
local x1, y1, x2, y2;
x1 = (x-2)+(math.random()*4);
y1 = (y-2)+(math.random()*4);
x2 = (x-2)+(math.random()*4);
y2 = (y-2)+(math.random()*4);
local valuemoney = 750 -- value take money
local moneyAmmount = valuemoney
local time = 25000 -- time in mile seconds
moneyAmmount = math.floor(moneyAmmount/1)
takePlayerMoney(player, moneyAmmount)
moneyAmmount = math.floor(moneyAmmount/3)
-- Create the pickups
setElementData(createPickup(x1, y1, z, 3, 1212), "ammount", moneyAmmount);
setElementData(createPickup(x2, y2, z, 3, 1212), "ammount", moneyAmmount);
setElementData(createPickup(x2, y2, z, 3, 1212), "ammount", moneyAmmount);
end
function moneyPickupHit(player)
local money = getElementData(source, "ammount");
if money then
givePlayerMoney(player, money);
destroyElement(source);
triggerClientEvent(source,"onmoneyPickupHit",source)
end
end
function playerJustGotDied(ammo, attacker, weapon, bodypart)
createMoney(source);
end
addEventHandler("onPickupUse", getRootElement(), moneyPickupHit);
addEventHandler("onPlayerWasted", getRootElement(), playerJustGotDied);
Client:
addEvent("onmoneyPickupHit",true)
function moneyPickupHit()
local sound = playSound("money.wav")
setSoundVolume(sound, 0.5)
end
addEventHandler("onmoneyPickupHit", root, moneyPickupHit)
You just added a handler without an event called: "onmoneyPickupHit" and you didn't trigger the event on server side on pickup.
I hope this would work.