Bom, tava lendo alguns pedidos e vi este do usuario Maguinus e acabei gostando da ideia...
O script consiste em fazer um monstro dentro de uma posição aleatoria dentro de uma area definida por 2 pontos (2 extremos de um retangulo por)
globalevents\scripts -> boss.lua
function onThink(interval, lastExecution)
point1 = {x=145,y=382,z=7}
point2 = {x=141,y=378,z=7}
monster = "Minotaur"
frase = "O minotauro invadiu o labirinto"
value = 0
while (value==0) do
if (doSummonCreature(monster, {x=math.random(point1.x,point2.x),y=math.random(point1.y,point2.y),math.random(point1.z,point2.z)})) then
broadcastMessage(frase)
value = 1
end
end
return TRUE
end
Edite estas linhas:
point1 = {x=145,y=382,z=7} > 1º Ponto para selecionar a area
point2 = {x=141,y=378,z=7} > 2º Ponto para selecionar a area
monster = "Skeleton" > Monstro a ser criado
frase = "O minotauro invadiu o labirinto" > Frase que ira aparecer
-
globalevents -> globalevents.xml
<globalevent name="boss" interval="10800000" script="boss.lua"/>
A invasão acontecera a cada 3 horas, para mudar mude o "interval"
Não conheço muito bem esta linguagem, fiz em um tfs 8.7, o script funcionou, mas quando ele encontrava um SQM que não podia criar a criatura e ia procurar outro, dava um erro no console (erro falando que não havia como criar por causa da posição), mas funcionava. Se alguem souber como evitar o erro ou deixar o script mais simples, ficaria grato =D
PS: Não consegui fazer o while (doSummonCreature(...)) do, fiz o value e usei a condição no if.