Tipo do script: Talkaction
Protocolo (versão do Tibia): 8.54
Servidor utilizado: Pokemon Dash Advanced
Nível de experiência: Qualquer uma
Adicionais/Informações: Bom quero que o pokemon evolua com o talkaction !envolve, tipo o pokemon tem que está no certo level: exemplo: Bulbasaur, level 40 para ele evoluir entende? ai o carinha com level 40 ele digita !envolve e o pokemon evolui irei postar o Evolution.lua que eu uso qualquer arquivo que precisar estarei mandando para ajudar no desenvolvimento do script.
[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local special = specialevo[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local types = { [leaf] = {"Bulbasaur", "Ivysaur", "Oddish", "Gloom", "Bellsprout", "Weepinbell", "Exeggcute", "Chikorita", "Bayleef", "Hoppip", "Skiploom", "Sunkern"}, [water] = {"Squirtle", "Wartortle", "Horsea", "Goldeen", "Magikarp", "Psyduck", "Poliwag", "Poliwhirl", "Tentacool", "Krabby", "Staryu", "Omanyte", "Eevee", "Totodile", "Croconow", "Chinchou", "Marill", "Wooper", "Slowpoke", "Remoraid", "Seadra"}, [venom] = {"Zubat", "Ekans", "Nidoran male", "Nidoran female", "Nidorino", "Nidorina", "Gloom", "Venonat", "Tentacool", "Grimer", "Koffing", "Spinarak", "Golbat"}, [thunder] = {"Magnemite", "Pikachu", "Voltorb", "Eevee", "Chinchou", "Pichu", "Mareep", "Flaaffy", "Elekid"}, [rock] = {"Geodude", "Graveler", "Rhyhorn", "Kabuto", "Slugma", "Pupitar"}, [punch] = {"Machop", "Machoke", "Mankey", "Poliwhirl", "Tyrogue"}, [fire] = {"Charmander", "Charmeleon", "Vulpix", "Growlithe", "Ponyta", "Eevee", "Cyndaquil", "Quilava", "Slugma", "Houndour", "Magby"}, [coccon] = {"Caterpie", "Metapod", "Weedle", "Kakuna", "Paras", "Venonat", "Scyther", "Ledyba", "Spinarak", "Pineco"}, [crystal] = {"Dratini", "Dragonair", "Magikarp", "Omanyte", "Kabuto", "Seadra"}, [dark] = {"Gastly", "Haunter", "Eevee", "Houndour", "Pupitar"}, [earth] = {"Cubone", "Sandshrew", "Nidorino", "Nidorina", "Diglett", "Onix", "Rhyhorn", "Wooper", "Swinub", "Phanpy", "Larvitar"}, [enigma] = {"Abra", "Kadabra", "Psyduck", "Slowpoke", "Drowzee", "Eevee", "Natu", "Smoochum"}, [heart] = {"Rattata", "Pidgey", "Pidgeotto", "Spearow", "Clefairy", "Jigglypuff", "Meowth", "Doduo", "Porygon", "Chansey", "Sentret", "Hoothoot", "Cleffa", "Igglybuff", "Togepi", "Snubull", "Teddiursa"}, [ice] = {"Seel", "Shellder", "Smoochum", "Swinub"}, [king] = {"Slowpoke", "Poliwhirl"}, [metal] = {"Onix", "Scyther"}, [dragon] = {"Seadra"}, [upgrade] = {"Porygon"}, [sun] = {"Sunkern", "Gloom"} }[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]function onUse(cid, item, frompos, item2, topos)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local pokeball = getPlayerSlotItem(cid, 8)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if not isMonster(item2.uid) or not isSummon(item2.uid) then return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if getCreatureCondition(item2.uid, CONDITION_INVISIBLE) then return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local pevo = poevo[getCreatureName(item2.uid)][/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if not isInArray(specialevo, getCreatureName(item2.uid)) then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if not pevo then doPlayerSendCancel(cid, "This pokemon can't evolve.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if pevo.level ~= 1 and not allEvolutionsCanBeInduzedByStone then doPlayerSendCancel(cid, "This pokemon doesn't evolve using stones.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if not isPlayer(getCreatureMaster(item2.uid)) or getCreatureMaster(item2.uid) ~= cid then doPlayerSendCancel(cid, "You can only use stones on pokemons you own.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if pevo.stoneid ~= item.itemid and pevo.stoneid2 ~= item.itemid then doPlayerSendCancel(cid, "This isn't the needed stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local minlevel = 0[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if getPokemonName(item2.uid) == "Eevee" then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] local eevee = ""[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if item.itemid == thunder then eevee = "Jolteon" elseif item.itemid == water then eevee = "Vaporeon" elseif item.itemid == fire then eevee = "Flareon" elseif item.itemid == enigma and allEvolutionsCanBeInduzedByStone then eevee = "Espeon" elseif item.itemid == dark and allEvolutionsCanBeInduzedByStone then eevee = "Umbreon" else doPlayerSendCancel(cid, "This isn't the required stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes[eevee].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPokemonLevel(item2.uid) < 20 then return doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (20).") end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doRemoveItem(item.uid, 1)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, eevee, 0, 0)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if isInArray(specialevo, getPokemonName(item2.uid)) then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if getPokemonName(item2.uid) == "Poliwhirl" then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] local evolution = 0 local theevo = "" local nlevel = 45[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if item.itemid == water then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPokemonLevel(item2.uid) >= 36 and getPlayerItemCount(cid, king) >= 1 then evolution = king theevo = "Politoed" elseif getPokemonLevel(item2.uid) >= 36 and getPlayerItemCount(cid, punch) >= 1 and allEvolutionsCanBeInduzedByStone then evolution = punch theevo = "Poliwrath" else if getPokemonLevel(item2.uid) < 36 then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (36).") return true end if allEvolutionsCanBeInduzedByStone then if getPlayerItemCount(cid, king) <= 0 and getPlayerItemCount(cid, punch) <= 0 then doPlayerSendCancel(cid, "You need a water stone and a punch stone (Poliwrath) or a King's Rock (Politoed) to evolve this pokemon.") return true end else if getPlayerItemCount(cid, king) <= 0 then doPlayerSendCancel(cid, "You need a Water Stone and a King's Rock to evolve this pokemon to a Politoed.") return true end end end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes[theevo].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if theevo == "Poliwrath" and getPokemonLevel(item2.uid) < 36 then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (36).") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, punch) >= 1 and getPlayerItemCount(cid, king) >= 1 and allEvolutionsCanBeInduzedByStone then doPlayerSendCancel(cid, "Please, use your Punch Stone to evolve this pokemon to a Poliwrath, or a King's Rock to a Politoed.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if evolution == 0 then if allEvolutionsCanBeInduzedByStone then doPlayerSendCancel(cid, "You need at least one Water Stone, and a Punch Stone (Poliwrath) or a King's Rock (Politoed) to evolve this pokemon.") else doPlayerSendCancel(cid, "You need at least one Water Stone and a King's Rock to evolve this pokemon.") end return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if evolution ~= 0 then doEvolvePokemon(cid, item2, theevo, evolution, water) return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] elseif item.itemid == punch then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes["Poliwrath"].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if not allEvolutionsCanBeInduzedByStone then doPlayerSendCancel(cid, "This is not the required stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPokemonLevel(item2.uid) < 36 then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (45).") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, water) <= 0 then doPlayerSendCancel(cid, "You need at least one Punch Stone and one Water Stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] local theevo = "Poliwrath" doEvolvePokemon(cid, item2, theevo, water, punch) elseif item.itemid == king then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes["Politoed"].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, water) <= 0 then doPlayerSendCancel(cid, "You need at least one Punch Stone and one King's Rock to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] local theevo = "Politoed" doEvolvePokemon(cid, item2, theevo, water, king) end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]elseif getPokemonName(item2.uid) == "Gloom" then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPokemonLevel(item2.uid) < 31 then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (31).") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if item.itemid == leaf then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] local theevo = "" local evolution = 0[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, venom) >= 1 and getPlayerItemCount(cid, sun) >= 1 then doPlayerSendCancel(cid, "Please, use your Venom Stone to evolve this pokemon to a Vileplume, or a Sun Stone to a Bellossom.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, venom) <= 0 and getPlayerItemCount(cid, sun) <= 0 then doPlayerSendCancel(cid, "You need at least one Leaf Stone, and a Sun Stone (Bellossom) or a Venom Stone (Vileplume) to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, venom) >= 1 then theevo = "Vileplume" evolution = venom elseif getPlayerItemCount(cid, sun) >= 1 then theevo = "Bellossom" evolution = sun end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes[theevo].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, theevo, evolution, leaf)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] elseif item.itemid == venom then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes["Vileplume"].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, leaf) <= 0 then doPlayerSendCancel(cid, "You need at least one Leaf Stone and one Venom Stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, "Vileplume", venom, leaf)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] elseif item.itemid == sun then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes["Bellossom"].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerItemCount(cid, leaf) <= 0 then doPlayerSendCancel(cid, "You need at least one Leaf Stone and one Sun Stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, "Bellossom", sun, leaf) end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]elseif getPokemonName(item2.uid) == "Slowpoke" then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPokemonLevel(item2.uid) < 28 then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (28).") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if item.itemid == enigma then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if not allEvolutionsCanBeInduzedByStone then doPlayerSendCancel(cid, "This is not the required stone to evolve this pokemon.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes["Slowbro"].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, "Slowbro", enigma, 0)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] elseif item.itemid == king then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes["Slowking"].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, "Slowking", king, 0) end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]elseif getPokemonName(item2.uid) == "Tyrogue" then[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPokemonLevel(item2.uid) < 20 then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve (20).") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if not allEvolutionsCanBeInduzedByStone then doPlayerSendCancel(cid, "This pokemon doesn't evolve using stones.") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] local evolution = ""[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getOffense(item2.uid) == getDefense(item2.uid) then evolution = "Hitmontop" elseif getOffense(item2.uid) > getDefense(item2.uid) then evolution = "Hitmonlee" else evolution = "Hitmonchan" end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] minlevel = pokes[evolution].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3] doEvolvePokemon(cid, item2, evolution, punch, 0) end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local count = poevo[getPokemonName(item2.uid)].count local stnid = poevo[getPokemonName(item2.uid)].stoneid local stnid2 = poevo[getPokemonName(item2.uid)].stoneid2 local evo = poevo[getPokemonName(item2.uid)].evolution local nlevel = poevo[getPokemonName(item2.uid)].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]local count = poevo[getPokemonName(item2.uid)].count local stnid = poevo[getPokemonName(item2.uid)].stoneid local stnid2 = poevo[getPokemonName(item2.uid)].stoneid2 local evo = poevo[getPokemonName(item2.uid)].evolution local nlevel = poevo[getPokemonName(item2.uid)].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if stnid2 > 1 and (getPlayerItemCount(cid, stnid2) < count or getPlayerItemCount(cid, stnid) < count) then doPlayerSendCancel(cid, "You need at least one "..getItemNameById(stnid).." and one "..getItemNameById(stnid2).." to evolve this pokemon!") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if getPlayerItemCount(cid, stnid) < count then local str = "" if count >= 2 then str = "s" end return doPlayerSendCancel(cid, "You need at least "..count.." "..getItemNameById(stnid)..""..str.." to evolve this pokemon!") end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]minlevel = pokes[evo].level[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if getPlayerLevel(cid) < minlevel and evolutionByStoneRequireLevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if getPokemonLevel(item2.uid) < nlevel and evolutionByStoneRequireLevel then doPlayerSendCancel(cid, "Sorry, your pokemon doesn't have the required level to evolve ("..nlevel..").") return true end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]if count >= 2 then stnid2 = stnid end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]doEvolvePokemon(cid, item2, evo, stnid, stnid2)[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]return TRUE end[/size][/font][/color] [color=#282828][font=helvetica, arial, sans-serif][size=3]
Bom acho que é isso estarei dando REP+ a quem me ajudar obrigado.