Postado Setembro 24, 2015 9 anos Galera poderiam me ajudar com esses bugs? \/ O erro do login é o seguinte. quando o player cria seu char pela primeira vez. já da 3 erros... e se ele logar sem pokemon na slot tb da erro. ja o goback eu não sei. Goback.lua local EFFECTS = { --[OutfitID] = {Effect} ["Magmar"] = 35, ["Shiny Magmar"] = 35, ["Shiny Magmortar"] = 35, ["Shiny Electivire"] = 48, ["Magmortar"] = 35, ["Electivire"] = 48, ["Jynx"] = 17, --alterado v1.5 ["Shiny Jynx"] = 17, ["Piloswine"] = 205, --alterado v1.8 ["Swinub"] = 205, } function onUse(cid, item, frompos, item2, topos) if exhaustion.get(cid, 6666) and exhaustion.get(cid, 6666) > 0 then return true end if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 or getPlayerStorageValue(cid, 75846) >= 1 or getPlayerStorageValue(cid, 5700) >= 1 then --alterado v1.9 << return true end local ballName = getItemAttribute(item.uid, "poke") local btype = getPokeballType(item.itemid) local usando = pokeballs[btype].use local effect = pokeballs[btype].effect if not effect then effect = 21 end unLock(item.uid) --alterado v1.8 if item.itemid == usando then if getPlayerStorageValue(cid, 990) == 1 then -- GYM doPlayerSendCancel(cid, "You can't return your pokemon during gym battles.") return true end if #getCreatureSummons(cid) > 1 and getPlayerStorageValue(cid, 212124) <= 0 then --alterado v1.6 if getPlayerStorageValue(cid, 637501) == -2 or getPlayerStorageValue(cid, 637501) >= 1 then BackTeam(cid) end end if #getCreatureSummons(cid) == 2 and getPlayerStorageValue(cid, 212124) >= 1 then doPlayerSendCancel(cid, "You can't do that while is controling a mind") return true --alterado v1.5 end if #getCreatureSummons(cid) <= 0 then if isInArray(pokeballs[btype].all, item.itemid) then doTransformItem(item.uid, pokeballs[btype].off) doItemSetAttribute(item.uid, "hp", 0) doPlayerSendCancel(cid, "This pokemon is fainted.") return true end end local cd = getCD(item.uid, "blink", 30) if cd > 0 then setCD(item.uid, "blink", 0) end local z = getCreatureSummons(cid)[1] if getCreatureCondition(z, CONDITION_INVISIBLE) and not isGhostPokemon(z) then return true end doReturnPokemon(cid, z, item, effect) elseif item.itemid == pokeballs[btype].on then if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_FEET).uid then doPlayerSendCancel(cid, "You must put your pokeball in the correct place!") return TRUE end local thishp = getItemAttribute(item.uid, "hp") if thishp <= 0 then if isInArray(pokeballs[btype].all, item.itemid) then doTransformItem(item.uid, pokeballs[btype].off) doItemSetAttribute(item.uid, "hp", 0) doPlayerSendCancel(cid, "This pokemon is fainted.") return true end end local pokemon = getItemAttribute(item.uid, "poke") if not pokes[pokemon] then return true end ----------------------- Sistema de nao poder carregar mais que 3 pokes lvl baixo e + q 1 poke de lvl medio/alto --------------------------------- if not isInArray({5, 6}, getPlayerGroupId(cid)) then local balls = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid) local low = {} local lowPokes = {"Rattata", "Caterpie", "Weedle", "Oddish", "Pidgey", "Paras", "Poliwag", "Bellsprout", "Magikarp", "Hoppip", "Sunkern"} if #balls >= 1 then for _, uid in ipairs(balls) do local nome = getItemAttribute(uid, "poke") if not isInArray(lowPokes, pokemon) and nome == pokemon then return doPlayerSendTextMessage(cid, 27, "Sorry, but you can't carry two pokemons equals!") else if nome == pokemon then table.insert(low, nome) end end end end if #low >= 3 then return doPlayerSendTextMessage(cid, 27, "Sorry, but you can't carry more than three pokemons equals of low level!") end end --------------------------------------------------------------------------------------------------------------------------------------------------- local x = pokes[pokemon] local boost = getItemAttribute(item.uid, "boost") or 0 if getPlayerLevel(cid) < (x.level+boost) then doPlayerSendCancel(cid, "You need level "..(x.level+boost).." to use this pokemon.") return true end ---------------------------- Sistema pokes de clan -------------------------------------- local shinysClan = { ["Shiny Fearow"] = {4, "Wingeon"}, ["Shiny Flareon"] = {1, "Volcanic"}, ["Shiny Vaporeon"] = {2, "Seavel"}, ["Shiny Jolteon"] = {9, "Raibolt"}, ["Shiny Hypno"] = {7, "Psycraft"}, ["Shiny Golem"] = {3, "Orebound"}, ["Shiny Vileplume"] = {8, "Naturia"}, ["Shiny Nidoking"] = {5, "Malefic"}, ["Shiny Hitmontop"] = {6, "Gardestrike"}, ["Shiny Metagross"] = {10, "IronHard"}, --alterado v1.4 } if shinysClan[pokemon] and (getPlayerGroupId(cid) < 4 or getPlayerGroupId(cid) > 6) then --alterado v1.9 \/ if getPlayerClanNum(cid) ~= shinysClan[pokemon][1] then doPlayerSendCancel(cid, "You need be a member of the clan "..shinysClan[pokemon][2].." to use this pokemon!") return true elseif getPlayerClanRank(cid) ~= 5 then doPlayerSendCancel(cid, "You need be atleast rank 5 to use this pokemon!") return true end end -------------------------------------------------------------------------------------- doSummonMonster(cid, pokemon) local pk = getCreatureSummons(cid)[1] if not isCreature(pk) then return true end ------------------------passiva hitmonchan------------------------------ if isSummon(pk) then --alterado v1.8 \/ if pokemon == "Shiny Hitmonchan" or pokemon == "Hitmonchan" then if not getItemAttribute(item.uid, "hands") then doSetItemAttribute(item.uid, "hands", 0) end local hands = getItemAttribute(item.uid, "hands") doSetCreatureOutfit(pk, {lookType = hitmonchans[pokemon][hands].out}, -1) end end ------------------------------------------------------------------------- ---------movement magmar, jynx------------- if EFFECTS[getCreatureName(pk)] then markPosEff(pk, getThingPos(pk)) sendMovementEffect(pk, EFFECTS[getCreatureName(pk)], getThingPos(pk)) end -------------------------------------------------------------------------- ---if getCreatureName(pk) == "Ditto" or getCreatureName(pk) == "Shiny Ditto" then --edited -- local left = getItemAttribute(item.uid, "transLeft") -- local name = getItemAttribute(item.uid, "transName") -- if left and left > 0 then -- setPlayerStorageValue(pk, 1010, name) -- doSetCreatureOutfit(pk, {lookType = getItemAttribute(item.uid, "transOutfit")}, -1) -- addEvent(deTransform, left * 1000, pk, getItemAttribute(item.uid, "transTurn")) -- doItemSetAttribute(item.uid, "transBegin", os.clock()) -- else -- setPlayerStorageValue(pk, 1010, getCreatureName(pk) == "Ditto" and "Ditto" or "Shiny Ditto") --edited -- end -- end if isGhostPokemon(pk) then doTeleportThing(pk, getPosByDir(getThingPos(cid), math.random(0, 7)), false) end doCreatureSetLookDir(pk, 2) adjustStatus(pk, item.uid, true, true, true) doRegenerateWithY(getCreatureMaster(pk), pk) doCureWithY(getCreatureMaster(pk), pk) doTransformItem(item.uid, item.itemid+1) local pokename = getPokeName(pk) --alterado v1.7 local mgo = gobackmsgs[math.random(1, #gobackmsgs)].go:gsub("doka", pokename) doCreatureSay(cid, mgo, TALKTYPE_SAY) doSendMagicEffect(getCreaturePosition(pk), effect) if useOTClient then doPlayerSendCancel(cid, '12//,show') --alterado v1.7 end else doPlayerSendCancel(cid, "This pokemon is fainted.") end if useKpdoDlls then doUpdateMoves(cid) end return true end Login.lua local config = { loginMessage = getConfigValue('loginMessage'), useFragHandler = getBooleanFromString(getConfigValue('useFragHandler')) } function onLogin(cid) local accountManager = getPlayerAccountManager(cid) if getPlayerLevel(cid) >= 1 and getPlayerLevel(cid) <= 80 then doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 90) doCreatureSetDropLoot(cid, false) end if getPlayerLevel(cid) >= 81 and getPlayerLevel(cid) <= 149 then doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 80) doCreatureSetDropLoot(cid, false) end if getPlayerLevel(cid) >= 150 then doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 75) doCreatureSetDropLoot(cid, false) end if(accountManager == MANAGER_NONE) then local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage if(lastLogin > 0) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str) str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "." else str = str end doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str) elseif(accountManager == MANAGER_NAMELOCK) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?") elseif(accountManager == MANAGER_ACCOUNT) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.") end if getCreatureName(cid) == "Account Manager" then local outfit = {} if accountManagerRandomPokemonOutfit then outfit = {lookType = getPokemonXMLOutfit(oldpokedex[math.random(151)][1])} else outfit = accountManagerOutfit end doSetCreatureOutfit(cid, outfit, -1) return true end if(not isPlayerGhost(cid)) then doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) end local outfit = {} if getPlayerVocation(cid) == 0 then doPlayerSetMaxCapacity(cid, 0) doPlayerSetVocation(cid, 1) setCreatureMaxMana(cid, 6) doPlayerAddSoul(cid, -getPlayerSoul(cid)) setPlayerStorageValue(cid, 19898, 0) if getCreatureOutfit(cid).lookType == 128 then outfit = {lookType = 510, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)} elseif getCreatureOutfit(cid).lookType == 136 then outfit = {lookType = 511, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)} end doCreatureChangeOutfit(cid, outfit) end registerCreatureEvent(cid, "dropStone") registerCreatureEvent(cid, "ExpVip") registerCreatureEvent(cid, "ShowPokedex") --alterado v1.6 registerCreatureEvent(cid, "ClosePokedex") --alterado v1.6 registerCreatureEvent(cid, "WatchTv") registerCreatureEvent(cid, "StopWatchingTv") registerCreatureEvent(cid, "WalkTv") registerCreatureEvent(cid, "RecordTv") registerCreatureEvent(cid, "PlayerLogout") registerCreatureEvent(cid, "WildAttack") registerCreatureEvent(cid, "Idle") registerCreatureEvent(cid, "PokemonIdle") registerCreatureEvent(cid, "EffectOnAdvance") registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "ReportBug") registerCreatureEvent(cid, "LookSystem") registerCreatureEvent(cid, "T1") registerCreatureEvent(cid, "T2") registerCreatureEvent(cid, "task_count") registerCreatureEvent(cid, "TP") registerCreatureEvent(cid, "RepLogin") registerCreatureEvent(cid, "NewLogin") registerCreatureEvent(cid, "pokemons") addEvent(doSendAnimatedText, 500, getThingPosWithDebug(cid), "Bem Vindo !", COLOR_BURN) if getPlayerStorageValue(cid, 99284) == 1 then setPlayerStorageValue(cid, 99284, -1) end if getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 then setPlayerStorageValue(cid, 6598754, -1) setPlayerStorageValue(cid, 6598755, -1) doRemoveCondition(cid, CONDITION_OUTFIT) --alterado v1.9 \/ doTeleportThing(cid, posBackPVP, false) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) end doChangeSpeed(cid, -(getCreatureSpeed(cid))) --///////////////////////////////////////////////////////////////////////////-- local storages = {17000, 63215, 17001, 13008, 5700} for s = 1, #storages do if not tonumber(getPlayerStorageValue(cid, storages)) then if s == 3 then setPlayerStorageValue(cid, storages, 1) elseif s == 4 then setPlayerStorageValue(cid, storages, -1) else if isBeingUsed(getPlayerSlotItem(cid, 8).itemid) then setPlayerStorageValue(cid, storages, 1) else setPlayerStorageValue(cid, storages, -1) end end doPlayerSendTextMessage(cid, 27, "Sorry, but a problem occurred on the server, but now it's alright") end end --/////////////////////////////////////////////////////////////////////////-- if getPlayerStorageValue(cid, 17000) >= 1 then -- fly local item = getPlayerSlotItem(cid, 8) local poke = getItemAttribute(item.uid, "poke") doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) doRemoveCondition(cid, CONDITION_OUTFIT) doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1) local apos = getFlyingMarkedPos(cid) apos.stackpos = 0 if getTileThingByPos(apos).itemid <= 2 then doCombatAreaHealth(cid, FIREDAMAGE, getFlyingMarkedPos(cid), 0, 0, 0, CONST_ME_NONE) doCreateItem(460, 1, getFlyingMarkedPos(cid)) end doTeleportThing(cid, apos, false) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end local posicao = getTownTemplePosition(getPlayerTown(cid)) markFlyingPos(cid, posicao) elseif getPlayerStorageValue(cid, 63215) >= 1 then -- surf local item = getPlayerSlotItem(cid, 8) local poke = getItemAttribute(item.uid, "poke") doSetCreatureOutfit(cid, {lookType = surfs[poke].lookType + 351}, -1) --alterado v1.6 doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end elseif getPlayerStorageValue(cid, 17001) >= 1 then -- ride local item = getPlayerSlotItem(cid, 8) local poke = getItemAttribute(item.uid, "poke") if rides[poke] then doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) doRemoveCondition(cid, CONDITION_OUTFIT) doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1) if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8 end else setPlayerStorageValue(cid, 17001, -1) doRegainSpeed(cid) end local posicao2 = getTownTemplePosition(getPlayerTown(cid)) markFlyingPos(cid, posicao2) elseif getPlayerStorageValue(cid, 13008) >= 1 then -- dive if not isInArray({5405, 5406, 5407, 5408, 5409, 5410}, getTileInfo(getThingPos(cid)).itemid) then setPlayerStorageValue(cid, 13008, 0) doRegainSpeed(cid) doRemoveCondition(cid, CONDITION_OUTFIT) return true end if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = 1034, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1) else doSetCreatureOutfit(cid, {lookType = 1035, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1) end doChangeSpeed(cid, 800) elseif getPlayerStorageValue(cid, 5700) > 0 then --bike doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, getPlayerStorageValue(cid, 5700)) --alterado v1.8 if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = 2099}, -1) else doSetCreatureOutfit(cid, {lookType = 2098}, -1) end elseif getPlayerStorageValue(cid, 75846) >= 1 then --alterado v1.9 \/ doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), false) setPlayerStorageValue(cid, 75846, -1) sendMsgToPlayer(cid, 20, "You have been moved to your town!") else doRegainSpeed(cid) end if getPlayerStorageValue(cid, 22545) >= 1 then setPlayerStorageValue(cid, 22545, -1) doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false) setPlayerRecordWaves(cid) end if useKpdoDlls then doUpdateMoves(cid) doUpdatePokemonsBar(cid) onPokeHealthChange(cid) end doPlayerChangeModeIcon(cid) return true end Lib/levelsystem.lua function adjustWildPoke(cid, optionalLevel) if isMonster(cid) and pokes[getCreatureName(cid)] then local level = (optionalLevel and optionalLevel >= 1) and optionalLevel or getPokemonLevel(cid) --alterado v1.8 local level = 0 local b = getCreatureOutfit(cid).lookBody local shiny = 100 local lvl = getPokemonLevel(cid) local monstrinho = getCreatureName(cid) --alterado v1.4 if optionalLevel then level = optionalLevel elseif b > lvl then level = b elseif string.find(monstrinho, "Shiny") then level = lvl * 01.0 else level = lvl end setPlayerStorageValue(cid, 1000, level) --alterado v1.8 setPlayerStorageValue(cid, 1001, pokes[getCreatureName(cid)].offense * level) setPlayerStorageValue(cid, 1002, pokes[getCreatureName(cid)].defense) setPlayerStorageValue(cid, 1003, pokes[getCreatureName(cid)].agility) setPlayerStorageValue(cid, 1004, pokes[getCreatureName(cid)].vitality * level) setPlayerStorageValue(cid, 1005, pokes[getCreatureName(cid)].specialattack * level) doRegainSpeed(cid) --alterado! setCreatureMaxHealth(cid, (getVitality(cid) * HPperVITwild)) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) if pokes[getCreatureName(cid)].exp then local exp = pokes[getCreatureName(cid)].exp * baseExpRate + pokes[getCreatureName(cid)].vitality * pokemonExpPerLevelRate setPlayerStorageValue(cid, 1006, (exp * generalExpRate/2)*10) if getPlayerStorageValue(cid, 22546) == 1 then setPlayerStorageValue(cid, 1006, 750) doSetCreatureDropLoot(cid, false) end end end end function getPokemonXMLOutfit(name) --alterado v1.9 \/ local path = "data/monster/pokes/Shiny/"..name..".xml" local tpw = io.type(io.open(path)) if not tpw then path = "data/monster/pokes/geracao 2/"..name..".xml" tpw = io.type(io.open(path)) end if not tpw then path = "data/monster/pokes/geracao 1/"..name..".xml" tpw = io.type(io.open(path)) end if not tpw then path = "data/monster/pokes/"..name..".xml" tpw = io.type(io.open(path)) end if not tpw then return print("[getPokemonXMLOutfit] Poke with name: "..name.." ins't in any paste on monster/pokes/") and 2 end local arq = io.open(path, "a+") local txt = arq:read("*all") arq:close() local a, b = txt:find('look type="(.-)"') txt = string.sub(txt, a + 11, b - 1) return tonumber(txt) end function doEvolutionOutfit(cid, oldout, outfit) if not isCreature(cid) then return true end if getCreatureOutfit(cid).lookType == oldout then doSetCreatureOutfit(cid, {lookType = outfit}, -1) else doSetCreatureOutfit(cid, {lookType = oldout}, -1) end end function doSendEvolutionEffect(cid, pos, evolution, turn, ssj, evolve, f, h) if not isCreature(cid) then doSendAnimatedText(pos, "CANCEL", 215) return true end if evolve then doEvolvePokemon(getCreatureMaster(cid), {uid = cid}, evolution, 0, 0) return true end doSendMagicEffect(pos, 18) if ssj then sendSSJEffect(evo) end doEvolutionOutfit(cid, f, h) addEvent(doSendEvolutionEffect, math.pow(1900, turn/20), cid, getThingPos(cid), evolution, turn - 1, turn == 19, turn == 2, f, h) end function sendSSJEffect(cid) if not isCreature(cid) then return true end local pos1 = getThingPos(cid) local pos2 = getThingPos(cid) pos2.x = pos2.x + math.random(-1, 1) pos2.y = pos2.y - math.random(1, 2) doSendDistanceShoot(pos1, pos2, 37) addEvent(sendSSJEffect, 45, cid) end function sendFinishEvolutionEffect(cid, alternate) if not isCreature(cid) then return true end local pos1 = getThingPos(cid) if alternate then local pos = { [1] = {-2, 0}, [2] = {-1, -1}, [3] = {0, -2}, [4] = {1, -1}, [5] = {2, 0}, [6] = {1, 1}, [7] = {0, 2}, [8] = {-1, 1}} for a = 1, 8 do local pos2 = getThingPos(cid) pos2.x = pos2.x + pos[a][1] pos2.y = pos2.y + pos[a][2] local pos = getThingPos(cid) doSendDistanceShoot(pos2, pos, 37) addEvent(doSendDistanceShoot, 300, pos, pos2, 37) end else for a = 0, 3 do doSendDistanceShoot(pos1, getPosByDir(pos1, a), 37) end for a = 4, 7 do addEvent(doSendDistanceShoot, 600, pos1, getPosByDir(pos1, a), 37) end end end function doEvolvePokemon(cid, item2, theevo, stone1, stone2) if not isCreature(cid) then return true end if not pokes[theevo] or not pokes[theevo].offense then doReturnPokemon(cid, item2.uid, getPlayerSlotItem(cid, 8), pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect, false, true) return true end local owner = getCreatureMaster(item2.uid) local pokeball = getPlayerSlotItem(cid, 8) local description = "Contains a "..theevo.."." local pct = getCreatureHealth(item2.uid) / getCreatureMaxHealth(item2.uid) doItemSetAttribute(pokeball.uid, "hp", pct) doItemSetAttribute(pokeball.uid, "poke", theevo) doItemSetAttribute(pokeball.uid, "description", "Contains a "..theevo..".") doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getPokeName(item2.uid).." evolved into a "..theevo.."!") doSendMagicEffect(getThingPos(item2.uid), 18) doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos[theevo]) doSendMagicEffect(getThingPos(cid), 173) local oldpos = getThingPos(item2.uid) local oldlod = getCreatureLookDir(item2.uid) doRemoveCreature(item2.uid) doSummonMonster(cid, theevo) local pk = getCreatureSummons(cid)[1] doTeleportThing(pk, oldpos, false) doCreatureSetLookDir(pk, oldlod) sendFinishEvolutionEffect(pk, true) addEvent(sendFinishEvolutionEffect, 550, pk, true) addEvent(sendFinishEvolutionEffect, 1050, pk) doPlayerRemoveItem(cid, stone1, 1) doPlayerRemoveItem(cid, stone2, 1) doAddPokemonInOwnList(cid, theevo) local happy = getItemAttribute(pokeball.uid, "happy") doItemSetAttribute(pokeball.uid, "happy", happy + happyGainedOnEvolution) if happy + happyGainedOnEvolution > 255 then doItemSetAttribute(pokeball.uid, "happy", 255) end adjustStatus(pk, pokeball.uid, true, false) if useKpdoDlls then doUpdateMoves(cid) end end function doMathDecimal(number, casas) if math.floor(number) == number then return number end local c = casas and casas + 1 or 3 for a = 0, 10 do if math.floor(number) < math.pow(10, a) then local str = string.sub(""..number.."", 1, a + c) return tonumber(str) end end return number end function doAdjustWithDelay(cid, pk, health, vit, status) if isCreature(cid) then adjustStatus(pk, getPlayerSlotItem(cid, 8).uid, health, vir, status) end end function adjustStatus(pk, item, health, vite, conditions) if not isCreature(pk) then return true end local gender = getItemAttribute(item, "gender") and getItemAttribute(item, "gender") or 0 addEvent(doCreatureSetSkullType, 10, pk, gender) -- Defense -- local bonusdef = {} local Tiers = { [1] = {bonus = DefBonus1}, [2] = {bonus = DefBonus2}, [3] = {bonus = DefBonus3}, [4] = {bonus = DefBonus4}, [5] = {bonus = DefBonus5}, [6] = {bonus = DefBonus6}, [7] = {bonus = DefBonus7}, } local Tier = getItemAttribute(item, "heldx") if Tier and Tier > 0 and Tier < 8 then bonusdef = Tiers[Tier].bonus else bonusdef = 1 end -- Defense -- -- Boost -- local bonusboost = {} local Tiers2 = { [36] = {bonus = BoostBonus1}, [37] = {bonus = BoostBonus2}, [38] = {bonus = BoostBonus3}, [39] = {bonus = BoostBonus4}, [40] = {bonus = BoostBonus5}, [41] = {bonus = BoostBonus6}, [42] = {bonus = BoostBonus7}, } if Tier and Tier > 35 and Tier < 43 then bonusboost = Tiers2[Tier].bonus else bonusboost = 0 end -- Boost -- if (getItemAttribute(item, "ehditto") == 1) then setPlayerStorageValue(pk, 1001, (pokes[getCreatureName(pk)].offense * (getMasterLevel(pk) + getPokemonBoost(pk))) * 0.75) setPlayerStorageValue(pk, 1002, (pokes[getCreatureName(pk)].defense) * 0.75) setPlayerStorageValue(pk, 1003, pokes[getCreatureName(pk)].agility) setPlayerStorageValue(pk, 1004, (pokes[getCreatureName(pk)].vitality * (getMasterLevel(pk) + getPokemonBoost(pk))) * 0.75) setPlayerStorageValue(pk, 1005, (pokes[getCreatureName(pk)].specialattack * (getMasterLevel(pk) + getPokemonBoost(pk))) * 0.75) else setPlayerStorageValue(pk, 1001, pokes[getCreatureName(pk)].offense * (getMasterLevel(pk) + getPokemonBoost(pk))) setPlayerStorageValue(pk, 1002, pokes[getCreatureName(pk)].defense) setPlayerStorageValue(pk, 1003, pokes[getCreatureName(pk)].agility) setPlayerStorageValue(pk, 1004, pokes[getCreatureName(pk)].vitality * (getMasterLevel(pk) + getPokemonBoost(pk))) setPlayerStorageValue(pk, 1005, pokes[getCreatureName(pk)].specialattack * (getMasterLevel(pk) + getPokemonBoost(pk))) end if vite == true then local pct = getCreatureHealth(pk) / getCreatureMaxHealth(pk) local vit = getVitality(pk) setCreatureMaxHealth(pk, ( vit * HPperVITsummon )) doCreatureAddHealth(pk, pct * vit * HPperVITsummon) end doRegainSpeed(pk) local nick = getItemAttribute(item, "poke") if isGhostPokemon(pk) then setPlayerStorageValue(pk, 8981, 1) updateGhostWalk(pk) end if string.find(tostring(nick), "Shiny") then nick = tostring(nick):match("Shiny (.*)") end if nick:find("Mega") then nick = nick:match("Mega (.*)") if not pokes[nick] then nick = nick:explode(" ")[1] end end if getItemAttribute(item, "nick") then nick = getItemAttribute(item, "nick") end setPlayerStorageValue(pk, 1007, nick) doCreatureSetNick(pk, nick) if not getItemAttribute(item, "happy") then doItemSetAttribute(item, "happy", 120) end if not getItemAttribute(item, "hunger") then doItemSetAttribute(item, "hunger", 5) end local happy = getItemAttribute(item, "happy") if happy < 0 then happy = 1 end setPlayerStorageValue(pk, 1008, happy) local hunger = getItemAttribute(item, "hunger") setPlayerStorageValue(pk, 1009, hunger) if health == true then local mh = HPperVITsummon * getVitality(pk) local rd = 1 - (tonumber(getItemAttribute(item, "hp"))) setCreatureMaxHealth(pk, mh) doCreatureAddHealth(pk, getCreatureMaxHealth(pk)) doCreatureAddHealth(pk, -(getCreatureMaxHealth(pk) * rd)) end if isSummon(pk) and conditions then local burn = getItemAttribute(item, "burn") if burn and burn >= 0 then local ret = {id = pk, cd = burn, check = false, damage = getItemAttribute(item, "burndmg"), cond = "Burn"} addEvent(doCondition2, 3500, ret) end local poison = getItemAttribute(item, "poison") if poison and poison >= 0 then local ret = {id = pk, cd = poison, check = false, damage = getItemAttribute(item, "poisondmg"), cond = "Poison"} addEvent(doCondition2, 1500, ret) end local confuse = getItemAttribute(item, "confuse") if confuse and confuse >= 0 then local ret = {id = pk, cd = confuse, check = false, cond = "Confusion"} addEvent(doCondition2, 1200, ret) end local sleep = getItemAttribute(item, "sleep") if sleep and sleep >= 0 then local ret = {id = pk, cd = sleep, check = false, first = true, cond = "Sleep"} doCondition2(ret) end local miss = getItemAttribute(item, "miss") if miss and miss >= 0 then local ret = {id = pk, cd = miss, eff = getItemAttribute(item, "missEff"), check = false, spell = getItemAttribute(item, "missSpell"), cond = "Miss"} doCondition2(ret) end local fear = getItemAttribute(item, "fear") if fear and fear >= 0 then local ret = {id = pk, cd = fear, check = false, skill = getItemAttribute(item, "fearSkill"), cond = "Fear"} doCondition2(ret) end local silence = getItemAttribute(item, "silence") if silence and silence >= 0 then local ret = {id = pk, cd = silence, eff = getItemAttribute(item, "silenceEff"), check = false, cond = "Silence"} doCondition2(ret) end local stun = getItemAttribute(item, "stun") if stun and stun >= 0 then local ret = {id = pk, cd = stun, eff = getItemAttribute(item, "stunEff"), check = false, spell = getItemAttribute(item, "stunSpell"), cond = "Stun"} doCondition2(ret) end local paralyze = getItemAttribute(item, "paralyze") if paralyze and paralyze >= 0 then local ret = {id = pk, cd = paralyze, eff = getItemAttribute(item, "paralyzeEff"), check = false, first = true, cond = "Paralyze"} doCondition2(ret) end local slow = getItemAttribute(item, "slow") if slow and slow >= 0 then local ret = {id = pk, cd = slow, eff = getItemAttribute(item, "slowEff"), check = false, first = true, cond = "Slow"} doCondition2(ret) end local leech = getItemAttribute(item, "leech") if leech and leech >= 0 then local ret = {id = pk, cd = leech, attacker = 0, check = false, damage = getItemAttribute(item, "leechdmg"), cond = "Leech"} doCondition2(ret) end for i = 1, 3 do local buff = getItemAttribute(item, "Buff"..i) if buff and buff >= 0 then local ret = {id = pk, cd = buff, eff = getItemAttribute(item, "Buff"..i.."eff"), check = false, buff = getItemAttribute(item, "Buff"..i.."skill"), first = true, attr = "Buff"..i} doCondition2(ret) end end end --alterado v1.9 if getItemAttribute(item, "boost") and getItemAttribute(item, "boost") >= 50 and getItemAttribute(item, "aura") then sendAuraEffect(pk, auraSyst[getItemAttribute(item, "aura")]) end if getPlayerStorageValue(getCreatureMaster(pk), 6598754) >= 1 then setPlayerStorageValue(pk, 6598754, 1) elseif getPlayerStorageValue(getCreatureMaster(pk), 6598755) >= 1 then setPlayerStorageValue(pk, 6598755, 1) end return true end function getOffense(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1001)) end function getDefense(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1002)) end function getSpeed(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1003)) end function getVitality(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1004)) end function getSpecialAttack(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1005)) end function getHappiness(cid) if not isCreature(cid) then return 0 end return tonumber(getPlayerStorageValue(cid, 1008)) end function getSpecialDefense(cid) if not isCreature(cid) then return 0 end return getSpecialAttack(cid) * 0.85 + getDefense(cid) * 0.2 end function getPokemonLevel(cid, dex) if not isCreature(cid) or not pokes[getCreatureName(cid)] then return 0 end if not dex then --alterado v1.9 if ehMonstro(cid) and getPlayerStorageValue(cid, 1000) > 0 then return getPlayerStorageValue(cid, 1000) elseif ehMonstro(cid) then return pokes[getCreatureName(cid)].wildLvl end end return pokes[getCreatureName(cid)].level end function getPokemonLevelByName(name) return pokes[name] and pokes[name].level or 0 --alterado v1.9 end function getMasterLevel(poke) if not isSummon(poke) then return 0 end return getPlayerLevel(getCreatureMaster(poke)) end function getPokemonBoost(poke) if not isSummon(poke) then return 0 end return getItemAttribute(getPlayerSlotItem(getCreatureMaster(poke), 8).uid, "boost") or 0 end function getPokeballBoost(ball) if not isPokeball(ball.itemid) then return 0 end --alterado v1.8 return getItemAttribute(ball.uid, "boost") or 0 end function getPokeName(cid) if not isSummon(cid) then return getCreatureName(cid) end if getCreatureName(cid) == "Evolution" then return getPlayerStorageValue(cid, 1007) end local item = getPlayerSlotItem(getCreatureMaster(cid), 8) if getItemAttribute(item.uid, "nick") then return getItemAttribute(item.uid, "nick") end if string.find(tostring(getCreatureName(cid)), "Shiny") then local newName = tostring(getCreatureName(cid)):match("Shiny (.*)") return newName end return getCreatureName(cid) end function getPokeballName(item, truename) if not truename and getItemAttribute(item, "nick") then return getItemAttribute(item, "nick") end return getItemAttribute(item, "poke") end function getPokemonName(cid) return getCreatureName(cid) end function getPokemonGender(cid) --alterado v1.9 return getCreatureSkullType(cid) end function setPokemonGender(cid, gender) if isCreature(cid) and gender then --alterado v1.8 doCreatureSetSkullType(cid, gender) return true end return false end function getWildPokemonExp(cid) return getPlayerStorageValue(cid, 1006) end Quem puder me ajudar eu agradeço ! Alguem Porfavor? Editado Setembro 24, 2015 9 anos por PedroRox (veja o histórico de edições)
Postado Setembro 24, 2015 9 anos Você Usa a Base PokexCyan 2.0 By Senhor Né? Eu Tive Um Server Desse Esse Erro é Normal os Dois Goback e o Login .
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.