manve1 Posted December 15, 2012 Posted December 15, 2012 I have a problem of trying to make an achievement when player dies he unlocks it, but i just don't get how to make it work properly. Server-side: function achLog( ) local logged1 = getPlayerAccount(source) if (logged1) then setAccountData(logged1, 'achDamage', 2) end end addEventHandler('onPlayerLogout', getRootElement(), achLog) addEventHandler('onPlayerWasted', getRootElement(), function() local logged1 = getPlayerAccount(source) local logged = getAccountData(logged1, 'achDamage') if (logged == tonumber(0)) then triggerClientEvent('needDamage', getRootElement()) setAccountData(logged1, 'achDamage', 2) outputChatBox('#FF0000[Achievement]: #FFFFFF'.. getPlayerName( source ) ..' just unlocked "Death is here." achievement.', root, 255, 255, 255, true) elseif (logged == 2) then triggerClientEvent('logDamage', getRootElement()) end end ) Client-side: addEvent('needDamage', true) addEventHandler('needDamage', getRootElement(), function() local achDamage = guiCreateStaticImage( 0.4, 0.2, 0.6, 0.2, 'pictures/ach.png', true ) local labelDamage = guiCreateLabel( 0.4, 0.6, 0.6, 0.15, 'Death is here ( Die )', true, achDamage ) setTimer( function() if isElement(achDamage) and isElement(labelDamage) then destroyElement(achDamage) destroyElement(labelDamage) end end, 2000, 1 ) end ) addEvent('logDamage', true) addEventHandler('logDamage', getRootElement(), function() guiGridListSetItemText( gridAch, row2, column1, 'Death is here Unlocked', false, false ) end ) Looking for tutorials or information? check out: www.simpleask.co.uk
Castillo Posted December 15, 2012 Posted December 15, 2012 Errors or anything in the debugscript? what is the exact problem? San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Techial Posted December 15, 2012 Posted December 15, 2012 EDIT: The problem here is the getAccountData. It saves strings not numbers. So it would basically be: if(logged == "0") then or if(tonumber(logged) == 0) then ____________________________________________________________ http://techial.net/
manve1 Posted December 15, 2012 Author Posted December 15, 2012 no errors, but I done same thing for login on numbers, and it worked, just for some reason not on this Looking for tutorials or information? check out: www.simpleask.co.uk
Cadu12 Posted December 15, 2012 Posted December 15, 2012 Well, you already set to 2 on achDamage in event called onPlayerLogout. Ingame nick: Cadu12
manve1 Posted December 15, 2012 Author Posted December 15, 2012 Removed it, but still ain't working Looking for tutorials or information? check out: www.simpleask.co.uk
Cadu12 Posted December 15, 2012 Posted December 15, 2012 As I said, your achDamage is already set to 2, you need make it to back 0 or 1. Ingame nick: Cadu12
Techial Posted December 15, 2012 Posted December 15, 2012 function achLog( ) local logged1 = getPlayerAccount(source) if (logged1) then setAccountData(logged1, 'achDamage', 0) end end addEventHandler('onPlayerLogout', getRootElement(), achLog) ____________________________________________________________ http://techial.net/
manve1 Posted December 15, 2012 Author Posted December 15, 2012 Didn't work. Still it doesn't update the GridList Looking for tutorials or information? check out: www.simpleask.co.uk
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