Çözüldü Uzaktan NPC saçmalığı

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

therasmus

Üye
Üye
Uzaktan npc'den sağ click ile bir şey almak istediğimizde bu şekilde soru soruyor. normal npcde ise sağ clickle alınca direkt envantere geliyor. Anladığım kadarıyla ikisinin çalışma mantığı farklı. Uzaktan npcye item falan da satılmıyor. ama kodlara baktığımda normal npcnin açılışı gibi zaten pek bi kodu da yok. Bu fark nedendir fikri olan var mı?

Linkleri görebilmek için giriş yap veya kayıt ol.
 
Çözüm
Sorun çözüldü. Uzaktan NPC'ler privateshop olarak geçiyor(pazar gibi) uishop.py'de altta atmış olduğum fonksiyonda if fonksiyonuna giriyor. Bu kontrol de soru fonksiyonuna gönderiyor. Uzaktan npclerde satın almak istiyor musun sorusunu kaldırmak için bu kontrolü kaldırabilirsiniz. Fakat kaldırırsanız bu sefer de pazarlardan item alırken soru sormaz. Eğer oyununuzda normal pazar yerine sadece offline shop var ise bu dediğim işlemi uygulayabilirsiniz. Aksi halde tavsiye etmiyorum.

Python:
    def UnselectItemSlot(self, selectedSlotPos):
        if constInfo.GET_ITEM_QUESTION_DIALOG_STATUS() == 1:
            return
        if shop.IsPrivateShop():
            self.AskBuyItem(selectedSlotPos)
        else...
sistemin kodlarında o sorgu yoksa. şöyle bi tavsiyem olabilir. Çoklu item satın alma klavye fonksiyonuyla. bunu yaparsan onun bi tık önüne geçebilirsin. güncel yüksek oyunculu bir server da şu an öyle.
 
Sorun çözüldü. Uzaktan NPC'ler privateshop olarak geçiyor(pazar gibi) uishop.py'de altta atmış olduğum fonksiyonda if fonksiyonuna giriyor. Bu kontrol de soru fonksiyonuna gönderiyor. Uzaktan npclerde satın almak istiyor musun sorusunu kaldırmak için bu kontrolü kaldırabilirsiniz. Fakat kaldırırsanız bu sefer de pazarlardan item alırken soru sormaz. Eğer oyununuzda normal pazar yerine sadece offline shop var ise bu dediğim işlemi uygulayabilirsiniz. Aksi halde tavsiye etmiyorum.

Python:
    def UnselectItemSlot(self, selectedSlotPos):
        if constInfo.GET_ITEM_QUESTION_DIALOG_STATUS() == 1:
            return
        if shop.IsPrivateShop():
            self.AskBuyItem(selectedSlotPos)
        else:
            net.SendShopBuyPacket(self.__GetRealIndex(selectedSlotPos))
 
Çözüm
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri