LiOneLMeSsIShoT Posted December 7, 2013 Share Posted December 7, 2013 in this script i got error about a nil value..but i don't understand the problem..so may someone fix it and tell me what was the problem? Thanks. Server: function CheckLevelFromExp(dataName) if (source and getElementType(source) == "player" and dataName == "experience") then local SourceLevel = tonumber( getElementData(source,"level") ) local SourceExp = tonumber( getElementData(source,"experience") ) local NewLvl = SourceLevel +1 if ( levels[SourceLevel] ) then if ( levels[NewLvl]) then local RequiredExp = tonumber( levels[SourceLevel]["experienceRequired"] ) if ( SourceExp >= RequiredExp ) then setElementData(source,"experience_n", tonumber(levels[NewLvl]["experienceRequired"])) setElementData(source,"level",NewLvl) setTimer(setElementData, 50, 1, source,"experience",0) givePlayerMoney(source,tonumber(levels[NewLvl].moneyReward)) triggerClientEvent ( source, "LevelUpEffect", source ) outputChatBox("*LEVEL UP* You're now level ".. tostring(NewLvl) .."! Congratulations.",source,0,255,0) end end end end end addEventHandler("onElementDataChange",root,CheckLevelFromExp) Error: :84: attempt to perform arithemtic on local 'SourceLevel (a nil value) 84: is: local NewLvl = SourceLevel +1 Link to comment
TrapLord Studios™ Posted December 7, 2013 Share Posted December 7, 2013 Try using : local NewLvl = SourceLevel 1 Probably the + is affecting it. Link to comment
LiOneLMeSsIShoT Posted December 7, 2013 Author Share Posted December 7, 2013 Try using : local NewLvl = SourceLevel 1 Probably the + is affecting it. Tried..now Error: :84: unxepected symbol near '1' Link to comment
TrapLord Studios™ Posted December 7, 2013 Share Posted December 7, 2013 Are you using a Math Function? Link to comment
LiOneLMeSsIShoT Posted December 7, 2013 Author Share Posted December 7, 2013 Are you using a Math Function? Yeah here. function OnZombieKill (killer) if (killer and killer ~= source) then if getPlayerAccount(killer) then local experience = tonumber(getElementData(killer,"experience")) local SourceLevel = getElementData(killer,"level") if ( not SourceLevel ) then SourceLevel = 1 setElementData(killer,"level",1) end if ( levels[SourceLevel +1] ) then local randomExperience = math.random(unpack(ExpRewardForKill)) if (experience) then setElementData(killer,"experience",experience+tonumber(randomExperience)) else setElementData(killer,"experience",randomExperience) end else setElementData(killer,"experience",tonumber(levels[SourceLevel]["experienceRequired"])) end end end end addEvent("onZombieWasted",true) addEventHandler ("onZombieWasted", root, OnZombieKill) local randomExperience = math.random(unpack(ExpRewardForKill)) Link to comment
Castillo Posted December 7, 2013 Share Posted December 7, 2013 This code looks a lot like one script of my property which got leaked from a server, it has just some variables changed. Link to comment
Recommended Posts