Ir para conteúdo
  • 0

Script Talkaction para trocar de pokemon


Kheus Andrade

Pergunta

Queria pedir a vocês um script talkactions para trocar de pokemon, ele tem que funcionar da seguinte maneira:

 

o player diz /poke blastoise e caso tenha o pokemon blastoise na bag ele puxa o poke atual (se estiver solto) e joga o blastoise no slot e solta o pokemon, o slot que digo é aonde tem que colocar a pokeball para soltar o pokemon

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0
11 minutos atrás, Renzyx disse:

Crie um arquivo em data/talkactions/scripts com o nome que deseja, por exemplo: "pokebarsay" e cole:

 


function onSay(cid, words, param)
 
local cfg = {
exhausted = 5, -- Time you are exhausted in seconds.
storage = 5858, -- Storage used for "exhaust."
exp = 2.0 -- this means 2x more experence then default
}
 
 
if(getPlayerStorageValue(cid, cfg.storage) > os.time() and getPlayerStorageValue(cid, cfg.storage) < 100+os.time()) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "You must wait another " .. getPlayerStorageValue(cid, cfg.storage) - os.time() .. ' second' .. ((getPlayerStorageValue(cid, cfg.storage) - os.time()) == 1 and "" or "s") .. " to use new pokemon.")
else
if doSendPokemon(cid, param) then
sendAllPokemonsBarPoke(cid)
setPlayerStorageValue(cid, cfg.storage, os.time() + cfg.exhausted)
return true
end
doPlayerSendTextMessage(cid, 27, "Sua barra esta desatualizada")
sendAllPokemonsBarPoke(cid)
end
return true
end

 vá até talkactions.xml e cole:


<talkaction words="/poke" case-sensitive="no" event="script" value="nomedoscript.lua"/> <!-- em: nomedoscript coloque o nome correspondente a do script tipo pokebarsay -->

Como nosso amigo Dubstep disse acima, isso também está no tópico, mas se preferir pode pegar por aqui para ser mais rápido :)

 

Créditos:

Jair Kevick

quanto utilizo  comando fica dizendo -> Sua barra esta desatualizada

Link para o comentário
Compartilhar em outros sites

  • 0
10 minutos atrás, Renzyx disse:

Ou então não, só tenta trocar pelo cooldown bar do topic


function onSay(cid, words, param)
 
local cfg = {
exhausted = 5, -- Time you are exhausted in seconds.
storage = 5858, -- Storage used for "exhaust."
exp = 2.0 -- this means 2x more experence then default
}
 
 
if(getPlayerStorageValue(cid, cfg.storage) > os.time() and getPlayerStorageValue(cid, cfg.storage) < 100+os.time()) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "You must wait another " .. getPlayerStorageValue(cid, cfg.storage) - os.time() .. ' second' .. ((getPlayerStorageValue(cid, cfg.storage) - os.time()) == 1 and "" or "s") .. " to use new pokemon.")
else
if doSendPokemon(cid, param) then
return true
end
end

Tente

adicionei mais um end que está faltando para fechar a função mas não funcionou, não deu erro nenhum 

Link para o comentário
Compartilhar em outros sites

  • 0
2 minutos atrás, Kheus Andrade disse:

pokemon zr

Teoricamente essa talk deveria funcionar em qualquer derivado do PDA/DXP, mas não sei como essa base funciona :x

Link para o comentário
Compartilhar em outros sites

  • 0
Agora, Kheus Andrade disse:

quer dar uma olhada no goback.lua?

Não é no goback, essa talk usa algumas funções da lib para soltar e voltar o pokemon

Link para o comentário
Compartilhar em outros sites

  • 0
5 horas atrás, Kheus Andrade disse:

quanto utilizo  comando fica dizendo -> Sua barra esta desatualizada

Cade o restos das funções??, não saia dando codigos que n saiba

 

23 horas atrás, Kheus Andrade disse:

Queria pedir a vocês um script talkactions para trocar de pokemon, ele tem que funcionar da seguinte maneira:

 

o player diz /poke blastoise e caso tenha o pokemon blastoise na bag ele puxa o poke atual (se estiver solto) e joga o blastoise no slot e solta o pokemon, o slot que digo é aonde tem que colocar a pokeball para soltar o pokemon

Vou ver oque posso fazer para você aqui amigo

Link para o comentário
Compartilhar em outros sites

  • 0

Esse ai do Renzyx pega os códigos pela metade e não sabe nem o que está fazendo e ainda passa incompleto o código, me diga para que aquelas cfg e os.time? kkkkkkk

 

@Kheus Andrade
Verifica seu script da cdbar.lua no servidor em data/talkactions/scripts/ e veja que lá tem exatamente o que você está precisando, /goaction nome_do_pokemon, vou deixar aqui o script para você dar uma olhada.

Spoiler

local function ChangeBalls(cid, param, cancelequal)
	local balls = getPlayerPokeballs(cid)
	for a = 1, #balls do
		local item = balls[a]
		if not getItemAttribute(item.uid, "ballorder") then return doPlayerSendTextMessage(cid, 27, "Do update your pokemon bar!") end --alterado v2.6
        local name = getItemAttribute(item.uid, "poke") .. getItemAttribute(item.uid, "ballorder")
		if name == param then
			if cancelequal and item.uid == getPlayerSlotItem(cid, 8).uid then return true end
			doChangeBalls(cid, getPlayerSlotItem(cid, 8), item)
			return 0
		end
	end
end

function onSay(cid, words, param)

	if not useKpdoDlls then return true end

	if words == "!code64" then
	return 0
	end

	if words == "/pokeread" then
		if #getCreatureSummons(cid) >= 1 and getPlayerStorageValue(cid, 212124) <= 0 then   --alterado v2.6
			local pokemon = getCreatureSummons(cid)[1]
			local pokelife = (getCreatureHealth(pokemon) / getCreatureMaxHealth(pokemon))
			doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "hp", pokelife)
		end
		doUpdatePokemonsBar(cid)
	end

	if words == "/goaction" then
		if param == "null" then return 0 end
		if exhaustion.get(cid, 6666) and exhaustion.get(cid, 6666) > 0 then return true end
		if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then return true end
		if #getCreatureSummons(cid) >= 1 then
			if not getItemAttribute(getPlayerSlotItem(cid, 8).uid, "ballorder") then return doPlayerSendTextMessage(cid, 27, "Do update your pokemon bar!") end 
            --alterado v2.6
            addEvent(doReturnPokemon, 100, cid, getCreatureSummons(cid)[1], false, pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect)
			if param ~= getItemAttribute(getPlayerSlotItem(cid, 8).uid, "poke") .. getItemAttribute(getPlayerSlotItem(cid, 8).uid, "ballorder") then
				addEvent(ChangeBalls, 1200, cid, param, true)
			end
		else
			addEvent(ChangeBalls, 100, cid, param)
		end
		exhaustion.set(cid, 6666, 2)
	return 0
	end

return 0
end

 

 

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...