Yönetici Kontrolü (GM)
Sistem tamamen senin elinde. İstediğin zaman sol taraftaki panelden kaçakçıları 3 krallığın köyüne (Mavi, Sarı, Kırmızı) aynı anda gönderebilir, işin bitince tek tıkla geri çağırabilirsin.Gizli Konumlar
Kaçakçılar köylerin en işlek yerinde değil, senin belirlediğin gizli koordinatlarda belirirler. Oyuncuların onları bulmak için haritayı keşfetmesi veya birbirleriyle bilgi paylaşması gerekir.Ortak ve Sınırlı Stok
Satılan ürünlerin (Efsun, Kutsama vb.) tüm server için geçerli ortak bir stoğu vardır.- Örneğin; toplam 50 stok varsa ve bir Mavi bayrak oyuncusu 1 tane alırsa, Sarı bayraktaki oyuncu baktığında stoğu 49 olarak görür.
- Stok bittiğinde ürün listede kırmızı görünür ve "Tükendi" yazar.
Adil Ticaret
Oyuncuların stoğu saniyeler içinde sömürmemesi için toplu alım kapalıdır. Bir oyuncu her seferinde sadece 1 paket/adet alabilir. Tekrar almak istiyorsa menüye yeniden girmesi ve onay vermesi gerekir.Özetle: Senin başlattığın, oyuncuların haritada köşe bucak aradığı ve "ilk gelen alır" mantığıyla çalışan rekabetçi bir sistemdir.
Kod:
quest seumondizayn_kacakci begin
state start begin
when letter with pc.is_gm() begin
send_letter("GM: Kaçakçı Paneli")
end
when button or info begin
say_title("SeumonDizayn - Kaçakçı Yönetimi")
local menu = select("Kaçakçıları Gönder", "Kaçakçıları Temizle", "Stokları Yenile", "Kapat")
if menu == 1 then
if game.get_event_flag("kacakci_aktif") == 1 then
say_reward("Kaçakçılar zaten aktif!")
return
end
local spawn_list = {
{1, 650, 650},
{21, 150, 200},
{41, 400, 600}
}
for i = 1, table.getn(spawn_list) do
mob.spawn(20088, spawn_list[i][2], spawn_list[i][3], 1, 1, spawn_list[i][1])
end
game.set_event_flag("kacakci_aktif", 1)
notice_all("SeumonDizayn: Gizemli Kaçakçılar köylere giriş yaptı!")
elseif menu == 2 then
game.set_event_flag("kacakci_aktif", 0)
notice_all("SeumonDizayn: Kaçakçılar şehirden ayrıldı.")
elseif menu == 3 then
game.set_event_flag("stok_efsun", 50)
game.set_event_flag("stok_arttir", 50)
game.set_event_flag("stok_kutsama", 30)
game.set_event_flag("stok_detektor", 100)
game.set_event_flag("stok_koturuh", 40)
say("Stoklar yenilendi.")
end
end
when 20088.chat."SeumonDizayn - Gizemli Kaçakçı" begin
if game.get_event_flag("kacakci_aktif") == 0 then
say("Görüşürüz...")
npc.purge()
return
end
local s1 = game.get_event_flag("stok_efsun")
local s2 = game.get_event_flag("stok_arttir")
local s3 = game.get_event_flag("stok_kutsama")
local s4 = game.get_event_flag("stok_detektor")
local s5 = game.get_event_flag("stok_koturuh")
local r = color256(255, 0, 0)
local g = color256(0, 255, 0)
local n1 = s1 > 0 and g.."Efsun Nesnesi (20x) ["..s1.."]" or r.."Efsun Nesnesi [Tükendi]"
local n2 = s2 > 0 and g.."Arttırma Kağıdı (20x) ["..s2.."]" or r.."Arttırma Kağıdı [Tükendi]"
local n3 = s3 > 0 and g.."Kutsama Kağıdı (10x) ["..s3.."]" or r.."Kutsama Kağıdı [Tükendi]"
local n4 = s4 > 0 and g.."Metin Dedektörü (1x) ["..s4.."]" or r.."Metin Dedektörü [Tükendi]"
local n5 = s5 > 0 and g.."Kötü Ruh Kovma (5x) ["..s5.."]" or r.."Kötü Ruh Kovma [Tükendi]"
say_title("SeumonDizayn - Gece Pazarı")
local s = select(n1, n2, n3, n4, n5, "Kapat")
local urunler = {
{71084, 20, 5000000, "stok_efsun"},
{71085, 20, 5000000, "stok_arttir"},
{25040, 10, 3000000, "stok_kutsama"},
{76006, 1, 1000000, "stok_detektor"},
{71001, 5, 2000000, "stok_koturuh"}
}
if s <= 5 then
local sec = urunler[s]
if game.get_event_flag(sec[4]) <= 0 then
say_reward("Stok bitti.")
return
end
if pc.get_gold() < sec[3] then
say_reward("Yang yetersiz.")
return
end
say_title("Onay")
say(item_name(sec[1]).." (1 adet/paket) alıyorsun.")
say("Fiyat: "..sec[3].." Yang.")
if select("Satın Al", "Vazgeç") == 1 then
if game.get_event_flag(sec[4]) <= 0 then
say_reward("Tükendi!")
return
end
pc.change_gold(-sec[3])
pc.give_item2(sec[1], sec[2])
game.set_event_flag(sec[4], game.get_event_flag(sec[4]) - 1)
say("Başarılı.")
end
end
end
end
end