Sistem Özellikleri:
Ortak Hedef: Tüm oyuncuların kestiği canavarlar tek bir havuzda birikir.
Katkı : quest 100k mob'a ayarlıdır katkı sınırı 5k 'dır herkesin kestiği mob havuzda birikir ama 5000 limiti aşamayan oyuncular ödül alamaz.
Süre : quest 24 saate ayarlıdır 24 saat içinde etkinlik tamamlanmadı ise notice ile bildirim yapar ve etkinliği kapatır kimse ödül alamaz.
Ödül Sınırı : Her oyuncu 24 saate sadece 1 defa ödül alabilir reboot atınca bile süresi sıfırlanmaz.
Anlık Takip: Sol görev penceresi üzerinden anlık kalan süre ve kesilen sayı görülebilir.
GM Kontrolü: Etkinlik sadece yöneticiler tarafından 20095 NPC'si ile başlatılır. Quest İçinden Değiştirilebilir.
Ödül: Hedefe ulaşıldığı an sistem belirlenmiş katkı sınırını geçen herkese belirlenen ödülü verir 20095 nolu npc üzerinden.
Video içinde görev penceresi göstermemişim.
Ortak Hedef: Tüm oyuncuların kestiği canavarlar tek bir havuzda birikir.
Katkı : quest 100k mob'a ayarlıdır katkı sınırı 5k 'dır herkesin kestiği mob havuzda birikir ama 5000 limiti aşamayan oyuncular ödül alamaz.
Süre : quest 24 saate ayarlıdır 24 saat içinde etkinlik tamamlanmadı ise notice ile bildirim yapar ve etkinliği kapatır kimse ödül alamaz.
Ödül Sınırı : Her oyuncu 24 saate sadece 1 defa ödül alabilir reboot atınca bile süresi sıfırlanmaz.
Anlık Takip: Sol görev penceresi üzerinden anlık kalan süre ve kesilen sayı görülebilir.
GM Kontrolü: Etkinlik sadece yöneticiler tarafından 20095 NPC'si ile başlatılır. Quest İçinden Değiştirilebilir.
Ödül: Hedefe ulaşıldığı an sistem belirlenmiş katkı sınırını geçen herkese belirlenen ödülü verir 20095 nolu npc üzerinden.
Kod:
quest global_sayac begin
state start begin
function config()
local t = {}
t.hedef_kill = 100000
t.sure_saat = 24
t.min_katki = 5000 -- odul icin minimum kill (degistirebilirsin)
return t
end
function odul_ver()
-- ODULU BURADAN DEGISTIR
pc.give_gold(50000000)
pc.give_item2(25041, 2)
pc.give_item2(25040, 5)
pc.give_item2(76015, 5)
pc.give_item2(39028, 50)
pc.give_item2(39029, 5)
end
when 20095.chat."Global Etkinligi Baslat" with pc.is_gm() begin
local cfg = global_sayac.config()
game.set_event_flag("global_kill_active", 1)
game.set_event_flag("global_total_kills", 0)
game.set_event_flag("global_finish_time", get_time() + (cfg.sure_saat * 3600))
game.set_event_flag("global_done", 0)
notice_all("Global av etkinligi basladi!")
notice_all("Hedef: "..cfg.hedef_kill.." kill")
send_letter("Sayac Durumu")
end
when 20095.chat."Global Etkinligi Kapat" with pc.is_gm() begin
game.set_event_flag("global_kill_active", 0)
notice_all("Global av etkinligi kapatildi!")
end
when 20095.chat."Global Etkinligi Resetle" with pc.is_gm() begin
local cfg = global_sayac.config()
game.set_event_flag("global_kill_active", 0)
game.set_event_flag("global_total_kills", 0)
game.set_event_flag("global_finish_time", 0)
game.set_event_flag("global_done", 0)
notice_all("Global av etkinligi resetlendi!")
end
when 20095.chat."Global Odul Al" begin
local cfg = global_sayac.config()
if game.get_event_flag("global_done") != 1 then
say("Etkinlik bitmedi.")
return
end
if pc.getqf("my_kills") < cfg.min_katki then
say("Odul icin yeterli katkın yok.")
say("Min: "..cfg.min_katki.." kill")
return
end
if pc.getqf("global_odul_aldi") == 1 then
say("Odulu zaten aldin.")
return
end
pc.setqf("global_odul_aldi", 1)
global_sayac.odul_ver()
say_reward("Odul verildi!")
end
when login or enter begin
if game.get_event_flag("global_kill_active") == 1 then
send_letter("Sayac Durumu")
end
end
when letter begin
if game.get_event_flag("global_kill_active") != 1 then
return
end
setskin(NOWINDOW)
makequestbutton("Sayac Durumu")
q.set_title("Sayac Durumu")
end
when info or button begin
local cfg = global_sayac.config()
if game.get_event_flag("global_kill_active") != 1 then
say_title("Sayac Durumu")
if game.get_event_flag("global_done") == 1 then
say("Etkinlik tamamlandi.")
say("Odul NPC'den alinabilir.")
else
say("Etkinlik aktif degil.")
end
return
end
local kalan_sure = game.get_event_flag("global_finish_time") - get_time()
say_title("Canavar Av Durumu")
say("")
say("Senin katkın: "..pc.getqf("my_kills"))
say("Genel ilerleme: "..game.get_event_flag("global_total_kills").." / "..cfg.hedef_kill)
say("")
if kalan_sure > 0 then
local saat = math.floor(kalan_sure / 3600)
local dakika = math.floor((kalan_sure - (saat * 3600)) / 60)
if dakika < 0 then dakika = 0 end
say("Kalan sure: "..saat.." saat "..dakika.." dakika")
else
say("Sure bitti. GM kapatabilir.")
end
end
when kill begin
if game.get_event_flag("global_kill_active") != 1 then return end
if npc.is_pc() then return end
local cfg = global_sayac.config()
if game.get_event_flag("global_finish_time") <= get_time() then
return
end
pc.setqf("my_kills", pc.getqf("my_kills") + 1)
game.set_event_flag("global_total_kills", game.get_event_flag("global_total_kills") + 1)
if game.get_event_flag("global_total_kills") >= cfg.hedef_kill then
game.set_event_flag("global_kill_active", 0)
game.set_event_flag("global_done", 1)
notice_all("Global av etkinligi tamamlandi! Odulleri Seon-Hae'den alinabilir.")
end
end
end
end
Video içinde görev penceresi göstermemişim.