Wyskakuje b??d w skrypcie leveli, ale skrypt dzia?a
B??d:
[2014-05-12 18] ERROR: Polskie_Party\scripts\main\main_s.lua:191: attempt to compare boolean with number
Miejsce b??du:
if (experience >= experience_r) then
Kawa?ek tego skryptu, w kt?rym jest b??d:
addEventHandler("onElementDataChange", getRootElement(),
function (dataName)
if (getElementType(source) == "player") and (dataName == "experience") then
local theAccount = getPlayerAccount(source)
if (theAccount) and not (isGuestAccount(theAccount)) then
local level = getElementData(source, "level")
local experience = getElementData(source, "experience")
local experience_r = getElementData(source, "experience_r")
if (experience >= experience_r) then
local newLvl = level+1
local experience_rnl = exprequired[newLvl]
if (experience_rnl) then
local amountbonus = experience-experience_r
setElementData(source, "level", newLvl)
setElementData(source, "experience", amountbonus)
setElementData(source, "experience_r", experience_rnl)
triggerClientEvent(source, "onClientPlayerLevelUp", source, level, experience_rnl)
triggerEvent("onClientPlayerLevelUp", source, level, experience_rnl)
else
setElementData(source, "experience", experience_r)
end
end
setAccountData(theAccount, "level", getElementData(source, "level"))
setAccountData(theAccount, "experience", getElementData(source, "experience"))
end
end
end)
[ Dodano: 2014-05-12, 19:19 ]
Teraz ?adny team nie wo?e spawni?a ut dla vip?w, tak?e oni.
Wyskakuje: "Ten pojazd jest tylko dla graczy VIP!"
local exprequired = { }
addEventHandler("onResourceStart", resourceRoot,
function ( )
exports.scoreboard:scoreboardAddColumn ( "level", root, 50, "Level" )
local file = xmlLoadFile("exprequired.xml")
for i, node in ipairs (xmlNodeGetChildren(file)) do
local EXPRequired = tonumber(xmlNodeGetAttribute(node, "EXPRequired"))
table.insert(exprequired, EXPRequired)
end
for i, thePlayer in ipairs(getElementsByType("player")) do
local theAccount = getPlayerAccount(thePlayer)
if (theAccount) and not (isGuestAccount(theAccount)) then
local level = tonumber(getAccountData(theAccount, "level"))
local experience = tonumber(getAccountData(theAccount, "experience"))
setElementData(thePlayer, "level", level or 1)
setElementData(thePlayer, "experience", experience or 0)
setElementData(thePlayer, "experience_r", tonumber(exprequired[level or 1]))
end
end
end)
addEventHandler("onPlayerLogout", getRootElement(),
function ( )
if (getElementData(source, "level")) then
removeElementData(source, "level")
removeElementData(source, "experience")
removeElementData(source, "experience_r")
end
end)
addEventHandler("onPlayerLogin", getRootElement(),
function (_,account)
local level = tonumber(getAccountData(account, "level"))
local experience = tonumber(getAccountData(account, "experience"))
setElementData(source, "level", level or 1)
setElementData(source, "experience", experience or 0)
setElementData(source, "experience_r", tonumber(exprequired[level or 1]))
end)
addEventHandler("onElementDataChange", getRootElement(),
function (dataName)
if (getElementType(source) == "player") and (dataName == "experience") then
local theAccount = getPlayerAccount(source)
if (theAccount) and not (isGuestAccount(theAccount)) then
local level = getElementData(source, "level")
local experience = getElementData(source, "experience")
local experience_r = getElementData(source, "experience_r")
if tonumber(experience >= experience_r) then
local newLvl = level+1
local experience_rnl = exprequired[newLvl]
if (experience_rnl) then
local amountbonus = experience-experience_r
setElementData(source, "level", newLvl)
setElementData(source, "experience", amountbonus)
setElementData(source, "experience_r", experience_rnl)
triggerClientEvent(source, "onClientPlayerLevelUp", source, level, experience_rnl)
triggerEvent("onClientPlayerLevelUp", source, level, experience_rnl)
else
setElementData(source, "experience", experience_r)
end
end
setAccountData(theAccount, "level", getElementData(source, "level"))
setAccountData(theAccount, "experience", getElementData(source, "experience"))
end
end
end)
addEvent("onZombieWasted", true)
addEventHandler("onZombieWasted", getRootElement(),
function(attacker)
if (attacker) then
local exp = tonumber(get("Kill_Zombie_EXP")) or false
if (exp) and (type(exp) == "number") then
if (getElementData(attacker, "level")) then
givePlayerExp(attacker, exp)
end
end
end
end)
addEventHandler("onPlayerWasted", getRootElement(),
function(_, attacker)
if (attacker) then
local exp = tonumber(get("Kill_Player_EXP")) or false
if (exp) and (type(exp) == "number") then
if (getElementData(attacker, "level")) then
givePlayerExp(attacker, exp)
end
end
end
end)
function givePlayerExp(thePlayer, amountEXP)
if (isElement(thePlayer)) and not (isGuestAccount(getPlayerAccount(thePlayer))) then
local experience = getElementData(thePlayer, "experience")
if (experience) then
setElementData(thePlayer,"experience", tonumber(experience+amountEXP))
end
end
end
function takePlayerExp(thePlayer, amountEXP)
if (isElement(thePlayer)) and not (isGuestAccount(getPlayerAccount(thePlayer))) then
local experience = getElementData(thePlayer, "experience")
if (experience) then
local newEXP = tonumber(experience-amountEXP)
if (newEXP < 0) then
setElementData(thePlayer, "experience", 0)
else
setElementData(thePlayer, "experience", newEXP)
end
end
end
end
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach