Problema activare evenimente automate akyra Problemă rezolvată

În cazul în care aveţi o nelămurire postaţi aici, de asemenea este locul unde puteţi găsi posibile rezolvări la problemele dvs.
Avatar utilizator
nedelcu1128
Nou Venit

Nou Venit
Mesaje: 30
Membru din: 26 Iul 2023, 12:05
Server: Wonder2
Regat: Jinno
Aprecieri: 3  
Mulţumiri: 1  
  Rezolvări prob.: 1
Discord: Copiază ID
Medalii

*Problemă/Întrebare:
Tipologie server:
*Resursă folosită:
*ServerFiles utilizat:
*Syserr:
Poză:
*Detalii suplimentare:

Stie cineva de ce cand activez evenimentele automate de ce nu se activeaza ? Server time este la zi corect ..

Cod: Selectaţi tot

quest akira_event_sys begin
	state start begin
		when letter with pc.is_gm() begin
			send_letter("Event Panel")
		end

		when button or info begin
			say_white("Event Panel")
			local event_name = akira_event_sys.AkiraEventList(0)
			local event_flag = akira_event_sys.AkiraEventList(1)
			local confirm = select("Evenimente ", "Anulare ")
			if confirm == 2 then
				return
				send_letter("Event Panel")
			end
			if confirm == 1 then
				say_white("Event Panel -> Evenimente: ")
				say_reward("Ce vrei sa faci? ")
				local confirm = select("Evenimente active ", "Start Event ", "Event automat", "Anuleaza ")
				if confirm == 4 then
					return
					send_letter("Event Panel")
				end
				if confirm == 1 then
					say_size(350,350)
					say_white("Event Panel -> Evenimente Active: ")
					local event_name_list = {}
					local event_flag_list = {}
					for i=1, table.getn(event_flag) do
						if event_flag[i] == "auto_event" then
							break
						end
						if game.get_event_flag(event_flag[i]) == 1 then
							table.insert(event_name_list, event_name[i])
							table.insert(event_flag_list, event_flag[i])
						end
					end
					if table.getn(event_name_list) == 0 then
						say_reward("Niciun eveniment activ.")
						return
					end
					say_reward("Selecteaza evenimentul pe care doresti sa il terminati.")
					table.insert(event_name_list, "Anulare")
					local list = select_table(event_name_list)
					if list == table.getn(event_name_list)then
						return
						send_letter("Event Panel")
					end
					say_white("Event Panel -> Evenimente Active: ")
					say_white(event_name_list[list].." activ.")
					say_reward("Doresti sa inchizi evenimentul ? ")
					local confirm = select("Da ", "Nu ")
					if confirm == 2 then
						return
						send_letter("Event Panel")
					end
					akira_event_sys.AkiraEventSys(0, event_name_list[list], event_flag_list[list])
					send_letter("Event Panel")
				elseif confirm == 2 then
					say_size(350,350)
					say_white("Event Panel -> Start Event: ")
					local event_name_list = {}
					local event_flag_list = {}
					for i=1, table.getn(event_flag) do
						if event_flag[i] == "auto_event" then
							break
						end
						if game.get_event_flag(event_flag[i]) == 0 then
							table.insert(event_name_list, event_name[i])
							table.insert(event_flag_list, event_flag[i])
						end
					end
					if table.getn(event_name_list) == 0 then
						say_reward("Toate evenimentele sunt active.")
						return
					end
					say_reward("Selectati evenimentul pe care doriti sa il incepeti.")
					table.insert(event_name_list, "Anulare")
					local list = select_table(event_name_list)
					if list == table.getn(event_name_list)then
						return
						send_letter("Event Panel")
					end
					say_white("Event Panel -> Start Event: ")
					say_white(event_name_list[list].." va fi activat.")
					say_reward("Doriti sa continuati? ")
					local confirm = select("Da ", "Nu ")
					if confirm == 2 then
						return
						send_letter("Event Panel")
					end
					akira_event_sys.AkiraEventSys(1, event_name_list[list], event_flag_list[list])
					send_letter("Event Panel")
				elseif confirm == 3 then
					say_white("Event Panel -> Auto Event: ")
					say_reward("Ce vrei sa faci? ")
					local confirm = select("Activeaza Evenimente ", "Dezactiveaza Evenimente ", "Iesire")
					if confirm == 3 then
						return
						send_letter("Event Panel")
					end
					if confirm == 1 then
						if game.get_event_flag("auto_event") == 1 then
							say_white("Event Panel -> Auto Event: ")
							say_reward("Evenimentele automate sunt deja active.")
							return
							send_letter("Event Panel")
						end
						say_white("Veti activa evenimentele automate ")
						say_reward("Doriti sa continuati? ")
						local confirm = select("Da ", "Nu ")
						if confirm == 2 then
							return
							send_letter("Event Panel")
						end
						game.set_event_flag("auto_event",1)
						server_loop_timer("auto_event",1)
					elseif confirm == 2 then
						say_white("Veti dezactiva evenimentele automate. ")
						say_reward("Doriti sa continuati? ")
						local confirm = select("Da ", "Nu ")
						if confirm == 2 then
							return
							send_letter("Event Panel")
						end
						game.set_event_flag("auto_event",0)
						clear_server_timer("auto_event")
					end
					send_letter("Event Panel")
				end
			end
		end

		-- Server To Client
		when login begin
			event_flag = akira_event_sys.AkiraEventList(1)
			event_name = akira_event_sys.AkiraEventList(0)
			for i=1, table.getn(event_flag) do
				if event_flag[i] == "auto_event" then
					if game.get_event_flag("auto_event") == 1 then
						for j=1, 7 do
							auto_event_setting = akira_event_sys.AkiraEventList(2)
							if j == 7 then
								cmdchat("AkiraEventSys auto_event|"..tostring(j-1).."|"..auto_event_setting[0][5].."|"..auto_event_setting[0][6].."|"..auto_event_setting[0][3].."|")
							else
								cmdchat("AkiraEventSys auto_event|"..tostring(j-1).."|"..auto_event_setting[j][5].."|"..auto_event_setting[j][6].."|"..auto_event_setting[j][3].."|")
							end
						end
					end
				end
				if event_flag[i] != "auto_event" and game.get_event_flag(event_flag[i]) == 1 then
					notice(event_name[i].."este activ!")
					cmdchat("AkiraEventSys event|"..event_flag[i].."|")
				end
			end
		end
		-- Server To Client End

		-- Event Timer
		when auto_event.server_timer begin
			auto_event_setting = akira_event_sys.AkiraEventList(2)
			local day = tonumber(os.date("%w"))
			local time = tostring(os.date("%X"))
			if auto_event_setting[day][1] == time then
				akira_event_sys.AkiraEventSys(1, auto_event_setting[day][4], auto_event_setting[day][3])
			elseif auto_event_setting[day][2] == time then
				akira_event_sys.AkiraEventSys(0, auto_event_setting[day][4], auto_event_setting[day][3])
			end
		end
		-- Event Timer End

		-- Item Drop
		when kill with not npc.is_pc() begin
			event_flag = akira_event_sys.AkiraEventList(1)
			event_setting = akira_event_sys.AkiraEventList(3)
			for i=1, table.getn(event_flag) do
				if event_flag[i] != "eventcostum" and event_flag[i] != "auto_event" and "autorizatii" != event_flag[i] and "eventspecial" != event_flag[i] and game.get_event_flag(event_flag[i]) == 1 then
					if npc.get_level() >= pc.get_level() - 10 then
						if event_setting[event_flag[i]][1] >= number(80, 1) then --sansa drop cl,fotbal,paste,okey
							game.drop_item_with_ownership(number(event_setting[event_flag[i]][2],event_setting[event_flag[i]][3]), 1)
						end
					end
				end
			end
		end

		--Eveniment Fotbal
		when 20017.chat."Febra Fotbalului" with game.get_event_flag("eventfotbal") == 1 begin

		say_title("Yu-Hwan:")

		say("Salut! Sunt un mare fan al fotbalului. Daca")

		say("tot a inceput campionatul de fotbal din Romania")

		say("a inceput sa imi placa si mie acest sport de moarte.")

		say("Un om intelept a spus odata, In fotbal este vorba de")

		say("cele doua M's - miscare si pozitionare. Cat de adevarat,")

		say("foarte adevarat...")

		say("Mai devreme loveam niste mingi pe aici, dar acum nu le mai gasesc!")

		say("Poti sa le gasesti pentru mine? Am nevoie de 10.")

		local menu = select ("Am 10 mingi!","Mai caut!")

		if menu == 2 then

		say("Revino te rog cu cele 10 mingi de fotbal,")

		say("Iti voi oferi un premiu pe masura!")

		return

		elseif menu == 1 then

		local items = pc.count_item(50096)

		if items >= 10 then

		say("Ooo !")

		say("Iti multumesc tare mult pentru aceste 10 mingi,")

		say("Poftim premiul tau bine meritat!")

		say_item( "Balon de Aur",50265,"Mingea este rotunda si din aur.");

		pc.remove_item(50096, 10 )

		pc.give_item2(50265, 1 )

		return

		elseif items < 10 then

		say("Nu ai 10 mingi de fotbal.")

		say_item( "Fotbal",50096,"Loveste ca si Baljit-Elvedin!");

		return

		end

		end

		end
		--Eveniment Fotbal


		--Eveniment Costume
		when 8006.kill or 8007.kill or 8008.kill or 8009.kill or
		 8010.kill or 8011.kill or 8012.kill or 8013.kill or
		 8014.kill or 8024.kill or 8025.kill or 8026.kill or
		 8027.kill or 8051.kill or 8052.kill or 8053.kill or
		 8054.kill or 8055.kill or 8056.kill or 8057.kill or
		 8058.kill with game.get_event_flag("eventcostum") == 1 begin
			local plvl = pc.get_level()
			local mlvl
			local chance = number(70,1) --sansa drop costume
			local vnumlist_m = {41041,41043,41045,41049,41051,41053,41095,41097,41099,41101,41103,41105,41107,41109,41111,41113} --lista drop costume barbati
			local vnumlist_w = {41042,41044,41046,41050,41052,41054,41096,41098,41100,41102,41104,41106,41108,41110,41112,41114} --lista drop costume femei
			local drop = number(1,16) -- (1, x nr costume de mai sus)
			if npc.get_race() < 8015 then
				mlvl = (npc.get_race()-8000)*5
			else
				mlvl = (npc.get_race()-8009)*5
			end

			if mlvl-plvl >= -10 then
				if chance*10 == 100 then
					if pc.get_sex() == 1 then
						game.drop_item_with_ownership(vnumlist_w[drop],1)
					else
						game.drop_item_with_ownership(vnumlist_m[drop],1)
					end
				end
			end
		end
		--Eveniment Costume
		
		--Autorizatii
		when 691.kill or 791.kill or 792.kill or 1192.kill or 1304.kill or
		1901.kill or 2091.kill or 2191.kill or 2206.kill or 2306.kill or
		2595.kill or 2596.kill or 3090.kill or 3091.kill or 3190.kill or
		3191.kill or 3290.kill or 3291.kill or 3390.kill or 3391.kill or
		3490.kill or 3491.kill or 3590.kill or 3591.kill or 3595.kill or
		3596.kill or 3690.kill or 3691.kill or 3790.kill or 3791.kill or
		3890.kill or 3891.kill or 3901.kill or 3902.kill or 3903.kill or
		3904.kill or 3905.kill or 3906.kill or 8001.kill or 8002.kill or
		8003.kill or 8004.kill or 8005.kill or 8006.kill or 8007.kill or
		8008.kill or 8009.kill or 8010.kill or 8011.kill or 8012.kill or
		8013.kill or 8014.kill or 8024.kill or 8025.kill or 8026.kill or
		8027.kill or 8051.kill or 8052.kill or 8053.kill or 8054.kill or
		8055.kill or 8056.kill with game.get_event_flag("autorizatii") == 1 and not npc.is_pc() begin
			local event_setting = akira_event_sys.AkiraEventList(3)
			if npc.get_level() >= pc.get_level() - 10 then
				if event_setting["autorizatii"][1] >= number(90, 1) then -- sansa drop auto
					local random_ = number(event_setting["autorizatii"][2],event_setting["autorizatii"][3])
					notice("Felicitari! Ai dropat "..item_name(random_)..". Du-te la Grajdar.")
					game.drop_item_with_ownership(random_, 1)
				end
			end
		end
		--Autorizatii
		
		-- ## ## ## Eveniment Special
		when 691.kill or 791.kill or 792.kill or 1192.kill or 1304.kill or
		1901.kill or 2091.kill or 2191.kill or 2206.kill or 2306.kill or
		2595.kill or 2596.kill or 3090.kill or 3091.kill or 3190.kill or
		3191.kill or 3290.kill or 3291.kill or 3390.kill or 3391.kill or
		3490.kill or 3491.kill or 3590.kill or 3591.kill or 3595.kill or
		3596.kill or 3690.kill or 3691.kill or 3790.kill or 3791.kill or
		3890.kill or 3891.kill or 3901.kill or 3902.kill or 3903.kill or
		3904.kill or 3905.kill or 3906.kill or 8001.kill or 8002.kill or
		8003.kill or 8004.kill or 8005.kill or 8006.kill or 8007.kill or
		8008.kill or 8009.kill or 8010.kill or 8011.kill or 8012.kill or
		8013.kill or 8014.kill or 8024.kill or 8025.kill or 8026.kill or
		8027.kill or 8051.kill or 8052.kill or 8053.kill or 8054.kill or
		8055.kill or 8056.kill with game.get_event_flag("eventspecial") == 1 and not npc.is_pc() begin
			local event_setting = akira_event_sys.AkiraEventList(3)
			if npc.get_level() >= pc.get_level() - 10 then
				if event_setting["eventspecial"][1] >= number(90, 1) then --sansa drop special
					local random_ = number(event_setting["eventspecial"][2],event_setting["eventspecial"][3])
					notice("Felicitari! Ai dropat "..item_name(random_).."!")
					game.drop_item_with_ownership(random_, 1)
				end
			end
		end
		-- ## ## ##Eveniment Special
		-- Sterge functia asta + functia de la Item Drop daca vrei drop la toti mobii, nu doar la metinele si bosii de mai sus^
		-- Item Drop End

		--Function
		-- Adauga dupa ora evenimentul dorit din lista [1]
		
		function AkiraEventList(type)
			event_list = {
				[0] = {"Evenimentul Clar de Luna ", "Evenimentul Fotbal ", " Evenimentul Cufar Hexagonal ", " Evenimentul Costume ", "Okey ", "Drop-ul la Autorizatii ", "Evenimentul Special "},
				[1] = {"eventcl", "eventfotbal", "eventhexagonal", "eventcostum", "okey", "autorizatii", "eventspecial", "auto_event"},
				[2] = {	[0] = {"15:35:00", "16:05:00", "eventcl", "Evenimentul Clar de Luna ", "15:35", "16:05"}, --Duminica
						[1] = {"17:00:00", "17:35:00", "eventcl", "Evenimentul Clar de Luna ", "17:00", "17:35"}, --Luni
						[2] = {"22:00:00", "22:30:00", "eventfotbal", "Eveniment cu mingi", "22:00", "22:30"}, --Marti
						[3] = {"00:05:00", "00:15:00", "eventhexagonal", "Evenimentul Hexagonal ", "00:05", "00:15"}, --Miercuri
						[4] = {"20:30:00", "21:00:00", "eventcl", "Evenimentul Clar de Luna ", "20:30", "21:00"}, --Joi
						[5] = {"21:00:00", "21:15:00", "eventcostum", "Evenimentul Costume", "21:00", "21:15"}, --Vineri
						[6] = {"15:10:00", "15:40:00", "eventcl", "Evenimentul Clar de Luna", "15:10", "15:40"}, }, --Sambata
				[3] = {	["eventcl"] = {1, 50011, 50011}, --drop clar de luna
						["eventfotbal"] = {1, 50096, 50096}, --drop event fotbal
						["eventhexagonal"] = {1, 50037, 50037}, --drop event hexagonal
						["okey"] = {1, 79505, 79505}, --drop event
						["autorizatii"] = {1, 52701, 52705}, --drop auto
						["eventspecial"] = {1, 50160, 50179},}, } --drop special -> modifica:
						--Paste: {1, 50160, 50179}
						--Vara: {1, 50160, 50179}
						--Halloween: {1, 50160, 50179}
						--Craciun: {1, 50160, 50179}
						
			return event_list[type]
		end

		function AkiraEventSys(type_, event_name, event_flag)
			if type_ == 1 then
				notice_all(event_name.."a inceput.")
				notice_all("Pentru mai multe informatii acceseaza pagina de evenimente.")
				game.set_event_flag(event_flag,1)
			else
				notice_all(event_name.."s-a terminat!")
				notice_all("Echipa nume va ureaza un joc placut.")
				game.set_event_flag(event_flag,0)
			end
		end
		--Function End

	end
end
Video ... https://file.io/X3fqP6cZHWQp
Avatar utilizator
nedelcu1128
Nou Venit

Nou Venit
Mesaje: 30
Membru din: 26 Iul 2023, 12:05
Server: Wonder2
Regat: Jinno
Aprecieri: 3  
Mulţumiri: 1  
  Rezolvări prob.: 1
Discord: Copiază ID
Medalii

Mentionez ca restul sa activez manual evenimentele merge perfect nu inteleg la event automat de ce nu se activeaza
Răspunde

Înapoi la “Probleme şi Întrebări”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 5 vizitatori