Oyunlar

Sizler için profesyonel yazarlarımız ile hazırladığımız makalelerimizi okuyun ve kendinizi geliştirin.

Knight Online Nedir? Knight Online Nasıl Oynanır?
Knight Online Nedir? Knight Online Nasıl Oynanır?
Knight Online Nedir? Knight Online Nasıl Oynanır? Knight Online, MGame Corporation yapımcılığında Noah System tarafından geliştirilen çok oyunculu bir online oyundur. Dünyanın farklı ülkelerinde milyonlarca oyuncu tarafından oynanmaktadır. Bazı ülkelerde ücretli olsa da dünya çapında genelde ücretsiz olarak oynanmaktadır. Knight Online Nasıl Oynanır? Knight Online tek başınıza veya arkadaşlarınızla birlikte oynayabileceğiniz bir oyun türüdür. Bu oyunda 19 farklı server vardır. Oyunu oynamak isteyen bir kişi bu serverlardan birini tercih etmek zorundadır. Oyuna girdiğinizde Human ya da Org ırklarından birini seçerek oyuna başlarsınız. Oyunda level sistemi mevcuttur. Oyundaki canavarları keserek xp kazanırsınız ve bu xp’ler sonucunda level atlarsınız. Oyundaki en son level 83’dür. Oyunda pk sınıfları vardır. Bu sınıflar Andream, Base, Cz olmak üzere 3’e ayrılmıştır. Adream, 59 level üstü iseniz oynayabileceğiniz bir sınıftır. Base, 69 level üstü iseniz oynayabileceğiniz bir sınıftır. Cz ise her levelde girebileceğiniz bir sınıftır. Oyuna başladığınızda Asas/ Rogue, Mage, Priest, Warrior olmak üzere 4 karakterden birini seçerek oyuna başlarsınız. Daha sonra oyunda bulunan canavarları keserek altın ve eşya toplayarak karakterlerinizi güçlendirebilirsiniz. Oyun içerisinde yer alan özel etkinliklere katılarak daha keyifli zaman geçirebilirsiniz ayrıca bu etkinliklerden ödüller kazanabilirsiniz. Oyundaki asal amaç level kasmak değil, seçtiğiniz karakterin özelliklerine göre düzgün ve sağlam itemler yapmaktır. Bu sayede oyunda güçlü bir duruma gelirsiniz. Oyunda arkadaşlarınızla oluşturacağınız klan adı verilen gruplarla daha kolay kasılabilirsiniz. Oyundaki Karakterlerin Özellikleri Oyun içerisinde birbirinden farklı özelliklerde 4 ayrı karakter bulunmaktadır. Bu karakterler hakkında ki bilgiler aşağıda ki gibidir. Asas Karakteri  Bu karakter oyunda güçsüz olarak ifade edilen bir şampiyondur. Ancak asaslar minor özellikleri ile manalarından belirli bir kısmını alarak canlarını doldurabilirler. Bu özellik savaşlarda çok işe yaramaktadır. Ayrıca asaslar haritada uzak bir noktaya gidecekleri zaman hem kendini hem de arkadaşlarını hızlandırırlar. Kullanacakları skilerle canavarların canını çok kolay azaltabilirler. Mage Karakteri Bu karakterler büyücülük özelliklerine sahiptir. Örneğin anında şehre ışınlanabilirler ya da sizi herhangi bir yere ışınlayabilirler. Warrior Karakteri  Bu karakter tam bir tanktır. Canı çok fazla olduğu için savaşlarda en önde giderek takım arkadaşlarını korur ve onların rakipleri kesmesine yardımcı olur. Özel canavarları keserken canavarın vereceği hasarı karşılar ve takım arkadaşlarına yardımcı olurlar. Priest Karakteri Knight Online oyununda warrior ile mage arasında bulunmaktadır. Yani warriorlar gibi çok canları varken mageler gibi büyü yapabilirler. Bu karakterin oyunda kendini tek başına kasması zordur. Bu nedenle partilere ihtiyaç duyarlar.
World of Warcraft Nedir?
World of Warcraft Nedir?
World of Warcraft (çoğunlukla WoW şeklinde kısaltılmaktadır), Blizzard Entertainment firması tarafından geliştirilen bir MMORPG, yani devasa çok oyunculu çevrimiçi rol yapma oyunudur. İlk olarak 1994 yılında çıkarılan Warcraft:Orcs & Humans oyunu ile tanıtılan Warcraft serisinin 4. oyunudur, ancak bu oyundan önceki oyunlar gerçek zamanlı strateji (RTS) türündedir. Warcraft III: The Frozen Throne oyunundan sonra kaldığı yerden devam eden oyunun konusu, yine önceki oyunlar gibi Azeroth adı verilen sanal gezegende devam etmektedir. World of Warcraft ilk olarak Blizzard Entertainment tarafından 2 Eylül 2001’de duyuruldu[2] ve Warcraft serisinin 10. yılında 23 Kasım 2004’de satışa sunuldu. Oyunun ilk genişleme paketi olan The Burning Crusade, 16 Ocak 2007’de yayınlandı.[3] Bu genişleme paketi ile Outland oyun dünyasına katılmış oldu. İkinci genişleme paketi Wrath of the Lich King ise 13 Kasım 2008’de yayınlandı.[4] BlizzCon 2009 konferansında ise oyunun üçüncü genişleme paketi Cataclysm duyuruldu.[5][6] Yeni eklenti paketi 7 Aralık 2010’da piyasaya sürülmüştür.[7] Bu eklenti paketiyle oyunun çıkış zamanında tanıtılan eski Azeroth kıtaları Eastern Kingdoms ve Kalimdor’da yıkım sonucu bir çok kalıcı değişiklik olmuştur. 30 Haziran 2011’den itibaren World of Warcraft’ın klasik sürümü, The Burning Crusade genişletme paketi içeriğini de kapsayacak şekilde güncellenmiştir.
Metin2 Lua Kullanımı
Metin2 Lua Kullanımı
Metin2 Lua(Quest) Geçen günki makalemizde, lua nedir nerde kullanılır ? hakkında bilgiler vermiştikBugünki makalede ise, metin2 oyununda lua nasıl kullanılır onunda hakkında örnekler ilekısa bilgiler vericeğiz. Metin2 MMORPG oyunudur. Kısaca bahsetmek gerekirse, oyun ticaret, savaş, dostluk, krallık gibikavramları benimseyen global çaplı bir oyundur. Metin2 Lua Dili kullanımı Oyunun genel haltları ile %70 olarak lua dili ile NPC veya oyun eşyaları üzerindekullanımı oldukça fazladır. Bir nesne iteminin kullanımı, kullanılan nesnenin luaüzerinden yapabiliceği işler vb. gibi bir çok işlemleri lua ile yapılabilinir. Metin2 Quest(Lua) Lua kodlaması olan ve .quest uzantısı ile betimleme ile çalışmaktadır.Notepad++ veya benzeri bir program açtıktan sonra, diller bölümünden “L” harfi üzerindenlua dilini seçmelisiniz. Yaptığınız kodlamarı görmek ve kısayol ile pratik bir şekilde kod bloğunuotomatik tamamlamanıza yardımcı olucaktır. Boş penceremize ilk olarak 1. Satırına; quest questadi begin Metin2 Quest Okutma lua(quest) başlangıcımızı bu şekilde yaptık. Dosya uzantımızın ismi “questadi.quest” yapıyoruz.questimizi ftp bağlantısı sağlayarak, oyunumuzun kurulu olduğu sunucu ile bağlantı sağlıyoruz.usr/game/share/locale/turkey/quest adresine hazırladığımız dosyayı atıyoruz. Putty aracılığı ile sunucumuzun “root” bağlantısını yapıyoruz.komut satırına;cd usr/game/share/locale/turkey/quest [ENTER] tuşuna basıyoruz.komut satırına;ee hongkong_list [ENTER] tuşuna basıyoruz.sonraki satır komutuna;questadi.quest yazıp kaydedip çıkıyoruz. sonra tekrardan komut satırına ./qc questadi.quest quest dosyamızı okutuyoruz. Object klasörünü oluşturmamızı sağlıyor. Object klasörünü biz kendimiz oluşturup atabiliriz fakatoyun dosyalarının yenilenmesi yani “relaod” veya “make” durumunda object klasörü tekrardan sistemoluşturması için listeye eklemiş olduk. Sunucunun reload olması veya “sh make.sh” ile listeyi yenilemekomutu verirsek questimizi görmesi için tanımlamış olduk. Metin2 Quest(Lua) nasıl yazılır ? İsminden de anlaşıldığı üzere questimize şu şekilde başlamamız gerekiyor quest questadi begin bir sonraki aşamada ise yazmamız gereken komut satırı şu şekilde; state start beginbaşlat komutunu verdik ve artık questimize başlamış olduk. when komutu ile questimizin nerde ne zaman ne yapacağını biz yön vericeğiz. when login or logout beginBu komutumuzda “User” olan bir oyuncumuz oyuna giriş yaptığında veya çıkış yaptığında bu questimiz çalışmaya başlasın dedik. syschat("Oyunumuzun web adresi: www.xxx.com")Burada system chat ile yani oyuncumuza kırmızı renkte bir yazı göndermiş olduk.Oyuncu eğer oyuna girerse bu mesajı her seferinde görücek. Aynı şekilde çıkış atarsa bu şekilde yazımızı görmüş olucaktır. questimizin son hali ve rutuşlar. when – state – quest lerimizin blog sonuna 1 adet end ekledik ve questimizi bitirmiş olduk.
Metin2 PVP Turnuvası questi
Metin2 PVP Turnuvası questi
state start beginwhen 30122.chat."GM:PvP Turnuvasına Işınlan " with pc.is_gm() beginsay("Haritaya gitmek istiyor musun?")say("")local a = select(locale.yes,locale.no)if a == 2 then return endpc.warp(95700,28500)--pc.warp(844800,00)endwhen login with pc.get_map_index() == 28 and (pvp_attenders == nil or pvp_attenders[pvp_manager.get_my_attender_id()] == nil or (pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != 1 and pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != 2)) begin--when login with pc.get_map_index() == 112 and (pvp_attenders == nil or pvp_attenders[pvp_manager.get_my_attender_id()] == nil or (pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != 1 and pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != 2)) beginif pvp_attenders == nil thenpvp_manager.guard_check_position()timer("pvp_guard_1", 10)returnendif pvp_attenders[pvp_manager.get_my_attender_id()] == nil thenpvp_manager.guard_check_position()timer("pvp_guard_1", 10)returnendif pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != 1 and pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != 2 thenpvp_manager.guard_check_position()timer("pvp_guard_1", 10)endendwhen pvp_guard_1.timer beginif pc.get_map_index() != 28 then return end--if pc.get_map_index() != 112 then return endpvp_manager.guard_check_position()timer("pvp_guard_2", 10)endwhen pvp_guard_2.timer beginif pc.get_map_index() != 28 then return end--if pc.get_map_index() != 112 then return endpvp_manager.guard_check_position()timer("pvp_guard_1", 10)endfunction guard_check_position()if pc.get_local_x() >= 84 and pc.get_local_y() >= 84 and pc.get_local_x() <= 116 and pc.get_local_y() <= 116 then --arena 1pvp_manager.guard_reset()endif pc.get_local_x() >= 84 and pc.get_local_y() >= 136 and pc.get_local_x() <= 116 and pc.get_local_y() <= 168 then --arena 2pvp_manager.guard_reset()endif pc.get_local_x() >= 136 and pc.get_local_y() >= 84 and pc.get_local_x() <= 168 and pc.get_local_y() <= 116 then --arena 3pvp_manager.guard_reset()endif pc.get_local_x() >= 136 and pc.get_local_y() >= 136 and pc.get_local_x() <= 168 and pc.get_local_y() <= 168 then --arena 4pvp_manager.guard_reset()endendfunction guard_reset()notice_in_map(""..pc.get_name().." Arenadan uzaklaştırıldı!")pc.warp(344000,502500)endwhen 30122.chat."PvP Turnuvasına Katıl " with game.get_event_flag("pvp") == 1 beginsay_title("PvP Turnuvasına Katıl:")say("Ne yapmak istiyorsun?")local s = select("PvP Arenasına Işınlan ", "Kapat " )if s == 2 then return endif party.is_party() thensay_title("PvP Turnuvasına Katıl:")say("Bir grup üyesiyken içeriye giriş yapamazsın.")elsepc.warp(95700,28500)endendwhen 20078.chat."Şehre Dön " with pc.get_map_index() == 28 begin--when 20078.chat."Şehre Dön " with pc.get_map_index() == 112 beginsay_title("Savaş Ustası: ")say("")say("Arenadan ayrılıp şehre dönmek istiyormusun?")say("")local s = select("Evet ", "Hayır ")if s == 2 then return endwarp_to_village()endwhen 20078.chat."GM: Turnuva Bölgesini Temizle " with pc.get_map_index() == 28 and pc.is_gm() begin--when 20078.chat."GM: Turnuva Bölgesini Temizle " with pc.get_map_index() == 112 and pc.is_gm() beginsay_title("PvP Turnuvası : ")say("")say("Bölgeyi temizlemek istiyor musun?")say("")local temizle = select(locale.yes, locale.no)if temizle == 2 then return endwarp_all_to_village(28,10)endwhen 20078.chat."GM: PvP Turnuvası İptal Et " with pc.get_map_index() == 28 and pc.is_gm() and game.get_event_flag("pvp") != 0 begin--when 20078.chat."GM: PvP Turnuvası İptal Et " with pc.get_map_index() == 112 and pc.is_gm() and game.get_event_flag("pvp") != 0 beginsay_title("GM: PvP Turnuvası İptal Et: ")say("PvP Turnuvası iptal etmek istiyormusun?")say("")local s = select("Evet ", "Hayır ")if s == 2 then return endgame.set_event_flag("pvp", 0)pvp_attenders = nilnotice_all("Turnuva sona ermiştir!")say_title("PvP Turnuvası iptal edildi!")say("PvP Turnuvası iptal edildi!")say("")if pvp_manager_callback != nil thenpvp_manager_callback()endendwhen 20078.chat."GM: Sınıf Seçimi " with pc.get_map_index() == 28 and pc.is_gm() and game.get_event_flag("pvp") == 0 and ae_pvp_tournament == nil begin--when 20078.chat."GM: Sınıf Seçimi " with pc.get_map_index() == 112 and pc.is_gm() and game.get_event_flag("pvp") == 0 and ae_pvp_tournament == nil beginsay("")say("Turnuva sınıfını seç.")say("")local sinif = select("Savaşçı ", "Ninja ", "Sura ", "Şaman ", "Lycan ", "Karışık ", "Vazgeç ")if sinif == 1 thengame.set_event_flag("pvp_sinif",1)say("Savaşçı sınıfı seçildi.")elseif sinif == 2 thengame.set_event_flag("pvp_sinif",2)say("Ninja sınıfı seçildi.")elseif sinif == 3 thengame.set_event_flag("pvp_sinif",3)say("Sura sınıfı seçildi.")elseif sinif == 4 thengame.set_event_flag("pvp_sinif",4)say("Şaman sınıfı seçildi.")elseif sinif == 5 thengame.set_event_flag("pvp_sinif",5)say("Lycan sınıfı seçildi.")elseif sinif == 6 thengame.set_event_flag("pvp_sinif",6)say("Karışık seçildi.")endend when 20078.chat."GM: PvP Turnuvasını Başlat " with pc.get_map_index() == 28 and pc.is_gm() and game.get_event_flag("pvp") == 0 and ae_pvp_tournament == nil begin--when 20078.chat."GM: PvP Turnuvasını Başlat " with pc.get_map_index() == 112 and pc.is_gm() and game.get_event_flag("pvp") == 0 and ae_pvp_tournament == nil beginsay_title("PvP Turnuvasını başlat:")if game.get_event_flag("pvp_sinif") == 0 thensay("Önce sınıf seçimi yap. ")returnendsay("Lütfen minimum level sınırını gir (Min: 15):")local str_min_level = input()say_title("PvP Turnuvasını başlat:")local min_level = tonumber(str_min_level)if min_level == nil thensay("Numara girilmedi.")say("")returnendif tonumber(str_min_level) < 15 thenmin_level = 15endsay("Minimum level : "..tostring(min_level)..".")say("lütfen maksimum level sınırını gir:")local str_max_level = input()say_title("PvP Turnuvasını başlat:")local max_level = tonumber(str_max_level)if max_level == nil thensay("Numara girilmedi.")say("")returnendif tonumber(str_max_level) < min_level thensay("Maks level min levelden yüksek olmalı.")say("")returnendgame.set_event_flag("pvp_minlevel", min_level)game.set_event_flag("pvp_maxlevel", max_level)say("Minimum Level: "..tostring(min_level).." olarak ayarlandı.")say("Maksimum Level: "..tostring(max_level).." olarak ayarlandı.")say("")local s = select("Başlat ", "İptal et ")if s == 2 thenreturnendsay_title("PvP Turnuvasını başlat:")say("")say("PvP Turnuvası başladı.")say("")say_reward("Level Limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel"))pvp_manager.open_registrations()endfunction open_registrations()game.set_event_flag("pvp", 1)attender_count = 0game.set_event_flag("pvp_tournament", get_global_time())pvp_attenders = nilpvp_attenders = { }arena = {-- arena 1{{ 113, 100 },{ 88, 100 },0,"SLEEPING",0,},-- arena 2{{ 113, 152 },{ 88, 152 },0,"SLEEPING",0,},-- arena 3{{ 140, 152 },{ 164, 152 },0,"SLEEPING",0,},-- arena 4{{ 164, 100 },{ 140, 100 },0,"SLEEPING",0,},} balan = {-- kazanan 1{{ 67, 98 },},-- kazanan 2{{ 184, 100 },},-- kaybeden 1{{ 68, 151 },},-- kaybeden 2{{ 185, 152 },},}notice_all("PvP Turnuvası başlamıştır.")notice_all("Girişler için "..mob_name(30122).."'e gidin.")local sinif = game.get_event_flag("pvp_sinif")local siniff = ""if sinif == 1 thensiniff = "Savaşçı "notice_all(siniff.."Arası Turnuva Başladı. Level limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel").."")elseif sinif == 2 thensiniff = "Ninja "notice_all(siniff.."Arası Turnuva Başladı. Level limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel").."")elseif sinif == 3 thensiniff = "Sura "notice_all(siniff.."Arası Turnuva Başladı. Level limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel").."")elseif sinif == 4 thensiniff = "Şaman "notice_all(siniff.."Arası Turnuva Başladı. Level limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel").."")elseif sinif == 5 thensiniff = "Lycan "notice_all(siniff.."Arası Turnuva Başladı. Level limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel").."")elseif sinif == 6 thensiniff = "Karışık "notice_all("Level limiti: "..game.get_event_flag("pvp_minlevel").." - "..game.get_event_flag("pvp_maxlevel").."")endendwhen 20078.chat."Turnuvaya Katıl " with pc.get_map_index() == 28 and game.get_event_flag("pvp") == 1 begin--when 20078.chat."Turnuvaya Katıl " with pc.get_map_index() == 112 and game.get_event_flag("pvp") == 1 beginsay_title(mob_name(20078)..":")local sinif = game.get_event_flag("pvp_sinif")if sinif == 1 thenif pc.get_job() != 0 thenif pc.get_job() != 4 thensay("Sadece savaşçılar girebilir.")returnendendelseif sinif == 2 thenif pc.get_job() != 1 thenif pc.get_job() != 5 thensay("Sadece ninjalar girebilir.")returnendendelseif sinif == 3 thenif pc.get_job() != 2 thenif pc.get_job() != 6 thensay("Sadece suralar girebilir.")returnendendelseif sinif == 4 thenif pc.get_job() != 3 thenif pc.get_job() != 7 thensay("Sadece şamanlar girebilir.")returnendendelseif sinif == 5 thenif pc.get_job() != 4 thensay("Sadece lycanlar girebilir.")returnendendif game.get_event_flag("pvp_tournament") == pc.getqf("pvp_tournament") thensay("Turnuvaya zaten kayıt yaptırdın.")say("")returnendif pc.get_level() < 15 thensay("Levelin çok düşük.")say("")returnendif pc.get_level() < game.get_event_flag("pvp_minlevel") or pc.get_level() > game.get_event_flag("pvp_maxlevel") thensay("Levelin "..game.get_event_flag("pvp_minlevel").." ile "..game.get_event_flag("pvp_maxlevel").." arasında olması gerekli.")say("")returnendsay("Vs turnuvasına hoşgeldin. Turnuvada senin gibi ")say("oyuncularla savaşacaksın.")say("")say("Karşına çıkan her oyuncuyu öldür.")say("")say("Bu turnuvaya katılmak istiyormusun?")say("")say_reward("Kayıt Ücreti : 15.000 Yang ")say("")local s = select("Evet, katılmak istiyorum ", "Hayır, ben bir korkağım ")say_title(mob_name(20078)..":")if s == 1 thenif pc.get_gold() < 15000 thensay_title("PvP Turnuvası ")say("")say(15000-pc.get_gold().." yang eksiğin var.")say("Paranı tamamlayınca turnuvaya girebilirsin.")returnendsay("Turnuva başladığı zaman seni çağıracağım.")say("")say("İyi şanslar evlat!")say("")pvp_attenders[attender_count+1] = {name = pc.getname(), level = pc.get_level(), partner = nil, winner = true, fight_mode = 0, arena = 0}pc.setqf("attender_id", attender_count+1)pc.setqf("pvp_tournament", game.get_event_flag("pvp_tournament"))attender_count = attender_count + 1pc.change_gold(-15000)if achievement_manager != nil thenachievement_manager.on_participatepvpevent()endelseif s == 2 thensay("Çok zayıf gözüküyorsun evlat ")say("diğer oyunculara karşı hiç şansın olamaz.")say("")endendwhen 20078.chat." PvP Turnuvası için yapılmış kayıtlar " with pc.get_map_index() == 28 and pc.is_gm() and game.get_event_flag("pvp") == 1 begin--when 20078.chat." PvP Turnuvası için yapılmış kayıtlar " with pc.get_map_index() == 112 and pc.is_gm() and game.get_event_flag("pvp") == 1 beginsay_title(" PvP Turnuvası ")say("Şuana kadar "..tostring(attender_count).." oyuncu kayıt oldu.")if ae_pvp_tournament != nil thensay("")returnendsay(" Kayıtları kapamak istiyormusun? ")say("")local s = select("Kayıtları kapat ", "Kayıt olmaya devam etsinler ")if s == 1 thensay_title("Kayıtları Kapat:")say("Kayıtlar kapandı.")say("")pvp_manager.close_registrations()endendfunction close_registrations()if attender_count == 0 thennotice_all("Girişler kapandı , kayıt yaptıramazsın.")game.set_event_flag("pvp", 0)pvp_attenders = nilif pvp_manager_callback != nil thenpvp_manager_callback()endreturnendgame.set_event_flag("pvp", 2)pvp_manager.make_duel_list()duel_list_index = 0playerless_mode = falsenotice_all("PvP Turnuvası başlıyor!")pvp_manager.refresh_arenas()endwhen 20078.chat."Şimdi kiminle düello yapacağım?" with pc.get_map_index() == 28 and game.get_event_flag("pvp") == 2 and game.get_event_flag("pvp_tournament") == pc.getqf("pvp_tournament") begin--when 20078.chat."Şimdi kiminle düello yapacağım?" with pc.get_map_index() == 112 and game.get_event_flag("pvp") == 2 and game.get_event_flag("pvp_tournament") == pc.getqf("pvp_tournament") beginsay_title(mob_name(20078)..":")if pvp_manager.get_duel_partner() == nil thensay("Şuanda sana uygun aday yok.")say("")say("Eğer sana uygun aday bulamazsak bir sonraki ")say("rounda geçeceksin.")returnendsay("Düello yapacağın kişi:")say("")say_reward(""..pvp_manager.get_duel_partner().."")end function make_duel_list()duel_list = { }local i = 0for ai = 1, attender_count, 1 doif pvp_attenders[ai] != nil and pvp_attenders[ai].partner == nil and pvp_attenders[ai].winner == true thenlocal partner_id = pvp_manager.findpartner(tostring(pvp_attenders[ai].name), pvp_attenders[ai].level)if partner_id != nil thenpvp_attenders[ai].partner = tostring(pvp_attenders[partner_id].name)pvp_attenders[partner_id].partner = tostring(pvp_attenders[ai].name)duel_list[i] = {fighter_id1 = ai, fighter_id2 = partner_id}i = i + 1endendendfor ai = 1, attender_count, 1 doif pvp_attenders[ai] != nil and pvp_attenders[ai].partner == nil and pvp_attenders[ai].winner == true thenlocal partner_id = pvp_manager.findpartner_for_partnerless(tostring(pvp_attenders[ai].name), pvp_attenders[ai].level)if partner_id != nil thenpvp_attenders[ai].partner = tostring(pvp_attenders[partner_id].name)pvp_attenders[partner_id].partner = tostring(pvp_attenders[ai].name)duel_list[i] = {fighter_id1 = ai, fighter_id2 = partner_id}i = i + 1endendendendfunction findpartner(name, level)local closest_level = nillocal partner_id = nilfor ai = 1, attender_count, 1 doif pvp_attenders[ai] != nil and pvp_attenders[ai].winner == true and tonumber(pvp_attenders[ai].level) <= level + 30 and tonumber(pvp_attenders[ai].level) >= level - 30 and tostring(pvp_attenders[ai].name) != name and pvp_attenders[ai].partner == nil and pvp_manager.is_player_in_map(tostring(pvp_attenders[ai].name)) == true thenif closest_level == nil thenclosest_level = pvp_attenders[ai].levelpartner_id = aielseif tonumber(pvp_attenders[ai].level) == tonumber(level) thenclosest_level = pvp_attenders[ai].levelpartner_id = aielseif tonumber(level) < tonumber(closest_level) and tonumber(pvp_attenders[ai].level) < tonumber(closest_level) thenclosest_level = pvp_attenders[ai].levelpartner_id = aielseif tonumber(level) > tonumber(closest_level) and tonumber(pvp_attenders[ai].level) > tonumber(closest_level) thenclosest_level = pvp_attenders[ai].levelpartner_id = aiendendendreturn partner_idendfunction findpartner_for_partnerless(name, level)local closest_level = nillocal partner_id = nilfor ai = 1, attender_count, 1 doif pvp_attenders[ai] != nil and pvp_attenders[ai].winner == true and tostring(pvp_attenders[ai].name) != name and pvp_attenders[ai].partner == nil and pvp_manager.is_player_in_map(tostring(pvp_attenders[ai].name)) == true thenif closest_level == nil thenclosest_level = pvp_attenders[ai].levelpartner_id = aielseif pvp_attenders[ai].level == level thenclosest_level = pvp_attenders[ai].levelpartner_id = aielseif tonumber(level) < tonumber(closest_level) and pvp_attenders[ai].level < closest_level thenclosest_level = pvp_attenders[ai].levelpartner_id = aielseif tonumber(level) > tonumber(closest_level) and pvp_attenders[ai].level > closest_level thenclosest_level = pvp_attenders[ai].levelpartner_id = aiendendendreturn partner_idendfunction is_player_in_map(name)if pc.getname() == name thenreturn trueendlocal myname = pc.getname()local target = find_pc_by_name(name)local t = pc.select(target)if pc.getname() == myname thenpc.select(t)return falseendpc.select(t)return trueendwhen 20078.chat."GM: Arenayı Temizle" with pc.is_gm() and game.get_event_flag("pvp") == 2 beginfor aArena = 1, 4, 1 doarena[aArena][3] = 0arena[aArena][4] = "SLEEPING"endpvp_manager.refresh_arenas()endwhen 20078.chat."GM: PvP Turnuva Ödülü " with pc.is_gm() beginsay_title("Ödül:")say("Şuanki Ödül "..game.get_event_flag("pvp_price_count").."x "..item_name(game.get_event_flag("pvp_price_vnum")).." (vnum: "..game.get_event_flag("pvp_price_vnum")..")")say("")local s = select("Ödülü Değiştir " , "Kapat ")if s == 2 thenreturnendsay_title("Ödül:")say("Yeni ödülün kodunu gir:")say("")local vnum = input()say_title("Ödül:")say("Yeni ödülün adetini gir:")say("")local count = input()game.set_event_flag("pvp_price_count", count)game.set_event_flag("pvp_price_vnum", vnum)say_title("Ödül değiştirildi:")say("Ödül değiştirildi.")say("Yeni ödül : "..count.."x "..item_name(vnum).." (vnum: "..vnum..")")end function refresh_arenas()for aArena = 1, 4, 1 doif duel_list[duel_list_index] == nil thenif playerless_mode == true thenpvp_manager.init_next_round()elsepvp_manager.fight_playerless()endreturnendif arena[aArena][3] == 0 thenarena[aArena][3] = 1pvp_manager.fight_init(duel_list[duel_list_index].fighter_id1, duel_list[duel_list_index].fighter_id2, aArena)endendend function fight_init(pid1, pid2, arena_id)duel_list_index = duel_list_index + 1if pvp_manager.is_player_in_map(tostring(pvp_attenders[pid1].name)) == false thennotice_in_map(""..tostring(pvp_attenders[pid1].name).." adlı oyuncu oyunda olmadığından diskalifiye edildi.", pc.get_map_index())pvp_attenders[pid1].winner = falsepvp_attenders[pid2].partner = nilarena[arena_id][3] = 0pvp_manager.refresh_arenas()returnendif pvp_manager.is_player_in_map(tostring(pvp_attenders[pid2].name)) == false thennotice_in_map(""..tostring(pvp_attenders[pid2].name).." adlı oyuncu oyunda olmadığından diskalifiye edildi.", pc.get_map_index())pvp_attenders[pid2].winner = falsepvp_attenders[pid1].partner = nilarena[arena_id][3] = 0pvp_manager.refresh_arenas()returnendnotice_in_map(tostring(pvp_attenders[pid1].name).." ve "..tostring(pvp_attenders[pid2].name).." 'nın düellosu birazdan başlayacak!", pc.get_map_index())pvp_attenders[pid1].fight_mode = 1pvp_attenders[pid2].fight_mode = 1pvp_attenders[pid1].arena = arena_idpvp_attenders[pid2].arena = arena_idpvp_kural_uygula(pvp_attenders[pid1].name)pvp_kural_uygula(pvp_attenders[pid2].name)pvp_manager.local_pc_warp(tostring(pvp_attenders[pid1].name), arena[arena_id][1][1], arena[arena_id][1][2])pvp_manager.local_pc_warp(tostring(pvp_attenders[pid2].name), arena[arena_id][2][1], arena[arena_id][2][2]) endwhen login with pc.get_map_index() == 28 and game.get_event_flag("pvp") == 2 and pvp_manager.get_fight_mode() == 1 begin--when login with pc.get_map_index() == 112 and game.get_event_flag("pvp") == 2 and pvp_manager.get_fight_mode() == 1 beginaffect.add(apply.MOV_SPEED, -10000, 2)affect.add_collect(apply.HP_REGEN, 5000, 30)affect.add_collect(apply.SP_REGEN, 5000, 30)pvp_manager.set_fight_mode(2)if arena[pvp_manager.get_arena()][3] == 2 thenarena[pvp_manager.get_arena()][5] = 30loop_timer("fight_start_countdown", 1)elsetimer("partner_timeout", 30)endarena[pvp_manager.get_arena()][3] = 2endwhen partner_timeout.timer beginif pvp_manager.is_player_in_map(pvp_manager.get_duel_partner()) == true or game.get_event_flag("pvp") != 2 or pvp_manager.get_fight_mode() != 2 thenreturnendpvp_manager.set_fight_mode(3)if arena[pvp_manager.get_arena()][3] == 3 thenreturnendarena[pvp_manager.get_arena()][3] = 3notice_in_map(pc.getname().." , "..pvp_manager.get_duel_partner().." karşısındaki düelloyu kaybetti!", pc.get_map_index())pvp_attenders[pvp_manager.get_attender_id_by_name(pvp_manager.get_duel_partner())].fight_mode = 3pvp_attenders[pvp_manager.get_my_attender_id()].winner = truepvp_attenders[pvp_manager.get_attender_id_by_name(pvp_manager.get_duel_partner())].winner = falsesaybakim = math.random(1,10)if saybakim >= 5 thenpc.warp_local(pc.get_map_index(), balan[3][1][1], balan[3][1][2], 0)elsepc.warp_local(pc.get_map_index(), balan[4][1][1], balan[4][1][2], 0)endend when fight_start_countdown.timer beginif arena[pvp_manager.get_arena()][5] == -1 thenreturnendlocal partner_vid = find_pc_by_name(pvp_manager.get_duel_partner())local my_vid = pc.get_vid()if arena[pvp_manager.get_arena()][5] == 0 thenarena[pvp_manager.get_arena()][5] = -1pc.select(partner_vid)command("pvp "..my_vid)pc.select(my_vid)command("pvp "..partner_vid)notice_in_map(""..pvp_manager.get_duel_partner().." ile "..pc.getname().." arasındaki düello başladı!", pc.get_map_index())timer("fight_start_countdown_shutdown", 1)elsepc.select(partner_vid)if math.mod(arena[pvp_manager.get_arena()][5], 5) == 0 thenif tostring(arena[pvp_manager.get_arena()][5]) == "30" thenlocal f = "pvp"pc.setf(f,"item_block",0)if pc.get_job() == 2 or pc.get_job() == 6 thenpc.setf(f,"block_cozme",1)endsyschat("İtemlerini değiştirmek için 15 saniyen var.")syschat("15 saniye sonunda item değiştiremeyeceksin.")elseif tostring(arena[pvp_manager.get_arena()][5]) == "15" thenlocal f = "pvp"pc.setf(f,"item_block",1)if pc.get_job() == 2 or pc.get_job() == 6 thenpc.setf(f,"block_cozme",0)endsyschat("İtem değiştirme süresi sona erdi.")endsyschat("Düello "..tostring(arena[pvp_manager.get_arena()][5]).." saniye içinde başlayacak.")endaffect.add(apply.MOV_SPEED, -10000, 2)pc.select(my_vid)if math.mod(arena[pvp_manager.get_arena()][5], 5) == 0 thenif tostring(arena[pvp_manager.get_arena()][5]) == "30" thenlocal f = "pvp"pc.setf(f,"item_block",0)syschat("İtemlerini değiştirmek için 15 saniyen var.")syschat("15 saniye sonunda item değiştiremeyeceksin.")elseif tostring(arena[pvp_manager.get_arena()][5]) == "15" thenlocal f = "pvp"pc.setf(f,"item_block",1)syschat("İtem değiştirme süresi sona erdi.")endsyschat("Düello "..tostring(arena[pvp_manager.get_arena()][5]).." saniye içinde başlayacak.") endaffect.add(apply.MOV_SPEED, -10000, 2)arena[pvp_manager.get_arena()][5] = arena[pvp_manager.get_arena()][5] - 1endendwhen fight_start_countdown_shutdown.timer begincleartimer("fight_start_countdown")endwhen logout with game.get_event_flag("pvp") == 2 and pc.get_map_index() == 28 and pvp_manager.get_fight_mode() == 2 begin--when logout with game.get_event_flag("pvp") == 2 and pc.get_map_index() == 112 and pvp_manager.get_fight_mode() == 2 beginpvp_manager.set_fight_mode(3)arena[pvp_manager.get_arena()][3] = 3notice_in_map(""..pvp_manager.get_duel_partner().." , "..pc.getname().." karşısındaki düelloyu kazandı!", pc.get_map_index())pvp_attenders[pvp_manager.get_attender_id_by_name(pvp_manager.get_duel_partner())].fight_mode = 3pvp_attenders[pvp_manager.get_my_attender_id()].winner = falsepvp_attenders[pvp_manager.get_attender_id_by_name(pvp_manager.get_duel_partner())].winner = truesaybakim = math.random(1,10)if saybakim >= 5 thenpvp_manager.local_pc_warp(pvp_manager.get_duel_partner(), balan[1][1][1], balan[1][1][2])elsepvp_manager.local_pc_warp(pvp_manager.get_duel_partner(), balan[2][1][1], balan[2][1][2])endendwhen kill with game.get_event_flag("pvp") == 2 and pc.get_map_index() == 28 and npc.is_pc() and pvp_manager.get_fight_mode() == 2 begin--when kill with game.get_event_flag("pvp") == 2 and pc.get_map_index() == 112 and npc.is_pc() and pvp_manager.get_fight_mode() == 2 beginpvp_manager.set_fight_mode(3)if arena[pvp_manager.get_arena()][3] == 3 thenreturnendarena[pvp_manager.get_arena()][3] = 3notice_in_map(""..pc.getname().." , "..pvp_manager.get_duel_partner().." karşısındaki düelloyu kazandı!", pc.get_map_index())pvp_attenders[pvp_manager.get_attender_id_by_name(pvp_manager.get_duel_partner())].fight_mode = 3pvp_attenders[pvp_manager.get_my_attender_id()].winner = truepvp_attenders[pvp_manager.get_attender_id_by_name(pvp_manager.get_duel_partner())].winner = falsetimer("fight_end", 5)endwhen fight_end.timer beginkazanansay2 = math.random(1,100)if kazanansay2 >= 50 thenpvp_manager.local_pc_warp(pc.getname(), balan[1][1][1], balan[1][1][2])elsepvp_manager.local_pc_warp(pc.getname(), balan[2][1][1], balan[2][1][2])endsaybakim2 = math.random(1,10)if saybakim2 >= 5 thenpvp_manager.local_pc_warp(pvp_manager.get_duel_partner(), balan[3][1][1], balan[3][1][2])elsepvp_manager.local_pc_warp(pvp_manager.get_duel_partner(), balan[4][1][1], balan[4][1][2])endendwhen letter with pc.get_map_index() == 28 and game.get_event_flag("pvp") == 2 and pvp_manager.get_fight_mode() == 3 begin--when letter with pc.get_map_index() == 112 and game.get_event_flag("pvp") == 2 and pvp_manager.get_fight_mode() == 3 beginpvp_manager.set_fight_mode(0)if pvp_attenders[pvp_manager.get_my_attender_id()].winner == true thenarena[pvp_manager.get_arena()][3] = 0pvp_manager.refresh_arenas()endendfunction fight_playerless()for aArena = 1, 4, 1 doif arena[aArena][3] != 0 thenreturnendendplayerless_mode = true pvp_manager.make_duel_list()pvp_manager.refresh_arenas()endfunction init_next_round()for aArena = 1, 4, 1 doif arena[aArena][3] != 0 thenreturnendendplayerless_mode = falselocal winner_count = 0--[[local]] winner_id = 0for ai = 1, attender_count, 1 dopvp_attenders[ai].partner = nilpvp_attenders[ai].fight_mode = 0if pvp_attenders[ai] != nil and pvp_attenders[ai].winner == true thenwinner_count = winner_count + 1winner_id = aiendendif winner_count == 1 thennotice_all(""..pvp_attenders[winner_id].name.." turnuvayı kazanıp ödülünde sahibi oldu!")local target = find_pc_by_name(pvp_attenders[winner_id].name)local t = pc.select(target)if achievement_manager != nil thenachievement_manager.on_winpvpevent()endpc.give_item2(game.get_event_flag("pvp_price_vnum"), game.get_event_flag("pvp_price_count"))pc.select(t)notice_all("PvP Turnuvası bitti.")warp_all_to_village(28,28)game.set_event_flag("pvp", 0)--pvp_attenders = nilif pvp_manager_callback != nil thenpvp_manager_callback()endreturnendpvp_manager.make_duel_list()duel_list_index = 0if winner_count == 2 thennotice_all("Final roundu başlıyor.")elseif winner_count <= 4 thennotice_all("Yarı final roundu başlıyor.")elseif winner_count <= 8 thennotice_all("Çeyrek final roundu başlıyor.")elsenotice_all("Round başlıyor.")endpvp_manager.refresh_arenas()endwhen login with pc.get_map_index() != 28 begin--when login with pc.get_map_index() != 112 beginlocal f = "pvp"pc.setf(f,"item_block",0)if pc.get_job() == 2 or pc.get_job() == 6 thenpc.setf(f,"block_cozme",0)endendwhen login with pc.get_map_index() == 28 begin--when login with pc.get_map_index() == 112 beginif pc.get_job() == 2 or pc.get_job() == 6 thenlocal f = "pvp"pc.setf(f,"block_cozme",0)endif party.is_party() thenlocal krallik = pc.get_empire()if krallik == 1 thenpc.warp(469300, 964200)elseif krallik == 2 thenpc.warp(55700, 157900)elseif krallik == 3 thenpc.warp(969600, 278400)endendendfunction local_pc_warp(name, x, y)local target = find_pc_by_name(name)local t = pc.select(target)if x == 67 and y == 98 thenlocal f = "pvp"pc.setf(f,"item_block",0)elseif x == 68 and y == 151 thenlocal f = "pvp"pc.setf(f,"item_block",0)elseif x == 184 and y == 100 thenlocal f = "pvp"pc.setf(f,"item_block",0)elseif x == 185 and y == 152 thenlocal f = "pvp"pc.setf(f,"item_block",0)endpc.warp_local(pc.get_map_index(), x*100, y*100, 0)pc.select(t)if x == 67 and y == 98 thenlocal f = "pvp"pc.setf(f,"item_block",0)elseif x == 68 and y == 151 thenlocal f = "pvp"pc.setf(f,"item_block",0)elseif x == 184 and y == 100 thenlocal f = "pvp"pc.setf(f,"item_block",0)elseif x == 185 and y == 152 thenlocal f = "pvp"pc.setf(f,"item_block",0)endendfunction setqf_by_name(name, flag, value)local target = find_pc_by_name(name)local t = pc.select(target)pc.setqf(flag, value)pc.select(t)endfunction getqf_by_name(name, flag)local target = find_pc_by_name(name)local t = pc.select(target)local rflag = pc.getqf(flag)pc.select(t)return rflagendfunction get_attender_id_by_name(name)for ai = 1, attender_count, 1 doif tostring(pvp_attenders[ai].name) == name thenreturn aiendendreturn 0endfunction get_my_attender_id()return pvp_manager.get_attender_id_by_name(pc.get_name())endfunction get_duel_partner()if pvp_attenders[pvp_manager.get_my_attender_id()] != nil and pvp_attenders[pvp_manager.get_my_attender_id()].partner != nil thenreturn pvp_attenders[pvp_manager.get_my_attender_id()].partnerelsereturn nilendendfunction get_fight_mode()if pvp_attenders != nil and pvp_manager.get_my_attender_id() != 0 and pvp_attenders[pvp_manager.get_my_attender_id()] != nil and pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode != nil thenreturn pvp_attenders[pvp_manager.get_my_attender_id()].fight_modeelsereturn 0endendfunction set_fight_mode(fmode)pvp_attenders[pvp_manager.get_my_attender_id()].fight_mode = fmodeendfunction get_arena()return pvp_attenders[pvp_manager.get_my_attender_id()].arenaendfunction set_arena(id)pvp_attenders[pvp_manager.get_my_attender_id()].arena = idendfunction ask_fight(asker, target)return confirm(find_pc_by_name(target), "Trittst du den Kampf gegen "..asker.. " an?", 15)endend  
Metin2 ramazan event questi
Metin2 ramazan event questi
state start beginfunction is_running()return (game.get_event_flag("event_ramazan") > 0) --npc spawnendfunction reward_period()return (game.get_event_flag("ramadan_reward") > 0) --reward menu appearendfunction setting()return {["bread"] = 30315,["candy"] = 50183,["plate"] = 30316,["iftar"] = 30317,["fruit"] = 30318,["box"] = 50182,["horse1"] = 71131,["horse2"] = 71132,["horse3"] = 71133,["horse4"] = 71134}endwhen 33002.chat.gameforge.event_ramadan._010_npcChat with pc.getf("event_ramazan", "first_notice")==0 beginlocal setting = event_ramadan.setting()say_title(gameforge.event_ramadan._020_sayTitle)say("")say(gameforge.event_ramadan._030_say)wait() say_pc_name()say(gameforge.event_ramadan._040_say)wait() say_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._050_say)wait()say_pc_name()say(gameforge.event_ramadan._060_say)pc.setqf("first_notice", 1)endwhen 33002.chat.gameforge.event_ramadan._070_npcChat with pc.getf("event_ramadan", "first_notice")==1 beginlocal setting = event_ramadan.setting()if pc.count_item(setting.bread) == 0 thensay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._80_say)local s=select(gameforge.event_ramadan._90_select_1 ,gameforge.event_ramadan._90_select_2)if 2==s thensay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._100_say)returnendsay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._110_say)wait()say_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._120_say)local s=select(gameforge.event_ramadan._130_select_1,gameforge.event_ramadan._130_select_2)if 2==s thensay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._100_say)returnendsay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._140_say)elseif pc.count_item(setting.bread) > 0 and pc.count_item(setting.bread) < 10 thensay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._150_say)elseif pc.count_item(setting.bread) >= 10 thensay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._160_say)wait()say_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._170_say)pc.give_item2(setting.candy,1)pc.remove_item(setting.bread,10)endif not event_ramadan.is_running() thennpc.purge()endend --whenwhen 33002.chat.gameforge.event_ramadan._180_npcChat with pc.getqf("first_notice")== 1 beginlocal setting = event_ramadan.setting()say_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._180_say)say(gameforge.event_ramadan._190_say)say(gameforge.event_ramadan._200_say)say_item_vnum(setting.plate)wait()say_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._210_say)end when 33003.chat.gameforge.event_ramadan._220_npcChat or 33004.chat.gameforge.event_ramadan._220_npcChat or 33005.chat.gameforge.event_ramadan._220_npcChat or 33006.chat.gameforge.event_ramadan._220_npcChat or 33007.chat.gameforge.event_ramadan._220_npcChat beginlocal setting = event_ramadan.setting()if pc.count_item(setting.iftar) == 0 thensay_title(gameforge.event_ramadan._230_sayTitle)say("")say(gameforge.event_ramadan._240_say)elseif pc.count_item(setting.iftar) > 0 thensay_title(gameforge.event_ramadan._230_sayTitle)say("")say(gameforge.event_ramadan._250_say)local s = select(gameforge.event_ramadan._260_select_1,gameforge.event_ramadan._260_select_2)if 2==s thensay_title(gameforge.event_ramadan._230_sayTitle)say("")say(gameforge.event_ramadan._270_say)returnendsay_title(gameforge.event_ramadan._230_sayTitle)say("")say(gameforge.event_ramadan._280_say)pc.give_item2(setting.box,1)pc.remove_item(setting.iftar,1)end if not event_ramadan.is_running() thennpc.purge()endendwhen 33002.chat.gameforge.event_ramadan._290_npcChat with pc.getf("event_ramadan","fig_exchange")==0 beginlocal setting = event_ramadan.setting()if get_time() > pc.getqf("duration") thensay_title(gameforge.event_ramadan._020_sayTitle)say("")say(gameforge.event_ramadan._300_say)pc.give_item2(setting.fruit)pc.setqf("duration",get_time()+60*60*24) --24helsesay_title(gameforge.event_ramadan._020_sayTitle)say(gameforge.event_ramadan._310_say)endend when 33002.chat.gameforge.event_ramadan._320_npcChat with event_ramadan.reward_period() and pc.getf("event_ramadan","fig_exchange")==0 beginlocal setting = event_ramadan.setting()say_title(gameforge.event_ramadan._020_sayTitle)say("")say(gameforge.event_ramadan._330_say)wait()if pc.count_item(setting.fruit)>= 5 then --more than 5say_title(gameforge.event_ramadan._020_sayTitle)say("")say(string.format(gameforge.event_ramadan._340_say, pc.count_item(setting.fruit)))say(gameforge.event_ramadan._350_say)local s=select(gameforge.event_ramadan._360_select_1, gameforge.event_ramadan._360_select_2)if 2==s thensay_title(gameforge.event_ramadan._020_sayTitle)say("")say(gameforge.event_ramadan._370_say)returnendsay_title(gameforge.event_ramadan._020_sayTitle)say("")say(gameforge.event_ramadan._380_say)say_reward(gameforge.event_ramadan._390_sayReward)say("")if pc.count_item(setting.fruit)>= 5 and pc.count_item(setting.fruit)<= 10 thenpc.give_item2(setting.horse1,1)elseif pc.count_item(setting.fruit)>= 11 and pc.count_item(setting.fruit)<= 19 thenpc.give_item2(setting.horse2,1)elseif pc.count_item(setting.fruit)>= 20 and pc.count_item(setting.fruit)<= 27 thenpc.give_item2(setting.horse3,1)elseif pc.count_item(setting.fruit)>= 28 thenpc.give_item2(setting.horse4,1)endpc.remove_item(setting.fruit,pc.count_item(setting.fruit))pc.setqf("fig_exchange",1)else --less than 5say_title(gameforge.event_ramadan._020_sayTitle)say("")say(gameforge.event_ramadan._400_say)endendwhen 30316.use beginlocal setting = event_ramadan.setting()if pc.count_item(setting.bread) >= 10 thenpc.remove_item(setting.bread, 10)pc.remove_item(setting.plate, 1)pc.give_item2(setting.iftar, 1)endend end --state
Metin2 tek tık biyolog questi
Metin2 tek tık biyolog questi
state start beginwhen login with game.get_biyalog_turu()==1 beginsetstate(run)endendstate run beginwhen 20084.chat."Eskiz2 Tek Tık Biolog " with game.get_biyalog_turu()==1 beginsay_title(mob_name(20084))say ( " |cff00FF7FMerhaba, " )say ( " |cff00FF7FEpic Görevlerinin. " )say ( " |cff00FF7FBonuslarını Tek Tıkla Alabilirsin! " )say ( " |cff00FF7FKarakter Atmadan İtemsiz Özelliğiyle! " )say ( " |cff00ff00Eskiz2 IYI OYUNLAR" )wait ( )say_title ( " |cffffff0030.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00Saldırı Değeri +50 (Kalıcı) " )wait ( )say_title ( " |cffffff0040.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00+10% Diğer Oyunculara Karşı Güç (Kalıcı)" )wait ( )say_title ( " |cffffff0050.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00Hareket Hızı +10% , +500 HP (Kalıcı)" )wait ( )say_title ( " |cffffff0060.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00Saldırı Hızı +15% (Kalıcı) " )wait ( )say_title ( " |cffffff0070.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00+10% Diğer Oyunculara Karşı Savunma (Kalıcı) " )wait ( )say_title ( " |cffffff0080.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00Savunma +50 (Kalıcı) " )wait ( )say_title ( " |cffffff0085.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffBiyolog Görevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00Saldırı Hızı +5%(Kalıcı) " )wait ( )say_title ( " |cffffff0090.Lv Biyolog(Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say ( " |cff00ccffGörevini Yaptığın İçin. " )say ( " |cff00ccffBu Ödülleri Sana Veriyorum: " )say ( " |cff00ccffEskiz2 IYI OYUNLAR" )say_reward ( " |cffff0000Ödülün: " )say_reward ( " |cff00ff00Hareket Hızı +10% (Kalıcı) " )wait ( )say_title("Epic(Tek Tık)")affect.remove_all_collect()--savunmaaffect.add_collect_point(POINT_RESIST_WARRIOR, 10, 60*60*24*365*60)affect.add_collect_point(POINT_RESIST_ASSASSIN, 10, 60*60*24*365*60)affect.add_collect_point(POINT_RESIST_SURA, 10, 60*60*24*365*60)affect.add_collect_point(POINT_RESIST_SHAMAN, 10, 60*60*24*365*60)affect.add_collect_point(141, 10, 60*60*24*365*60)--saldiriaffect.add_collect_point(POINT_ATTBONUS_WARRIOR, 10, 60*60*24*365*60)affect.add_collect_point(POINT_ATTBONUS_ASSASSIN, 10, 60*60*24*365*60)affect.add_collect_point(POINT_ATTBONUS_SURA, 10, 60*60*24*365*60)affect.add_collect_point(POINT_ATTBONUS_SHAMAN, 10, 60*60*24*365*60)affect.add_collect_point(140, 10, 60*60*24*365*60)--digeraffect.add_collect(apply.ATT_SPEED, 20, 60*60*24*365*60)affect.add_collect(apply.MAX_HP, 500, 60*60*24*365*60)affect.add_collect(apply.MOV_SPEED, 20, 60*60*24*365*60)affect.add_collect(apply.DEF_GRADE_BONUS,60,60*60*24*365*60)affect.add_collect(apply.ATT_GRADE_BONUS,50,60*60*24*365*60)say("|cffDA70D6TUM OZELLIKLERINI BASARI ILE ALDIN")say("|cffDA70D6DIGER OZELLIKLER ICIN EPIC SURAYI ZIYARET ET")say("|cffDA70D6Eskiz2 IYI OYUNLAR DILER")setstate(epic)endendstate epic beginwhen 20091.chat."TEK TIK EPIC 92" with game.get_biyalog_turu()==1 and pc.get_level() >= 92 beginsay_title ( " |cffffff0092.Lv Epic (Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say_reward ( " |cff00ccffEpic Görevlerini Yaptığın İçin. " )say_reward ( " |cff00ccffBirini Sectikten Sonra Diger Gorev İcin Tekrar Ugra " )say_reward ( " |cff00ccffBu Ödüllerden Birini Seçmen Gerek; " )say ( " IYI OYUNLAR" )local secim = select ( " +1000 HP " , " Savunma Değeri +120 " , " Saldırı Değeri +50 ", " Vazgeçtim " )if secim == 4 then return endif secim == 1 thenaffect.add_collect2(apply.MAX_HP,1000,60*60*24*365*60)setstate(gec2)elseif secim == 2 thenaffect.add_collect2(apply.DEF_GRADE_BONUS,120,60*60*24*365*60)setstate(gec2)elseif secim == 3 thenaffect.add_collect2(apply.ATT_GRADE_BONUS,50,60*60*24*365*60)setstate(gec2)endend when 20084.chat."GM: TekTık Sıfırla " with game.get_biyalog_turu()==1 and pc.is_gm() beginaffect.remove_all_collect()setstate(run)setskin(NOWINDOW)endwhen 20091.chat."GM: TekTık Sıfırla " with game.get_biyalog_turu()==1 and pc.is_gm() beginaffect.remove_all_collect()setstate(run)setskin(NOWINDOW)endwhen 9006.chat."Biyolog Görevlerini Sıfırla " with game.get_biyalog_turu()==1 beginsay_title(mob_name(9006))say("Biyalog görevlerinden aldığın becerileri ")say("sıfırlamak istediğine emin misin? ")local secim = select("Evet Lütfen ", "Hayır Sonra ")if secim != 1 then return endaffect.remove_all_collect()setstate(run)say_title(mob_name(9006))say("Biyalogdan aldığın beceriler silindi. ")say("Şimdi tekrar biyolog'a giderek beceri alabilirsin. ")wait()end end state gec2 beginwhen 20091.chat."TEK TIK EPIC 94" with game.get_biyalog_turu()==1 and pc.get_level() >= 94 beginsay_title ( " |cffffff0094.Lv Epic (Tek Tık); " )say_reward ( " |cffffff00İtemsiz, Karakter Atmadan! " )say ( " |cff00ccffMerhaba, " )say_reward ( " |cff00ccffEpic Görevlerini Yaptığın İçin. " )say_reward ( " |cff00ccffBu Ödüllerden Birini Seçmen Gerek; " )say ( " IYI OYUNLAR" )local secim = select ( " +1100 HP " , " Savunma Değeri +140 " , " Saldırı Değeri +60 ", " Vazgeçtim " )if secim == 4 then return endif secim == 1 thenaffect.add_collect2(apply.MAX_HP,1100,60*60*24*365*60)setstate(__complete)elseif secim == 2 thenaffect.add_collect2(apply.DEF_GRADE_BONUS,140,60*60*24*365*60)setstate(__complete)elseif secim == 3 thenaffect.add_collect2(apply.ATT_GRADE_BONUS,60,60*60*24*365*60)setstate(__complete)endend when 20084.chat."GM: TekTık Sıfırla " with game.get_biyalog_turu()==1 and pc.is_gm() beginaffect.remove_all_collect()setstate(run)setskin(NOWINDOW)endwhen 20091.chat."GM: TekTık Sıfırla " with game.get_biyalog_turu()==1 and pc.is_gm() beginaffect.remove_all_collect()setstate(run)setskin(NOWINDOW)endwhen 9006.chat."Biyolog Görevlerini Sıfırla " with game.get_biyalog_turu()==1 beginsay_title(mob_name(9006))say("Biyalog görevlerinden aldığın becerileri ")say("sıfırlamak istediğine emin misin? ")local secim = select("Evet Lütfen ", "Hayır Sonra ")if secim != 1 then return endaffect.remove_all_collect()setstate(run)say_title(mob_name(9006))say("Biyalogdan aldığın beceriler silindi. ")say("Şimdi tekrar biyolog'a giderek beceri alabilirsin. ")wait()end end state __complete beginwhen 20084.chat."GM: TekTık Sıfırla " with game.get_biyalog_turu()==1 and pc.is_gm() beginaffect.remove_all_collect()setstate(run)setskin(NOWINDOW)endwhen 20091.chat."GM: TekTık Sıfırla " with game.get_biyalog_turu()==1 and pc.is_gm() beginaffect.remove_all_collect()setstate(run)setskin(NOWINDOW)endwhen 9006.chat."Biyolog Görevlerini Sıfırla " with game.get_biyalog_turu()==1 beginsay_title(mob_name(9006))say("Biyalog görevlerinden aldığın becerileri ")say("sıfırlamak istediğine emin misin? ")local secim = select("Evet Lütfen ", "Hayır Sonra ")if secim != 1 then return endaffect.remove_all_collect()setstate(run)say_title(mob_name(9006))say("Biyalogdan aldığın beceriler silindi. ")say("Şimdi tekrar biyolog'a giderek beceri alabilirsin. ")wait()endend
Metin2 yardımcı şaman süre uzatma questi
Metin2 yardımcı şaman süre uzatma questi
when 55124.click beginsay_title("Yardımcı Şaman Süre Uzatma: ")say_color("white","[DELAY value;25]Sana eşlik eden şamanın yaşam süresini +3 gün uzatabilirim. ")say_color("white","[DELAY value;25]Ancak bunun için bana istediğim eşyayı getirmelisin. ")say(" ")say(" ")say_item_vnum(31065)say(" ")say_color("cyan","[DELAY value;25] x5 Zaman Parşömeni bulduğun zaman ")say_color("cyan","[DELAY value;25] Yardımcı Şaman Nesnesini üzerime sürükle. ")say(" ")endwhen 55124.take with item.vnum == 79681 or item.vnum == 79680 beginsay_title("Yardımcı Şaman Süre Uzatma: ")say_color("white","[DELAY value;25]Sana eşlik eden şamanının yaşam süresini uzatabilirim. ")say_color("white","[DELAY value;25]Bunu gerçekten istiyor musun? ")say_color("cyan","[DELAY value;25]Eğer kabul edersen Yardımcı Şamanına 3 Gün ekleyeceğim. ")say(" ")local nesne = pc.count_item(31065)if nesne > 4 thenlocal s = select("Uzat ","Vazgeç ")if s == 2 thenreturnelseif s == 1 thensay_title("Yardımcı Şaman Süre Uzatma: ")say_color("white","[DELAY value;25]Tebrikler! Yardımcı Şamanına +3 Gün ekledim. ")say(" ")pc.remove_item("31065",5)item.set_socket(0,item.get_socket(0) + 60*60*24*3)endelsesay("[DELAY value;35] ")say_color("white","[DELAY value;25]Maalesef bu durumdayken süreyi uzatamam. ")say_color("white","[DELAY value;25]süreyi uzatmak için x5 Zaman Parşömenine ")say_color("white","[DELAY value;25]ihtiyacım var. Bulduğunda geri gel.. ")say_item_vnum(31065)say(" ")endend