Sziasztok! Nagyon alap kocsi rendszert csinálok set, getElementData-val. El is menti amit el kell mentenie be is tölti, de ki és belépéskor amikor beírom hogy /smc a getElementData false-t ad vissza :(
Client oldal:
function buy_bravura()
carId = 401
triggerServerEvent (\"carBuy\", getLocalPlayer(),carId)
end
Szerver:
function spawnMyCar(source,carId)
local carId = getElementData(source,\"ownCarId\")
outputChatBox(tostring(carId))
local player_x,player_y,player_z = getElementPosition(source)
createVehicle(carId,player_x+5,player_y,player_z)
end
addCommandHandler(\"smc\",spawnMyCar,false)
function carBuy(carId)
outputChatBox(\"Megvéve!\",source)
outputChatBox(carId)
setElementData(source,\"ownCarId\", carId)
carId = getElementData(source,\"ownCarId\")
outputChatBox(\"CARID:\"..carId)
end
addEvent(\"carBuy\",true)
addEventHandler( \"carBuy\", getRootElement(), carBuy)
Hali!
A setElementDataval beállított datak az element törlésénél törlésre kerülnek.
Tegyük fel, egy játékosnak adsz egy datat a setElementData segítségével. Ő megunja, és lelép, ( elementeknél ez destroyElement ), ekkor az összes data, amivel az element rendelkezett, törlésre kerül. Ha megakarod oldani a mentést, és nem akarsz belemenni a MySQLes mentésbe, használj setAccountData-t, persze, így csak bejelentkezett játékosoknak lesz elérhető a vásárlás.
Remélem segíthettem.
#NeXuS
Az account funckiókat csakis kizárólag server oldalon lehet használni.
function example(pSource, cmd, mit, mire)
local account = getPlayerAccount(pSource)
if account then
if mit and mire then
setAccountData(account, mit, mire)
outputChatBox(getAccountName(account) .. \" \" .. mire .. \" hallgató data átírva \" .. mire)
end
else
outputChatBox(\"Ez csak bejelentkezett játékosoknak elérhető.)
end
end
addCommandHandler(\"elementdata\", example)
( Nem teszteltem, ha hiba van benne, írj bátran, és átnézem.)