Postado Abril 13, 2015 10 anos estou tentando bloquear a evolução de pokemons com addon checando o atributo do mesmo, porem retora o seguinte erro. [13/04/2015 00:51:22] [Error - Action Interface] [13/04/2015 00:51:22] data/actions/scripts/evolution.lua:onUse [13/04/2015 00:51:23] Description: [13/04/2015 00:51:23] data/actions/scripts/evolution.lua:339: attempt to compare number with nil [13/04/2015 00:51:23] stack traceback: [13/04/2015 00:51:23] data/actions/scripts/evolution.lua:339: in function <data/actions/scripts/evolution.lua:51> local special = specialevo --alterado v1.9 \/ peguem ele todo! local types = { [leaf] = {"Tangela", "Snover", "Cherubi", "Burmy Green", "Budew", "Turtwig", "Roselia", "Grotle", "Lileep", "Cacnea", "Shroomish", "Seedot", "Nuzleaf", "Lotad", "Grovyle", "Treecko", "Bulbasaur", "Ivysaur", "Oddish", "Gloom", "Bellsprout", "Weepinbell", "Exeggcute", "Chikorita", "Bayleef", "Hoppip", "Skiploom", "Sunkern"}, [water] = {"Mantyke", "Finneon", "Shellos Blue", "Shellos Pink", "Buizel", "Piplup", "Prinplup", "Huntail", "Clamperl", "Sealeo", "Spheal", "Feebas", "Corphish", "Barboach", "Wailmer", "Carvanha", "Surskit", "Wingull", "Lombre", "Lotad", "Swampert", "Marshtomp", "Mudkip", "Seadra", "Squirtle", "Wartortle", "Horsea", "Goldeen", "Magikarp", "Psyduck", "Poliwag", "Poliwhirl", "Tentacool", "Krabby", "Staryu", "Omanyte", "Eevee", "Totodile", "Croconow", "Chinchou", "Marill", "Wooper", "Slowpoke", "Remoraid", "Seadra"}, [venom] = {"Croagunk", "Skorupi", "Stunky", "Anorith", "Gulpin", "Wurmple", "Cascoon", "Zubat", "Ekans", "Nidoran male", "Nidoran female", "Nidorino", "Nidorina", "Gloom", "Venonat", "Tentacool", "Grimer", "Koffing", "Spinarak", "Golbat"}, [thunder] = {"Electabuzz", "Magneton", "Shinx", "Luxio", "Electrike", "Magnemite", "Pikachu", "Voltorb", "Eevee", "Chinchou", "Pichu", "Mareep", "Flaaffy", "Elekid"}, [rock] = {"Nosepass", "Rhydon", "Bonsly", "Shieldon", "Cranidos", "Anorith", "Lileep", "Lairon", "Aron", "Geodude", "Graveler", "Rhyhorn", "Kabuto", "Slugma", "Pupitar"}, [punch] = {"Croagunk", "Riolu", "Aipom", "Meditite", "Makuhita", "Combusken", "Machop", "Machoke", "Mankey", "Poliwhirl", "Tyrogue"}, [fire] = {"Magmar", "Chimchar", "Monferno", "Numel", "Torchic", "Combusken", "Charmander", "Charmeleon", "Vulpix", "Growlithe", "Ponyta", "Eevee", "Cyndaquil", "Quilava", "Slugma", "Houndour", "Magby"}, [coccon] = {"Yanma", "Skorupi", "Combee", "Kricketot", "Ninjask", "Nincada", "Surskit", "Wurmple", "Silcoon", "Caterpie", "Metapod", "Weedle", "Kakuna", "Paras", "Venonat", "Scyther", "Ledyba", "Spinarak", "Pineco"}, [crystal] = {"Gabite", "Gible", "Shelgon", "Bagon", "Vibrava", "Dratini", "Dragonair", "Magikarp", "Omanyte", "Kabuto"}, [dark] = {"Dusclops", "Sneasel", "Misdreavus", "Drifloon", "Duskull", "Shuppet", "Carvanha", "Nuzleaf", "Poochyena", "Gastly", "Haunter", "Eevee", "Houndour", "Pupitar"}, [earth] = {"Gligar", "Rhydon", "Hippopotas", "Gabite", "Gible", "Buneary", "Burmy White","Barboach", "Vibrava", "Trapinch", "Numel", "Lairon", "Teddiursa", "Cubone", "Sandshrew", "Nidorino", "Nidorina", "Diglett", "Onix", "Rhyhorn", "Wooper", "Swinub", "Phanpy", "Larvitar"}, [enigma] = {"Porygon2", "Mime Jr.", "Bronzor", "Chingling", "Metang", "Baltoy", "Spoink", "Meditite", "Kirlia", "Ralts", "Porygon", "Abra", "Kadabra", "Psyduck", "Slowpoke", "Drowzee", "Eevee", "Natu", "Smoochum"}, [heart] = {"Togetic", "Lickitung", "Munchlax", "Happiny", "Glameow", "Murkrow", "Burmy Pink", "Bidoof", "Starly", "Staravia", "Staraptor", "Shelgon", "Swablu", "Azurill", "Loudred", "Whismur", "Vigoroth", "Slakoth", "Wingull", "Taillow", "Zigzagoon", "Chansey", "Rattata", "Pidgey", "Pidgeotto", "Spearow", "Clefairy", "Jigglypuff", "Meowth", "Doduo", "Sentret", "Hoothoot", "Cleffa", "Igglybuff", "Togepi", "Snubull"}, [ice] = {"Piloswine", "Sneasel", "Snover", "Sealeo", "Spheal", "Snorunt", "Seel", "Shellder", "Smoochum", "Swinub"}, [king] = {"Slowpoke", "Poliwhirl"}, [metal] = {"Riolu", "Bronzor", "Shieldon", "Metang", "Beldum", "Onix", "Scyther"}, [sun] = {"Skitty", "Sunkern", "Gloom"}, [sfire] = {"Shiny Charmander", "Shiny Charmeleon", "Shiny Vulpix", "Shiny Growlithe", "Shiny Ponyta", "Shiny Eevee"}, [swater] = {"Shiny Squirtle", "Shiny Wartortle", "Shiny Horsea", "Shiny Goldeen", "Shiny Magikarp", "Shiny Psyduck", "Shiny Poliwag", "Shiny Poliwhirl", "Shiny Tentacool", "Shiny Krabby", "Shiny Staryu", "Shiny Omanyte", "Shiny Eevee"}, [sleaf] = {"Shiny Bulbasaur", "Shiny Ivysaur", "Shiny Oddish", "Shiny Gloom", "Shiny Bellsprout", "Shiny Weepinbell", "Shiny Exeggcute"}, [sheart] = {"Shiny Rattata", "Shiny Pidgey", "Shiny Pidgeotto", "Shiny Spearow", "Shiny Clefairy", "Shiny Jigglypuff", "Shiny Meowth", "Shiny Doduo", "Shiny Porygon", "Shiny Chansey"}, [senigma] = {"Shiny Abra", "Shiny Kadabra", "Shiny Psyduck", "Shiny Slowpoke", "Shiny Drowzee", "Shiny Eevee"}, [srock] = {"Shiny Geodude", "Shiny Graveler", "Shiny Rhyhorn", "Shiny Kabuto"}, [svenom] = {"Shiny Zubat", "Shiny Ekans", "Shiny Nidoran male", "Shiny Nidoran female", "Shiny Nidorino", "Shiny Nidorina", "Shiny Gloom", "Shiny Venonat", "Shiny Tentacool", "Shiny Grimer", "Shiny Koffing"}, [sice] = {"Shiny Seel", "Shiny Shellder"}, [sthunder] = {"Shiny Magnemite", "Shiny Pikachu", "Shiny Voltorb", "Shiny Eevee"}, [scrystal] = {"Shiny Dratini", "Shiny Dragonair", "Shiny Magikarp", "Shiny Omanyte", "Shiny Kabuto"}, [scoccon] = {"Shiny Caterpie", "Shiny Metapod", "Shiny Weedle", "Shiny Kakuna", "Shiny Paras", "Shiny Venonat", "Shiny Scyther"}, [sdarkness] = {"Shiny Gastly", "Shiny Haunter", "Shiny Eevee"}, [spunch] = {"Shiny Machop", "Shiny Machoke", "Shiny Mankey", "Shiny Poliwhirl"}, [searth] = {"Shiny Cubone", "Shiny Sandshrew", "Shiny Nidorino", "Shiny Nidorina", "Shiny Diglett", "Shiny Onix", "Shiny Rhyhorn"}, [shiny] = {"Abomasnow", "Abra", "Aerodactyl", "Aggron", "Alakazam", "Ampharos", "Arcanine", "Ariados", "Beedrill", "Blastoise", "Butterfree", "Cacturne", "Charizard", "Crobat", "Cubone", "Ditto", "Dodrio", "Dragonair", "Dragonite", "Dratini", "Electabuzz", "Electivire", "Electrode", "Espeon", "Farfetch'd", "Fearow", "Feraligatr", "Flareon", "Flygon", "Gengar", "Golbat", "Golem", "Grimer", "Growlithe", "Gyarados", "Hitmonchan", "Hitmonlee", "Hitmontop", "Horsea", "Hypno", "Jolteon", "Jynx", "Kingler", "Krabby", "Larvitar", "Machamp", "Magikarp", "Magmar", "Magmortar", "Magneton", "Mamoswine", "Marowak", "Meganium", "Metagross", "Milotic", "Mr. Mime", "Muk", "Nidoking", "Ninetales", "Oddish", "Omastar", "Onix", "Paras", "Parasect", "Pidgeot", "Pinsir", "Politoed", "Pupitar", "Raichu", "Raticate", "Rattata", "Rhydon", "Rhyperior", "Roserade", "Salamence", "Scyther", "Seadra", "Snorlax", "Stantler", "Tangela", "Tangrowth", "Tauros", "Tentacool", "Tentacruel", "Tropius", "Typhlosion", "Umbreon", "Ursaring", "Vaporeon", "Venomoth", "Venonat", "Venusaur", "Vileplume", "Voltorb", "Xatu", "Yanmega", "Zangoose", "Zubat", "Shiny Abra", "Shiny Growlithe", "Shiny Golbat", "Shiny Cubone", "Shiny Dratini", "Shiny Dragonair", "Shiny Electabuzz", "Shiny Voltorb", "Shiny Grimer", "Shiny Magikarp", "Shiny Horsea", "Shiny Krabby", "Shiny Larvitar", "Shiny Magmar", "Shiny Oddish", "Shiny Paras", "Shiny Rattata", "Shiny Rhydon", "Shiny Tangela", "Shiny Tentacool", "Shiny Venonat", "Shiny Zubat"} } local specEvos = { --alterado v1.9 \/ ["Eevee"] = { [thunder] = "Jolteon", [water] = "Vaporeon", [fire] = "Flareon", [enigma] = "Espeon", [dark] = "Umbreon", [leaf] = "Leafeon", [ice] = "Glaceon", }, } function onUse(cid, item, frompos, item2, topos) local pokeball = getPlayerSlotItem(cid, 8) if not isMonster(item2.uid) or not isSummon(item2.uid) then return true end if #getCreatureSummons(cid) > 1 then return true --alterado v1.9 end if getCreatureCondition(item2.uid, CONDITION_INVISIBLE) then return true end local pevo = poevo[getCreatureName(item2.uid)] if not isInArray(specialevo, getCreatureName(item2.uid)) then if not pevo then doPlayerSendCancel(cid, "This pokemon can't evolve.") return true end 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 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 end local minlevel = 0 if getPokemonName(item2.uid) == "Eevee" then local eevee = specEvos["Eevee"][item.itemid] if not eevee then doPlayerSendCancel(cid, "This isn't the required stone to evolve this pokemon.") return true end minlevel = pokes[eevee].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doRemoveItem(item.uid, 1) doEvolvePokemon(cid, item2, eevee, 0, 0) return true end if isInArray(specialevo, getPokemonName(item2.uid)) then if getPokemonName(item2.uid) == "Poliwhirl" then local evolution = 0 local theevo = "" if item.itemid == water then if getPlayerItemCount(cid, king) >= 1 then evolution = king theevo = "Politoed" elseif getPlayerItemCount(cid, punch) >= 1 then evolution = punch theevo = "Poliwrath" else 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 minlevel = pokes[theevo].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end if getPlayerItemCount(cid, punch) >= 1 and getPlayerItemCount(cid, king) >= 1 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 doEvolvePokemon(cid, item2, theevo, evolution, water) elseif item.itemid == punch then minlevel = pokes["Poliwrath"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 local theevo = "Poliwrath" doEvolvePokemon(cid, item2, theevo, water, punch) elseif item.itemid == king then minlevel = pokes["Politoed"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 local theevo = "Politoed" doEvolvePokemon(cid, item2, theevo, water, king) end elseif getPokemonName(item2.uid) == "Gloom" then local theevo = "" local evolution = 0 if item.itemid == leaf then if getPlayerItemCount(cid, venom) >= 1 then theevo = "Vileplume" evolution = venom elseif getPlayerItemCount(cid, sun) >= 1 then theevo = "Bellossom" evolution = sun else 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 minlevel = pokes[theevo].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 doEvolvePokemon(cid, item2, theevo, evolution, leaf) elseif item.itemid == venom then minlevel = pokes["Vileplume"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 doEvolvePokemon(cid, item2, "Vileplume", venom, leaf) elseif item.itemid == sun then minlevel = pokes["Bellossom"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 doEvolvePokemon(cid, item2, "Bellossom", sun, leaf) end elseif getPokemonName(item2.uid) == "Slowpoke" then if item.itemid == enigma then minlevel = pokes["Slowbro"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Slowbro", enigma, 0) elseif item.itemid == king then minlevel = pokes["Slowking"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Slowking", king, 0) end elseif getPokemonName(item2.uid) == "Wurmple" then if item.itemid == venom then minlevel = pokes["Cascoon"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Cascoon", venom, 0) elseif item.itemid == coccon then minlevel = pokes["Silcoon"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Silcoon", coccon, 0) end elseif getPokemonName(item2.uid) == "Kirlia" then if item.itemid == enigma then minlevel = pokes["Gardevoir"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Gardevoir", enigma, 0) elseif item.itemid == punch then minlevel = pokes["Gallade"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Gallade", punch, 0) end elseif getPokemonName(item2.uid) == "Snorunt" then if item.itemid == ice then minlevel = pokes["Glalie"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Glalie", ice, 0) elseif item.itemid == dark then minlevel = pokes["Froslass"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Froslass", dark, 0) end elseif getPokemonName(item2.uid) == "Tyrogue" then local evolution = "" evolution = choose("Hitmonlee", "Hitmonchan", "Hitmontop") minlevel = pokes[evolution].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, evolution, punch, 0) end return true end 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 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 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 minlevel = pokes[evo].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end if count >= 2 then stnid2 = stnid end if getItemAttribute(cid, "addon") > 0 then doPlayerSendCancel(cid, "you can not evolve pokemon with addon.") return true end doEvolvePokemon(cid, item2, evo, stnid, stnid2) return TRUE end www.pokemiw.com 24 Horas Online - 1º 2º 3º 4º 5º 6º 7º gerações 100%
Postado Abril 13, 2015 10 anos local special = specialevo --alterado v1.9 \/ peguem ele todo! local types = { [leaf] = {"Tangela", "Snover", "Cherubi", "Burmy Green", "Budew", "Turtwig", "Roselia", "Grotle", "Lileep", "Cacnea", "Shroomish", "Seedot", "Nuzleaf", "Lotad", "Grovyle", "Treecko", "Bulbasaur", "Ivysaur", "Oddish", "Gloom", "Bellsprout", "Weepinbell", "Exeggcute", "Chikorita", "Bayleef", "Hoppip", "Skiploom", "Sunkern"}, [water] = {"Mantyke", "Finneon", "Shellos Blue", "Shellos Pink", "Buizel", "Piplup", "Prinplup", "Huntail", "Clamperl", "Sealeo", "Spheal", "Feebas", "Corphish", "Barboach", "Wailmer", "Carvanha", "Surskit", "Wingull", "Lombre", "Lotad", "Swampert", "Marshtomp", "Mudkip", "Seadra", "Squirtle", "Wartortle", "Horsea", "Goldeen", "Magikarp", "Psyduck", "Poliwag", "Poliwhirl", "Tentacool", "Krabby", "Staryu", "Omanyte", "Eevee", "Totodile", "Croconow", "Chinchou", "Marill", "Wooper", "Slowpoke", "Remoraid", "Seadra"}, [venom] = {"Croagunk", "Skorupi", "Stunky", "Anorith", "Gulpin", "Wurmple", "Cascoon", "Zubat", "Ekans", "Nidoran male", "Nidoran female", "Nidorino", "Nidorina", "Gloom", "Venonat", "Tentacool", "Grimer", "Koffing", "Spinarak", "Golbat"}, [thunder] = {"Electabuzz", "Magneton", "Shinx", "Luxio", "Electrike", "Magnemite", "Pikachu", "Voltorb", "Eevee", "Chinchou", "Pichu", "Mareep", "Flaaffy", "Elekid"}, [rock] = {"Nosepass", "Rhydon", "Bonsly", "Shieldon", "Cranidos", "Anorith", "Lileep", "Lairon", "Aron", "Geodude", "Graveler", "Rhyhorn", "Kabuto", "Slugma", "Pupitar"}, [punch] = {"Croagunk", "Riolu", "Aipom", "Meditite", "Makuhita", "Combusken", "Machop", "Machoke", "Mankey", "Poliwhirl", "Tyrogue"}, [fire] = {"Magmar", "Chimchar", "Monferno", "Numel", "Torchic", "Combusken", "Charmander", "Charmeleon", "Vulpix", "Growlithe", "Ponyta", "Eevee", "Cyndaquil", "Quilava", "Slugma", "Houndour", "Magby"}, [coccon] = {"Yanma", "Skorupi", "Combee", "Kricketot", "Ninjask", "Nincada", "Surskit", "Wurmple", "Silcoon", "Caterpie", "Metapod", "Weedle", "Kakuna", "Paras", "Venonat", "Scyther", "Ledyba", "Spinarak", "Pineco"}, [crystal] = {"Gabite", "Gible", "Shelgon", "Bagon", "Vibrava", "Dratini", "Dragonair", "Magikarp", "Omanyte", "Kabuto"}, [dark] = {"Dusclops", "Sneasel", "Misdreavus", "Drifloon", "Duskull", "Shuppet", "Carvanha", "Nuzleaf", "Poochyena", "Gastly", "Haunter", "Eevee", "Houndour", "Pupitar"}, [earth] = {"Gligar", "Rhydon", "Hippopotas", "Gabite", "Gible", "Buneary", "Burmy White","Barboach", "Vibrava", "Trapinch", "Numel", "Lairon", "Teddiursa", "Cubone", "Sandshrew", "Nidorino", "Nidorina", "Diglett", "Onix", "Rhyhorn", "Wooper", "Swinub", "Phanpy", "Larvitar"}, [enigma] = {"Porygon2", "Mime Jr.", "Bronzor", "Chingling", "Metang", "Baltoy", "Spoink", "Meditite", "Kirlia", "Ralts", "Porygon", "Abra", "Kadabra", "Psyduck", "Slowpoke", "Drowzee", "Eevee", "Natu", "Smoochum"}, [heart] = {"Togetic", "Lickitung", "Munchlax", "Happiny", "Glameow", "Murkrow", "Burmy Pink", "Bidoof", "Starly", "Staravia", "Staraptor", "Shelgon", "Swablu", "Azurill", "Loudred", "Whismur", "Vigoroth", "Slakoth", "Wingull", "Taillow", "Zigzagoon", "Chansey", "Rattata", "Pidgey", "Pidgeotto", "Spearow", "Clefairy", "Jigglypuff", "Meowth", "Doduo", "Sentret", "Hoothoot", "Cleffa", "Igglybuff", "Togepi", "Snubull"}, [ice] = {"Piloswine", "Sneasel", "Snover", "Sealeo", "Spheal", "Snorunt", "Seel", "Shellder", "Smoochum", "Swinub"}, [king] = {"Slowpoke", "Poliwhirl"}, [metal] = {"Riolu", "Bronzor", "Shieldon", "Metang", "Beldum", "Onix", "Scyther"}, [sun] = {"Skitty", "Sunkern", "Gloom"}, [sfire] = {"Shiny Charmander", "Shiny Charmeleon", "Shiny Vulpix", "Shiny Growlithe", "Shiny Ponyta", "Shiny Eevee"}, [swater] = {"Shiny Squirtle", "Shiny Wartortle", "Shiny Horsea", "Shiny Goldeen", "Shiny Magikarp", "Shiny Psyduck", "Shiny Poliwag", "Shiny Poliwhirl", "Shiny Tentacool", "Shiny Krabby", "Shiny Staryu", "Shiny Omanyte", "Shiny Eevee"}, [sleaf] = {"Shiny Bulbasaur", "Shiny Ivysaur", "Shiny Oddish", "Shiny Gloom", "Shiny Bellsprout", "Shiny Weepinbell", "Shiny Exeggcute"}, [sheart] = {"Shiny Rattata", "Shiny Pidgey", "Shiny Pidgeotto", "Shiny Spearow", "Shiny Clefairy", "Shiny Jigglypuff", "Shiny Meowth", "Shiny Doduo", "Shiny Porygon", "Shiny Chansey"}, [senigma] = {"Shiny Abra", "Shiny Kadabra", "Shiny Psyduck", "Shiny Slowpoke", "Shiny Drowzee", "Shiny Eevee"}, [srock] = {"Shiny Geodude", "Shiny Graveler", "Shiny Rhyhorn", "Shiny Kabuto"}, [svenom] = {"Shiny Zubat", "Shiny Ekans", "Shiny Nidoran male", "Shiny Nidoran female", "Shiny Nidorino", "Shiny Nidorina", "Shiny Gloom", "Shiny Venonat", "Shiny Tentacool", "Shiny Grimer", "Shiny Koffing"}, [sice] = {"Shiny Seel", "Shiny Shellder"}, [sthunder] = {"Shiny Magnemite", "Shiny Pikachu", "Shiny Voltorb", "Shiny Eevee"}, [scrystal] = {"Shiny Dratini", "Shiny Dragonair", "Shiny Magikarp", "Shiny Omanyte", "Shiny Kabuto"}, [scoccon] = {"Shiny Caterpie", "Shiny Metapod", "Shiny Weedle", "Shiny Kakuna", "Shiny Paras", "Shiny Venonat", "Shiny Scyther"}, [sdarkness] = {"Shiny Gastly", "Shiny Haunter", "Shiny Eevee"}, [spunch] = {"Shiny Machop", "Shiny Machoke", "Shiny Mankey", "Shiny Poliwhirl"}, [searth] = {"Shiny Cubone", "Shiny Sandshrew", "Shiny Nidorino", "Shiny Nidorina", "Shiny Diglett", "Shiny Onix", "Shiny Rhyhorn"}, [shiny] = {"Abomasnow", "Abra", "Aerodactyl", "Aggron", "Alakazam", "Ampharos", "Arcanine", "Ariados", "Beedrill", "Blastoise", "Butterfree", "Cacturne", "Charizard", "Crobat", "Cubone", "Ditto", "Dodrio", "Dragonair", "Dragonite", "Dratini", "Electabuzz", "Electivire", "Electrode", "Espeon", "Farfetch'd", "Fearow", "Feraligatr", "Flareon", "Flygon", "Gengar", "Golbat", "Golem", "Grimer", "Growlithe", "Gyarados", "Hitmonchan", "Hitmonlee", "Hitmontop", "Horsea", "Hypno", "Jolteon", "Jynx", "Kingler", "Krabby", "Larvitar", "Machamp", "Magikarp", "Magmar", "Magmortar", "Magneton", "Mamoswine", "Marowak", "Meganium", "Metagross", "Milotic", "Mr. Mime", "Muk", "Nidoking", "Ninetales", "Oddish", "Omastar", "Onix", "Paras", "Parasect", "Pidgeot", "Pinsir", "Politoed", "Pupitar", "Raichu", "Raticate", "Rattata", "Rhydon", "Rhyperior", "Roserade", "Salamence", "Scyther", "Seadra", "Snorlax", "Stantler", "Tangela", "Tangrowth", "Tauros", "Tentacool", "Tentacruel", "Tropius", "Typhlosion", "Umbreon", "Ursaring", "Vaporeon", "Venomoth", "Venonat", "Venusaur", "Vileplume", "Voltorb", "Xatu", "Yanmega", "Zangoose", "Zubat", "Shiny Abra", "Shiny Growlithe", "Shiny Golbat", "Shiny Cubone", "Shiny Dratini", "Shiny Dragonair", "Shiny Electabuzz", "Shiny Voltorb", "Shiny Grimer", "Shiny Magikarp", "Shiny Horsea", "Shiny Krabby", "Shiny Larvitar", "Shiny Magmar", "Shiny Oddish", "Shiny Paras", "Shiny Rattata", "Shiny Rhydon", "Shiny Tangela", "Shiny Tentacool", "Shiny Venonat", "Shiny Zubat"} } local specEvos = { --alterado v1.9 \/ ["Eevee"] = { [thunder] = "Jolteon", [water] = "Vaporeon", [fire] = "Flareon", [enigma] = "Espeon", [dark] = "Umbreon", [leaf] = "Leafeon", [ice] = "Glaceon", }, } function onUse(cid, item, frompos, item2, topos) local pokeball = getPlayerSlotItem(cid, 8) if not isMonster(item2.uid) or not isSummon(item2.uid) then return true end if #getCreatureSummons(cid) > 1 then return true --alterado v1.9 end if getCreatureCondition(item2.uid, CONDITION_INVISIBLE) then return true end local pevo = poevo[getCreatureName(item2.uid)] if not isInArray(specialevo, getCreatureName(item2.uid)) then if not pevo then doPlayerSendCancel(cid, "This pokemon can't evolve.") return true end 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 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 end local minlevel = 0 if getPokemonName(item2.uid) == "Eevee" then local eevee = specEvos["Eevee"][item.itemid] if not eevee then doPlayerSendCancel(cid, "This isn't the required stone to evolve this pokemon.") return true end minlevel = pokes[eevee].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doRemoveItem(item.uid, 1) doEvolvePokemon(cid, item2, eevee, 0, 0) return true end if isInArray(specialevo, getPokemonName(item2.uid)) then if getPokemonName(item2.uid) == "Poliwhirl" then local evolution = 0 local theevo = "" if item.itemid == water then if getPlayerItemCount(cid, king) >= 1 then evolution = king theevo = "Politoed" elseif getPlayerItemCount(cid, punch) >= 1 then evolution = punch theevo = "Poliwrath" else 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 minlevel = pokes[theevo].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end if getPlayerItemCount(cid, punch) >= 1 and getPlayerItemCount(cid, king) >= 1 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 doEvolvePokemon(cid, item2, theevo, evolution, water) elseif item.itemid == punch then minlevel = pokes["Poliwrath"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 local theevo = "Poliwrath" doEvolvePokemon(cid, item2, theevo, water, punch) elseif item.itemid == king then minlevel = pokes["Politoed"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 local theevo = "Politoed" doEvolvePokemon(cid, item2, theevo, water, king) end elseif getPokemonName(item2.uid) == "Gloom" then local theevo = "" local evolution = 0 if item.itemid == leaf then if getPlayerItemCount(cid, venom) >= 1 then theevo = "Vileplume" evolution = venom elseif getPlayerItemCount(cid, sun) >= 1 then theevo = "Bellossom" evolution = sun else 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 minlevel = pokes[theevo].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 doEvolvePokemon(cid, item2, theevo, evolution, leaf) elseif item.itemid == venom then minlevel = pokes["Vileplume"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 doEvolvePokemon(cid, item2, "Vileplume", venom, leaf) elseif item.itemid == sun then minlevel = pokes["Bellossom"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end 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 doEvolvePokemon(cid, item2, "Bellossom", sun, leaf) end elseif getPokemonName(item2.uid) == "Slowpoke" then if item.itemid == enigma then minlevel = pokes["Slowbro"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Slowbro", enigma, 0) elseif item.itemid == king then minlevel = pokes["Slowking"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Slowking", king, 0) end elseif getPokemonName(item2.uid) == "Wurmple" then if item.itemid == venom then minlevel = pokes["Cascoon"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Cascoon", venom, 0) elseif item.itemid == coccon then minlevel = pokes["Silcoon"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Silcoon", coccon, 0) end elseif getPokemonName(item2.uid) == "Kirlia" then if item.itemid == enigma then minlevel = pokes["Gardevoir"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Gardevoir", enigma, 0) elseif item.itemid == punch then minlevel = pokes["Gallade"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Gallade", punch, 0) end elseif getPokemonName(item2.uid) == "Snorunt" then if item.itemid == ice then minlevel = pokes["Glalie"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Glalie", ice, 0) elseif item.itemid == dark then minlevel = pokes["Froslass"].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, "Froslass", dark, 0) end elseif getPokemonName(item2.uid) == "Tyrogue" then local evolution = "" evolution = choose("Hitmonlee", "Hitmonchan", "Hitmontop") minlevel = pokes[evolution].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end doEvolvePokemon(cid, item2, evolution, punch, 0) end return true end 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 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 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 minlevel = pokes[evo].level if getPlayerLevel(cid) < minlevel then doPlayerSendCancel(cid, "You don't have enough level to evolve this pokemon ("..minlevel..").") return true end if count >= 2 then stnid2 = stnid end if getItemAttribute(item.uid, "addon") > 0 then doPlayerSendCancel(cid, "you can not evolve pokemon with addon.") return true end doEvolvePokemon(cid, item2, evo, stnid, stnid2) return TRUE end
Postado Abril 13, 2015 10 anos Autor [13/04/2015 01:05:37] [Error - Action Interface] [13/04/2015 01:05:37] data/actions/scripts/evolution.lua:onUse [13/04/2015 01:05:37] Description: [13/04/2015 01:05:37] data/actions/scripts/evolution.lua:339: attempt to compare number with nil [13/04/2015 01:05:38] stack traceback: [13/04/2015 01:05:38] data/actions/scripts/evolution.lua:339: in function <data/actions/scripts/evolution.lua:51> erro continua, nao da pra evoluir nenhum pokemon nem com nem sem addon. EDIT: Problema resolvido. local pb = getPlayerSlotItem(cid, 8).uid local addon = tonumber(getItemAttribute(pb,"addon")) if addon > 1 then doPlayerSendCancel(cid, "you can not evolve pokemon with addon.") return true end pode fechar e obrigado pela ajuda man. Editado Abril 13, 2015 10 anos por klipstyle (veja o histórico de edições) www.pokemiw.com 24 Horas Online - 1º 2º 3º 4º 5º 6º 7º gerações 100%
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.