Ir para conteúdo
  • 0

como ponho 12hr de respaw


VitinhoMapp

Pergunta

10 respostass a esta questão

Posts Recomendados

  • 0

Crie amoebaRaids.lua em data/globalevents/scripts e coloque isto:

-- Killua Automatic Raids System

-- Created by Killua, antigo amoeba13

local raids = {
{name = "Monstros de fogo", monsters = {"Demon", "Dragon Lord", "Fire Devil"}, boss = "Orshabaal", fromPoss = {x=150, y=37, z=7}, toPoss = {x=157, y=42, z=7}, dates = {"Thursday-15:00", "Saturday-22:12"}, maxMonsters = 15, timeBoss = 60},
{name = "Dragons", monsters = {"Dragon", "Dragon Lord", "Dragon Hatchling"}, boss = "Demodras", fromPoss = {x=1, y=1, z=1}, toPoss = {x=1, y=1, z=1}, dates = {"Monday-12:01", "Sunday-20:10"}, maxMonsters = 20, timeBoss = 120}
}

function isWalkable(pos)-- by Nord / editado por Omega
if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0
then return false
elseif getTopCreature(pos).uid > 0 then
return false
elseif isCreature(getTopCreature(pos).uid) then
return false
elseif getTileInfo(pos).protection then
return false
elseif hasProperty(getThingFromPos(pos).uid, 3) or hasProperty(getThingFromPos(pos).uid, 7) then
return false
end
return true
end

function onThink(interval, lastExecution, thinkInterval)
for _, myRaids in pairs(raids) do
if table.find(myRaids.dates, os.date("%A-%H:%M")) then
local pos = {x = math.random(myRaids.fromPoss.x, myRaids.toPoss.x), y = math.random(myRaids.fromPoss.y, myRaids.toPoss.y), z = math.random(myRaids.fromPoss.z, myRaids.toPoss.z)}
local a = 0
local b = 60000
addEvent(doBroadcastMessage, 60000, "A invasao de " .. myRaids.name .. " teve inicio!")
addEvent(doBroadcastMessage, myRaids.maxMonsters * 500 + myRaids.timeBoss * 1000, "O boss " .. myRaids.boss .. " chegou na invasao!")
while not(a == myRaids.maxMonsters) do
local bonsters = math.random(1, #myRaids.monsters)
local pos = {x = math.random(myRaids.fromPoss.x, myRaids.toPoss.x), y = math.random(myRaids.fromPoss.y, myRaids.toPoss.y), z = math.random(myRaids.fromPoss.z, myRaids.toPoss.z)}
addEvent(function()
if isWalkable(pos) then
doCreateMonster(myRaids.monsters[bonsters], pos)
end
end, b)
a = a + 1
b = b + 500
end
addEvent(function()
if isWalkable(pos) then
doCreateMonster(myRaids.boss, pos)
end
end, myRaids.maxMonsters * 500 + myRaids.timeBoss * 1000)
end
end
return true
end

 

No globalevents.xml coloque essa tag:

​<globalevent name="AmoebaRaids" interval="60" event="script" value="amoebaRaids.lua"/>

Configurar:

A configuração é toda feita nessa tabela:

local raids = {
{name = "Monstros de fogo", monsters = {"Demon", "Dragon Lord", "Fire Devil"}, boss = "Orshabaal", fromPoss = {x=150, y=37, z=7}, toPoss = {x=157, y=42, z=7}, dates = {"Thursday-15:00", "Saturday-22:12"}, maxMonsters = 15},
{name = "Dragons", monsters = {"Dragon", "Dragon Lord", "Dragon Hatchling"}, boss = "Demodras", fromPoss = {x=1, y=1, z=1}, toPoss = {x=1, y=1, z=1}, dates = {"Monday-12:01", "Sunday-20:10"}, maxMonsters = 20}
}

name é o nome da invasão, que vai aparecer no broadcast.

monsters são os monstros que vão ser criados na invasão.

boss é o boss que nasce depois de x segundos após todos os monstros serem criados.

fromPoss é o canto superior esquerdo da área onde a invasão vai ocorrer.

toPoss é o canto inferior direito da área onde a invasão vai ocorrer.

dates são as datas (dias e horarios) em que as invasões ocorrerão. Sendo sempre escritas nesse formato "Dia(em inglês)-hora:minuto" . Exemplo "Monday-12:01". A primeira letra deve ser maiúscula.

maxMonsters é o número de monstros que vão ser criados na invasão, sem contar o boss.

timeBoss é o tempo (em segundos) que o boss leva pra nascer após todos os outros monstros terem sido criados.

Créditos:

Killua

Você também pode fazer de outro modo:

data/raids/raids.xml

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

  • 0

sim, sei disso, mas no map editor eu só posso colocar respaw de até 3 digitos e numa conta rápida eu precisaria de um respaw de 43200 segundos que tem 5 dígitos logo não tem como eu fazer pelo map editor, eu precisaria de um script.

 


será que tem jeito de fazer ??

 

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

  • 0

Tente fazer de um modo diferente, vá ate a pasta world abra o -spawn do mapa que você ira utilizar, procure por:

 

<monster name="nome do monstro que vc quer " x="2" y="3" z="4" spawntime="60"/>

 

 

CTRL + F <--- ajuda você achar bem mais rápido aonde esta escrito isso.

 

no spawntime="60"/> você substitui para spawntime="43200"/>

 

 

nas posições x, y e z você deve colocar a coordenada que a criatura de respaw!

 

 

espero ajudar!!

Link para o comentário
Compartilhar em outros sites

  • 0

obrigado galera!, fiz aki do jeito do @RenanBispo123, a princípio deu certo não deu nenhum erro na hora de abrir o ot

obrigado @FlamesAdmin pelo empenho em tentar ajudar vo dar rep pra vc também, eu ia colocar invasão no ot vo usar esse seu script

 

@edit

quando abro o ot ele muda pra 999seg de volta huahushu ;/

vou ter que fazer pelo jeito do flames então, sem problema :D

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

×
×
  • Criar Novo...