İlk Önce Luayı Npcye Bağlayalım


local UserClass;
local QuestNum;
local Ret = 0;
local NPC = NPC KODU;


Şimdi İse Npcye Tıkladığımızda Acılacak İlk Menüyü Ayarlayalım


if EVENT == EVENT KODU
SelectMsg(UID, 3, -1, MESAJ KODU, NPC, MENU, ICERIK -1,-1,-1);
end


İlk Önce Renkli Verdiğimiz Yerlerin Acıklamalarını Yapalım Soru İşareti Kalmasın


EVENT KODU: Event Kodunu Db den Bakabiliriz Ama Genellikle Kafadan Yazılır Yanlız Bir Kere yazdığınız Event Kodunu Bir daha yazarsanız luada Hata Olur ve lua acılmaz
MESAJ KODU::Npc Acılınca Gelecek Menülerin Üste Npc Simgesinin Yanındaki Olan Acıklamadır BunlarıQuest_Talk_us.tbl Adlı Tbl den Tbl Programları İle Bakabiliriz
MENU:Menü Npcye Tıkladığımızda Gelicek Sayfada acılan Butonların Üstünde Yazıcak Olan Yazıdır BunlarıdaQuest_Menu_us.tbl Tbl sinden Bakabiliriz
ICERIK İçerik İse Mesela İlk Menüyü Yaptınız O Butona Tıklayınca Acılacak EVENT Kodunu Buraya Yazıp Atıyorum 205 yazdınız Menüde Confirm Olsun Confirm Butonuna Basınca 205 e Yönelecek


Ufak Bir Örnekle Bunları Gösterelim


if EVENT == 100 then
SelectMsg(UID, 3, -1, 1186, NPC, 10, 150, -1 , -1 , -1 , -1 , -1 );
end


Burada Npc yi Acılınca İlk Gelecek Menü Confirm Dur Quest_Menu_us.tbl den Baktım ve 10 Değeri Confirm Butonuna Bağlıdır Şimdi 10 Menüsünün İçeriği 150 Değeridir


if EVENT == 150 then
SelectMsg(UID, 3, -1, 1234, NPC, 27, 180, -1 , -1 , -1 , -1 , -1 );
end


Burdada Yazdığımız 100 Numaralı EVENT in İlk Butonu Confirm e Tıkladığında Gelen Menüyü Yazdık Bu Böyle Sürer Gider Siz Nasıl Ne Kadar Menü Acmasını İstiyorsanız


Biz Bunu Genişletip Şu Sekildede Yazabiliriz .


if EVENT == EVENT KODU then
QuestNum = SearchQuest(UID, NPC);
if QuestNum == 0 then
SelectMsg(UID, 3, -1, MESAJ KODU, NPC, MENU, ICERIK, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1);
Ret = 1;
else if QuestNum > 1 and QuestNum < 100 then
NpcMsg(UID, Mesaj Kodu , NPC)
else
EVENT = QuestNum
end
end


Şimdi Luada Bazı Kodları Ve Acıklamalarını veriyim Bitirelim Burada


GiveItem(UID,ITEMNO,ADET)


Npc den Almak İstediğiniz itemi Buraya Yazıp Bu Şekilde Verdirebilirsiniz


RobItem(UID,ITEMKOD,ADET)


Item istemesi için komut.




RunExchange(UID, EVENTNO);


Event çağırma daha doğrusu bir event içinde diğer event çalıştırma kodudur.


Check = CheckGiveSlot(UID, -1)
if Check > 1 then




Slot kontrol yani boş yer olup olmadığına bakar.


Level = CheckLevel(UID)
if Level > Görevi yapabilmek için gerekli level


Göreve Level Kontrolü eklemek isterseniz bu komutu kullanabilirsiniz


GoldLose(UID,ParaMiktarı)


Görevde para almasını istiyorsanız ekleyeceğiniz komut


GiveLoyalty(UID,NP MIKTARI)


National point vermesi için komut


GiveMoney(UID,PARAMIKTARI)


Para Vermesi için komut