Ir para conteúdo

!taunt system


SamueLGuedes

Posts Recomendados

Boa tarde, galera do XTibia_smile.gif venho trazer a voçes um sistema do PXG, o TAUNT SYSTEM, alguns ja conheçem mas para aqueles que nao conheçem, ele funciona assim:

 
 Você fala o comando "!taunt" e em seguida começa a aparecer varios looktype como se ele estivesse se mechendo. vamos ao que interessa.

Va em data/talkactions/scripts e crie um arquivo qualquer, você escolhe o nome, e cole isso dentro: 
 



local outfits = {1484, 1483, 1482, 1481, 1480, 1479, 1480, 1479, 1480, 1479, 1478, 1477}-- somente o lookType
local copiar_cores = true -- se true, copia as cores da outfit que o player estava usando
local intervalo_para_trocar_roupas = 2 * 200 -- em ms, 1 * 1000 = 1 segundo
local function doChangeOutfit(cid, id)
if not isCreature(cid) then return true end
local n = id or 1
local newOutfit = copiar_cores and getCreatureOutfit(cid) or {}
newOutfit.lookType = outfits[n]
doSetCreatureOutfit(cid, newOutfit, -1)
if n < #outfits then
addEvent(doChangeOutfit, intervalo_para_trocar_roupas, cid, n + 1)
else
doCreatureSetNoMove(cid, false)
doRemoveCondition(cid, CONDITION_OUTFIT)
end
end
function onSay(cid, words, param)
if getCreatureCondition(cid, CONDITION_OUTFIT) and getCreatureNoMove(cid) then
return true
end
if getCreatureOutfit(cid).lookType ~= 1426 then
doPlayerSendCancel(cid, "Você não está usndo o outfit necessário.")
return true
end
doCreatureSetNoMove(cid, true)
doChangeOutfit(cid)
return true
end



Salve em LUA e feche, Depois vá em data/talkactions/ e abra o talkactions.xml e cole isso:

<talkaction words="!taunt" event="script" value="ARQUIVO.lua"/>

separador+blog.jpg

EXPLICAÇÃO:

Azul: você coloca sua sequencia de looktype.
Vermelho: você coloca seu addon, o que ira dar inicio ao taunt.
Preto: mensagem para quando não estiver usando o addon certo.

separador+blog.jpg

 

Para quem quiser, também tem o script do Slicer, o script acima foi criado pelo Brun123.

 



local outfits = {
[1426] = {1484, 1483, 1482, 1481, 1480, 1479, 1480, 1479, 1480, 1479, 1478, 1477},
[1427] = {1484, 1483, 1482, 1481, 1480, 1479, 1480, 1479, 1480, 1479, 1478, 1477}, --soh ir adicionando mais...
}
local intervalo_para_trocar_roupas = 2 * 200 -- em ms, 1 * 1000 = 1 segundo
local function doChangeOutfit(cid, id, oldLook)
if not isCreature(cid) then return true end
local n = id or 1
local newOutfit = getCreatureOutfit(cid)
newOutfit.lookType = outfits[oldLook][n]
doSetCreatureOutfit(cid, newOutfit, -1)
if n < #outfits[oldLook] then
addEvent(doChangeOutfit, intervalo_para_trocar_roupas, cid, n + 1, oldLook)
else
doCreatureSetNoMove(cid, false)
doRemoveCondition(cid, CONDITION_OUTFIT)
end
end
function onSay(cid, words, param)
if getCreatureCondition(cid, CONDITION_OUTFIT) and getCreatureNoMove(cid) then
return true
end
if not outfits[getCreatureOutfit(cid).lookType] then
doPlayerSendCancel(cid, "Você não está usando o outfit necessário.")
return true
end
doCreatureSetNoMove(cid, true)
doChangeOutfit(cid, 1, getCreatureOutfit(cid).lookType)
return true
end


 

separador+blog.jpg

EXPLICAÇÃO:

Azul: você coloca sua sequencia de looktype.
Vermelho: você coloca seu addon, oque ira dar inicio ao taunt.
Preto: mensagem para quando nao estiver usando o addon certo.

é o mesmo esquema do brun123 só que ali você pode adicionar mais um script e assim por diante.

 

separador+blog.jpg

Aqui esta um gif de como funciona o taunt, nele mostra o Seavel master do PxG:

taunt.gif

separador+blog.jpg

Creditos:

Brun123
(pelo script)
Slicer (pela modificação)
Bolz (por postar)


 

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

Gostei da ideia, mas do script e dos erros ortográficos não.

 

Da pra dar uma melhorada neste script, como:

Colocar mais outfits de taunt e não somente um

Deixa o script mais legível

Link para o comentário
Compartilhar em outros sites

@SmiX

 

Sim eu tenho um diferente aqui, vou modificar o post. e dos erros ortograficos eu nao sou bom nisso kkk.

 

@EDIT

 

topico modificado, script modificado do slicer postado.

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

o meu nao funciona eu fiz tudo certinho olha meu script

 


local outfits = {
[1146] = {1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725},--Gardestrike male
[1145] = {1727, 1728, 1729, 1730, 1731, 1732, 1733},--Psycraft male
[1150] = {1735, 1736, 1737, 1738, 1739, 1734, 1738, 1737, 1736, 1735},--Orebound male
[1751] = {1751, 1752, 1753, 1754, 1755, 1756, 1757, 1758, 1759, 1750},--malefic female
[1155] = {1760, 1761, 1762, 1763, 1764, 1763, 1762, 1761, 1760},--Gardestrike female
[1154] = {1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1765},--volcanic female
[1162] = {1774, 1775, 1776, 1777, 1778, 1779, 1780},--seavel female
[1159] = {1781, 1782, 1783, 1784, 1785, 1786, 1787, 1788, 1789, 1790, 1791},--Naturia female
[1161] = {1792, 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, 1792},--Psycraft female
[1156] = {1801, 1802, 1803, 1804, 1805, 1804, 1803, 1802, 1801},--Orebound female
[1160] = {1807, 1808, 1809, 1810, 1811, 1812, 1813, 1814, 1806},--Raibolt female
[1158] = {1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824}--Wingeon female
[1184] = {1829, 1830, 1831, 1832, 1831, 1832},--police male
[1183] = {1825, 1826, 1827, 1828, 1827, 1828},--police female
}
local intervalo_para_trocar_roupas = 2 * 200 -- em ms, 1 * 1000 = 1 segundo
local function doChangeOutfit(cid, id, oldLook)
if not isCreature(cid) then return true end
local n = id or 1
local newOutfit = getCreatureOutfit(cid)
newOutfit.lookType = outfits[oldLook][n]
doSetCreatureOutfit(cid, newOutfit, -1)
if n < #outfits[oldLook] then
addEvent(doChangeOutfit, intervalo_para_trocar_roupas, cid, n + 1, oldLook)
else
doCreatureSetNoMove(cid, false)
doRemoveCondition(cid, CONDITION_OUTFIT)
end
end
function onSay(cid, words, param)
if getCreatureCondition(cid, CONDITION_OUTFIT) and getCreatureNoMove(cid) then
return true
end
if not outfits[getCreatureOutfit(cid).lookType] then
doPlayerSendCancel(cid, "Você não está usndo o outfit necessário.")
return true
end
doCreatureSetNoMove(cid, true)
doChangeOutfit(cid, 1, getCreatureOutfit(cid).lookType)
return true
end

 

Eu coloque as sequencias males e females e coloquei a tag no talkaction.xml e quando alguem fala !taunt nao acontece nada so sai a palavra !taunt no default

 

ajuda ai

 

REP+ PARA QUEM AJUDAR

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

[1158] = {1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824}--Wingeon female

 

Mude para:

 

[1158] = {1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824},--Wingeon female

 

Eu pergunto, tem erro no console? R: Nãooo, eu testo, erro no console, tsc porisso não gosto de ajudar mtu aki e.e

Link para o comentário
Compartilhar em outros sites

isso mesmo dino, ex: addon adventurer , looktype: 1426,

[1426] = {1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824} << aqui a seguencia dele

/\

voçe coloka

o look type do

adventurer

 

eu irei providenciar um video de demonstração.

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

  • 4 weeks later...

Ae cara aki num funfou não eu digo !taunt com o clãn raibolt e eu estando com a roupa do raibolt diz que eu não estou Roupa necessaria ?porque ? Veja a imagem a seguir:

 

post-354920-0-12695300-1355800140_thumb.png

 

a scripter

local outfits = {

[1421] = {1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 1647},--soh ir adicionando mais...

}

local intervalo_para_trocar_roupas = 2 * 200 -- em ms, 1 * 1000 = 1 segundo

local function doChangeOutfit(cid, id, oldLook)

if not isCreature(cid) then return true end

local n = id or 1

local newOutfit = getCreatureOutfit(cid)

newOutfit.lookType = outfits[oldLook][n]

doSetCreatureOutfit(cid, newOutfit, -1)

if n < #outfits[oldLook] then

addEvent(doChangeOutfit, intervalo_para_trocar_roupas, cid, n + 1, oldLook)

else

doCreatureSetNoMove(cid, false)

doRemoveCondition(cid, CONDITION_OUTFIT)

end

end

function onSay(cid, words, param)

if getCreatureCondition(cid, CONDITION_OUTFIT) and getCreatureNoMove(cid) then

return true

end

if not outfits[getCreatureOutfit(cid).lookType] then

doPlayerSendCancel(cid, "Voce nao esta usando o outfit necessario.")

return true

end

doCreatureSetNoMove(cid, true)

doChangeOutfit(cid, 1, getCreatureOutfit(cid).lookType)

return true

end

 

 

AE o que está errado ? Todos os id's estão corretos,

Uma

Dúvida o Id é o do Dat Editor né ou do Item editor ?

Link para o comentário
Compartilhar em outros sites

Ae cara aki num funfou não eu digo !taunt com o clãn raibolt e eu estando com a roupa do raibolt diz que eu não estou Roupa necessaria ?porque ? Veja a imagem a seguir:

 

post-354920-0-12695300-1355800140_thumb.png

 

a scripter

local outfits = {

[1421] = {1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 1647},--soh ir adicionando mais...

}

local intervalo_para_trocar_roupas = 2 * 200 -- em ms, 1 * 1000 = 1 segundo

local function doChangeOutfit(cid, id, oldLook)

if not isCreature(cid) then return true end

local n = id or 1

local newOutfit = getCreatureOutfit(cid)

newOutfit.lookType = outfits[oldLook][n]

doSetCreatureOutfit(cid, newOutfit, -1)

if n < #outfits[oldLook] then

addEvent(doChangeOutfit, intervalo_para_trocar_roupas, cid, n + 1, oldLook)

else

doCreatureSetNoMove(cid, false)

doRemoveCondition(cid, CONDITION_OUTFIT)

end

end

function onSay(cid, words, param)

if getCreatureCondition(cid, CONDITION_OUTFIT) and getCreatureNoMove(cid) then

return true

end

if not outfits[getCreatureOutfit(cid).lookType] then

doPlayerSendCancel(cid, "Voce nao esta usando o outfit necessario.")

return true

end

doCreatureSetNoMove(cid, true)

doChangeOutfit(cid, 1, getCreatureOutfit(cid).lookType)

return true

end

 

 

AE o que está errado ? Todos os id's estão corretos,

Uma

Dúvida o Id é o do Dat Editor né ou do Item editor ?

 

Claro que nao vai funcionar cara :s voce nao adicionou todas as Outfits nos devidos lugares.

Eu tenho o script já pronto.

Veja: "Taunt Sistem para Poketibia World"

é so seguir do geito que eu fasso lá!

Link para o comentário
Compartilhar em outros sites

@DinoAdmin eu num dei add em todas,porque só ia testar com 1 clãn pra ver se funfava mesmo, Ai eu tentei com o raibolt e Não pegou entendeu ?

 

Ah e meu PDA é by slicer sem level e não pokémon World, Como vc disse lá so funciona nesse tal de pokémon wolrd, como o meu não é não vai funfar

Link para o comentário
Compartilhar em outros sites

@DinoAdmin eu num dei add em todas,porque só ia testar com 1 clãn pra ver se funfava mesmo, Ai eu tentei com o raibolt e Não pegou entendeu ?

 

Ah e meu PDA é by slicer sem level e não pokémon World, Como vc disse lá so funciona nesse tal de pokémon wolrd, como o meu não é não vai funfar

 

Amigo o Poketibia World é derivado do PDA, e sim vai funcionar!

mais voce precisa ter as sprites em seu client da taunt é claro. ai voce vai abrir seu client no dat editor e vai ver a sequencia da taunt e vai colocando os ids no devido local.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...