XJ

[Tutorial] Trovejar A Cada 3 Dias Tibia

Por XJhoow, 06 de mai. de 2011 em Globalevents e Spells

otserv
tibia
script
11
2.5k
XJhoowX
06 de maio de 2011 às 21:39

Olá todos XTibianos!

 

Venho trazer um tutorial de como fazer trovejar a cada 3 dias (no Tibia).

 

Comece criando um arquivo .lua em globalevents/scripts cujo nome seja trovao.lua e bote isso nele:

function onThink(interval, lastExecution)

pos1 = {x = 17, y = 223, z = 7} -- Cordenadas de onde vai sair o trovão
pos2 = {x = 18, y = 223, z = 7} -- Altere Como eu alterei, para parecer realmente que está trovejando
pos3 = {x = 17, y = 224, z = 7}
pos4 = {x = 18, y = 224, z = 7}
pos5 = {x = 17, y = 225, z = 7}
pos6 = {x = 18, y = 225, z = 7}
pos7 = {x = 17, y = 226, z = 7}
pos8 = {x = 18, y = 226, z = 7}
pos9 = {x = 17, y = 227, z = 7}
pos10 = {x = 16, y = 224, z = 7}
pos11 = {x = 15, y = 223, z = 7}
pos12 = {x = 23, y = 227, z = 7}
pos13 = {x = 22, y = 226, z = 7}
pos14 = {x = 21, y = 225, z = 7}
pos15 = {x = 22, y = 225, z = 7}
pos16 = {x = 23, y = 225, z = 7}
pos17 = {x = 21, y = 221, z = 7}
pos18 = {x = 22, y = 221, z = 7}
pos19 = {x = 21, y = 222, z = 7}
pos20 = {x = 22, y = 222, z = 7}
pos21 = {x = 23, y = 223, z = 7}

doSendMagicEffect(pos1,40)
doSendMagicEffect(pos2,40)
doSendMagicEffect(pos3,40)
doSendMagicEffect(pos4,40)
doSendMagicEffect(pos5,40)
doSendMagicEffect(pos6,40)
doSendMagicEffect(pos7,40)
doSendMagicEffect(pos8,40)
doSendMagicEffect(pos9,40)
doSendMagicEffect(pos10,40)
doSendMagicEffect(pos11,40)
doSendMagicEffect(pos12,40)
doSendMagicEffect(pos13,40)
doSendMagicEffect(pos14,40)
doSendMagicEffect(pos15,40)
doSendMagicEffect(pos16,40)
doSendMagicEffect(pos17,40)
doSendMagicEffect(pos18,40)
doSendMagicEffect(pos19,40)
doSendMagicEffect(pos20,40)
doSendMagicEffect(pos21,40)
end

 

Depois vá em globalevens.xml e coloque esta linha de codigo:

<globalevent name="trovao" interval="129600" script="trovao.lua"/>

 

Caso queira alterar o tanto de dias, como no tibia 12 horas é equivalente a 1 dia. Então fiz 36x3600 = 129600.

Pra você mudar basta fazer o tanto dias x 12 x 3600 e colocar em interval!

 

Caso goste +REP please! (:

Ou então só comente, já é o suficiente!

Abraços!

06 de maio de 2011 às 22:37

Tem que aprender a usar os loopings para melhorar seus scripts.

XJhoowX
06 de maio de 2011 às 23:51

Tem que aprender a usar os loopings para melhorar seus scripts.

 

Eles estão em cordenadas diferentes, daria no mesmo creio eu.

07 de maio de 2011 às 11:02

É que você usou a função mais de 20 vezes, usando os loopings podia-se usar apenas uma vez.

XJhoowX
07 de maio de 2011 às 22:42

É que você usou a função mais de 20 vezes, usando os loopings podia-se usar apenas uma vez.

 

Mas tipo, a função foi usada com coordenadas diferentes, para simbolizar um "trovão".

Mas se conseguir me dar um exemplo de como fazer melhor esse script agradeço!

 

Abraços!

07 de maio de 2011 às 23:08

function onThink(interval, lastExecution)

local pla = {
{x = 17, y = 223, z = 7}, 
{x = 18, y = 223, z = 7},
{x = 17, y = 224, z = 7},
{x = 18, y = 224, z = 7},
{x = 17, y = 225, z = 7},
{x = 18, y = 225, z = 7},
{x = 17, y = 226, z = 7},
{x = 18, y = 226, z = 7},
{x = 17, y = 227, z = 7},
{x = 16, y = 224, z = 7},
{x = 15, y = 223, z = 7},
{x = 23, y = 227, z = 7},
{x = 22, y = 226, z = 7},
{x = 21, y = 225, z = 7},
{x = 22, y = 225, z = 7},
{x = 23, y = 225, z = 7},
{x = 21, y = 221, z = 7},
{x = 22, y = 221, z = 7},
{x = 21, y = 222, z = 7},
{x = 22, y = 222, z = 7},
{x = 23, y = 223, z = 7},
}

for _, pos1 in pairs(pla) do
doSendMagicEffect(pos1,40)
end
end

 

Isso é usar looping.

XJhoowX
08 de maio de 2011 às 19:28

function onThink(interval, lastExecution)

local pla = {
{x = 17, y = 223, z = 7}, 
{x = 18, y = 223, z = 7},
{x = 17, y = 224, z = 7},
{x = 18, y = 224, z = 7},
{x = 17, y = 225, z = 7},
{x = 18, y = 225, z = 7},
{x = 17, y = 226, z = 7},
{x = 18, y = 226, z = 7},
{x = 17, y = 227, z = 7},
{x = 16, y = 224, z = 7},
{x = 15, y = 223, z = 7},
{x = 23, y = 227, z = 7},
{x = 22, y = 226, z = 7},
{x = 21, y = 225, z = 7},
{x = 22, y = 225, z = 7},
{x = 23, y = 225, z = 7},
{x = 21, y = 221, z = 7},
{x = 22, y = 221, z = 7},
{x = 21, y = 222, z = 7},
{x = 22, y = 222, z = 7},
{x = 23, y = 223, z = 7},
}

for _, pos1 in pairs(pla) do
doSendMagicEffect(pos1,40)
end
end

 

Isso é usar looping.

 

Valeu, aqui sou iniciante de script pá, desculpa ;)

08 de maio de 2011 às 20:05

Capaz velho, sinta-se a vontade para postar seus scripts. É que tu pediu um exemplo, dai passei esse rs.

 

Continue colaborando, obrigado.

2 semanas depois...
WindoW
21 de maio de 2011 às 15:55

Tem ss não ? :rimbuk:

Pra nois ver como é.

Abraçoss

22 de maio de 2011 às 01:53

bem gostei rep+ deu certo no meu,outro scritp bom para Tibia =P

subythS
24 de maio de 2011 às 19:44

Era bom uma Ss para melhor visualização e vermos como é o script!

mesmo assim obrigado por compartilhar conosco.