G.KinG Posted April 20, 2014 Share Posted April 20, 2014 Hello , i'm so tired so i will go to the point i have a save system but i get some problems when i die or zombie kill me i lose my all weapons and this the code function playerLogin (thePreviousAccount, theCurrentAccount, autoLogin) if not (isGuestAccount (getPlayerAccount (source))) then local accountData = getAccountData (theCurrentAccount, "MoneyS") if (accountData) then local playerMoney = getAccountData (theCurrentAccount, "MoneyS") local playerWeaponID0 = getAccountData (theCurrentAccount, "WeaponID0") local playerWeaponID1 = getAccountData (theCurrentAccount, "WeaponID1") local playerWeaponID2 = getAccountData (theCurrentAccount, "WeaponID2") local playerWeaponID3 = getAccountData (theCurrentAccount, "WeaponID3") local playerWeaponID4 = getAccountData (theCurrentAccount, "WeaponID4") local playerWeaponID5 = getAccountData (theCurrentAccount, "WeaponID5") local playerWeaponID6 = getAccountData (theCurrentAccount, "WeaponID6") local playerWeaponID7 = getAccountData (theCurrentAccount, "WeaponID7") local playerWeaponID8 = getAccountData (theCurrentAccount, "WeaponID8") local playerWeaponID9 = getAccountData (theCurrentAccount, "WeaponID9") local playerWeaponID10 = getAccountData (theCurrentAccount, "WeaponID10") local playerWeaponID11 = getAccountData (theCurrentAccount, "WeaponID11") local playerWeaponID12 = getAccountData (theCurrentAccount, "WeaponID12") local playerWeaponAmmo0 = getAccountData (theCurrentAccount, "WeaponAmmo0") local playerWeaponAmmo1 = getAccountData (theCurrentAccount, "WeaponAmmo1") local playerWeaponAmmo2 = getAccountData (theCurrentAccount, "WeaponAmmo2") local playerWeaponAmmo3 = getAccountData (theCurrentAccount, "WeaponAmmo3") local playerWeaponAmmo4 = getAccountData (theCurrentAccount, "WeaponAmmo4") local playerWeaponAmmo5 = getAccountData (theCurrentAccount, "WeaponAmmo5") local playerWeaponAmmo6 = getAccountData (theCurrentAccount, "WeaponAmmo6") local playerWeaponAmmo7 = getAccountData (theCurrentAccount, "WeaponAmmo7") local playerWeaponAmmo8 = getAccountData (theCurrentAccount, "WeaponAmmo8") local playerWeaponAmmo9 = getAccountData (theCurrentAccount, "WeaponAmmo9") local playerWeaponAmmo10 = getAccountData (theCurrentAccount, "WeaponAmmo10") local playerWeaponAmmo11 = getAccountData (theCurrentAccount, "WeaponAmmo11") local playerWeaponAmmo12 = getAccountData (theCurrentAccount, "WeaponAmmo12") setPlayerMoney (source, playerMoney) giveWeapon(source, playerWeaponID0, playerWeaponAmmo0, true) giveWeapon(source, playerWeaponID1, playerWeaponAmmo1, false) giveWeapon(source, playerWeaponID2, playerWeaponAmmo2, false) giveWeapon(source, playerWeaponID3, playerWeaponAmmo3, false) giveWeapon(source, playerWeaponID4, playerWeaponAmmo4, false) giveWeapon(source, playerWeaponID5, playerWeaponAmmo5, false) giveWeapon(source, playerWeaponID6, playerWeaponAmmo6, false) giveWeapon(source, playerWeaponID7, playerWeaponAmmo7, false) giveWeapon(source, playerWeaponID8, playerWeaponAmmo8, false) giveWeapon(source, playerWeaponID9, playerWeaponAmmo9, false) giveWeapon(source, playerWeaponID10, playerWeaponAmmo10, false) giveWeapon(source, playerWeaponID11, playerWeaponAmmo11, false) giveWeapon(source, playerWeaponID12, playerWeaponAmmo12, false) end end end addEventHandler ("onPlayerLogin", getRootElement(), playerLogin) function onQuit (quitType, reason, responsibleElement) if not (isGuestAccount (getPlayerAccount (source))) then local account = getPlayerAccount (source) if (account) then setAccountData (account, "MoneyS", tostring (getPlayerMoney (source))) setAccountData (account, "WeaponID0", getPedWeapon (source, 0)) setAccountData (account, "WeaponID1", getPedWeapon (source, 1)) setAccountData (account, "WeaponID2", getPedWeapon (source, 2)) setAccountData (account, "WeaponID3", getPedWeapon (source, 3)) setAccountData (account, "WeaponID4", getPedWeapon (source, 4)) setAccountData (account, "WeaponID5", getPedWeapon (source, 5)) setAccountData (account, "WeaponID6", getPedWeapon (source, 6)) setAccountData (account, "WeaponID7", getPedWeapon (source, 7)) setAccountData (account, "WeaponID8", getPedWeapon (source, -- s8) -->) setAccountData (account, "WeaponID9", getPedWeapon (source, 9)) setAccountData (account, "WeaponID10", getPedWeapon (source, 10)) setAccountData (account, "WeaponID11", getPedWeapon (source, 11)) setAccountData (account, "WeaponID12", getPedWeapon (source, 12)) setAccountData (account, "WeaponAmmo0", getPedTotalAmmo (source, 0)) setAccountData (account, "WeaponAmmo1", getPedTotalAmmo (source, 1)) setAccountData (account, "WeaponAmmo2", getPedTotalAmmo (source, 2)) setAccountData (account, "WeaponAmmo3", getPedTotalAmmo (source, 3)) setAccountData (account, "WeaponAmmo4", getPedTotalAmmo (source, 4)) setAccountData (account, "WeaponAmmo5", getPedTotalAmmo (source, 5)) setAccountData (account, "WeaponAmmo6", getPedTotalAmmo (source, 6)) setAccountData (account, "WeaponAmmo7", getPedTotalAmmo (source, 7)) setAccountData (account, "WeaponAmmo8", getPedTotalAmmo (source, -- s8) -->) setAccountData (account, "WeaponAmmo9", getPedTotalAmmo (source, 9)) setAccountData (account, "WeaponAmmo10", getPedTotalAmmo (source, 10)) setAccountData (account, "WeaponAmmo11", getPedTotalAmmo (source, 11)) setAccountData (account, "WeaponAmmo12", getPedTotalAmmo (source, 12)) end end end addEventHandler ("onPlayerQuit", getRootElement(), onQuit) thanks for help. Link to comment
-.Paradox.- Posted April 20, 2014 Share Posted April 20, 2014 This one only Save the weapons when you Quit and Login. If you want save weapons when you die, then use this: local playerWeapons = { } addEventHandler ( "onPlayerWasted", root, function ( ) if ( not playerWeapons [ source ] ) then playerWeapons [ source ] = { } end for slot = 0, 12 do local weapon = getPedWeapon ( source, slot ) if ( weapon > 0 ) then local ammo = getPedTotalAmmo ( source, slot ) if ( ammo > 0 ) then playerWeapons [ source ] [ weapon ] = ammo end end end end ) addEventHandler ( "onPlayerSpawn", root, function ( ) if ( playerWeapons [ source ] ) then for weapon, ammo in pairs ( playerWeapons [ source ] ) do giveWeapon ( source, tonumber ( weapon ), tonumber ( ammo ) ) end end playerWeapons [ source ] = nil end ) Made by Castillo Link to comment
G.KinG Posted April 20, 2014 Author Share Posted April 20, 2014 OMG it is Work ! but i have some little problem , when zombie killed me i lose my all weapons ? lock this is the full code function playerLogin (thePreviousAccount, theCurrentAccount, autoLogin) if not (isGuestAccount (getPlayerAccount (source))) then local accountData = getAccountData (theCurrentAccount, "MoneyS") if (accountData) then local playerMoney = getAccountData (theCurrentAccount, "MoneyS") local playerWeaponID0 = getAccountData (theCurrentAccount, "WeaponID0") local playerWeaponID1 = getAccountData (theCurrentAccount, "WeaponID1") local playerWeaponID2 = getAccountData (theCurrentAccount, "WeaponID2") local playerWeaponID3 = getAccountData (theCurrentAccount, "WeaponID3") local playerWeaponID4 = getAccountData (theCurrentAccount, "WeaponID4") local playerWeaponID5 = getAccountData (theCurrentAccount, "WeaponID5") local playerWeaponID6 = getAccountData (theCurrentAccount, "WeaponID6") local playerWeaponID7 = getAccountData (theCurrentAccount, "WeaponID7") local playerWeaponID8 = getAccountData (theCurrentAccount, "WeaponID8") local playerWeaponID9 = getAccountData (theCurrentAccount, "WeaponID9") local playerWeaponID10 = getAccountData (theCurrentAccount, "WeaponID10") local playerWeaponID11 = getAccountData (theCurrentAccount, "WeaponID11") local playerWeaponID12 = getAccountData (theCurrentAccount, "WeaponID12") local playerWeaponAmmo0 = getAccountData (theCurrentAccount, "WeaponAmmo0") local playerWeaponAmmo1 = getAccountData (theCurrentAccount, "WeaponAmmo1") local playerWeaponAmmo2 = getAccountData (theCurrentAccount, "WeaponAmmo2") local playerWeaponAmmo3 = getAccountData (theCurrentAccount, "WeaponAmmo3") local playerWeaponAmmo4 = getAccountData (theCurrentAccount, "WeaponAmmo4") local playerWeaponAmmo5 = getAccountData (theCurrentAccount, "WeaponAmmo5") local playerWeaponAmmo6 = getAccountData (theCurrentAccount, "WeaponAmmo6") local playerWeaponAmmo7 = getAccountData (theCurrentAccount, "WeaponAmmo7") local playerWeaponAmmo8 = getAccountData (theCurrentAccount, "WeaponAmmo8") local playerWeaponAmmo9 = getAccountData (theCurrentAccount, "WeaponAmmo9") local playerWeaponAmmo10 = getAccountData (theCurrentAccount, "WeaponAmmo10") local playerWeaponAmmo11 = getAccountData (theCurrentAccount, "WeaponAmmo11") local playerWeaponAmmo12 = getAccountData (theCurrentAccount, "WeaponAmmo12") setPlayerMoney (source, playerMoney) giveWeapon(source, playerWeaponID0, playerWeaponAmmo0, true) giveWeapon(source, playerWeaponID1, playerWeaponAmmo1, false) giveWeapon(source, playerWeaponID2, playerWeaponAmmo2, false) giveWeapon(source, playerWeaponID3, playerWeaponAmmo3, false) giveWeapon(source, playerWeaponID4, playerWeaponAmmo4, false) giveWeapon(source, playerWeaponID5, playerWeaponAmmo5, false) giveWeapon(source, playerWeaponID6, playerWeaponAmmo6, false) giveWeapon(source, playerWeaponID7, playerWeaponAmmo7, false) giveWeapon(source, playerWeaponID8, playerWeaponAmmo8, false) giveWeapon(source, playerWeaponID9, playerWeaponAmmo9, false) giveWeapon(source, playerWeaponID10, playerWeaponAmmo10, false) giveWeapon(source, playerWeaponID11, playerWeaponAmmo11, false) giveWeapon(source, playerWeaponID12, playerWeaponAmmo12, false) end end end addEventHandler ("onPlayerLogin", getRootElement(), playerLogin) function onQuit (quitType, reason, responsibleElement) if not (isGuestAccount (getPlayerAccount (source))) then local account = getPlayerAccount (source) if (account) then setAccountData (account, "MoneyS", tostring (getPlayerMoney (source))) setAccountData (account, "WeaponID0", getPedWeapon (source, 0)) setAccountData (account, "WeaponID1", getPedWeapon (source, 1)) setAccountData (account, "WeaponID2", getPedWeapon (source, 2)) setAccountData (account, "WeaponID3", getPedWeapon (source, 3)) setAccountData (account, "WeaponID4", getPedWeapon (source, 4)) setAccountData (account, "WeaponID5", getPedWeapon (source, 5)) setAccountData (account, "WeaponID6", getPedWeapon (source, 6)) setAccountData (account, "WeaponID7", getPedWeapon (source, 7)) setAccountData (account, "WeaponID8", getPedWeapon (source, -- s8) -->) setAccountData (account, "WeaponID9", getPedWeapon (source, 9)) setAccountData (account, "WeaponID10", getPedWeapon (source, 10)) setAccountData (account, "WeaponID11", getPedWeapon (source, 11)) setAccountData (account, "WeaponID12", getPedWeapon (source, 12)) setAccountData (account, "WeaponAmmo0", getPedTotalAmmo (source, 0)) setAccountData (account, "WeaponAmmo1", getPedTotalAmmo (source, 1)) setAccountData (account, "WeaponAmmo2", getPedTotalAmmo (source, 2)) setAccountData (account, "WeaponAmmo3", getPedTotalAmmo (source, 3)) setAccountData (account, "WeaponAmmo4", getPedTotalAmmo (source, 4)) setAccountData (account, "WeaponAmmo5", getPedTotalAmmo (source, 5)) setAccountData (account, "WeaponAmmo6", getPedTotalAmmo (source, 6)) setAccountData (account, "WeaponAmmo7", getPedTotalAmmo (source, 7)) setAccountData (account, "WeaponAmmo8", getPedTotalAmmo (source, -- s8) -->) setAccountData (account, "WeaponAmmo9", getPedTotalAmmo (source, 9)) setAccountData (account, "WeaponAmmo10", getPedTotalAmmo (source, 10)) setAccountData (account, "WeaponAmmo11", getPedTotalAmmo (source, 11)) setAccountData (account, "WeaponAmmo12", getPedTotalAmmo (source, 12)) end end end addEventHandler ("onPlayerQuit", getRootElement(), onQuit) local playerWeapons = { } addEventHandler ( "onPlayerWasted", root, function ( ) if ( not playerWeapons [ source ] ) then playerWeapons [ source ] = { } end for slot = 0, 12 do local weapon = getPedWeapon ( source, slot ) if ( weapon > 0 ) then local ammo = getPedTotalAmmo ( source, slot ) if ( ammo > 0 ) then playerWeapons [ source ] [ weapon ] = ammo end end end end ) addEventHandler ( "onPlayerSpawn", root, function ( ) if ( playerWeapons [ source ] ) then for weapon, ammo in pairs ( playerWeapons [ source ] ) do giveWeapon ( source, tonumber ( weapon ), tonumber ( ammo ) ) end end playerWeapons [ source ] = nil end ) Link to comment
-.Paradox.- Posted April 20, 2014 Share Posted April 20, 2014 Use my Save System addEventHandler ("onPlayerLogin",root, function() loadPedStats( getPlayerAccount(source)) end ) addEventHandler ("onPlayerQuit",root, function() savePedStats( getPlayerAccount(source)) end ) addEventHandler ("onPlayerLogout",root, function(thePreviousAccount) savePedStats( thePreviousAccount ) end ) function savePedStats( Acc) local pedposx,pedposy,pedposz = getElementPosition( source ) local pedrotx,pedroty,pedrotz = getElementRotation( source ) setAccountData(Acc, "pos.x", pedposx) setAccountData(Acc, "pos.y", pedposy) setAccountData(Acc, "pos.z", pedposz) setAccountData(Acc, "rot.x", pedrotx) setAccountData(Acc, "rot.y", pedroty) setAccountData(Acc, "rot.z", pedrotz) setAccountData(Acc, "skin", getPedSkin( source )) setAccountData(Acc, "armor", getPedArmor( source )) setAccountData(Acc, "health", getElementHealth( source )) setAccountData(Acc, "money",getPlayerMoney( source )) for i = 21 , 25 do setAccountData(Acc, "stat."..i , getPedStat(source,i)) end for i = 69 , 79 do setAccountData(Acc, "stat."..i , getPedStat(source,i)) end end function loadPedStats(Acc ) setElementPosition(source,getAccountData(Acc, "pos.x"),getAccountData(Acc, "pos.y"),getAccountData(Acc, "pos.z")) setElementRotation(source,getAccountData(Acc, "rot.x"),getAccountData(Acc, "rot.y"),getAccountData(Acc, "rot.z")) setPedSkin(source,getAccountData(Acc, "skin")) setPedArmor(source,getAccountData(Acc, "armor")) setElementHealth(source,getAccountData(Acc, "health")) setPlayerMoney(source,getAccountData(Acc, "money")) for i = 21 , 25 do setPedStat(source,i,getAccountData(Acc, "stat."..i)) end for i = 69 , 79 do setPedStat(source,i,getAccountData(Acc, "stat."..i)) end end local playerWeapons = { } addEventHandler ( "onPlayerWasted", root, function ( ) if ( not playerWeapons [ source ] ) then playerWeapons [ source ] = { } end for slot = 0, 12 do local weapon = getPedWeapon ( source, slot ) if ( weapon > 0 ) then local ammo = getPedTotalAmmo ( source, slot ) if ( ammo > 0 ) then playerWeapons [ source ] [ weapon ] = ammo end end end end ) addEventHandler ( "onPlayerSpawn", root, function ( ) if ( playerWeapons [ source ] ) then for weapon, ammo in pairs ( playerWeapons [ source ] ) do giveWeapon ( source, tonumber ( weapon ), tonumber ( ammo ) ) end end playerWeapons [ source ] = nil end ) Link to comment
G.KinG Posted April 20, 2014 Author Share Posted April 20, 2014 (edited) Does not work. EDIT: you know , bro can you make a code if my health 5 then i will be died automatic please ? you will help me with this problem. Edited April 20, 2014 by Guest Link to comment
-.Paradox.- Posted April 20, 2014 Share Posted April 20, 2014 If it's Client side then it won't work, If Server side then tell me what debugscript 3 say. Link to comment
G.KinG Posted April 20, 2014 Author Share Posted April 20, 2014 If it's Client side then it won't work, If Server side then tell me what debugscript 3 say. Does not work.EDIT: you know , bro can you make a code if my health 5 then i will be died automatic please ? you will help me with this problem. ? Link to comment
G.KinG Posted April 20, 2014 Author Share Posted April 20, 2014 Up Up , any help ? i want code ( if my health 5/100 then i will be died automatic ) that is it-_- Link to comment
-.Paradox.- Posted April 20, 2014 Share Posted April 20, 2014 Server addEvent addEventHandler killPed Client getElementHealth triggerServerEvent Here is an example local health = getElementHealth(localPlayer) if health == 5 then triggerServerEvent --etc... Link to comment
Vinctus Posted April 20, 2014 Share Posted April 20, 2014 also I recommend using SQL for the stats instead of account data, easier to clear it all if needed by dropping the table etc Link to comment
Moderators Citizen Posted April 20, 2014 Moderators Share Posted April 20, 2014 also I recommend using SQL for the stats instead of account data, easier to clear it all if needed by dropping the table etc Why would you drop a table ? Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now