- Mesaj
- 11.941
- Çözümler
- 567
- Beğeni
- 13.659
- Puan
- 5.915
- Ticaret Puanı
- 2
Merhaba arkadaşlar,
Normalde 5. ünitede bu konuyu anlatacaktım ama şöyle bi yardım konusu açıldığından dolayı bekletmemek için yazılı bi rehber paylaşma kararı aldım.
Yardım - Python Butonu Queste bağlamak?
Başlamadan önce dikkat;
Bu konuda yazılanları anlamak için Metin2 Geliştirici Eğitimi 5. üniteyi ve 4. üniteyi izlemeniz gerekmektedir.
Eğitimlerin konusu: Metin2 Geliştirici Eğitimi Video Serisi
Tuş oluşturmayı filan anlatmayacağım için nasıl oluşturulacağını öğrenmek istiyorsanız bunu izleyin;
Giriş kısmında tüm dediklerimi uyguladıysanız artık bu konuya devam edebilirsiniz. Buton ile questleri tetiklemek için ilk önce tetikleyeceğiniz questten qid değerini almamız gerekiyor.
Örnek;
Bunu yazdıktan sonra root/constInfo.py dosyasına bir sabit oluşturun;
Daha sonra cmdchat komutu ile gelen verileri alabilmek için root/game.py altında düzenleme yapmamız gerekiyor.
Aratın;
Kod içinde diziler olacak. Müsahit bir yere yeni bir tane oluşturun. Örnek;
Daha sonra game.py en alt kısımlara bir yere fonksiyonumuzu tanımlıyoruz.
Bu şekilde oyuna her giriş yaptığınızda tuş ile tetiklemek istediğiniz questin id değerini alabileceksiniz. Farklı yöntemler ile de idler alınır ama geleneksel kullanım bu şekilde. Bundan gerisi artık yapacağınız sisteme göre butonlara event aktarmak.
Anlayabilmeniz için devam edelim...
Artık butona tıkladığınızda quest çalışacak. Bu rehber konusu için basit bi uygulama anlattım. Tuşa tıkladığınız zaman chatte yazı yazacak.
Normalde 5. ünitede bu konuyu anlatacaktım ama şöyle bi yardım konusu açıldığından dolayı bekletmemek için yazılı bi rehber paylaşma kararı aldım.
Yardım - Python Butonu Queste bağlamak?
Başlamadan önce dikkat;
Bu konuda yazılanları anlamak için Metin2 Geliştirici Eğitimi 5. üniteyi ve 4. üniteyi izlemeniz gerekmektedir.
Eğitimlerin konusu: Metin2 Geliştirici Eğitimi Video Serisi
Tuş oluşturmayı filan anlatmayacağım için nasıl oluşturulacağını öğrenmek istiyorsanız bunu izleyin;
Giriş kısmında tüm dediklerimi uyguladıysanız artık bu konuya devam edebilirsiniz. Buton ile questleri tetiklemek için ilk önce tetikleyeceğiniz questten qid değerini almamız gerekiyor.
Örnek;
Lua (Quest):
quest yaziyazdir begin
state start begin
when login begin
cmdchat("yaziyazdir "..q.getcurrentquestindex())
end
when button or info begin
syschat("Bu benim ilk Lua to Python uygulamam. MMO Tutkunları")
end
end
end
Bunu yazdıktan sonra root/constInfo.py dosyasına bir sabit oluşturun;
Python:
MMOTUTKUNLARI_YAZI_YAZDIR = 0
Daha sonra cmdchat komutu ile gelen verileri alabilmek için root/game.py altında düzenleme yapmamız gerekiyor.
Aratın;
Python:
def __ServerCommand_Build(self):
Kod içinde diziler olacak. Müsahit bir yere yeni bir tane oluşturun. Örnek;
Python:
"yaziyazdir" : self.__MMOTutkunlariYaziYazdir,
Daha sonra game.py en alt kısımlara bir yere fonksiyonumuzu tanımlıyoruz.
Python:
def __MMOTutkunlariYaziYazdir(self, qid):
constInfo.MMOTUTKUNLARI_YAZI_YAZDIR = int(qid)
Bu şekilde oyuna her giriş yaptığınızda tuş ile tetiklemek istediğiniz questin id değerini alabileceksiniz. Farklı yöntemler ile de idler alınır ama geleneksel kullanım bu şekilde. Bundan gerisi artık yapacağınız sisteme göre butonlara event aktarmak.
Anlayabilmeniz için devam edelim...
Python:
self.yaziYazdirBtn = self.GetChild("MMOTutkunlariYaziYazdirBtn")
Python:
self.yaziYazdirBtn.SetEvent(ui.__mem_func__(self.MMOTutkunlariYaziYazdir))
Python:
def MMOTutkunlariYaziYazdir(self):
qid = constInfo.MMOTUTKUNLARI_YAZI_YAZDIR
event.QuestButtonClick(qid)
Artık butona tıkladığınızda quest çalışacak. Bu rehber konusu için basit bi uygulama anlattım. Tuşa tıkladığınız zaman chatte yazı yazacak.