Merhaba arkadaşlar, bugün cncn_m2 projesini paylaştığımdan beri sürekli olarak "Bu yazıları nasıl kapatıyoruz" şeklinde mesajlar alıyordum. Hızlı şekilde cevap veriyordum, konu olarak açmak daha iyi olacağını düşündüm. Yazılardan kastımızı aşağıdaki resimden anlayabilirsiniz.
Birçok kişinin yaptığı hata bu kısmı kapatmak için python scripti üzerinde düzenleme yapmak. Önce bana göre hatalı olan yöntemden bahsedeyim.
[CODE lang="python" title="root/game.py dosyasını açıp, aşağıdaki kodu buluyoruz."] if self.isShowDebugInfo:
self.UpdateDebugInfo()[/CODE]
[CODE lang="python" title="Yorum satırı haline getiriyoruz ya da siliyoruz."] # if self.isShowDebugInfo:
# self.UpdateDebugInfo()[/CODE]
Peki düzgün şekilde nasıl yapacağız. Userinterface.cpp dosyasında debug parametresini düzenleyeceğiz. Kendi projemden örnek vereceğim.
Orjinal mainline kodlarında bu şekilde, Anlamı _DISTRIBUTE olarak derleniyorsa 0 aksi taktirde 1. Bende cncn_m2 projesini release olarak derlediğimden burası 1 oluyor ve bu sebeple client içinde debug bilgileri gözüküyor. Aşağıdaki gibi yaparak üstünkörü bir çözüm elde edebiliriz.
Elbette bu geçici bir çözüm. Şu şekilde düzenlersek daha iyi olur.
Burada şu şekilde ayarlamış oluyoruz. Debug olarak derleniyorsa 1 aksi taktirde 0.
Turkmmo SF'ye baktığımızda aşağıdaki gibi bir yapı görüyoruz.
Burada zaten bu kısımdaki mantık hatası düzeltilmiş, debug modu dışında derlendiğinde 0, debug olarak derlendiğinde 1 oluyor. Yani değişiklik yapmaya gerek yok. NDEBUG not debug anlamına yani debug değil, anlamına gelmekte biraz daha ileri ve doğru bir kullanım. Sadece örnek olması açısından ekledim.
Ve pufff, yazılar gitti.
Bir sonraki öğretici konuda görüşmek üzere... Saygılar, sevgiler...
Birçok kişinin yaptığı hata bu kısmı kapatmak için python scripti üzerinde düzenleme yapmak. Önce bana göre hatalı olan yöntemden bahsedeyim.
[CODE lang="python" title="root/game.py dosyasını açıp, aşağıdaki kodu buluyoruz."] if self.isShowDebugInfo:
self.UpdateDebugInfo()[/CODE]
[CODE lang="python" title="Yorum satırı haline getiriyoruz ya da siliyoruz."] # if self.isShowDebugInfo:
# self.UpdateDebugInfo()[/CODE]
Peki düzgün şekilde nasıl yapacağız. Userinterface.cpp dosyasında debug parametresini düzenleyeceğiz. Kendi projemden örnek vereceğim.
C++:
#ifdef _DISTRIBUTE
stRegisterDebugFlag ="__DEBUG__ = 0";
#else
stRegisterDebugFlag ="__DEBUG__ = 1";
#endif
Orjinal mainline kodlarında bu şekilde, Anlamı _DISTRIBUTE olarak derleniyorsa 0 aksi taktirde 1. Bende cncn_m2 projesini release olarak derlediğimden burası 1 oluyor ve bu sebeple client içinde debug bilgileri gözüküyor. Aşağıdaki gibi yaparak üstünkörü bir çözüm elde edebiliriz.
C++:
#ifdef _DISTRIBUTE
stRegisterDebugFlag ="__DEBUG__ = 0";
#else
stRegisterDebugFlag ="__DEBUG__ = 0";
#endif
Elbette bu geçici bir çözüm. Şu şekilde düzenlersek daha iyi olur.
C++:
#ifdef _DEBUG
stRegisterDebugFlag ="__DEBUG__ = 1";
#else
stRegisterDebugFlag ="__DEBUG__ = 0";
#endif
Burada şu şekilde ayarlamış oluyoruz. Debug olarak derleniyorsa 1 aksi taktirde 0.
Turkmmo SF'ye baktığımızda aşağıdaki gibi bir yapı görüyoruz.
C++:
#ifdef NDEBUG // @warme601 _DISTRIBUTE -> NDEBUG
PyModule_AddIntConstant(builtins, "__DEBUG__", 0);
#else
PyModule_AddIntConstant(builtins, "__DEBUG__", 1);
#endif
Burada zaten bu kısımdaki mantık hatası düzeltilmiş, debug modu dışında derlendiğinde 0, debug olarak derlendiğinde 1 oluyor. Yani değişiklik yapmaya gerek yok. NDEBUG not debug anlamına yani debug değil, anlamına gelmekte biraz daha ileri ve doğru bir kullanım. Sadece örnek olması açısından ekledim.
Ve pufff, yazılar gitti.
Bir sonraki öğretici konuda görüşmek üzere... Saygılar, sevgiler...
Teşekkürler .
Bundan farkı nedir acaba?
https://forum.turkmmo.com/konu/3784483-minimap-uzeri-koordinat-kaldirma/
Bundan farkı nedir acaba?
https://forum.turkmmo.com/konu/3784483-minimap-uzeri-koordinat-kaldirma/
Teşekkürler .
Bundan farkı nedir acaba?
https://forum.turkmmo.com/konu/3784483-minimap-uzeri-koordinat-kaldirma/
Bir farkı yok gibi sadece açıkladım. Forumda olduğunu bilmiyordum. Karar mercii sizsiniz.
- Durum
- Üzgünüz bu konu cevaplar için kapatılmıştır...
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 11
- Görüntüleme
- 499
- Cevaplar
- 9
- Görüntüleme
- 674
- Cevaplar
- 2
- Görüntüleme
- 171
- Cevaplar
- 49
- Görüntüleme
- 1K