Sergioks Posted June 25, 2014 Share Posted June 25, 2014 Buenas. Tengo un problema. y es el siguiente. Hice un sistema de Rangos y Niveles por numero de kills de zombies. y, cuando lo ejecuto, no me sale ningun problema. Pero cuando mato a un Zombie, me aparece esto: ZInfo\ZInfo_server.lua:51: attempt to compare number with boolean Linea afectada: function setAccountRank(killer) local account = getPlayerAccount(killer) local zombiekills = getAccountData(account,"Zombie kills") if (zombiekills >= 0) and (zombiekills <= 9) then --- Linea del Problema setAccountData ( account, "Rango", "Nuevo Miembro" ) setAccountData ( account, "Level", "1" ) end end cual es el problema aka? - Gracias de Antemano. Link to comment
Castillo Posted June 25, 2014 Share Posted June 25, 2014 Yo diria que el problema es que "zombiekills" es un boolean, muy probablemente "nil", lo que quiere decir es que no tiene ningun dato guardado. Link to comment
Sergioks Posted June 25, 2014 Author Share Posted June 25, 2014 Yo diria que el problema es que "zombiekills" es un boolean, muy probablemente "nil", lo que quiere decir es que no tiene ningun dato guardado. como asi? entonces el problema esta cuando le da el kill en el scoreboard y accountdata? osea... aqui? addEvent("onZombieWasted",true) addEventHandler("onZombieWasted",root, function (killer) givePlayerMoney(killer,50) addPlayerZombieKills(killer) setAccountRank(killer) setScoreBoardRank(killer) end) function addPlayerZombieKills(killer) local account = getPlayerAccount(killer) if isGuestAccount(account) then return end local zombieKills = getAccountData(account,"Zombie Kills") if not zombieKills then --- CITA~#1 setAccountData(account,"Zombie Kills", 0) end --- setAccountData(account,"Zombie Kills",tonumber(zombieKills)+1) end CITA#1: entonces alli debo de colocar algo como asi?: if zombieKills == nil then o como ? Link to comment
Castillo Posted June 25, 2014 Share Posted June 25, 2014 Account data y element data son dos cosas diferentes. Link to comment
Sergioks Posted June 25, 2014 Author Share Posted June 25, 2014 Account data y element data son dos cosas diferentes. si, lo se. Debi haber incluido esto function setScoreBoardRank(killer) local cuenta = getPlayerAccount(killer) if isGuestAccount(cuenta) then return end local rango = getAccountData(cuenta,"Rango") local level = getAccountData(cuenta,"Level") if rango and level then setElementData(killer,"Rango", rango) setElementData(killer,"Level", level) end end Link to comment
Sergioks Posted June 25, 2014 Author Share Posted June 25, 2014 EDIT: Ya lo arregle, siempre se me olvida ese simple pero importante tip ._. Las mayúsculas en LUA son muy importantes respetarlas. el problema estaba en que algunos sitios decia "Zombie Kills" y en otros "Zombie kills" Link to comment
Recommended Posts