Ir para conteúdo

Featured Replies

Postado

Hey,

 

bom, eu fiz um script para saber quantas stones faltam para seu pokémon chegar ao nível 50 de boost. O código está funcionando perfeitamente (com talkaction) e vou passá-lo para vocês, mas a minha ideia é colocar essa informação na pokedex (é aqui que mora o problema).

O código pega o boost do MEU pokémon, então se eu dar dex no meu pokémon, vai funcionar perfeitamente, mas quando outro jogador dar dex no meu pokémon, o boost vai ser do pokémon dele.

Exemplo:

Meu pokémon tem boost 20, quando eu dou dex, aparece lá que o boost é 20.

Fulano tem um pokémon com boost 40, quando ele dar dex no pokémon dele, aparece que o boost é 40, se ele dar dex no meu pokémon, aparece que é 40.

Me alertem se eu expliquei mal.

O que eu quero é, apenas se o pokémon for MEU, vai aparecer o boost na dex.

Tentei fazer com getCreatureMaster(cid), mas não funcionou. Pode ser que tenha dado errado porque eu coloquei errado, então se esse for o jeito certo, me avisem, por favor.

 

data/talkactions/scripts

crie um arquivo .lua

stonestofifty.lua:

Spoiler

function onSay(cid, words, param)
local stonesporboost = {
[0] = 0,
[1] = 1,
[2] = 2,
[3] = 3,
[4] = 4,
[5] = 6,
[6] = 8,
[7] = 10,
[8] = 12,
[9] = 15,
[10] = 18,
[11] = 21,
[12] = 24,
[13] = 28,
[14] = 32,
[15] = 36,
[16] = 40,
[17] = 45,
[18] = 50,
[19] = 55,
[20] = 60,
[21] = 66,
[22] = 72,
[23] = 78,
[24] = 84,
[25] = 91,
[26] = 98,
[27] = 105,
[28] = 112,
[29] = 120,
[30] = 128,
[31] = 136,
[32] = 144,
[33] = 153,
[34] = 162,
[35] = 171,
[36] = 180,
[37] = 190,
[38] = 200,
[39] = 210,
[40] = 220,
[41] = 231,
[42] = 242,
[43] = 253,
[44] = 264,
[45] = 276,
[46] = 288,
[47] = 300,
[48] = 312,
[49] = 325,
[50] = 338,
}

local slot = getPlayerSlotItem(cid, 8)
local boost = getItemAttribute(slot.uid, "boost") or 0
local pokemon = getCreatureSummons(cid)
local stones = stonesporboost[boost]
local calculo = 338 - stones


	if boost == 0 and #pokemon == 1 then
		doPlayerSendTextMessage(cid, 19, "Seu pokémon não tem boost.")
	end
	if #pokemon == 0 then
		doPlayerSendTextMessage(cid, 19, "Solte um pokémon.")
	elseif #pokemon == 1 and boost > 0 then
		doPlayerSendTextMessage(cid, 19, "Faltam "..calculo.." stones para seu pokémon alcançar o boost +50.")
	end
return true
end

 

talkactions.xml:

Spoiler

<talkaction words="/boost" event="script" value="stonestofifty.lua" />

 

 

Editado por Talesigorvr (veja o histórico de edições)

Não dou suporte via PM, crie um tópico caso tenha dúvidas.

Isso previne que outras pessoas com a mesma dúvida criem tópicos desnecessários.

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.7k

Informação Importante

Confirmação de Termo