MA
talkaction

Comando !dance On

Por Matematheus, 27 de jul. de 2012 em Actions e Talkactions

dance
8.6
otserv
tibia
script
17
3.4k
MatematheusM
27 de julho de 2012 às 18:33

Eae gente, estou postando uma animaçao engraçada, de dançar a pessoa fala !dance on e ela começa a rodar trocando a roupa...

Então vamos la:

Abra seuot/data/talkactions/script

Copie um arquivo.lua, e nome-ie de dance, depois abra a pasta e cole isso:

 

 

local conf = {}

-- // config // ---

conf.danceTexts = {"Eu quero tchu", "Eu quero tcha", "Tchu,tcha,tchu,tcha"}

conf.textSpeed = 1500 -- A velocidade dos textos

conf.danceSpeed = 100 -- Velocidade da danca

conf.outfitSpeed = 250 -- Velocidade para trocar o outfit

conf.outfitMale = {128, 129, 130, 131, 132, 133, 134, 143, 144, 145, 146, 151, 152, 153, 154, 251, 268, 273, 278, 289, 325} -- todos os outfits males

conf.outfitFemale = {136, 137, 138, 139, 140, 141, 142, 147, 148, 149, 150, 155, 156, 157, 158, 252, 269, 270, 279, 288, 324} -- todos os outfits females

-- // end // --

 

 

 

function dancer(tab)

if isPlayer(tab[1]) then

local dirs = {[0] = {1,3},[1] = {0,2},[2] = {1,3},[3] = {0,2}}

local look = dirs[getCreatureLookDirection(tab[1])]

doCreatureSetLookDir(tab[1], look[math.random(1,2)])

tab[2].dancer = addEvent(dancer,conf.danceSpeed, {tab[1], tab[2]})

end

end

 

function messager(tab)

if isPlayer(tab[1]) then

doCreatureSay(tab[1], conf.danceTexts[math.random(1, #conf.danceTexts)], TALKTYPE_ORANGE_2)

tab[2].messager = addEvent(messager,conf.textSpeed, tab)

end

end

 

function outfitChanger(tab)

if isPlayer(tab[1]) then

if getPlayerSex(tab[1]) == PLAYERSEX_FEMALE then

outs = conf.outfitFemale

else

outs = conf.outfitMale

end

local outfit = {

lookType = outs[math.random(1, #outs)],

lookHead = math.random(1,133),

lookBody = math.random(1,133),

lookLegs = math.random(1,133),

lookFeet = math.random(1,133),

lookTypeEx = math.random(1,133),

lookAddons = math.random(0,3)}

doCreatureChangeOutfit(tab[1], outfit)

tab[2].outfitChanger = addEvent(outfitChanger,conf.outfitSpeed, tab)

end

end

backOutfit = {}

local backOutfit = {}

function onSay(cid, words, param, channel)

 

local pid = getPlayerGUID(cid)

 

if type(events[pid]) ~= "table" then

events[pid] = {}

end

 

if string.lower(param) == "on" and not(events[pid].dancer) then

outBack = getCreatureOutfit(cid)

backOutfit[pid] = outBack

backOutfit[pid].lookType = outBack.lookType

backOutfit[pid].lookAddons = outBack.lookAddons

dancer({cid, events[pid]})

messager({cid, events[pid]})

outfitChanger({cid, events[pid]})

elseif string.lower(param) == "off" and events[pid].dancer then

stopEvent(events[pid].dancer)

stopEvent(events[pid].messager)

stopEvent(events[pid].outfitChanger)

events[pid] = {}

doCreatureChangeOutfit(cid, backOutfit[pid])

end

return TRUE

end

_____

Depois disto vá em talkactions.xml e cole isso:

<talkaction log="no" access="0" words="!dance" event="script" value="dance.lua"/>

 

Vá em seuot/data/lib e abra data.lua

e cole isso:

 

events = {}

 

Bom é isso pessoal, qualquer bug comenta abaixo :D

Creditos: Azi

FlaashMan --> por postar aqui no xtibia!

Editado Agosto 18 por FlaashMan

DarkShinyD
27 de julho de 2012 às 21:28

Nem deu certo .-. Arrume isso

Obrigado rules.gif

MatematheusM
27 de julho de 2012 às 22:07

Nem deu certo .-. Arrume isso

Obrigado rules.gif

 

Vá em seuot/data/lib e abra data.lua

e cole isso:

events = {}

SkyLighS
27 de julho de 2012 às 22:17

Bem legal seu script

parabéns bem criativo

MatematheusM
27 de julho de 2012 às 22:23

Valeu man

Editado Julho 28 por FlaashMan

1 mês depois...
yugnaithY
11 de agosto de 2012 às 13:16

e c o servidor nao tiver data/lib/data.lua ?

como o meu

VodkartV
11 de agosto de 2012 às 13:24

não precisa colocar nada na lib, acontece que no script duplicaram uma tabela:

 

backOutfit = {}
local backOutfit = {}

 

o certo seria:

 

backOutfit = {}
events = {}

yugnaithY
12 de agosto de 2012 às 11:14

Aki não pegou. Uso o comando mais ele sai normalmente como c nao existisse nada!

SubwatS
12 de agosto de 2012 às 11:22

voce tem que criar a lib data.lua

 

 

@topic

você tem que postar os créditos pois não foi você quem fez.

heberpclH
12 de agosto de 2012 às 15:33

SHowww!

 

he.gif

Piabeta KunP
17 de agosto de 2012 às 23:33

apresente os creditos esse script é mega velho e o criador nao é vc!

NewtonnotwenN
17 de agosto de 2012 às 23:41

Manda ao link do autor então.

Piabeta KunP
19 de agosto de 2012 às 08:07

Manda ao link do autor então.

 

o script é tao antigo que eu ano tenhu como saber o topico, mais ue ja usei ele e peguei aqui no forum!

 

ou seja, postando topico jka existente, e falta de creditos!

RaidouR
19 de agosto de 2012 às 10:58

@Topic

 

Gostei do script bem criativo.

 

@ALL

Ele penso que pegando um script que ja havia mt tempo,nao iriam notar que ja foi postado ake.

MatematheusM
19 de agosto de 2012 às 12:44

Ele foi postado em outro lugar e ja existe a 2 anos no site que eu achei, e quem postou aqui pegou dele!

so nao estava achando o nome dele, eu coloquei no meu ot a mt tempo.

Editado Agosto 19 por FlaashMan