comparison mm7_5.cpp @ 1036:7f8be9f9769e

player recieve damage
author Gloval
date Wed, 22 May 2013 22:25:44 +0400
parents 3a5c8df8381d
children ff2d888f8033
comparison
equal deleted inserted replaced
1034:aa848c90181f 1036:7f8be9f9769e
4756 } 4756 }
4757 if ( SHIDWORD(pMonster->pActorBuffs[20].uExpireTime) >= (signed int)v41 4757 if ( SHIDWORD(pMonster->pActorBuffs[20].uExpireTime) >= (signed int)v41
4758 && (SHIDWORD(pMonster->pActorBuffs[20].uExpireTime) > (signed int)v41 4758 && (SHIDWORD(pMonster->pActorBuffs[20].uExpireTime) > (signed int)v41
4759 || LODWORD(pMonster->pActorBuffs[20].uExpireTime) > v41) 4759 || LODWORD(pMonster->pActorBuffs[20].uExpireTime) > v41)
4760 && uDamageAmount != v41 ) 4760 && uDamageAmount != v41 )
4761 player->ReceiveDamage(uDamageAmount, a2); 4761 player->ReceiveDamage(uDamageAmount, (DAMAGE_TYPE)a2);
4762 v50 = 24; 4762 v50 = 24;
4763 v59 = 20 * v61 / (signed int)pMonster->pMonsterInfo.uHP; 4763 v59 = 20 * v61 / (signed int)pMonster->pMonsterInfo.uHP;
4764 if ( (player->_48EA46_calc_special_bonus_by_items(24) || hit_will_stun != v41) 4764 if ( (player->_48EA46_calc_special_bonus_by_items(24) || hit_will_stun != v41)
4765 && stru_50C198.GetMagicalResistance(pMonster, 3u) ) 4765 && stru_50C198.GetMagicalResistance(pMonster, 3u) )
4766 { 4766 {
5008 v22 = v7->pMonsterInfo.uAttack1Type; 5008 v22 = v7->pMonsterInfo.uAttack1Type;
5009 } 5009 }
5010 LABEL_43: 5010 LABEL_43:
5011 if ( !(dword_6BE368_debug_settings_2 & 0x10) ) 5011 if ( !(dword_6BE368_debug_settings_2 & 0x10) )
5012 { 5012 {
5013 v24 = v6->ReceiveDamage(v77, v22); 5013 v24 = v6->ReceiveDamage(v77, (DAMAGE_TYPE)v22);
5014 if ( SHIDWORD(v6->pPlayerBuffs[10].uExpireTime) >= 0 5014 if ( SHIDWORD(v6->pPlayerBuffs[10].uExpireTime) >= 0
5015 && (SHIDWORD(v6->pPlayerBuffs[10].uExpireTime) > 0 || LODWORD(v6->pPlayerBuffs[10].uExpireTime)) ) 5015 && (SHIDWORD(v6->pPlayerBuffs[10].uExpireTime) > 0 || LODWORD(v6->pPlayerBuffs[10].uExpireTime)) )
5016 { 5016 {
5017 v25 = v7->uAIState; 5017 v25 = v7->uAIState;
5018 if ( v25 != 5 ) 5018 if ( v25 != 5 )
5071 v6->_48DCF6(v7->pMonsterInfo.uSpecialAttack, v7); 5071 v6->_48DCF6(v7->pMonsterInfo.uSpecialAttack, v7);
5072 } 5072 }
5073 if ( !pParty->bTurnBasedModeOn ) 5073 if ( !pParty->bTurnBasedModeOn )
5074 { 5074 {
5075 v35 = v6->GetActualEndurance(); 5075 v35 = v6->GetActualEndurance();
5076 v36 = (double)(20 - v6->_48EA1B_get_static_effect(v35)) * flt_6BE3A4_debug_recmod1 * 2.133333333333333; 5076 v36 = (double)(20 - v6->GetParameterBonus(v35)) * flt_6BE3A4_debug_recmod1 * 2.133333333333333;
5077 v6->SetRecoveryTime((signed __int64)v36); 5077 v6->SetRecoveryTime((signed __int64)v36);
5078 } 5078 }
5079 if ( v77 ) 5079 if ( v77 )
5080 { 5080 {
5081 v73 = (double)(signed int)v75; 5081 v73 = (double)(signed int)v75;
5193 else 5193 else
5194 v50 = 4; 5194 v50 = 4;
5195 LABEL_133: 5195 LABEL_133:
5196 if ( !(dword_6BE368_debug_settings_2 & 0x10) ) 5196 if ( !(dword_6BE368_debug_settings_2 & 0x10) )
5197 { 5197 {
5198 v54 = v45->ReceiveDamage(v77, v50); 5198 v54 = v45->ReceiveDamage(v77, (DAMAGE_TYPE)v50);
5199 if ( SHIDWORD(v45->pPlayerBuffs[10].uExpireTime) >= 0 ) 5199 if ( SHIDWORD(v45->pPlayerBuffs[10].uExpireTime) >= 0 )
5200 { 5200 {
5201 if ( SHIDWORD(v45->pPlayerBuffs[10].uExpireTime) > 0 || LODWORD(v45->pPlayerBuffs[10].uExpireTime) ) 5201 if ( SHIDWORD(v45->pPlayerBuffs[10].uExpireTime) > 0 || LODWORD(v45->pPlayerBuffs[10].uExpireTime) )
5202 { 5202 {
5203 v55 = v44->uAIState; 5203 v55 = v44->uAIState;
5259 && rand() % 100 < v44->pMonsterInfo.uLevel * v44->pMonsterInfo.uSpecialAttackType ) 5259 && rand() % 100 < v44->pMonsterInfo.uLevel * v44->pMonsterInfo.uSpecialAttackType )
5260 v45->_48DCF6(v44->pMonsterInfo.uSpecialAttack, v44); 5260 v45->_48DCF6(v44->pMonsterInfo.uSpecialAttack, v44);
5261 if ( !pParty->bTurnBasedModeOn ) 5261 if ( !pParty->bTurnBasedModeOn )
5262 { 5262 {
5263 v65 = v45->GetActualEndurance(); 5263 v65 = v45->GetActualEndurance();
5264 v66 = (double)(20 - v45->_48EA1B_get_static_effect(v65)) 5264 v66 = (double)(20 - v45->GetParameterBonus(v65))
5265 * flt_6BE3A4_debug_recmod1 5265 * flt_6BE3A4_debug_recmod1
5266 * 2.133333333333333; 5266 * 2.133333333333333;
5267 v45->SetRecoveryTime((signed __int64)v66); 5267 v45->SetRecoveryTime((signed __int64)v66);
5268 } 5268 }
5269 return; 5269 return;
5290 else 5290 else
5291 { 5291 {
5292 v68 = pParty->pPlayers[uActorID].CalculateRangedDamageTo(0); 5292 v68 = pParty->pPlayers[uActorID].CalculateRangedDamageTo(0);
5293 v69 = 0; 5293 v69 = 0;
5294 } 5294 }
5295 a4b->ReceiveDamage(v68, v69); 5295 a4b->ReceiveDamage(v68, (DAMAGE_TYPE)v69);
5296 if ( v38 == OBJECT_Player && !qword_A750D8 ) 5296 if ( v38 == OBJECT_Player && !qword_A750D8 )
5297 { 5297 {
5298 qword_A750D8 = 256i64; 5298 qword_A750D8 = 256i64;
5299 word_A750E0 = 44; 5299 word_A750E0 = 44;
5300 word_A750E2 = uActorID + 1; 5300 word_A750E2 = uActorID + 1;
10764 } 10764 }
10765 if ( v51 == 1 ) 10765 if ( v51 == 1 )
10766 { 10766 {
10767 v0->RemoveItemAtInventoryIndex(v18); 10767 v0->RemoveItemAtInventoryIndex(v18);
10768 v26 = rand(); 10768 v26 = rand();
10769 v0->ReceiveDamage(v26 % 11 + 10, 0); 10769 v0->ReceiveDamage(v26 % 11 + 10, DMGT_FIRE);
10770 pAudioPlayer->PlaySound(SOUND_8, 0, 0, -1, 0, 0, 0, 0); 10770 pAudioPlayer->PlaySound(SOUND_8, 0, 0, -1, 0, 0, 0, 0);
10771 10771
10772 pMessageQueue_50CBD0->AddMessage(UIMSG_Escape, 0, 0); 10772 pMessageQueue_50CBD0->AddMessage(UIMSG_Escape, 0, 0);
10773 10773
10774 v42 = (int *)&a2.y; 10774 v42 = (int *)&a2.y;
10780 { 10780 {
10781 if ( v51 == 2 ) 10781 if ( v51 == 2 )
10782 { 10782 {
10783 v0->RemoveItemAtInventoryIndex(v18); 10783 v0->RemoveItemAtInventoryIndex(v18);
10784 v25 = rand(); 10784 v25 = rand();
10785 v0->ReceiveDamage(v25 % 71 + 30, 0); 10785 v0->ReceiveDamage(v25 % 71 + 30, DMGT_FIRE);
10786 v23 = 1; 10786 v23 = 1;
10787 } 10787 }
10788 else 10788 else
10789 { 10789 {
10790 if ( v51 == 3 ) 10790 if ( v51 == 3 )
10791 { 10791 {
10792 v0->RemoveItemAtInventoryIndex(v18); 10792 v0->RemoveItemAtInventoryIndex(v18);
10793 v24 = rand(); 10793 v24 = rand();
10794 v0->ReceiveDamage(v24 % 201 + 50, 0); 10794 v0->ReceiveDamage(v24 % 201 + 50, DMGT_FIRE);
10795 v23 = 5; 10795 v23 = 5;
10796 } 10796 }
10797 else 10797 else
10798 { 10798 {
10799 if ( v51 != 4 ) 10799 if ( v51 != 4 )