Çözüldü BLEND_POTION_NO_TIME Hatası.

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.

Ru4

Üye
Mesaj
19
Beğeni
5
Puan
43
NPC'de şebnem satmak istediğim zaman şebnemler bu şekilde görüntüleniyor, Seviye harici bir şey yazmasını istemiyorum.
Biraz araştırdım ancak bununla ilgili kaynak bulamadım, yardımcı olabilir misiniz?

Ekran Alıntısı.PNG
 
Çözüm
Python:
#         item.ITEM_TYPE_BLEND
#        elif item.ITEM_TYPE_BLEND == itemType:
#            self.__AppendLimitInformation()
#
#            if metinSlot:
#                affectType = metinSlot[0]
#                affectValue = metinSlot[1]
#                time = metinSlot[2]
#                if affectType > 0 or affectValue > 0:
#                    self.AppendSpace(5)
#                affectText = self.__GetAffectString(affectType, affectValue)
#
#                self.AppendTextLine(affectText, self.NORMAL_COLOR)

#                if time > 0:
#                    minute = (time / 60)
#                    second = (time % 60)
#                    timeString = localeInfo.TOOLTIP_POTION_TIME

#                    if minute > 0:
#...

Esterametin2

Aktif Üye
Mesaj
70
Beğeni
9
Puan
411
uitooltip.py:
uitooltip.py
Arat: BLEND_POTION_NO_TIME
                else:
                    self.AppendTextLine(localeInfo.BLEND_POTION_NO_TIME)
            else:
                self.AppendTextLine("BLEND_POTION_NO_INFO")

Değiştir:

#        else:
        #            self.AppendTextLine(localeInfo.BLEND_POTION_NO_TIME)
        #    else:
        #        self.AppendTextLine("BLEND_POTION_NO_INFO")
 

Ru4

Üye
Mesaj
19
Beğeni
5
Puan
43
uitooltip.py:
uitooltip.py
Arat: BLEND_POTION_NO_TIME
                else:
                    self.AppendTextLine(localeInfo.BLEND_POTION_NO_TIME)
            else:
                self.AppendTextLine("BLEND_POTION_NO_INFO")

Değiştir:

#        else:
        #            self.AppendTextLine(localeInfo.BLEND_POTION_NO_TIME)
        #    else:
        #        self.AppendTextLine("BLEND_POTION_NO_INFO")
Öncelikle teşekkür ederim, daha önce denemiştim bu yolu ancak bu gereksiz boşluk kaldığı için sanırım farklı şekilde kaldırılması gerekiyor diyerek eski haline çevirmiştim. Şu an bu işlemi gerçekleştirdiğimde bu şekilde bir boşluk kalıyor, bunu nasıl düzeltebilirim?
 

Dosya Eklentileri

  • resim_2021-10-17_113529.png
    resim_2021-10-17_113529.png
    17,3 KB · Gösterim: 13

Esterametin2

Aktif Üye
Mesaj
70
Beğeni
9
Puan
411
Öncelikle teşekkür ederim, daha önce denemiştim bu yolu ancak bu gereksiz boşluk kaldığı için sanırım farklı şekilde kaldırılması gerekiyor diyerek eski haline çevirmiştim. Şu an bu işlemi gerçekleştirdiğimde bu şekilde bir boşluk kalıyor, bunu nasıl düzeltebilirim?
Boşluk kalsın. Bir zararı olmaz sana
self.AppendSpace(5)
komutu yüzünden kalıyor boşluk. Bunu kendi şebnem sistemine göre düzenleyebilirsin.
 

Yeniceri

Jamais vu
Mesaj
2.277
Beğeni
1.927
Puan
1.319
Şebnemlerin özellikleri var mı ? Ve sağlam mı? Eğer yoksa doğal olarak else kısmı çalışıyor ve bu yüzden öyle bir yazı yazıyor.
Eğer şebnemlerin özellikleri doğru olursa o yazı yerine özellikleri yazacaktır.
 

Ru4

Üye
Mesaj
19
Beğeni
5
Puan
43
Şebnemlerin özellikleri var mı ? Ve sağlam mı? Eğer yoksa doğal olarak else kısmı çalışıyor ve bu yüzden öyle bir yazı yazıyor.
Eğer şebnemlerin özellikleri doğru olursa o yazı yerine özellikleri yazacaktır.
Blend.txt üzerinden şebnem oranlarını sabitledim, yani 5 alternatif oranı da aynı yaptım. Şebnemlerde bir sorun yok ancak sistem hala alternatifli olarak gördüğü için dükkanda satıldığı zaman gelecek oran belli olmadığından dolayı o boşluğa BLEND_POTION_NO_TIME eklemiş, arkadaşın tavsiyesi ile kod bloğuna # ekledim ve kaldırdım ancak arada 5-6 blok bir boşluk kaldı, şebnem kodlarını kontrol etsemde self.AppendSpace(5) veya benzeri bir boşluk atması gerektiren kod göremedim, özelden py paylaşsam yardımcı olabilir misin?
 

Yeniceri

Jamais vu
Mesaj
2.277
Beğeni
1.927
Puan
1.319
Blend.txt üzerinden şebnem oranlarını sabitledim, yani 5 alternatif oranı da aynı yaptım. Şebnemlerde bir sorun yok ancak sistem hala alternatifli olarak gördüğü için dükkanda satıldığı zaman gelecek oran belli olmadığından dolayı o boşluğa BLEND_POTION_NO_TIME eklemiş, arkadaşın tavsiyesi ile kod bloğuna # ekledim ve kaldırdım ancak arada 5-6 blok bir boşluk kaldı, şebnem kodlarını kontrol etsemde self.AppendSpace(5) veya benzeri bir boşluk atması gerektiren kod göremedim, özelden py paylaşsam yardımcı olabilir misin?
# eklediğin yerin üst satırlara baktığında self.AppendSpace(5) göreceksin.

O satırı şu şekilde değiştirebilirsin:
Python:
if affectType > 0 or affectValue > 0:
    self.AppendSpace(5)

Python:
else:
    self.AppendTextLine("BLEND_POTION_NO_INFO")

Burayı da şöyle değiştirmeyi dene.
Python:
else:
    return
    #self.AppendTextLine("BLEND_POTION_NO_INFO")

Yada komple return vermek yerine belirli itemler için return verebilirsin. Bu senin tercihine kalmış. Şöyle mesela:
Python:
else:
    if SEBNEM_KODU == itemVnum or SEBNEM2_KODU == itemVnum:
        return
    self.AppendTextLine("BLEND_POTION_NO_INFO")

Bu şekilde yaptığında da belirlediğin vnumlarda BLEND_POTION_NO_INFO yazısı görünmeyecektir. Ancak belirlediklerinin dışında (gerektiğinde) yine görünmeye devam edecektir.
 

Ru4

Üye
Mesaj
19
Beğeni
5
Puan
43
Python:
#         item.ITEM_TYPE_BLEND
#        elif item.ITEM_TYPE_BLEND == itemType:
#            self.__AppendLimitInformation()
#
#            if metinSlot:
#                affectType = metinSlot[0]
#                affectValue = metinSlot[1]
#                time = metinSlot[2]
#                if affectType > 0 or affectValue > 0:
#                    self.AppendSpace(5)
#                affectText = self.__GetAffectString(affectType, affectValue)
#
#                self.AppendTextLine(affectText, self.NORMAL_COLOR)

#                if time > 0:
#                    minute = (time / 60)
#                    second = (time % 60)
#                    timeString = localeInfo.TOOLTIP_POTION_TIME

#                    if minute > 0:
#                        timeString += str(minute) + localeInfo.TOOLTIP_POTION_MIN
#                    if second > 0:
#                        timeString += " " + str(second) + localeInfo.TOOLTIP_POTION_SEC

#                    self.AppendTextLine(timeString)
#                else:
#                    self.AppendTextLine(localeInfo.BLEND_POTION_NO_TIME)
#            else:
#                self.AppendTextLine("BLEND_POTION_NO_INFO")

Tüm kod bloğunu olduğu gibi geçersiz kıldım, şebnem süresiz olduğu için süre bilgisine gerek duymadım. Oranları da itemdesc üzerinden şebnem açıklamasına ekledim, o boşlukta gitmiş oldu. Yardımlarınız için yine de teşekkür ederim.
 
Son düzenleme:
Çözüm

Üst