ALGUEM ME AJUDA NESSE SCRIPT PF ESTÁ DANDO ERRO
QD QUALQUER CHAR LOGA APARECE ISSO NA DISTRO
[Error - CreatureScript Interface]
data/creaturescripts/scripts/expbonuspordominarcityguild.lua:onLogin
Description:
...aturescripts/scripts/expbonuspordominarcityguild.lua:19: attempt to call glob
al 'getGuildExpRate' (a nil value)
stack traceback:
...aturescripts/scripts/expbonuspordominarcityguild.lua:19: in function
<...aturescripts/scripts/expbonuspordominarcityguild.lua:17>
[GOD] has logged out.
script
function onTarget(cid, target)
local m, playerGuild = cityMonsters[getCreatureName(target)], getPlayerGuildId(cid)
if isPlayer(cid) and isMonster(target) and m and playerGuild > 0 then
return getGlobalStorageValue(DEFAULT_STORAGE + m) ~= playerGuild
end
return true
end
function onStatsChange(cid, attacker, type, combat, value)
if isPlayer(attacker) and isMonster(cid) and type == STATSCHANGE_HEALTHLOSS then
local m, playerGuild = cityMonsters[getCreatureName(cid)], getPlayerGuildId(attacker)
if m and playerGuild > 0 then
return getGlobalStorageValue(DEFAULT_STORAGE + m) ~= playerGuild
end
end
return true
end
function onLogin(cid)
local guildId = getPlayerGuildId(cid)
if guildId > 0 and getGuildExpRate(guildId) > 1 then
doPlayerSetExperienceRate(cid, getGuildExpRate(guildId))
end
registerCreatureEvent(cid, "mTarget")
registerCreatureEvent(cid, "mStatsChange")
return true
end
function onDeath(cid, corpse, deathList)
local killer, m = deathList[1], cityMonsters[getCreatureName(cid)]
if killer and isPlayer(killer) and m then
local atualGuild, playerGuild = getPlayerStorageValue(cid, DEFAULT_STORAGE + m), getPlayerGuildId(killer)
if playerGuild > 0 and atualGuild ~= playerGuild then
if atualGuild > -1 then
setGuildExperience(atualGuild, getGuildExpRate(atualGuild) - 0.20)
end
setGuildExperience(playerGuild, getGuildExpRate(playerGuild) + 0.05)
setGlobalStorageValue(DEFAULT_STORAGE + m, playerGuild)
broadcastMessage("A guild "..getPlayerGuildName(killer).." acaba de dominar o "..getCreatureName(cid):explode(" ")[2].."!")
end
end
return true
end