BrunooMaciell 85 Postado Junho 21, 2013 Share Postado Junho 21, 2013 Estou aqui pra pedir uma ajuda com um bug numa script que da dor de cabeça !! porque nela ja foi arrumado +- 3 bugs e quando arruma um aparece outro =/ BUG [21/06/2013 12:02:02] [Error - CreatureScript Interface][21/06/2013 12:02:02] data/creaturescripts/scripts/exp.lua:onStatsChange[21/06/2013 12:02:02] Description:[21/06/2013 12:02:02] data/creaturescripts/scripts/exp.lua:470: attempt to index field '?' (a nil value)[21/06/2013 12:02:02] stack traceback:[21/06/2013 12:02:03] data/creaturescripts/scripts/exp.lua:470: in function SCRIPT local combats = { --alterado v2.6 \/[PSYCHICDAMAGE] = {cor = COLOR_PSYCHIC},[GRASSDAMAGE] = {cor = COLOR_GRASS},[POISONEDDAMAGE] = {cor = COLOR_GRASS},[FIREDAMAGE] = {cor = COLOR_FIRE2},[bURNEDDAMAGE] = {cor = COLOR_BURN},[WATERDAMAGE] = {cor = COLOR_WATER},[iCEDAMAGE] = {cor = COLOR_ICE},[NORMALDAMAGE] = {cor = COLOR_NORMAL},[FLYDAMAGE] = {cor = COLOR_FLYING},[GHOSTDAMAGE] = {cor = COLOR_GHOST},[GROUNDDAMAGE] = {cor = COLOR_GROUND},[ELECTRICDAMAGE] = {cor = COLOR_ELECTRIC},[ROCKDAMAGE] = {cor = COLOR_ROCK},[bUGDAMAGE] = {cor = COLOR_BUG},[FIGHTDAMAGE] = {cor = COLOR_FIGHTING},[DRAGONDAMAGE] = {cor = COLOR_DRAGON},[POISONDAMAGE] = {cor = COLOR_POISON},[DARKDAMAGE] = {cor = COLOR_DARK},[sTEELDAMAGE] = {cor = COLOR_STEEL},[MIRACLEDAMAGE] = {cor = COLOR_PSYCHIC},[DARK_EYEDAMAGE] = {cor = COLOR_GHOST},[sEED_BOMBDAMAGE] = {cor = COLOR_GRASS},[sACREDDAMAGE] = {cor = COLOR_FIRE2},}--alterado v2.5 tabelas agora estao em lib/configuration.lualocal function sendPlayerDmgMsg(cid, text)if not isCreature(cid) then return true enddoPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, text)endlocal spcevo = {["Poliwhirl"] = {"Poliwrath", "Politoed"},["Gloom"] = {"Bellossom", "Vileplume"},["Tyrogue"] = {"Hitmonchan", "Hitmontop", "Hitmonlee"}}local function doEvolveWild(cid)if not isCreature(cid) or getCreatureHealth(cid) <= 0 then return true endlocal name = getCreatureName(cid)local evolution = "none"if spcevo[name] thenevolution = spcevo[name][math.random(1, #spcevo[name])]elseif poevo[name] thenevolution = poevo[name].evolutionendlocal a = getPokemonStatus(name)if not a or evolution == "none" then return true endlocal pk = {}local players = getSpectators(getThingPos(cid), 7, 7)if players thenfor pp = 1, #players dolocal this = players[pp]if isCreature(this) and isPlayer(this) and (getCreatureTarget(this) == cid or getDamageMapPercent(this, cid) > 0) thendoSendMagicEffect(getThingPos(this), 173)local expstring = cid.."expEx"pk[this] = getItemAttribute(getPlayerSlotItem(this, 8).uid, expstring)doItemSetAttribute(getPlayerSlotItem(this, 8).uid, expstring, 0)endendendlocal level = getPokemonLevel(cid)local pos = getThingPos(cid)local gender = getCreatureSkull(cid)local lifepercentage = 1 - ((getCreatureHealth(cid) * 1.3) / getCreatureMaxHealth(cid))local lookdir = getCreatureLookDir(cid)local status = {}status.offense = getOffense(cid) + a.off * 8status.defense = getDefense(cid) + a.def * 8status.agi = getSpeed(cid) + a.agi * 8status.spatk = getSpecialAttack(cid) + a.spatk * 8status.vit = getVitality(cid) + a.vit * 4doRemoveCreature(cid)local evo = doCreateMonster(evolution, pos)setWildPokemonLevel(evo, level, status)doCreatureSetLookDir(evo, lookdir)doCreatureSetSkullType(evo, gender)doCreatureAddHealth(evo, -getCreatureMaxHealth(evo) * lifepercentage)doSendMagicEffect(getThingPos(evo), 18)for attacker, experience in pairs (pk) dodoWildAttackPlayer(evo, attacker)local expstring = evo.."expEx"local exp = experience or 0doItemSetAttribute(getPlayerSlotItem(attacker, 8).uid, expstring, exp)endsendFinishEvolutionEffect(evo, true)addEvent(sendFinishEvolutionEffect, 550, evo, true)addEvent(sendFinishEvolutionEffect, 1050, evo)endlocal races = {[4] = {cor = COLOR_FIRE2},[6] = {cor = COLOR_WATER},[7] = {cor = COLOR_NORMAL},[8] = {cor = COLOR_FIRE2},[9] = {cor = COLOR_FIGHTING},[10] = {cor = COLOR_FLYING},[11] = {cor = COLOR_GRASS},[12] = {cor = COLOR_POISON},[13] = {cor = COLOR_ELECTRIC},[14] = {cor = COLOR_GROUND},[15] = {cor = COLOR_PSYCHIC},[16] = {cor = COLOR_ROCK},[17] = {cor = COLOR_ICE},[18] = {cor = COLOR_BUG},[19] = {cor = COLOR_DRAGON},[20] = {cor = COLOR_GHOST},[21] = {cor = COLOR_STEEL},[22] = {cor = COLOR_DARK},[1] = {cor = 180},[2] = {cor = 180},[3] = {cor = 180},[5] = {cor = 180},}local damages = {GROUNDDAMAGE, ELECTRICDAMAGE, ROCKDAMAGE, FLYDAMAGE, BUGDAMAGE, FIGHTINGDAMAGE, DRAGONDAMAGE, POISONDAMAGE, DARKDAMAGE, STEELDAMAGE}local fixdmgs = {PSYCHICDAMAGE, COMBAT_PHYSICALDAMAGE, GRASSDAMAGE, FIREDAMAGE, WATERDAMAGE, ICEDAMAGE, NORMALDAMAGE, GHOSTDAMAGE}local ignored = {POISONEDDAMAGE, BURNEDDAMAGE} --alterado v2.6local cannotkill = {BURNEDDAMAGE, POISONEDDAMAGE}function onStatsChange(cid, attacker, type, combat, value)if combat == FLYSYSTEMDAMAGE then return false endif isPlayer(cid) and getCreatureOutfit(cid).lookType == 814 then return false end -- TVlocal damageCombat = combatif not isCreature(attacker) then --alterado v2.5 cid == attackerif not isInArray(fixdamages, combat) and combats[combat] thendoSendAnimatedText(getThingPos(cid), value, combats[combat].cor)endreturn trueend----------------------------------------------------alterado v2.6 retirado os combats sleep_powder e poison_powder daki!--------------------------------------------------if isMonster(cid) thenlocal valor = valueif not pokes[getCreatureName(cid)] and damageCombat == COMBAT_PHYSICALDAMAGE thenvalor = getOffense(attacker) * playerDamageReductiondoCreatureAddHealth(cid, -math.abs(valor), 3, races[7].cor) --alterado v2.6 dano nos npcsreturn falseelseif not pokes[getCreatureName(cid)] and damageCombat ~= COMBAT_PHYSICALDAMAGE thendoCreatureAddHealth(cid, -math.abs(valor), 3, combats[damageCombat].cor)return falseendend--------------------------------------------------if isPlayer(attacker) thenlocal valor = valueif valor > getCreatureHealth(cid) thenvalor = getCreatureHealth(cid)endif combat == COMBAT_PHYSICALDAMAGE thenreturn falseendif combat == PHYSICALDAMAGE thendoSendMagicEffect(getThingPos(cid), 3)doSendAnimatedText(getThingPos(cid), valor, races[getMonsterInfo(getCreatureName(cid)).race].cor)endif combats[damageCombat] and not isInArray(fixdmgs, damageCombat) thendoSendAnimatedText(getThingPos(cid), valor, combats[damageCombat].cor)endif #getCreatureSummons(attacker) >= 1 and not isInArray({POISONEDDAMAGE, BURNEDDAMAGE}, combat) thendoPlayerSendTextMessage(attacker, MESSAGE_STATUS_DEFAULT, "Your "..getPokeName(getCreatureSummons(attacker)[1]).." dealt "..valor.." damage to "..getSomeoneDescription(cid)..".")endreturn trueend--------------------------------------------------if isPlayer(cid) and #getCreatureSummons(cid) >= 1 and type == STATSCHANGE_HEALTHLOSS thenreturn falseend--------------------------------------------------if isPlayer(cid) and #getCreatureSummons(cid) <= 0 and type == STATSCHANGE_HEALTHLOSS thenif isSummon(attacker) or isPlayer(attacker) thenif canAttackOther(cid, attacker) == "Cant" then return false endendlocal valor = 0if combat == COMBAT_PHYSICALDAMAGE thenvalor = getOffense(attacker)elsevalor = getSpecialAttack(attacker)endvalor = valor * playerDamageReductionvalor = valor * math.random(83, 117) / 100if valor >= getCreatureHealth(cid) thenvalor = getCreatureHealth(cid)endvalor = math.floor(valor)if valor >= getCreatureHealth(cid) thenif getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 thensetPlayerStorageValue(cid, 6598754, -1)setPlayerStorageValue(cid, 6598755, -1)doRemoveCondition(cid, CONDITION_OUTFIT) --alterado v2.7doTeleportThing(cid, posBackPVP, false)doCreatureAddHealth(cid, getCreatureMaxHealth(cid))return falseendif getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 thendoRemoveCondition(cid, CONDITION_OUTFIT)setPlayerStorageValue(cid, 17000, 0)setPlayerStorageValue(cid, 17001, 0)setPlayerStorageValue(cid, 63215, -1)doChangeSpeed(cid, PlayerSpeed)local item = getPlayerSlotItem(cid, 8)local btype = getPokeballType(item.itemid)if #getCreatureSummons(cid) <= 0 thenif isInArray(pokeballs[btype].all, item.itemid) thendoTransformItem(item.uid, pokeballs[btype].off)doItemSetAttribute(item.uid, "hp", 0)endendend------------Edited Golden Arena------------------ --alterado v2.7 \/\/if getPlayerStorageValue(cid, 22545) == 1 thenif getGlobalStorageValue(22550) == 1 thendoPlayerSendTextMessage(cid, 20, "You are the last survivor of the golden arena! Take your reward!")doPlayerAddItem(cid, 2152, getPlayerStorageValue(cid, 22551)*2)setPlayerStorageValue(cid, 22545, -1)doTeleportThing(cid, getClosestFreeTile(cid, getClosestFreeTile(cid, posBackGolden)), false)doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid))setPlayerRecordWaves(cid)endGoldenArena()return falseelsesetGlobalStorageValue(22550, getGlobalStorageValue(22550)-1)setPlayerStorageValue(cid, 22545, -1)doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false)doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid))setPlayerRecordWaves(cid)return falseendend------------------------------------------- /\/\---local corpse = doCreateItem(3058, 1, getThingPos(cid))doDecayItem(corpse)doItemSetAttribute(corpse, "pName", getCreatureName(cid)) --alterado v2.7 coloca corpse quando o player morre!doItemSetAttribute(corpse, "attacker", getCreatureName(attacker))doItemSetAttribute(corpse, "article", getPlayerSex(cid) == 0 and "She" or "He")---if getPlayerStorageValue(cid, 98796) >= 1 thensetPlayerStorageValue(cid, 98796, -1)setPlayerStorageValue(cid, 98797, -1) --alterado v2.8doTeleportThing(cid, SafariOut, false)doSendMagicEffect(getThingPos(cid), 21)doPlayerSendTextMessage(cid, 27, "You die in the saffari...")return falseend---enddoCreatureAddHealth(cid, -valor, 3, 180)if not isPlayer(cid) and valor > 0 thenaddEvent(sendPlayerDmgMsg, 5, cid, "You lost "..valor.." hitpoints due to an attack from "..getSomeoneDescription(attacker)..".")endreturn falseend--------------------------------------------------if type == STATSCHANGE_HEALTHGAIN thenif cid == attacker thenreturn trueendif isSummon(cid) and isSummon(attacker) and canAttackOther(cid, attacker) == "Cant" thenreturn falseendreturn trueend--------------------------------------------------if isMonster(attacker) and getPlayerStorageValue(attacker, 201) ~= -1 thenif isPlayer(cid) thenreturn falseendif getPlayerStorageValue(getCreatureMaster(cid), ginasios[getPlayerStorageValue(attacker, 201)].storage) ~= 1 thenreturn falseendend--------------------------------------------------if isMonster(cid) and getPlayerStorageValue(cid, 201) ~= -1 thenif getPlayerStorageValue(getCreatureMaster(attacker), ginasios[getPlayerStorageValue(cid, 201)].storage) ~= 1 thenreturn falseendend--------------------------------------------------if ehMonstro(cid) and ehMonstro(attacker) thenreturn false --edited monstro nao atacar monstroend-----------------------------------------------------------------------REFLECT-----------------------if getPlayerStorageValue(cid, 21099) >= 1 and combat ~= COMBAT_PHYSICALDAMAGE thenif not isInArray({"Team Claw", "Team Slice"}, getPlayerStorageValue(attacker, 21102)) thendoSendMagicEffect(getThingPosWithDebug(cid), 135)doSendAnimatedText(getThingPosWithDebug(cid), "REFLECT", COLOR_GRASS)addEvent(docastspell, 100, cid, getPlayerStorageValue(attacker, 21102))if getCreatureName(cid) == "Wobbuffet" thendoRemoveCondition(cid, CONDITION_OUTFIT)endsetPlayerStorageValue(cid, 21099, -1) --alterado v2.6setPlayerStorageValue(cid, 21100, 1)setPlayerStorageValue(cid, 21101, attacker)setPlayerStorageValue(cid, 21103, getTableMove(attacker, getPlayerStorageValue(attacker, 21102)).f)setPlayerStorageValue(cid, 21104, getCreatureOutfit(attacker).lookType)return falseendend-------------------------------------------------local multiplier = 1if isCreature(cid) thenpoketype1 = pokes[getCreatureName(cid)].type --alterado v2.6poketype2 = pokes[getCreatureName(cid)].type2endif not poketype1 or not poketype2 then return false end --alterado v2.6if getCreatureCondition(cid, CONDITION_INVISIBLE) thenreturn falseendif damageCombat ~= COMBAT_PHYSICALDAMAGE and not isInArray(ignored, damageCombat) and effectiveness[damageCombat] thenif isInArray(effectiveness[damageCombat].super, poketype1) thenmultiplier = multiplier + 0.5endif isInArray(effectiveness[damageCombat].super, poketype2) thenmultiplier = multiplier + 0.5endif isInArray(effectiveness[damageCombat].weak, poketype1) thenmultiplier = multiplier - 0.25 --alterado v2.3 efetividade q nem na pxg...endif isInArray(effectiveness[damageCombat].weak, poketype2) thenmultiplier = multiplier - 0.25endif isInArray(effectiveness[damageCombat].non, poketype1) or isInArray(effectiveness[damageCombat].non, poketype2) thenif isInArray(specialabilities["foresight"], getCreatureName(attacker)) then --alterado v2.5multiplier = 0.5 --alterado v2.6endendelseif combat == COMBAT_PHYSICALDAMAGE thenif isGhostPokemon(cid) then --alterado v2.3if not isInArray(specialabilities["foresight"], getCreatureName(attacker)) then --alterado v2.5doSendMagicEffect(getThingPos(cid), 3)return falseendendlocal cd = getPlayerStorageValue(attacker, conds["Miss"])local cd2 = getPlayerStorageValue(attacker, conds["Confusion"]) --alterado v2.5local cd3 = getPlayerStorageValue(attacker, conds["Stun"])if cd >= 0 or cd2 >= 0 or cd3 >= 0 thenif math.random(1, 100) > 50 then --50% chance de da miss no atk fisicodoSendMagicEffect(getThingPos(cid), 211)doSendAnimatedText(getThingPos(attacker), "MISS", 215)return falseendendend--------------------------------------------------local valor = valueif multiplier == 1.5 and poketype2 == "no type" thenmultiplier = 2 --alterado v2.6elseif multiplier == 1.5 and poketype2 ~= "no type" thenmultiplier = 1.75elseif multiplier == 1.25 then --edited effetivines = pxgmultiplier = 1end--------------------------------------------------if isSummon(cid) and isSummon(attacker) thenif getCreatureMaster(cid) == getCreatureMaster(attacker) thenreturn falseendif canAttackOther(cid, attacker) == "Cant" thenreturn falseendendlocal randomRange = math.random(83, 117) / 100local block = 1if not isPlayer(cid) thenif combat == COMBAT_PHYSICALDAMAGE thenblock = 1 - (getDefense(cid) / (getOffense(attacker) + getDefense(cid)))if getPokemonGender(attacker) == SEX_MALE thenblock = block + 0.2endif getPokemonGender(cid) == SEX_FEMALE thenblock = block - 0.2endvalor = getOffense(attacker) * blockif getOffenseInRage(attacker) >= 1500 then --alterado v2.8valor = valor * 0.3endif isInArray(specialabilities["counter"], getCreatureName(cid)) thenif math.random(1, 100) <= 10 thendoCreatureAddHealth(attacker, -valor, 3, 180) --alterado v2.5valor = 0doSendAnimatedText(getThingPosWithDebug(cid), "COUNTER", 215)endendelseblock = 1 - (getDefense(cid) / (getSpecialAttack(attacker) + getDefense(cid)))valor = valor * block * generalSpecialAttackReductionif isSummon(cid) thenvalor = valor * summonSpecialDamageReduction - getPokemonLevel(cid) / 2endendendvalor = valor * multipliervalor = valor * randomRangeif isSummon(attacker) thenvalor = valor * getHappinessRate(attacker)elsevalor = valor * summonReductionendvalor = math.floor(valor)if combat == BURNEDDAMAGE thenvalor = value * getResistance(cid, FIREDAMAGE)elseif combat == POISONEDDAMAGE thenvalor = value * getResistance(cid, POISONDAMAGE)endif math.random(1, 100) == 4 and not isInArray(ignorecritical, combat) thendoSendAnimatedText(getThingPos(attacker), "CRITICAL", 215)valor = valor * 2end-------------------------Edited CLAN SYSTEM-----------------------------------if isSummon(attacker) and getPlayerStorageValue(getCreatureMaster(attacker), 86228) >= 1 thenvalor = valor*getClanPorcent(getCreatureMaster(attacker), combat, "atk")elseif isSummon(cid) and getPlayerStorageValue(getCreatureMaster(cid), 86228) >= 1 then --alterado v2.3valor = valor - (valor*getClanPorcent(getCreatureMaster(cid), combat, "def", pokes[getCreatureName(cid)].type, pokes[getCreatureName(cid)].type2))end--------------------------------------------------------------------------------------------- Edited Proteção --------------------------------if valor <= 10 thenvalor = math.random(15, 25)end--------------------------------------------------------------------------------------------- FEAR / ROAR ------------------------------------if getPlayerStorageValue(attacker, conds["Fear"]) >= 1 then --alterado v2.5!!return trueend---------------------------------------------------------------------------if damageCombat ~= COMBAT_PHYSICALDAMAGE and not isInArray(ignored, damageCombat) thenif isInArray(effectiveness[damageCombat].non, poketype1) and effectiveness[damageCombat] or isInArray(effectiveness[damageCombat].non, poketype2) and effectiveness[damageCombat] thenif not isInArray(specialabilities["foresight"], getCreatureName(attacker)) and getPlayerStorageValue(attacker, 999457) <= 0 thenvalor = valor * 0 --alterado v2.5endendendif damageCombat == GROUNDDAMAGE thenif isInArray(specialabilities["levitate"], getCreatureName(cid)) thenvalor = 0 --alterado v2.5endend-----------------------------------------------------------------------------local p = getThingPos(cid) --poke na pos backupif p.x == 1 and p.y == 1 and p.z == 10 thenreturn false --alterado v2.2endif getPlayerStorageValue(cid, 9658783) == 1 thenreturn false --alterado v2.4 -- skill camuflage/future sight/acid armor e afinsend-------------------------------------------------------------------------------------------- FIGHT MODE -----------------------if useOTClient thenif isSummon(cid) then --alterado v2.7 soh funciona com o OTClient q eu disponibilizei...local master = getCreatureMaster(cid)if getPlayerStorageValue(master, 248759) == 1 thenvalor = valor * 1.1elseif getPlayerStorageValue(master, 248759) == 3 thenvalor = valor * 0.9endendif isSummon(attacker) thenlocal master = getCreatureMaster(attacker)if getPlayerStorageValue(master, 248759) == 1 thenvalor = valor * 1.1elseif getPlayerStorageValue(master, 248759) == 3 thenvalor = valor * 0.9endendend-----------------------------------------------------------------------------if valor >= getCreatureHealth(cid) thenif isInArray(cannotKill, combat) and isPlayer(cid) thenvalor = getCreatureHealth(cid) - 1elsevalor = getCreatureHealth(cid)endendvalor = math.floor(valor) --alterado v2.5------------------ SKILLs Q CURAM O ATTACKER ---------------------------------local function doHeal(cid, amount)if (getCreatureHealth(cid) + amount) >= getCreatureMaxHealth(cid) thenamount = math.abs(getCreatureHealth(cid)-getCreatureMaxHealth(cid))endif getCreatureHealth(cid) ~= getCreatureMaxHealth(cid) then --alterado v2.6doCreatureAddHealth(cid, amount)doSendAnimatedText(getThingPosWithDebug(cid), "+"..amount.."", 65)endendif damageCombat == PSYCHICDAMAGE or damageCombat == MIRACLEDAMAGE thenif getPlayerStorageValue(attacker, 95487) >= 1 thendoHeal(attacker, valor)setPlayerStorageValue(attacker, 95487, -1) --alterado v2.6endelseif damageCombat == SEED_BOMBDAMAGE thendoHeal(attacker, valor)end------------------------------------------------------SACRED FIRE-----------------------if combat == SACREDDAMAGE and not ehNPC(cid) then --alterado v2.6local ret = {}ret.id = cidret.cd = 9ret.check = getPlayerStorageValue(cid, conds["Silence"])ret.eff = 39ret.cond = "Silence"doCondition2(ret)elseif combat == MUDBOMBDAMAGE and not ehNPC(cid) thenlocal ret = {} --alterado v2.8ret.id = cidret.cd = 9ret.eff = 34ret.check = getPlayerStorageValue(cid, conds["Miss"])ret.spell = spellret.cond = "Miss"doCondition2(ret)end--------------Passiva Lifesteal Clobat------------if combat == COMBAT_PHYSICALDAMAGE thenif getCreatureName(attacker) == "Crobat" then --alterado v2.4doCreatureAddHealth(attacker, math.floor(valor))doSendAnimatedText(getThingPos(attacker), "+ "..math.floor(valor), 30)endend--------------------------------------------if isSummon(attacker) and not isSummon(cid) and not isPlayer(cid) thenlocal expstring = cid.."expEx"if getItemAttribute(getPlayerSlotItem(getCreatureMaster(attacker), 8).uid, expstring) == null thendoItemSetAttribute(getPlayerSlotItem(getCreatureMaster(attacker), 8).uid, expstring, 0)endlocal exp = valor / getCreatureMaxHealth(cid)local ball = getPlayerSlotItem(getCreatureMaster(attacker), 8).uiddoItemSetAttribute(ball, expstring, getItemAttribute(ball, expstring) + exp)if getItemAttribute(ball, expstring) > 1 thendoItemSetAttribute(ball, expstring, 1)endendif isSummon(attacker) thenif combat == COMBAT_PHYSICALDAMAGE thendoTargetCombatHealth(getCreatureMaster(attacker), cid, PHYSICALDAMAGE, -valor, -valor, 255)addEvent(doDoubleHit, 1000, attacker, cid, valor, races) --alterado v2.6 agilityelsedoTargetCombatHealth(getCreatureMaster(attacker), cid, damageCombat, -valor, -valor, 255)endif not isSummon(cid) and not isPlayer(cid) and math.random(1, wildEvolveChance) == math.random(1, wildEvolveChance) thenaddEvent(doEvolveWild, math.random(1, 2500), cid)endelseif combat ~= COMBAT_PHYSICALDAMAGE thendoCreatureAddHealth(cid, -math.abs(valor), 3, combats[damageCombat].cor)elsedoCreatureAddHealth(cid, -math.abs(valor), 3, races[getMonsterInfo(getCreatureName(cid)).race].cor)addEvent(doDoubleHit, 1000, attacker, cid, valor, races) --alterado v2.6 agilityendif isSummon(cid) thenaddEvent(sendPlayerDmgMsg, 5, getCreatureMaster(cid), "Your "..getCreatureName(cid).." lost "..valor.." hitpoints due to an attack from "..getSomeoneDescription(attacker)..".")endendif damageCombat == FIREDAMAGE and not isBurning(cid) thenlocal ret = {}ret.id = cidret.cd = math.random(5, 12) --alterado v2.5ret.check = getPlayerStorageValue(cid, conds["Burn"])ret.damage = isSummon(attacker) and getMasterLevel(attacker)+getPokemonBoost(attacker) or getPokemonLevel(attacker)ret.cond = "Burn"doCondition2(ret)elseif damageCombat == POISONDAMAGE and not isPoisoned(cid) thenlocal ret = {}ret.id = cidret.cd = math.random(6, 15) --alterado v2.5ret.check = getPlayerStorageValue(cid, conds["Poison"])local lvl = isSummon(attacker) and getMasterLevel(attacker) or getPokemonLevel(attacker)ret.damage = math.floor((getPokemonLevel(attacker)+lvl)/2)ret.cond = "Poison"doCondition2(ret)end------------------------------------POTIONS-------------------------------------------if isSummon(cid) and type == STATSCHANGE_HEALTHLOSS thenif getPlayerStorageValue(cid, 173) >= 1 thenif damageCombat ~= BURNEDDAMAGE and damageCombat ~= POISONEDDAMAGE thensetPlayerStorageValue(cid, 173, -1) --alterado v2.6doSendAnimatedText(getThingPos(cid), "Lost Heal", 144)endendend----------------------------------------PASSIVAS------------------------------------- --alterado v2.7 \/-------------------------------------------Counter Helix------------------------------------if passivesChances["Helix"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Helix"][getCreatureName(cid)] thendocastspell(cid, "Counter Helix")end-------------------------------------------Lava Counter/Electricity----------------------------if passivesChances["Fire_Thunder"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Fire_Thunder"][getCreatureName(cid)] thendocastspell(cid, "Lava-Electricity")end---------------------------------------Stunning Confusion-----------------------------------------if passivesChances["Stunning"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Stunning"][getCreatureName(cid)] thendocastspell(cid, "Stunning Confusion")end-----------------------------------------Groundshock-----------------------------------if passivesChances["Groundshock"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Groundshock"][getCreatureName(cid)] thendocastspell(cid, "Groundshock")end--------------------------------------Electric Charge---------------------------------------------if passivesChances["Electric Charge"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Electric Charge"][getCreatureName(cid)] thendocastspell(cid, "Electric Charge", 0, 0)end-------------------------------------Melody------------------------------------if passivesChances["Melody"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Melody"][getCreatureName(cid)] thendocastspell(cid, "Melody")end------------------------------------- Dragon Fury / Fury ---------------------------------------if passivesChances["Dragon Fury"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Dragon Fury"][getCreatureName(cid)] thendocastspell(cid, "Dragon Fury", 0, 0)end------------------------------------- Mega Drain ---------------------------------------if passivesChances["Mega Drain"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Mega Drain"][getCreatureName(cid)] thendocastspell(cid, "Mega Drain")end------------------------------------- Spores Reaction ---------------------------------------if passivesChances["Spores Reaction"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Spores Reaction"][getCreatureName(cid)] thendocastspell(cid, "Spores Reaction")end------------------------------------ Amnesia ----------------------------------------if passivesChances["Amnesia"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Amnesia"][getCreatureName(cid)] thendocastspell(cid, "Amnesia", 0, 0)end----------------------------------- Zen Mind -----------------------------------------if passivesChances["Zen Mind"][getCreatureName(cid)] and isWithCondition(cid) and math.random(1, 100) <= passivesChances["Zen Mind"][getCreatureName(cid)] thendocastspell(cid, "Zen Mind", 0, 0)end---------------------------------- Mirror Coat ---------------------------------------if passivesChances["Mirror Coat"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Mirror Coat"][getCreatureName(cid)] thendocastspell(cid, "Mirror Coat", 0, 0)end--------------------------------- Illusion -----------------------------------------return falseend Rep+ Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/ Compartilhar em outros sites More sharing options...
Soulviling 66 Postado Junho 21, 2013 Share Postado Junho 21, 2013 Usa pda? quando eu iniciei o server com essa tua script não ocorreu nenhum erro Substitui : if damageCombat ~= COMBAT_PHYSICALDAMAGE and not isInArray(ignored, damageCombat) then if isInArray(effectiveness[damageCombat].non, poketype1) and effectiveness[damageCombat] or isInArray(effectiveness[damageCombat].non, poketype2) and effectiveness[damageCombat] then if not isInArray(specialabilities["foresight"], getCreatureName(attacker)) and getPlayerStorageValue(attacker, 999457) <= 0 then valor = valor * 0 --alterado v2.5 end end end Por: if damageCombat ~= COMBAT_PHYSICALDAMAGE and not isInArray(ignored, damageCombat) then if isInArray(effectiveness[damageCombat].non, poketype1) or isInArray(effectiveness[damageCombat].non, poketype2) then if not isInArray(specialabilities["foresight"], getCreatureName(attacker)) and getPlayerStorageValue(attacker, 999457) <= 0 then valor = valor * 0 --alterado v2.5 end end end Pra ver se dar certo. Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1533529 Compartilhar em outros sites More sharing options...
BrunooMaciell 85 Postado Junho 21, 2013 Autor Share Postado Junho 21, 2013 sim e PDA este bug ele nao ocorre quando liga o server e sim durante o jogo durante ele online !! Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1533530 Compartilhar em outros sites More sharing options...
Soulviling 66 Postado Junho 22, 2013 Share Postado Junho 22, 2013 Sei, mas deu certo o script? Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1533626 Compartilhar em outros sites More sharing options...
BrunooMaciell 85 Postado Junho 22, 2013 Autor Share Postado Junho 22, 2013 Sei, mas deu certo o script? nao testei ainda jaja testo !! Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1533628 Compartilhar em outros sites More sharing options...
vital900 570 Postado Agosto 4, 2013 Share Postado Agosto 4, 2013 Tópico movido para a seção de dúvidas e pedidos resolvidos. Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1547476 Compartilhar em outros sites More sharing options...
vital900 570 Postado Agosto 4, 2013 Share Postado Agosto 4, 2013 Tópico movido para a seção de dúvidas e pedidos resolvidos. Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1547477 Compartilhar em outros sites More sharing options...
Stigal 585 Postado Abril 21, 2018 Share Postado Abril 21, 2018 A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. + Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda. * Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado. Link para o comentário https://xtibia.com/forum/topic/216465-encerrado-bug-exp/#findComment-1734924 Compartilhar em outros sites More sharing options...
Posts Recomendados