donz05 30 #1 Oluşturuldu: Mayıs 4, 2018 arkadaşlar bu skili kullandığım zaman diğer partiden birisi bana atack yapınca kendi partimdeki kişiler damage yiyor bu skilin orjinalinde bana atac yapan kişinin partisindeki kişilere damage gitmesi gerekiyor database ve sourceden biraz kurcaladım skilin çalışmasında bi sorun yok fakat bu damageyi karşı partiye nasıl verdirebiliriz? Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
OzkanOzdemir 1.531 Admin #2 Mayıs 4, 2018 tarihinde gönderildi Kodun nasıl olduğu hakkında bir fikrim yok ama olay şöyle işliyor ona göre senin yazman gerekiyor ben sadece mantığını yazıyorum.Sendeki kodun hali; /* int32 damage; damage hesaplandığı yer; */ if (pAttacker->isinParty()) { if (hasMinaksThorn()) { CParty * pParty = g_pMain->GetParty(GetPartyID()); if (pParty) { for (uint8_t i = 0; i { CPlayer * pPlayer = pParty->members[i]; if (pPlayer == nullptr) continue; pPlayer->HpChange(-(damage)); } } } }Aslında olması gereken hali; /* int32 damage; damage hesaplandığı yer; */ if (pAttacker->isinParty()) { if (hasMinaksThorn()) { CParty * pParty = g_pMain->GetParty(pAttacker->GetPartyID()); if (pParty) { for (uint8_t i = 0; i { CPlayer * pPlayer = pParty->members[i]; if (pPlayer == nullptr) continue; pPlayer->HpChange(-(damage)); } } } } Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
donz05 30 #3 Konu Sahibi Mayıs 4, 2018 tarihinde gönderildi case BUFF_TYPE_MIRROR_DAMAGE_PARTY: // Minak's Thorn pTarget->m_bMirrorDamage = true; pTarget->m_byMirrorAmount = (uint8)pType->sSpecialAmount; break;ben bununla oynadım biraz olmadı :) procces değilde instancede aramam lazım galiba ama bulamadım hocam ya... Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
donz05 30 #4 Konu Sahibi Mayıs 4, 2018 tarihinde gönderildi arkadaslar sorunum devam etmekte bilgisi olan arkadaslarin yardimlarini bekliyoruz... zaten ben cozersemde gerekli aciklamayi yaparim buraya. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
Mafia 3 #5 Mayıs 6, 2018 tarihinde gönderildi Alıntıcase BUFF_TYPE_MIRROR_DAMAGE_PARTY: // Minak's Thorn pTarget->m_bMirrorDamage = true; pTarget->m_byMirrorAmount = (uint8)pType->sSpecialAmount; break; ben bununla oynadım biraz olmadı :) procces değilde instancede aramam lazım galiba ama bulamadım hocam ya... BUFF TYPE burası burda true yapıyor işleme alıyor ::HpChange voidi tahminimce böyle pParty = g_pMain->GetPartyPtr(GetPartyID()); birşey var senin PartyID ni alıyor CParty * pParty = g_pMain->GetParty(pAttacker->GetPartyID()); bu şekilde yaparsan bi problem kalmicaktır attack yapan karşı pt nin id sini alır ve üyelere attack verir zaten % kaç ise yaparsın bu voide geldigin görürsün hepsini nullptr gelince continue dersin bide bi sorun kalmaz Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş