Ir para conteúdo

Perfect Pokedex System


Faisher

Posts Recomendados

Antes de começar, este sistema tem sido feito por Xafterin / KylerXX.

 

 

 

PokeServer equipe do XTibia -> pelas descrições do pokemon.

thalia eu acho que o gerente de projeto.

 

Strack -> Ajuda para completar o código de registro.

 

Você precisa baixar um arquivo RAR contendo uma pasta com todas as descrições.

Aqui ->

Link

Quando você descer as descrições de arquivos, conjunto de descrições na pasta "data/actions/scripts" em seu servidor.

 

Testado em: TFS 0.3.6

 

Bem, nós data/lib/000-constant.lua [/ b].

E acrescentar o seguinte:

pokestorages = {
[7274] = {"001","Bulbasaur"},
[7275] = {"002","Ivysaur"},
[7276] = {"003","Venusaur"},
[7277] = {"004","Charmander"},
[7278] = {"005","Charmeleon"},
[7279] = {"006","Charizard"},
[7280] = {"007","Squirtle"},
[7281] = {"008","Wartortle"},
[7282] = {"009","Blastoise"},
[7283] = {"010","Caterpie"},
[7284] = {"011","Metapod"},
[7285] = {"012","Butterfree"},
[7286] = {"013","Weedle"},
[7287] = {"014","Kakuna"},
[7288] = {"015","Beedril"},
[7289] = {"016","Pidgey"},
[7290] = {"017","Pidgeotto"},
[7291] = {"018","Pidgeot"},
[7292] = {"019","Rattata"},
[7293] = {"020","Raticate"},
[7294] = {"021","Spearow"},
[7295] = {"022","Fearow"},
[7296] = {"023","Ekans"},
[7297] = {"024","Arbok"},
[7298] = {"025","Pikachu"},
[7299] = {"026","Raichu"},
[7300] = {"027","Sandshrew"},
[7301] = {"028","Sandslash"},
[7302] = {"029","Nidoran(M)"},
[7303] = {"030","Nidorina"},
[7304] = {"031","Nidoquin"},
[7305] = {"032","Nidora(F)"},
[7306] = {"033","Nidorino"},
[7307] = {"034","Nidokin"},
[7308] = {"035","Clefairy"},
[7309] = {"036","Clefable"},
[7310] = {"037","Vulpix"},
[7311] = {"038","Ninetales"},
[7312] = {"039","Jigglypuff"},
[7313] = {"040","Wigglytuff"},
[7314] = {"041","Zubat"},
[7315] = {"042","Golbat"},
[7316] = {"043","Oddish"},
[7317] = {"044","Gloom"},
[7318] = {"045","Vileplume"},
[7319] = {"046","Paras"},
[7320] = {"047","Parasect"},
[7321] = {"048","Venomat"},
[7322] = {"049","Venomoth"},
[7323] = {"050","Diglett"},
[7324] = {"051","Dugtrio"},
[7325] = {"052","Meowth"},
[7326] = {"053","Persian"},
[7327] = {"054","Psyduck"},
[7328] = {"055","Golduck"},
[7329] = {"056","Mankey"},
[7330] = {"057","Primeape"},
[7331] = {"058","Growlithe"},
[7332] = {"059","Arcanine"},
[7333] = {"060","Poliwag"},
[7334] = {"061","Poliwhirl"},
[7335] = {"062","Poliwrath"},
[7336] = {"063","Abra"},
[7337] = {"064","Kadabra"},
[7338] = {"065","Alakazam"},
[7339] = {"066","Machop"},
[7340] = {"067","Machoke"},
[7341] = {"068","Machamp"},
[7342] = {"069","Bellsprout"},
[7343] = {"070","Weepinbell"},
[7344] = {"071","Victreebell"},
[7345] = {"072","Tentacool"},
[7346] = {"073","Tentacruel"},
[7347] = {"074","Geodude"},
[7348] = {"075","Graveler"},
[7349] = {"076","Golem"},
[7350] = {"077","Ponyta"},
[7351] = {"078","Rapidash"},
[7352] = {"079","Slowpoke"},
[7353] = {"080","Slowbro"},
[7354] = {"081","Magnemite"},
[7355] = {"082","Magneton"},
[7356] = {"083","Farfetch'd"},
[7357] = {"084","Doduo"},
[7358] = {"085","Dodrio"},
[7359] = {"086","Seel"},
[7360] = {"087","Dewong"},
[7361] = {"088","Grimer"},
[7362] = {"089","Muk"},
[7363] = {"090","Shellder"},
[7364] = {"091","Cloyster"},
[7365] = {"092","Gastly"},
[7366] = {"093","Haunter"},
[7367] = {"094","Gengar"},
[7368] = {"095","Onix"},
[7369] = {"096","Drowzee"},
[7370] = {"097","Hypno"},
[7371] = {"098","Krabby"},
[7372] = {"099","Kingler"},
[7373] = {"100","Voltorb"},
[7374] = {"101","Electrode"},
[7375] = {"102","Eggxecute"},
[7376] = {"103","Eggxecutor"},
[7377] = {"104","Cubone"},
[7378] = {"105","Marowak"},
[7379] = {"106","Hitmonlee"},
[7380] = {"107","Hitmonchan"},
[7381] = {"108","Likitung"},
[7382] = {"109","Koffing"},
[7383] = {"110","Weezing"},
[7384] = {"111","Rhyhorn"},
[7385] = {"112","Rhydon"},
[7386] = {"113","Chansey"},
[7387] = {"114","Tangela"},
[7388] = {"115","Kangaskhan"},
[7389] = {"116","Horsea"},
[7390] = {"117","Seadra"},
[7391] = {"118","Goldeen"},
[7392] = {"119","Seaking"},
[7393] = {"120","Staryu"},
[7394] = {"121","Starmie"},
[7395] = {"122","Mr.Mime"},
[7396] = {"123","Scyther"},
[7397] = {"124","Jynx"},
[7398] = {"125","Electrabuzz"},
[7399] = {"126","Magmar"},
[7400] = {"127","Pinsir"},
[7401] = {"128","Tauros"},
[7402] = {"129","Magikarp"},
[7403] = {"130","Gyarados"},
[7404] = {"131","Lapras"},
[7405] = {"132","Ditto"},
[7406] = {"133","Eevee"},
[7407] = {"134","Vaporeon"},
[7408] = {"135","Jolteon"},
[7409] = {"136","Flareon"},
[7410] = {"137","Porygon"},
[7411] = {"138","Omanite"},
[7412] = {"139","Omastar"},
[7413] = {"140","Kabuto"},
[7414] = {"141","Kabutops"},
[7415] = {"142","Aerodactyl"},
[7416] = {"143","Snorlax"},
[7417] = {"144","Articuno"},
[7418] = {"145","Zapdos"},
[7419] = {"146","Moltres"},
[7420] = {"147","Dratini"},
[7421] = {"148","Dragonair"},
[7422] = {"149","Dragonite"},
[7423] = {"150","Mewtwo"},
[7424] = {"151","Mew"}
}
pokemons = { -- { number of storage, itemid on click pokedex, number}
["Bulbasaur"]    = {7274, 2222, 1},
["Ivysaur"]      = {7275, 2435, 2},
["Venusaur"]     = {7276, 2222, 3},
["Charmander"]   = {7277, 2222, 4},
["Charmeleon"]   = {7278, 2222, 5},
["Charizard"]  = {7279, 2222, 6},
["Squirtle"]     = {7280, 2222, 7},
["Wartortle"]    = {7281, 2222, 8},
["Blastoise"]    = {7282, 2222, 9},
["Caterpie"]     = {7283, 2222, 10},
["Metapod"]      = {7284, 2222, 11},
["Butterfree"]   = {7285, 2222, 12},
["Weedle"]       = {7286, 2222, 13},
["Kakuna"]       = {7287, 2222, 14},
["Beedrill"]     = {7288, 2222, 15},
["Pidgey"]       = {7289, 2222, 16},
["Pidgeotto"]    = {7290, 2222, 17},
["Pidgeot"]      = {7291, 2222, 18},
["Ratatta"]      = {7292, 2222, 19},
["Raticate"]     = {7293, 2222, 20},
["Spearow"]      = {7294, 2222, 21},
["Fearow"]       = {7295, 2222, 22},
["Ekans"]        = {7296, 2222, 23},
["Arbok"]        = {7297, 2222, 24},
["Pikachu"]      = {7298, 2222, 25},
["Raichu"]       = {7299, 2222, 26},
["Sandshrew"]    = {7300, 2222, 27},
["Sandslash"]    = {7301, 2222, 28},
["Nidoran(H)"]   = {7302, 2222, 29},
["Nidorina"]     = {7303, 2222, 30},
["Nidoqueen"]    = {7304, 2222, 31},
["Nidoran(M)"]   = {7305, 2222, 32},
["Nidorino"]     = {7306, 2222, 33},
["Nidoking"]     = {7307, 2222, 34},
["Clefairy"]     = {7308, 2222, 35},
["Clefable"]     = {7309, 2222, 36},
["Vulpix"]       = {7310, 2222, 37},
["Ninetales"]    = {7311, 2222, 38},
["Jigglypuff"]   = {7312, 2222, 39},
["Wigglytuff"]   = {7313, 2222, 40},
["Zubat"]        = {7314, 2222, 41},
["Golbat"]       = {7315, 2222, 42},
["Oddish"]       = {7316, 2222, 43},
["Gloom"]        = {7317, 2222, 44},
["Vileplume"]    = {7318, 2222, 45},
["Paras"]        = {7319, 2222, 46},
["Parasect"]     = {7320, 2222, 47},
["Venomat"]      = {7321, 2222, 48},
["Venomoth"]     = {7322, 2222, 49},
["Diglett"]      = {7323, 2222, 50},
["Dugrio"]       = {7324, 2222, 51},
["Meowth"]       = {7325, 2435, 52},
["Persian"]      = {7326, 2222, 53},
["Psyduck"]      = {7327, 2222, 54},
["Golduck"]      = {7328, 2222, 55},
["Mankey"]       = {7329, 2222, 56},
["Primeape"]     = {7330, 2222, 57},
["Growlithe"]    = {7331, 2222, 58},
["Arcanine"]     = {7332, 2222, 59},
["Poliwag"]      = {7333, 2222, 60},
["Poliwhirl"]    = {7334, 2222, 61},
["Poliwrath"]    = {7335, 2222, 62},
["Abra"]         = {7336, 2222, 63},
["Kadabra"]      = {7337, 2222, 64},
["Alakazam"]     = {7338, 2222, 65},
["Machop"]       = {7339, 2222, 66},
["Machoke"]      = {7340, 2222, 67},
["Machamp"]      = {7341, 2222, 68},
["Bellsprout"]   = {7342, 2222, 69},
["Weepinbell"]   = {7343, 2222, 70},
["Victreebell"]  = {7344, 2222, 71},
["Tentacool"]    = {7345, 2222, 72},
["Tentracruel"]  = {7346, 2222, 72},
["Geodude"]      = {7347, 2222, 74},
["Graveler"]     = {7348, 2222, 75},
["Golem"]        = {7349, 2222, 76},
["Ponyta"]       = {7350, 2222, 77},
["Rapidash"]     = {7351, 2222, 78},
["Slowpoke"]     = {7352, 2222, 79},
["Slowbro"]      = {7353, 2222, 80},
["Magnemite"]    = {7354, 2222, 81},
["Magneton"]     = {7355, 2222, 82},
["Farfetch'd"]   = {7356, 2222, 83},
["Doduo"]        = {7357, 2222, 84},
["Dodrio"]       = {7358, 2222, 85},
["Seel"]         = {7359, 2222, 86},
["Dewong"]       = {7360, 2222, 87},
["Grimer"]       = {7361, 2222, 88},
["Muk"]          = {7362, 2222, 89},
["Shellder"]     = {7363, 2222, 90},
["Cloyster"]     = {7364, 2222, 91},
["Gastly"]       = {7365, 2222, 92},
["Haunter"]      = {7366, 2222, 93},
["Gengar"]       = {7367, 2222, 94},
["Onix"]         = {7368, 2222, 95},
["Drowzee"]      = {7369, 2222, 96},
["Hypno"]        = {7370, 2222, 97},
["Krabby"]       = {7371, 2222, 98},
["Kingler"]      = {7372, 2222, 99},
["Voltorb"]      = {7373, 2222, 100},
["Electrode"]    = {7374, 2222, 101},
["Eggxecute"]    = {7375, 2435, 102},
["Eggxecutor"]   = {7376, 2222, 103},
["Cubone"]       = {7377, 2222, 104},
["Marowak"]      = {7378, 2222, 105},
["Hitmonlee"]    = {7379, 2222, 106},
["Hitmonchan"]   = {7380, 2222, 107},
["Likitung"]     = {7381, 2222, 108},
["Koffing"]      = {7382, 2222, 109},
["Weezing"]      = {7383, 2222, 110},
["Rhyhorn"]      = {7384, 2222, 111},
["Rhydon"]       = {7385, 2222, 112},
["Chansey"]      = {7386, 2222, 113},
["Tangela"]      = {7387, 2222, 114},
["Kangaskhan"]   = {7388, 2222, 115},
["Horsea"]       = {7389, 2222, 116},
["Rotworm"]       = {7390, 2222, 117},
["Goldeen"]      = {7391, 2222, 118},
["Seaking"]      = {7392, 2222, 119},
["Staryu"]       = {7393, 2222, 120},
["Starmie"]      = {7394, 2222, 121},
["Mr.Mime"]      = {7395, 2222, 122},
["Scyther"]      = {7396, 2222, 123},
["Jynx"]         = {7397, 2222, 124},
["Electrabuzz"]  = {7398, 2222, 125},
["Magmar"]       = {7399, 2222, 126},
["Pinsir"]       = {7400, 2222, 127},
["Tauros"]       = {7401, 2222, 128},
["Magikarp"]     = {7402, 2222, 129},
["Gyarados"]     = {7403, 2222, 130},
["Lapras"]       = {7404, 2222, 131},
["Ditto"]        = {7405, 2222, 132},
["Eevee"]        = {7406, 2222, 133},
["Vaporeon"]     = {7407, 2222, 134},
["Jolteon"]      = {7408, 2222, 135},
["Flareon"]      = {7409, 2222, 136},
["Porigon"]      = {7410, 2222, 137},
["Omanite"]      = {7411, 2222, 138},
["Omastar"]      = {7412, 2222, 139},
["Kabuto"]       = {7413, 2222, 140},
["Kabutops"]     = {7414, 2222, 141},
["Aerodactyl"]   = {7415, 2222, 142},
["Snorlax"]      = {7416, 2222, 143},
["Articuno"]     = {7417, 2222, 144},
["Zapdos"]       = {7418, 2222, 145},
["Moltres"]      = {7419, 2222, 146},
["Dratini"]      = {7420, 2222, 147},
["Dragonair"]    = {7421, 2222, 148},
["Dragonite"]    = {7422, 2222, 149},
["Mewtwo"]       = {7423, 2222, 150},
["Mew"]          = {7424, 2222, 151}
}

 

Bem, explicar os valores da tabela "pokemons" no arquivo 000-constant.lua.

  Citar

["Mew"] = {7424, 2222, 151}

 

RED COLOR -> é o storage do voe quando pokemon se cadastra (não alterar, para precuación).

ORANGE COLOR -> O itemid da imagem do portrait.

YELLOW COLOR -> é a descrição de nome de arquivo. (Não modifique). (Não modifique).

 

 

Agora vá para "data/actions/scripts" e crie um arquivo chamado "pokedex.lua" e cole isto em:

function addPoke(cid, storage)
setPlayerStorageValue(cid, storage, 1) 
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
if not isCreature(itemEx.uid) then
	return doPlayerSendCancel(cid, "Invalid action.")
end
local showpokedex = ""
local img = ""
local p = pokemons[getCreatureName(itemEx.uid)]
if p then
	img = p[2]
	showpokedex = doShowTextDialog(cid, img, io.open('data/actions/scripts/descriptions/'.. p[3] ..'.txt'):read("*all"))
if isMonster(itemEx.uid) then
       return getPlayerStorageValue(cid, p[1]) ~= 1 and doPlayerSendTextMessage(cid, 22, "Now you registered ".. getCreatureName(itemEx.uid) .." into pokedex!") and doPlayerSendTextMessage(cid, 22, "You gain ".. p[1]-7300 .." experience!") and doPlayerAddExperience(cid, p[1]-7300) and showpokedex and addPoke(cid, p[1]) or getPlayerStorageValue(cid, p[1]) == 1 and showpokedex
end
end
if getCreatureName(itemEx.uid) == getCreatureName(cid) then
   local list = "Pokedex registration: \n"
local pokemonss = 0
   for i = 7274,7424 do
       if getPlayerStorageValue(cid, i) == 1 then
           list = list.."\n[".. pokestorages[i][1] .."] - ".. pokestorages[i][2] ..""
		pokemonss = pokemonss + 1
       elseif getPlayerStorageValue(cid, i) == -1 then
           list = list.."\n[".. pokestorages[i][1] .."] - Uknown pokemon"
       end
   end
doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, "You have ".. pokemonss .." unlocked pokemons.")
   doShowTextDialog(cid, item.itemid, "".. list .."\n\nEnd of registration.")
end
return true
end

 

Você não precisa modificar nada do script pokedex.lua f você não sabe.

 

en actions.xml adiciona isso:

<action itemid="id of pokedex" event="script" value="name.lua" allowfaruse="1"/>

 

Ok, agora uma imagem do Pokémon Registration:

pokedex.jpg

Editado por Faisher
Link para o comentário
Compartilhar em outros sites

Parabéns estava procurando essa função que registra os pokemons.

Obrigado por trazer seu conteúdo ao nosso fórums.

Mande MP para o thalia passando o script para que possívelmente ele possa adicionar no próximo update do server.

Reputação +

Editado por brunin86
Link para o comentário
Compartilhar em outros sites

  • 7 years later...
  • 2 years later...
×
×
  • Criar Novo...