Çözüldü Mob Can Sorunu

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ı.

cosion

Üye
Üye
Mesaj
127
Çözümler
12
Beğeni
23
Puan
469
Ticaret Puanı
0
Selam arkadaşlar, mobların canlarını yükseltmek için veri tiplerini değiştirdim. Fakat değiştirdikten sonra
asdd.png

Resimdeki gibi metin canı / 0 görünüyor. Sorun neyden kaynaklanıyor olabilir, bir fikri olan varmı acaba ? Sadece metin değil tüm mobların canlarında bu problemi yaşıyorum. İyi forumlar herkese
 
Son düzenleme:
Çözüm
Biraz dikkatsizliğime gözümün önündeki şeyi görememişim :D

Baktığım fileste ekstra bir değer daha varmış, Py_BuildValue("(iiLLi) o yüzden en sonda fazladan i var, bende Py_BuildValue("(iiLL)", yapınca sorun düzeldi.
uitarget.py içerisinde


Python:
            if app.ENABLE_VIEW_TARGET_DECIMAL_HP:
                iMinHPText = '.'.join([i - 3 < 0 and str(iMinHP)[:i] or str(iMinHP)[i-3:i] for i in range(len(str(iMinHP)) % 3, len(str(iMinHP))+1, 3) if i])
                iMaxHPText = '.'.join([i - 3 < 0 and str(iMaxHP)[:i] or str(iMaxHP)[i-3:i] for i in range(len(str(iMaxHP)) % 3, len(str(iMaxHP))+1, 3) if i])
                self.hpDecimal.SetText(str(iMinHPText) + "/" + str(iMaxHPText))
                (textWidth, textHeight)=self.hpDecimal.GetTextSize()
                if localeInfo.IsARABIC():
                    self.hpDecimal.SetPosition(120 / 2 + textWidth / 2, -13)
                else:
                    self.hpDecimal.SetPosition(130 / 2 - textWidth / 2, -13)

Bu kısımda iMaxHPText değer almıyor sanırım. Client tam olarak buraya nereden değer gönderiliyor, sorun buradan kaynaklı sanırım
 
Client srcde, SetHPTargetBoard kısmında ( bu kod mob hpleri yükseltilmiş bir files)
Kod:
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "SetHPTargetBoard", Py_BuildValue("(iiLLi)", TargetPacket.dwVID, TargetPacket.bHPPercent, TargetPacket.iMinHP, TargetPacket.iMaxHP));
burada Py_BuildValue("(iiLLi)" olarak eklenmiş,

Bu kodda benim SetHPTargetBoard ,


Kod:
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "SetHPTargetBoard", Py_BuildValue("(iiii)", TargetPacket.dwVID, TargetPacket.bHPPercent, TargetPacket.iMinHP, TargetPacket.iMaxHP));

Py_BuildValue("(iiii)" ben bu kısmı yukarıdaki gibi iiLLi yapınca bu syserri alıyorum.


Kod:
1206 22:57:27338 :: TypeError
1206 22:57:27338 :: :
1206 22:57:27338 :: SetHPTargetBoard() takes exactly 5 arguments (6 given)
1206 22:57:27338 ::

SetHPTargetBoard kısmıda bu şekilde,

Kod:
    if app.ENABLE_VIEW_TARGET_DECIMAL_HP:
        def SetHPTargetBoard(self, vid, hpPercentage, iMinHP, iMaxHP):
            if vid != self.targetBoard.GetTargetVID():
                self.targetBoard.ResetTargetBoard()
                self.targetBoard.SetEnemyVID(vid)
            
            self.targetBoard.SetHP(hpPercentage, iMinHP, iMaxHP)
            self.targetBoard.Show()
    else:
        def SetHPTargetBoard(self, vid, hpPercentage):
            if vid != self.targetBoard.GetTargetVID():
                self.targetBoard.ResetTargetBoard()
                self.targetBoard.SetEnemyVID(vid)
            
            self.targetBoard.SetHP(hpPercentage)
            self.targetBoard.Show()

Sorun buralarda bir yerlerde gibi, fikri olan var mı acaba :D
 
Biraz dikkatsizliğime gözümün önündeki şeyi görememişim :D

Baktığım fileste ekstra bir değer daha varmış, Py_BuildValue("(iiLLi) o yüzden en sonda fazladan i var, bende Py_BuildValue("(iiLL)", yapınca sorun düzeldi.
 
Çözüm
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst