Descriere: Dacă doriți o hartă pentru evenimente (ex. Ploaie de Metine, Pirații Tanaka etc.), cu ajutorul acestui quest, scris de la 0 de mine, puteți alege o anumită hartă căreia să îi controlați accesul dintr-un panou (să deschideți sau să închideți accesul jucătorilor în această hartă).
Accesul în această hartă de către jucători se face de la un npc setat de voi.
În linii mari, principiul de funcționare se aseamănă cu cel de la Evenimentul OX, unde poți intra în harta specială doar când evenimentul este activat. Sper să vă fie de folos.
Pentru detalii suplimentare/suport mă puteți contacta pe Discord: Toni#2548
P.S: Nu știu dacă mai există sau nu. Am zis să îl împărtășesc și cu cei care au nevoie.
Timp de lucru: Vreo 6 ore aproximativ deoarece sunt la început cu chestia asta și a durat un pic până am înțeles cât de cât cum funcționează.
Imagini:



Quest:
Cod: Selectaţi tot
---------------------------------
------QUEST CREAT DE TONI--------
----PENTRU SUPORT: Toni#2548 ----
---------------------------------
quest eventmap begin
state start begin
when login with pc.is_gm() begin
send_letter("Event Map") -- Numele scrisorii pe care o primeste GM-ul
end --when
when button or info begin
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."! Alege ce vrei sa faci:")
say("")
say_important("Ai MARE GRIJA sa nu pornesti de doua ori evenimentul!")
say_important("Verifica intai starea acestuia accesand optiunea de mai jos!")
local empire = pc.get_empire()
local raspuns = select("Porneste", "Opreste", "Teleport in harta", "STARE EVENIMENT", "Anuleaza")
if raspuns == 1 then --pornire event
if game.get_event_flag("event_map") == 0 then
game.set_event_flag("event_map", 1)
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Tocmai ai pornit accesul in Event Map.")
wait()
notice_all("[Event Map]: Se pare ca un eveniment urmeaza sa inceapa!")
notice_all("[Event Map]: Verifica categoria 'Evenimente' din panoul de misiuni.")
send_letter("Event Map")
else
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Accesul in Event Map este deja pornit!")
wait()
send_letter("Event Map")
end -- x2 if
send_letter("Event Map")
end -- if
if raspuns == 2 then -- oprire event
if game.get_event_flag("event_map") == 1 then
game.set_event_flag("event_map", 0)
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Tocmai ai orpit accesul in Event Map.")
wait()
notice_all("[Event Map]: Se pare ca evenimentul a luat sfarsit!")
notice_all("[Event Map]: Va multumim pentru participare! Toti jucatorii vor fi teleportati in map1.")
send_letter("Event Map")
warp_all_to_village(121, 3) -- 121 reprezinta index-ul hartii din care vrei sa scoti playerii, iar 3 reprezinta secundele
else
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Accesul in Event Map este deja oprit!")
wait()
send_letter("Event Map")
end -- x2 if
send_letter("Event Map")
end -- if
if raspuns == 3 then
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Acum te vei putea conecta in Event Map")
say("chiar daca accesul pentru jucatori este oprit.")
say("Continui?")
local alegere = select("Da", "Nu")
if alegere == 1 then
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Acum te teleportez..")
wait()
pc.warp(1198675, 26855)
end
send_letter("Event Map")
end -- end if
if raspuns == 4 then
if game.get_event_flag("event_map") == 0 then
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Stare: Inchis")
wait()
end
if game.get_event_flag("event_map") == 1 then
say_title("Event Map - Administrare")
say("Salut, "..pc.get_name().."!")
say("Stare: Deschis")
wait()
end
end -- if
end
when 20381.chat."Event Map" begin -- schimbati 20381 cu ce npc doriti ca sa intre jucatorii
say_title("Event Map")
say("Salut, "..pc.get_name().."!")
say("Tocmai a inceput un eveniment in Event Map.")
say("")
say("Doresti sa participi?")
local lista = select("Da", "Nu")
local empire = pc.get_empire()
if lista == 1 and game.get_event_flag("event_map") == 1 then
say_title("Event Map")
say("Teleportare in desfasurare..")
wait()
if empire == 1 then
pc.warp(1196022, 43739) -- rosu
end
if empire == 2 then
pc.warp(1189336, 17884) -- galben
end
if empire == 3 then
pc.warp(1211299, 19969) -- blue
end
elseif lista == 1 and game.get_event_flag("event_map") == 0 then
say_title("Event Map")
say("Accesul in harta este oprit momentan.")
wait()
elseif lista == 2 then
return
end -- if
end -- when
when login with pc.get_map_index() == 121 and game.get_event_flag("event_map") == 0 begin
local empire = pc.get_empire()
if empire == 1 then
pc.warp(469300, 964200) -- rosu
end
if empire == 2 then
pc.warp(55700, 157900) -- galben
end
if empire == 3 then
pc.warp(969600, 278400) -- blue
end
end --when
end -- end state
end -- quest
Tutorial instalare quest:
- Salvaţi conţinutul quest-ului într-un fişier text numit de exemplu nume_quest.quest/.lua
- Vă conectaţi la filezilla / winscp şi întrati în /usr/home/game/share/locale/germany/quest (depinde ce server aveţi).
- Îl puneţi acolo (să fie .quest sau .lua).
- Vă logaţi în FreeBSD / putty şi scrieţi în felul următor: cd /usr/home/game/share/locale/germany/quest (depinde ce server aveţi) apoi ./qc nume_quest.quest/.lua
- Intraţi pe server şi scrieţi /reload q
- Testaţi quest-ul.

