RAMBO 13 #1 Oluşturuldu: Ekim 24, 2017 Merhaba arkadaşlar, Bu işi öğrenme ve geliştirme aşamasındayım. Şu anda yapmak istediğim şey NPC üzerinden KC kırdırdığım da "Information" kısmında x kc voucher.... gibisine yazı yazdırmak istiyorum. @ PENTAGRAM 'dan aldığım bilgiye göre exe üzerinden yapılması gerekiyormuş. Bu konuda yardımcı olabilecek arkadaşlar varsa yorumlarını bekliyorum. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
OzkanOzdemir 1.531 Admin #2 Ekim 24, 2017 tarihinde gönderildi Information bölümünden yazdırmak yerine chat üzerinden yada PM üzerinden yazdırmış olsan daha mantıklı olmaz mı sence? Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
RAMBO 13 #3 Konu Sahibi Ekim 24, 2017 tarihinde gönderildi AlıntıInformation bölümünden yazdırmak yerine chat üzerinden yada PM üzerinden yazdırmış olsan daha mantıklı olmaz mı sence? Sizin söylediğiniz de tabi ki de çok mantıklı. Tabi ki chat ekranında yazdırmakta işimi görür ancak nasıl yapacağım konusunda fikrim yok. Exe düzenleme işine hiç bulaşmadım. Yeni öğrenmeye çalışıyorum. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
OzkanOzdemir 1.531 Admin #4 Ekim 24, 2017 tarihinde gönderildi AlıntıSizin söylediğiniz de tabi ki de çok mantıklı. Tabi ki chat ekranında yazdırmakta işimi görür ancak nasıl yapacağım konusunda fikrim yok. Exe düzenleme işine hiç bulaşmadım. Yeni öğrenmeye çalışıyorum. Chat ekranına yazdıracaksın serverdan paket atacaksın KC kırdıran karaktere bu kadar basit. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
EveryBodyFool 198 #5 Ekim 24, 2017 tarihinde gönderildi Kafanda o kısımın paketi gibi bir şey var sanıyorsan, malesef bu tarz bir packet exede ekli değil. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
YigitHanSen 50 #6 Ekim 24, 2017 tarihinde gönderildi kanka çok güzel bir konuya değinmişsin kesinlikle pm olarak gelmesi daha güzel olur ama nasıl yapacağın hakkında bilgi sahibi değilim exe ile uğraşacaktım sen önce kodlamala dillerinden bir kaç tanesini öğren dedin neyse :D başarılar değerli insan güzel kardeşim Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
RAMBO 13 #7 Konu Sahibi Ekim 24, 2017 tarihinde gönderildi AlıntıKafanda o kısımın paketi gibi bir şey var sanıyorsan, malesef bu tarz bir packet exede ekli değil. Cevabın için teşekkür ederim. Alıntıkanka çok güzel bir konuya değinmişsin kesinlikle pm olarak gelmesi daha güzel olur ama nasıl yapacağın hakkında bilgi sahibi değilim exe ile uğraşacaktım sen önce kodlamala dillerinden bir kaç tanesini öğren dedin neyse :D başarılar değerli insan güzel kardeşim PM olarak denemedim ama onu da denerim. Şimdilik chat ekranına yazdırarak işimi hallettim. @ OzkanOzdemir 'in server taraflı paket göndereceksin demesi üzerine server taraflı bir inceleme yaptım ve deneme yanılma yöntemi ile istediğimi yaptım. Server taraflı bu işi yaptırıp chat ekranına yazdırmak isteyenler için kodları aşağıda paylaştım. Kodlamada hata yada fazlalık olduğunu düşünen arkadaş olursa yorum yazarsa sevinirim. Herkesin ilgi ve alakası için teşekkür ederim. Source içerisinde GameServer > User.cpp dosyası içerisinde "SendKnightCash" metodunu değiştirdim. Eski hali; if (nCashPoint == 0) return; g_DBAgent.UpdateAccountKnightCash(GetAccountName(), nCashPoint); Düzenlenmiş hali; std::string cashMiktari = std::to_string(nCashPoint); if (nCashPoint == 0) return; g_DBAgent.UpdateAccountKnightCash(GetAccountName(), nCashPoint); std::string MessageKC; MessageKC = string_format("Hesabınıza %s Knight Cash eklendi.", cashMiktari.c_str()); Packet SendMessageKC(WIZ_CHAT, uint8(PUBLIC_CHAT)); SendMessageKCSend(&SendMessageKC); Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
HTuzen 55 #8 Ekim 26, 2017 tarihinde gönderildi g_pMain->SendHelpDestruction tam adını hatırlayamadım bu şekilde bi fonksiyon var 2 parametreli 1. si user pointerı 2. si mesaj onu kullanırsan hantallıktan kurtulursun fonksiyonunda gereksiz kod bloğu olmaz gökhan 1 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
RAMBO 13 #9 Konu Sahibi Ekim 26, 2017 tarihinde gönderildi Alıntıg_pMain->SendHelpDestruction tam adını hatırlayamadım bu şekilde bi fonksiyon var 2 parametreli 1. si user pointerı 2. si mesaj onu kullanırsan hantallıktan kurtulursun fonksiyonunda gereksiz kod bloğu olmaz gökhan Bu kodlardan sonra daha temiz bir kod yapısına @ PENTAGRAM sayesinde ulaştım. Kendisine paylaşıp paylaşmamayı sorduğumda paylaşabileceğimi beyan ettirdikten sonra sizinle de paylaşmış olayım. Öncelikle GameServer > user.cpp içerisinde SendChat isminde bir metot tanımladım. void CUser::SendChat(std::string message, std::string sender, ChatType type) { Packet result; ChatPacket::Construct(&result, type, message.c_str(), sender.empty() ? NULL : sender.c_str(), GetNation()); Send(&result); } Daha sonrasında bu metodun çalışması için GameServer > user.h içerisinde tanımlama işlemi gerçekleştirdim. void SendChat(std::string strMessage, std::string strSender, ChatType type); Ve son olarak bu metodu GameServer > user.cpp içerisinde daha önce oluşturulmuş olan SendKnightCash metodu içerisinde çalıştırdım. std::string Message = string_format("Hesabınıza %s Knight Cash eklendi.", cashMiktari.c_str()); SendChat(Message, NULL, PUBLIC_CHAT); -- Chat ekranına mesaj gönderme SendChat(Message, "[KC Exchange]", PRIVATE_CHAT); -- Özel mesaj ile mesaj gönderme Bu kodlar daha stabil çalışmaktadır. Umarım ihtiyacı olan diğer arkadaşlarla da bir yardımcı olur. İlgi ve alakası için @ PENTAGRAM 'a tekrar teşekkür ederim. 2 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş