Metin2 Quest oh Fonksiyonları
Kral (monarch) sistemi fonksiyonları: krallık hazinesi, kral becerileri, kralın ışınlanması ve oyuncu çağırması. Çoğu yalnız kral karakteri (bazıları GM) tarafından kullanılabilir; ücretler krallık hazinesinden düşer ve reddedilen durumlarda oyuncuya sohbet iletisi gider. Bu modülde 14 fonksiyon var. Diğer modüller quest fonksiyonları listesinde, quest yazımının temeli quest yazma rehberinde.
| Fonksiyon | Ne yapar | Döner |
|---|---|---|
oh.takemonarchmoney(miktar (10.000 Yang birimi)) |
Krallık hazinesinden miktar × 10.000 Yang çekme isteğini veritabanı sunucusuna gönderir. Veritabanı tarafı oyuncunun o krallığın kralı olduğunu ve hazinenin yettiğini denetler.oh.takemonarchmoney(100) |
yok |
oh.isguildmaster() |
Geçerli oyuncunun lonca rütbesi 1-4 arasındaysa (lider ve üst rütbeler) 1, değilse 0 döndürür. pc.is_guild_master'dan farklı olarak yalnız lideri değil üst rütbeleri de kabul eder.if oh.isguildmaster() == 1 then |
sayı (0 ya da 1) |
oh.ismonarch() |
Geçerli oyuncu kendi krallığının kralıysa 1 döndürür.if oh.ismonarch() == 1 then |
sayı (0 ya da 1) |
oh.monarchbless() |
Kralın kutsaması: bulunulan haritadaki kendi krallığından oyuncuların HP ve SP'sini doldurur. Ücreti MonarchHealGold olay bayrağından, bayrak 0 ise 2.000.000 Yang olarak hazineden düşer. Kral ya da GM kullanabilir.oh.monarchbless() |
yok |
oh.monarchpowerup() |
Bulunulan haritadaki kendi krallığından oyunculara 3 dakika boyunca %10 saldırı artışı verir; hazineden 5.000.000 Yang düşer ve bekleme süresi uygulanır. Kral ya da GM kullanabilir.oh.monarchpowerup() |
yok |
oh.monarchdefenseup() |
Bulunulan haritadaki kendi krallığından oyunculara 3 dakika boyunca %10 savunma artışı verir; hazineden 5.000.000 Yang düşer ve bekleme süresi uygulanır. Kral ya da GM kullanabilir.oh.monarchdefenseup() |
yok |
oh.spawnmob(canavar vnum) |
Kral ya da GM'nin bulunduğu yere verilen canavarı çıkarır ve VID'ini döndürür; canavar quest'e bağlı olarak işaretlenir. Hazineden ücret düşmez.local vid = oh.spawnmob(101) |
sayı (vid) |
oh.spawnguard(muhafız grubu vnum, bölge (0-3)) |
Kralın kendi kalesinde muhafız grubu kiralar; ücret muhafız türüne göre hazineden düşer. Yalnız kalede kullanılabilir. | yok |
oh.warp(oyuncu adı) |
Kralı aynı krallıktan ve aynı kanaldaki bir oyuncunun yanına ışınlar; hazineden 10.000 Yang düşer, bekleme süresi uygulanır ve yalnız izin verilen bölgelerde çalışır. Oyuncu başka çekirdekteyse kral o haritanın ortasına gider.oh.warp(ad) |
yok |
oh.transfer(oyuncu adı) |
Aynı krallıktan ve aynı kanaldaki bir oyuncuyu kralın yanına çağırır (oyuncunun onayı alınmaz); hazineden 10.000 Yang düşer ve bekleme süresi uygulanır.oh.transfer(ad) |
yok |
oh.transfer2(oyuncu adı) |
oh.transfer'in onaylı biçimi: hedef oyuncuya monarch_transfer quest'i üzerinden çağrı mektubu gönderilir, kralın konumu bu quest'in x, y bayraklarına yazılır. Hedef yakındaysa (50 metre) çalışmaz; hazineden 10.000 Yang düşer.oh.transfer2(ad) |
yok |
oh.info() |
Üç krallığın kral adlarını sohbet penceresine yazar; geçerli oyuncu kralsa kendi krallığının hazine tutarını da gösterir.oh.info() |
yok |
oh.notice(metin) |
Kralın kendi krallığındaki bütün oyunculara duyuru göndermesini sağlar; kral değilse reddedilir.oh.notice("Krallık toplantısı köy meydanında.") |
yok |
oh.monarch_mob(canavar vnum ya da adı (metin)) |
Kralın canavar çağırma komutunu çalıştırır: hazineden 5.000.000 Yang düşer, bekleme süresi uygulanır, canavar vnum ya da adla verilir. Yalnız kral kullanabilir.oh.monarch_mob("101") |
yok |
Önceki modül: forked | Sonraki modül: mgmt
Liste, Metin2 sunucu kaynak kodundaki quest fonksiyon tablolarından (questlua dosyaları) ve sunucunun quest klasöründeki questlib.lua ile GFquestlib.lua dosyalarından çıkarıldı; açıklamalar fonksiyonların gövdelerinden yazıldı. İncelenen kaynak, orijinal koda topluluk düzeltmeleri eklenmiş bir sürümdür: "Topluluk eki" notu taşıyan fonksiyonlar (ENABLE_NEWSTUFF gibi derleme seçenekleri) her sunucuda bulunmaz, kapalı seçeneklere bağlı pc.open_shop0 ve pc.make_guild0 listede yoktur. "Geçerli oyuncu" quest'i tetikleyen oyuncudur; server_timer olaylarında geçerli oyuncu olmadığından pc, npc ve item fonksiyonlarının çoğu orada kullanılamaz. Koordinat birimi fonksiyona göre değişir: kimi metre, kimi oyun birimi (metre × 100) ister. C++'a eklenen yeni bir fonksiyonu kullanmadan önce adını quest klasöründeki quest_functions listesine de eklemek gerekir. Fonksiyonlar kaynak sürümüne göre değişebilir.