Ir para conteúdo
  • Cadastre-se

(Resolvido)Addon System


Ir para solução Resolvido por Wend II,

Posts Recomendados

Galera Quero um Sistema De Addon Igual Do PxG, Pode Mudar De Cor, Da Fly, Ride, Surf, Sem Bugs Alguns Se Vocês Conseguirem Me Arruma Esse Sistema Agradeço 
 
REP+++ 
|
Base: Pokémon Pyrus, PDA 
|
REP+++
 
Facebook.com/PGenOnline

Editado por LoadingGo (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

O tópico foi movido para a área correta, preste mais atenção da próxima vez!

Leia as regras do fórum: http://tibiaking.com/forum/topic/1281-regras-gerais/?p=7680

Este tópico foi movido:

De: "OTServSuporte OTServSuporte de OTServ Geral"

Para: "OTServSuporte OTServSuporte de Servidores Derivados"

Link para o post
Compartilhar em outros sites
  • Solução

Igual a PokexGames ninguém passaria assim de mão beijada , mais tem os que tentam né :P 

uso esse sistema de addon ai no meu servidor 

 

Em actions.xml adicione a seguinte tag:

<action itemid="xxxx" event="script" value="addons.lua"/>

 

Sendo, xxxx o id do item que vai dar o addon.

 

addons.lua

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
        local addons = {
        [xxxx] = {pokemon= "Scyther" , looktype = 510}, --xxxx = id do item do addon --- "Scyther" = nome do pokemon --- looktype = 1 é o looktype do pokemon com addon
        }

        if #getCreatureSummons(cid) > 0 then
                doPlayerSendCancel(cid, "Please back your pokemon.")
                return false
        end    
        local numero = addons[item.itemid].looktype

        local pb = getPlayerSlotItem(cid, 8).uid
        local pk = addons[item.itemid].pokemon

        if getItemAttribute(pb,"poke") ~= pk then
                doPlayerSendCancel(cid, "Sorry, you can't use this addon on this poke.")
        return false
        end

        if getItemAttribute(pb,"addon") < 1 then
                doRemoveItem(item.uid, 1)
                doPlayerSendTextMessage(cid, 27, "Congratulations! Now your pokemon will use the addon.")
                doSetItemAttribute(pb,"addon",numero)
                return true
        end    

return true

end

 

Na action do goback, no finalzinho antes de

else
        doPlayerSendCancel(cid, "This pokemon is fainted.")

end

 

Coloque:

local pk = getCreatureSummons(cid)[1]
        local pb = getPlayerSlotItem(cid, 8).uid
        local look = getItemAttribute(pb,"addon")
        if not look then
                doSetItemAttribute(pb,"addon",0)
        return false
        end
        if look > 0 then
                doSetCreatureOutfit(pk, {lookType = look}, -1)
        return true

        end

 

Agora em data/lib/catch system.lua

Depois de:

doItemSetAttribute(item, "description", description)

 

coloque:

doItemSetAttribute(item, "addon", 0)

 

Depois em data/talkactions/scripts/createpokeball.lua depois de:

doItemSetAttribute(item, "description", "Contains a "..name..".")

 

coloque:

doItemSetAttribute(item, "addon", 0)
Link para o post
Compartilhar em outros sites

Igual a PokexGames ninguém passaria assim de mão beijada , mais tem os que tentam né :P

uso esse sistema de addon ai no meu servidor

Em actions.xml adicione a seguinte tag:

Sendo, xxxx o id do item que vai dar o addon.

addons.lua

function onUse(cid, item, fromPosition, itemEx, toPosition)		local addons = {		[xxxx] = {pokemon= "Scyther" , looktype = 510}, --xxxx = id do item do addon --- "Scyther" = nome do pokemon --- looktype = 1 é o looktype do pokemon com addon		}		if #getCreatureSummons(cid) > 0 then				doPlayerSendCancel(cid, "Please back your pokemon.")				return false		end			local numero = addons[item.itemid].looktype		local pb = getPlayerSlotItem(cid, 8).uid		local pk = addons[item.itemid].pokemon		if getItemAttribute(pb,"poke") ~= pk then				doPlayerSendCancel(cid, "Sorry, you can't use this addon on this poke.")		return false		end		if getItemAttribute(pb,"addon") < 1 then				doRemoveItem(item.uid, 1)				doPlayerSendTextMessage(cid, 27, "Congratulations! Now your pokemon will use the addon.")				doSetItemAttribute(pb,"addon",numero)				return true		end	return trueend

Na action do goback, no finalzinho antes de

else		doPlayerSendCancel(cid, "This pokemon is fainted.")end
Coloque:
local pk = getCreatureSummons(cid)[1]		local pb = getPlayerSlotItem(cid, 8).uid		local look = getItemAttribute(pb,"addon")		if not look then				doSetItemAttribute(pb,"addon",0)		return false		end		if look > 0 then				doSetCreatureOutfit(pk, {lookType = look}, -1)		return true        end
Agora em data/lib/catch system.lua

Depois de:

doItemSetAttribute(item, "description", description)
coloque:
doItemSetAttribute(item, "addon", 0)
Depois em data/talkactions/scripts/createpokeball.lua depois de:
doItemSetAttribute(item, "description", "Contains a "..name..".")
coloque:
doItemSetAttribute(item, "addon", 0)

Vou Testar Aqui :) ++ Para você.

Igual a PokexGames ninguém passaria assim de mão beijada , mais tem os que tentam né :P

uso esse sistema de addon ai no meu servidor

Em actions.xml adicione a seguinte tag:

Sendo, xxxx o id do item que vai dar o addon.

addons.lua

function onUse(cid, item, fromPosition, itemEx, toPosition)		local addons = {		[xxxx] = {pokemon= "Scyther" , looktype = 510}, --xxxx = id do item do addon --- "Scyther" = nome do pokemon --- looktype = 1 é o looktype do pokemon com addon		}		if #getCreatureSummons(cid) > 0 then				doPlayerSendCancel(cid, "Please back your pokemon.")				return false		end			local numero = addons[item.itemid].looktype		local pb = getPlayerSlotItem(cid, 8).uid		local pk = addons[item.itemid].pokemon		if getItemAttribute(pb,"poke") ~= pk then				doPlayerSendCancel(cid, "Sorry, you can't use this addon on this poke.")		return false		end		if getItemAttribute(pb,"addon") < 1 then				doRemoveItem(item.uid, 1)				doPlayerSendTextMessage(cid, 27, "Congratulations! Now your pokemon will use the addon.")				doSetItemAttribute(pb,"addon",numero)				return true		end	return trueend

Na action do goback, no finalzinho antes de

else		doPlayerSendCancel(cid, "This pokemon is fainted.")end
Coloque:
local pk = getCreatureSummons(cid)[1]		local pb = getPlayerSlotItem(cid, 8).uid		local look = getItemAttribute(pb,"addon")		if not look then				doSetItemAttribute(pb,"addon",0)		return false		end		if look > 0 then				doSetCreatureOutfit(pk, {lookType = look}, -1)		return true        end
Agora em data/lib/catch system.lua

Depois de:

doItemSetAttribute(item, "description", description)
coloque:
doItemSetAttribute(item, "addon", 0)
Depois em data/talkactions/scripts/createpokeball.lua depois de:
doItemSetAttribute(item, "description", "Contains a "..name..".")
coloque:
doItemSetAttribute(item, "addon", 0)

não sei se e necessário mas so por precaução adicionar isso

em actions.xml

No XXXX ID Da Box

data/actions/scripts Adicionei addons.lua

No Caso Do YYYY é O ID do Item que eo Addon Exemplo Uma Capa De Scyther

No Caso Do XXXX E O ID Da Box, Que Vai Sair Os Addons

function onUse(cid, item, frompos, item2, topos, pos)

local eggs = {YYYY}

local randomChance = math.random(1, 49)

if item2.itemid == XXXX then

doSendMagicEffect(getCreaturePosition(cid), 28)

doRemoveItem(item2.uid, 1)

doPlayerAddItem(cid, eggs[randomChance], 1)

doPlayerSendTextMessage(cid, 27, "Você ganhou um Addon!")

return true

end

end

                                                           278bf3ebeb128fc963dc594374adffa6c3e8b116

Editado por LoadingGo (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Vou Testar Aqui :) ++ Para você.

não sei se e necessário mas so por precaução adicionar isso

em actions.xml

No XXXX ID Da Box

data/actions/scripts Adicionei addons.lua

No Caso Do YYYY é O ID do Item que eo Addon Exemplo Uma Capa De Scyther

No Caso Do XXXX E O ID Da Box, Que Vai Sair Os Addons

function onUse(cid, item, frompos, item2, topos, pos)

local eggs = {YYYY}

local randomChance = math.random(1, 49)

if item2.itemid == XXXX then

doSendMagicEffect(getCreaturePosition(cid), 28)

doRemoveItem(item2.uid, 1)

doPlayerAddItem(cid, eggs[randomChance], 1)

doPlayerSendTextMessage(cid, 27, "Você ganhou um Addon!")

return true

end

end

                                                       

 

Funcionou? se sim clique em melhor resposta ~~ 

pode ajudar outros membros 

Link para o post
Compartilhar em outros sites
  • Sub-Admin

falta algo na lib pra que ele funcione os atribute não pega '0'

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

falta algo na lib pra que ele funcione os atribute não pega '0'

 

no some fuctions.lua 

 

local pk = getCreatureSummons(cid)[1]
local pb = getPlayerSlotItem(cid, 8).uid
local look = getItemAttribute(pb,"addon")
if not look then
doSetItemAttribute(pb,"addon",0)
return false
end
if look > 0 then
doSetCreatureOutfit(pk, {lookType = look}, -1)
return true
end
 
if useKpdoDlls then
doUpdateMoves(cid)
end
end
Link para o post
Compartilhar em outros sites
  • 6 months later...
Em 04/06/2015 13:45:53, TopllDanStar disse:

 

no some fuctions.lua 

 

 


local pk = getCreatureSummons(cid)[1]
local pb = getPlayerSlotItem(cid, 8).uid
local look = getItemAttribute(pb,"addon")
if not look then
doSetItemAttribute(pb,"addon",0)
return false
end
if look > 0 then
doSetCreatureOutfit(pk, {lookType = look}, -1)
return true
end
 
if useKpdoDlls then
doUpdateMoves(cid)
end
end

Olá, utilizo esse sistema, queria só complementar, caso a cd bar pare de funcionar com o pokemon com addon, basta remover 2 linhas do goback.lua e some functions.lua, "return false" e "return true", remova essas 2 linhas dos 2 aquivos que falei e pronto, ah você não teria como adaptar para poder usar com skill? exemplo o scyther quando usa a passiva fica sem o addon, eu tenho a sprite dele usando a skill com addon mas não sei por, nem a skill nem as habilidades fly/ride e surf :/

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo