Ir para conteúdo

Featured Replies

Postado

Base:  DXP

 

 

Qual erro está surgindo/O que você procura?

Implementar pokedex do servidor PokeAlpha

 

Você tem o código disponível? Se tiver publique-o aqui:

 local OPCODE_POKEDEX = opcodes.OPCODE_POKEDEX
local OPCODE_CREATE_POKEMONS = opcodes.OPCODE_CREATE_POKEMONS

function onUse(cid, item, fromPosition, itemEx, toPosition)
	if not isCreature(itemEx.uid) then return true end
	if getPlayerStorageValue(cid, storages.pokedexDelay) == 1 then
		return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Não use a pokedex tão rápido.")
	end
	local name = isPlayer(itemEx.uid) and getCreatureName(itemEx.uid) or getPokeName(itemEx.uid)
	local str = {}
 
	for pokeId = 1, 3 do
		local name = string.lower(string.explode(getItemNameById(11837+pokeId), "fainted ")[2])
		table.insert(str, ((pokeId > 9 and pokeId < 100) and "#0" or (pokeId < 10) and "#00" or "#")..pokeId)
		table.insert(str, " - "..(getPlayerStorageValue(cid, getPokeUniqueStorToDex(name)) == -1 and "??????" or doCorrectString(name)))
		table.insert(str, "|"..(getPlayerStorageValue(cid, getPokeUniqueStorToCatch(name)) == -1 and "false" or "true"))
		table.insert(str, "|".. getPokemonLevel(name))
		table.insert(str, "|".. getPokemonDescription(name))
		table.insert(str, "|".. getPokemonAttack(name))
		table.insert(str, "|".. getPokemonDefense(name))
		table.insert(str, "|".. getPokemonSpAttack(name))
		table.insert(str, "|".. getPokemonVitality(name))
		table.insert(str, "|".. getPokemonType1(name) .."".. (getPokemonType2(name) and "/".. getPokemonType2(name) or "") ..";")
	end

	if isMonster(itemEx.uid) or (isPlayer(itemEx.uid) and itemEx.uid == cid) then
		doSendPlayerExtendedOpcode(cid, OPCODE_CREATE_POKEMONS, table.concat(str))
		setPlayerStorageValue(cid, storages.pokedexDelay, 1)
		addEvent(setPlayerStorageValue, 3000, cid, storages.pokedexDelay, -1)
	end

	if isMonster(itemEx.uid) then
		if getPlayerStorageValue(cid, getPokeUniqueStorToDex(name)) == -1 then
			local exp = (getPokemonLevel(name) * 10) / 2
			setPlayerStorageValue(cid, getPokeUniqueStorToDex(name), 1)
			setPlayerStorageValue(cid, storages.pokedexSys, getPlayerStorageValue(cid, storages.pokedexSys) + 1)
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você desbloqueou o pokemon "..doCorrectString(name).." e ganhou "..exp.." de experiencia.")
			doPlayerAddExp_2(cid, exp)
			doSendMagicEffect(getThingPos(cid), 91)
		end
		local pokeId = getPokemonPortrait(name) - 11988
		doSendPlayerExtendedOpcode(cid, OPCODE_POKEDEX, pokeId.."|"..doCorrectString(name).."|"..getPokemonLevel(name).."|"..(getPlayerStorageValue(cid, getPokeUniqueStorToCatch(name)) == -1 and "false" or "true").."|"..getPokemonDescription(name).."|"..getPokemonAttack(name).."|"..getPokemonDefense(name).."|"..getPokemonSpAttack(name).."|"..getPokemonVitality(name).."|".. getPokemonType1(name) .."".. (getPokemonType2(name) and "/".. getPokemonType2(name) or ""))
	elseif isPlayer(itemEx.uid) and itemEx.uid == cid then
		doSendPlayerExtendedOpcode(cid, OPCODE_POKEDEX, name)
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você tem a pokedex de "..(getPlayerStorageValue(cid, storages.pokedexSys) + 1).." pokemon"..(getPlayerStorageValue(cid, storages.pokedexSys) + 1 == 1 and "" or "s").." de kanto.")
	end

return true
end

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.

 

 

local name = string.lower(string.explode(getItemNameById(11837+pokeId), "fainted ")[2])

eu sei que o problema esta relacionado a essa linha,  pois o que ele faz ele vai na tabela pega o pokeID e soma mais 11837 para dar o corpse do pokemon, porem na base dxp não esta pegando, já tentei de tudo

image.thumb.png.8d15b590de67e46f018dcaa5b0119457.png

image.thumb.png.0bc9c1e7f9ff70470616cd6c8eb1ab31.png

 

Alguem consegue me ajudar a implementar na base dxp ?

 

sujestao que me deram, simples, faça um array com as id's dos corpse dos pokémons, depois ao invés de puxar o ID DO ITEM 11837 e somar ao pokeid que daria o corpse puxe o array nessa função , porem não sei fazer isso.

  • 1 year later...

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo