quais são os montros q ira invadir e quantos monstros, por quanto tempo o server vai ficar no-pvp ?
Evento Invasão com horário e No-Pvp
Por nickissonlobo, 26 de nov. de 2013 em Scripts
Editado Novembro 26 por xotservx
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

são vários monstros e pode ficar por 30 minutos
só por em maiúsculo que eu boto os nomes pode ser ?
local configInv = {
["19:00"] = {nome = "The Demon Invasion", pos = {x=32369, y=32167, z=7}, monster = {"50 Demon", "200 Dragon"}},
}
local timenopvp = 30 -- em minutos
function onThink(interval, lastExecution)
local day = tonumber(os.date():sub(1,2))
local hours = tostring(os.date("%X")):sub(1, 5)
if configInv[hours] then
if getGlobalStorageValue(95474) == day then return true end
doBroadcastMessage(hours .. " - " .. tb.nome .. " iníciou.")
for _,x in pairs(tb.monster) do
for s = 1, tonumber(x:match("%d+")) do
doSummonCreature(x:match("%s(.+)"), tb.pos)
end
end
setWorldType(WORLD_TYPE_NO_PVP)
addEvent(setWorldType, 1000 * 60 * timenopvp, WORLD_TYPE_PVP)
setGlobalStorageValue(95474, day)
end
return true
end
bom as configuração ta no inicio o tempo de no-pvp em minutos e a tabela para vc escolhe a posição do evento e qntos montros vai aparecer e o nome da invasão, lembra de seprar cada monstro por virgula tipo:
{"50 Dragon", "20 Demon", "10 Amazon"}
e sempre entre aspas
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

qual tag ponho no globalevents.xml ? e tem como avisar 5 minutos antes de começar a invasão ?
- cria um arquivo inv.lua e cola o script:
local configInv = {
["19:00"] = {nome = "The Demon Invasion", pos = {x=32369, y=32167, z=7}, monster = {"50 Demon", "200 Dragon"}},
}
local timenopvp = 30 -- em minutos
function onThink(interval, lastExecution)
local hours = tostring(os.date("%X")):sub(1, 5)
local tb = configInv[hours]
if tb then
function startInvasion()
doBroadcastMessage(tb.nome .. " iníciou.")
for _,x in pairs(tb.monster) do
for s = 1, tonumber(x:match("%d+")) do
doSummonCreature(x:match("%s(.+)"), tb.pos)
end
end
setWorldType(WORLD_TYPE_NO_PVP)
addEvent(setWorldType, 1000 * 60 * timenopvp, WORLD_TYPE_PVP)
end
doBroadcastMessage(tb.nome .. " ira iníciar em 5 minutos.")
addEvent(startInvasion, 1000 * 60 * 5)
end
return true
end
tag no xml:
<globalevent name="Invasao" interval="60" event="script" value="inv.lua"/>
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

Beleza teu rep ta ai, agora tem como eu por 1 bixo cada dia da semana ? tipo ai toda segunda vem Kisame, toda terça Itachi.
bom script, mais eu queria saber, tem como fazer pra o broadcast avisar a cada 1 minuto?, tipo
"Daily Invasion ira iníciar em 5 minutos."
"Daily Invasion ira iníciar em 4 minutos."
"Daily Invasion ira iníciar em 3 minutos."
"Daily Invasion ira iníciar em 2 minutos."
"Daily Invasion ira iníciar em 1 minutos."
"Daily Invasion comecou"
queria saber tambem se tem como escolher aleatoriamente os lugares do spawn, pra nao ficar tudo junto
Editado Novembro 27 por kaizy536
Hey,o interval e para que?
Coloquei {"2 Apocalypse", "50 Demon", "20 Orshabaal"}}
Mas não apareceu todos.
Fiz algo errado?
o meu tambem da isso, eu boto tipo 50 monstros, e so apareçe 9
Uai em,qual sera o error no script,não entendo muito =S








info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt
Preciso de um evento invasão automático todos os dias as 19 horas, e que neste horário fique No-pvp, e assim que acabar o evento, volte o pvp automático, alguém consegue fazer ? Rep ++