zixxonx Posted January 1, 2015 Posted January 1, 2015 Hello, i'm really struggling with saving players data in tables. Let's for example, i have that table: data = {} When player joins i want to set some things for him. I'm doing it by: data[source] = {deaths = 0, kills=0} Now, when player kills somebody i want to increase his kills. kills = data[source].kills + 100 data[source] = {kills= kills} But this is deleting the DEATHS value from table. How can i achieve it in other way? Thanks.
novo Posted January 1, 2015 Posted January 1, 2015 data[source].kills = kills -- You're only changing the value of the key "kills". data[source] = {kills= kills} -- You're actually replacing the entire table here. -- An example local table = {["value1"] = 0, value2 = 0} table.value1 = 0 table["value2"] = 0
zixxonx Posted January 1, 2015 Author Posted January 1, 2015 Oh well, thanks. So when i create the table for player data[source] = {things here} I need to put here all the variables i will be using in future for this table? I mean if i do it like this: data[source] = {deaths = 0, kills=0} And later on i wanna also add CASH here, it's possible? Or maybe even like in PAWN i could do like this: enum UserData { ID, Admin, Gender, SkinID, MaskID } And later then UserData[playerid][skinID] = 666
MTA Team botder Posted January 2, 2015 MTA Team Posted January 2, 2015 gUserData = { } function resetPlayer(player) gUserData[player] = { id = false, admin = false, gender = 'm', skin = 0, mask = 0, money = 0, kills = 0, deaths = 0, } end addEventHandler("onPlayerJoin", root, function () resetPlayer(source) end ) addEventHandler("onPlayerQuit", root, function () -- Release the memory gUserData[source] = nil end ) addEventHandler("onResourceStart", resourceRoot, function () local playerlist = getElementsByType("player") for i = 1, #playerlist do resetPlayer(playerlist[i]) end end ) addEventHandler("onPlayerWasted", root, function (totalAmmo, killer) if isElement(killer) then gUserData[killer].kills = gUserData[killer].kills + 1 end gUserData[source].deaths = gUserData[source].deaths + 1 end )
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