donz05 30 #1 Oluşturuldu: Nisan 17, 2019 case 3: //if (pTarget->isPlayer() && CheckPercent(700)) MSpChange(-m_iMaxMp); /*{ TO_USER(pTarget)->MSpChange( -damage * 1000); }*/ break; short m_sMaxMP; /*ExpChange((m_iLostExp * pType->bExpRecover) / 100);*/ /*MSpChange((int)(((m_iMaxMp * 5) / ((GetLevel() - 1) + 30)) + 3) * mpPercent / 100);*/ //if (pTarget->isPlayer() && CheckPercent(700)) // //{ // TO_USER(pTarget)->ItemWoreOut(ATTACK * 10000); // TO_USER(pTarget)->ItemWoreOut(DEFENCE, -damage * 10000); //} //break; arkadaşlar sadece case3 e bi skill atamak istiyorum öyle ki type_3 teki first damage satırını % de olarak görsün ve oraya 50 yazdığım zaman karakterin toplam mp sini %50 olarak düşürsün. m_iMaxMp şunu buldum ama magicinstance ye ekleyemedim orjinal hali budur fakat bu şekilde 50 yazarsam 50 mp arttırıyor -50 yazıncada 50 mp düşürüyor case 3: pTarget->MSpChange(damage); break; biraz karışık oldu ama umarım anlatabimişimdir Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
OzkanOzdemir 1.560 Admin #2 Nisan 17, 2019 tarihinde gönderildi Yüzde hesaplaması yapmak istiyorsun sanırım onun için yüzde kaçını almak istiyorsan değeri onunla çarpacaksın daha sonra yüze böleceksin. Aşağıya bir tane örnek bırakıyorum onun üzerinden yapabilirsin.int nDeger = 750000;int nSonuc = (nDeğer * 50) / 100;750000 değerinin %50 oranını almak istiyoruz ve bunun için 750000 değerini 50 ile çarpıyoruz. 37500000 sonucunu elde ediyoruz bunu da 100 ile böldüğümüz zaman gerçek sonuç olan 375000 değerine ulaşmış oluyoruz. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
donz05 30 #3 Konu Sahibi Nisan 17, 2019 tarihinde gönderildi AlıntıYüzde hesaplaması yapmak istiyorsun sanırım onun için yüzde kaçını almak istiyorsan değeri onunla çarpacaksın daha sonra yüze böleceksin. Aşağıya bir tane örnek bırakıyorum onun üzerinden yapabilirsin. int nDeger = 750000; int nSonuc = (nDeğer * 50) / 100; 750000 değerinin %50 oranını almak istiyoruz ve bunun için 750000 değerini 50 ile çarpıyoruz. 37500000 sonucunu elde ediyoruz bunu da 100 ile böldüğümüz zaman gerçek sonuç olan 375000 değerine ulaşmış oluyoruz. hocam yanıt için teşekkürler ben mantığı anladım fakat bunu dile getiremedim source de sıkıntım o şöyle diyim orjinal satırı pTarget->MSpChange(damage); bu bende buna pTarget->MSpChange(damage); % / m_iMaxMp gibi kod düşündüm fakat mantığını yazamadım yanlış anlasılmasın hazırcı olmadığımı herkez bilir fakat olmadımı olmuyor takıldım burda bi örneğini aldım size fikir olsun diye ama aynısını yapamadım //if (pTarget->isPlayer() && CheckPercent(700)) // //{ // TO_USER(pTarget)->ItemWoreOut(ATTACK * 10000); // TO_USER(pTarget)->ItemWoreOut(DEFENCE, * 10000); //} burda atak yapınca itemin durability sini düşürüyor fakat % olarak 700 %70 oluyor 500 yaparsam %50 bunu pTarget->MSpChange(damage); buna uyarlama imkanın varmı hocam teşekkürlear... Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
OzkanOzdemir 1.560 Admin #4 Nisan 17, 2019 tarihinde gönderildi Alıntıhocam yanıt için teşekkürler ben mantığı anladım fakat bunu dile getiremedim source de sıkıntım o şöyle diyim orjinal satırı pTarget->MSpChange(damage); bu bende buna pTarget->MSpChange(damage); % / m_iMaxMp gibi kod düşündüm fakat mantığını yazamadım yanlış anlasılmasın hazırcı olmadığımı herkez bilir fakat olmadımı olmuyor takıldım burda bi örneğini aldım size fikir olsun diye ama aynısını yapamadım //if (pTarget->isPlayer() && CheckPercent(700)) // //{ // TO_USER(pTarget)->ItemWoreOut(ATTACK * 10000); // TO_USER(pTarget)->ItemWoreOut(DEFENCE, * 10000); //} burda atak yapınca itemin durability sini düşürüyor fakat % olarak 700 %70 oluyor 500 yaparsam %50 bunu pTarget->MSpChange(damage); buna uyarlama imkanın varmı hocam teşekkürlear... signed int nDamage = (damage * 50) / 100; pTarget->MSpChange(nDamage); 1 Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
donz05 30 #5 Konu Sahibi Nisan 17, 2019 tarihinde gönderildi Alıntı signed int nDamage = (damage * 50) / 100; pTarget->MSpChange(nDamage); ilgi ve alakan için çok teşekkür ederim hocam eline sağlık Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş