Çözüldü Full Yang Sistemi Ticaret Sonrası Bilgi Yazısı

  • Konuyu açan Konuyu açan IMavi
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 9
  • Gösterim Gösterim 139
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ı.

IMavi

Üye
Üye
Mesaj
38
Çözümler
1
Beğeni
7
Puan
414
Ticaret Puanı
0
Merhabalar,

Full yang sistemi sorunsuz bir şekilde çalışıyor fakat 2 oyuncu ticareti sonrası "xxx yang aldın" kısmında "-.314.131.135 yang aldın." şeklinde geliyor. Burda nereyi kontrol etmeli ve nasıl düzeltmeliyim?

root->game.py

def OnPickMoney(self, money):
chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.GAME_PICK_MONEY % localeInfo.MoneyFormat(money))

localeinfo->locale_game.txt

GAME_PICK_MONEY %s Yang aldın.
 
Çözüm
Client Src->UserInterface->PythonNetworkStreamPhaseGame.cpp:

C++:
Genişlet Daralt Kopyala
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "OnPickMoney", Py_BuildValue("(i)", PointChange.amount));

kısmını,

C++:
Genişlet Daralt Kopyala
PyObject *args = PyTuple_New(1);
PyTuple_SetItem(args, 0, PyLong_FromLongLong(PointChange.amount));
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "OnPickMoney", args);

şeklinde değiştirince düzeldi.

Nasıl atlamışım anlamadım ama destekleriniz için teşekkür ederim.
chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.GAME_PICK_MONEY % (long(money)))
 
Exchange kısımlarında eksik olabilir o zaman.
 
Money değişkenini takip edip client source de eksiğini bulabilirsin. Ya da max yang eksiksiz olduğunu düşündüğün bi dosya ile karşılaştırma yaparak bulabilirsin.
 
uiexchange.py

dlgPickMoney.SetMax(7)
değiştir
dlgPickMoney.SetMax(15)

localeinfo.py
if int(text) <= 0:
değiştir
if long(text) <= 0:

aklıma başka bişey gelmiyor
 
Client Src->UserInterface->PythonNetworkStreamPhaseGame.cpp:

C++:
Genişlet Daralt Kopyala
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "OnPickMoney", Py_BuildValue("(i)", PointChange.amount));

kısmını,

C++:
Genişlet Daralt Kopyala
PyObject *args = PyTuple_New(1);
PyTuple_SetItem(args, 0, PyLong_FromLongLong(PointChange.amount));
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "OnPickMoney", args);

şeklinde değiştirince düzeldi.

Nasıl atlamışım anlamadım ama destekleriniz için teşekkür ederim.
 
Çözüm
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst