Evento Invasão com horário e No-Pvp

nickissonlobo
em Scripts

nickissonlobo

Niii
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/12/11Posts: 67Char 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 ++

AkatsukiProject. OT De Naruto.

Em Fase de Criação

meubk

@miillerdomingues
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 21/04/08Posts: 311

quais são os montros q ira invadir e quantos monstros, por quanto tempo o server vai ficar no-pvp ?

nickissonlobo

Niii
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/12/11Posts: 67Char 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 ?

AkatsukiProject. OT De Naruto.

Em Fase de Criação

meubk

@miillerdomingues
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 21/04/08Posts: 311
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

nickissonlobo

Niii
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/12/11Posts: 67Char no Tibia: NOt

qual tag ponho no globalevents.xml ? e tem como avisar 5 minutos antes de começar a invasão ?

AkatsukiProject. OT De Naruto.

Em Fase de Criação

meubk

@miillerdomingues
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 21/04/08Posts: 311

- 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"/>

nickissonlobo

Niii
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/12/11Posts: 67Char 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.

AkatsukiProject. OT De Naruto.

Em Fase de Criação

kaizy536

aprendiz
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 21/11/13Posts: 213

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

1544411_595466947189618_685582721_n.jpg

1528510_597717736964539_1727595702_n.jpg

Mycry

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/11/13Posts: 51

Hey,o interval e para que?

Coloquei {"2 Apocalypse", "50 Demon", "20 Orshabaal"}}

Mas não apareceu todos.

Fiz algo errado?

kaizy536

aprendiz
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 21/11/13Posts: 213

o meu tambem da isso, eu boto tipo 50 monstros, e so apareçe 9

1544411_595466947189618_685582721_n.jpg

1528510_597717736964539_1727595702_n.jpg

Mycry

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/11/13Posts: 51

Uai em,qual sera o error no script,não entendo muito =S

zipter98

avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 20/09/12Posts: 2553Gênero: Masculino

Tópico movido para a seção de dúvidas e pedidos resolvidos.

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.