comparison mm7_4.cpp @ 1424:5930342f092b

fall to the water
author Ritor1
date Tue, 30 Jul 2013 15:14:46 +0600
parents 9a1adf08f4ed
children dfc9484ed94c
comparison
equal deleted inserted replaced
1423:350959f13283 1424:5930342f092b
1106 //char *v8; // ecx@12 1106 //char *v8; // ecx@12
1107 //Player *pPlayer; // esi@15 1107 //Player *pPlayer; // esi@15
1108 //void *v10; // esi@25 1108 //void *v10; // esi@25
1109 unsigned int v11; // ecx@27 1109 unsigned int v11; // ecx@27
1110 signed int v12; // edi@29 1110 signed int v12; // edi@29
1111 Player *v13; // ecx@30 1111 //Player *v13; // ecx@30
1112 Player *v14; // esi@35 1112 //Player *v14; // esi@35
1113 double v15; // st7@35 1113 //double v15; // st7@35
1114 Player **v16; // esi@43 1114 Player **v16; // esi@43
1115 Player *v17; // edi@44 1115 Player *v17; // edi@44
1116 double v18; // st7@44 1116 double v18; // st7@44
1117 //float v19; // ST28_4@48 1117 //float v19; // ST28_4@48
1118 //double v20; // ST38_8@48 1118 //double v20; // ST38_8@48
1151 int v53; // eax@131 1151 int v53; // eax@131
1152 Player *v54; // eax@141 1152 Player *v54; // eax@141
1153 //unsigned int v55; // [sp-8h] [bp-38h]@18 1153 //unsigned int v55; // [sp-8h] [bp-38h]@18
1154 unsigned int v56; // [sp-8h] [bp-38h]@55 1154 unsigned int v56; // [sp-8h] [bp-38h]@55
1155 //int v57; // [sp-4h] [bp-34h]@18 1155 //int v57; // [sp-4h] [bp-34h]@18
1156 int v58; // [sp-4h] [bp-34h]@33 1156 //int v58; // [sp-4h] [bp-34h]@33
1157 int v59; // [sp-4h] [bp-34h]@55 1157 int v59; // [sp-4h] [bp-34h]@55
1158 //unsigned int v60; // [sp+10h] [bp-20h]@1 1158 //unsigned int v60; // [sp+10h] [bp-20h]@1
1159 unsigned int v61; // [sp+14h] [bp-1Ch]@1 1159 unsigned int v61; // [sp+14h] [bp-1Ch]@1
1160 Player **v62; // [sp+14h] [bp-1Ch]@50 1160 Player **v62; // [sp+14h] [bp-1Ch]@50
1161 //unsigned int a2; // [sp+18h] [bp-18h]@1 1161 //unsigned int a2; // [sp+18h] [bp-18h]@1
1221 for (uint i = 0; i < 4; ++i) 1221 for (uint i = 0; i < 4; ++i)
1222 pParty->pPlayers[i].uNumDivineInterventionCastsThisDay = 0; 1222 pParty->pPlayers[i].uNumDivineInterventionCastsThisDay = 0;
1223 } 1223 }
1224 1224
1225 v11 = LODWORD(pParty->uTimePlayed); 1225 v11 = LODWORD(pParty->uTimePlayed);
1226 if ( pParty->uFlags & 4 && pParty->field_6FC < (signed __int64)pParty->uTimePlayed ) 1226 if ( pParty->uFlags & 4 && pParty->field_6FC < (signed __int64)pParty->uTimePlayed )//water damage error
1227 { 1227 {
1228 v12 = 1; 1228 //v12 = 1;
1229 pParty->field_6FC = LODWORD(pParty->uTimePlayed) + 128; 1229 pParty->field_6FC = LODWORD(pParty->uTimePlayed) + 128;
1230 viewparams->bRedrawGameUI = 1; 1230 viewparams->bRedrawGameUI = 1;
1231 while ( 1 ) 1231 //while ( 1 )
1232 for ( v12 = 1; v12 <= 4; ++v12 )
1232 { 1233 {
1233 if ( pPlayers[v12]->WearsItem(ITEM_RELIC_HARECS_LEATHER, EQUIP_ARMOUR) 1234 if ( pPlayers[v12]->WearsItem(ITEM_RELIC_HARECS_LEATHER, EQUIP_ARMOUR)
1234 || pPlayers[v12]->HasEnchantedItemEquipped(71) 1235 || pPlayers[v12]->HasEnchantedItemEquipped(71)
1235 || pPlayers[v12]->pPlayerBuffs[23].uExpireTime > 0 ) 1236 || pPlayers[v12]->pPlayerBuffs[23].uExpireTime > 0 )
1236 { 1237 {
1237 v58 = 0; 1238 //v58 = 0;
1238 v13->PlayEmotion(CHARACTER_EXPRESSION_37, v58); 1239 pPlayers[v12]->PlayEmotion(CHARACTER_EXPRESSION_37, 0);
1239 } 1240 }
1240 else 1241 else
1241 { 1242 {
1242 v58 = 0; 1243 //v58 = 0;
1243 if ( !sub_43EE77_ProbablyIfUnderwaterSuitIsEquipped(v12) ) 1244 if ( !sub_43EE77_ProbablyIfUnderwaterSuitIsEquipped(v12) )
1244 { 1245 {
1245 v14 = pPlayers[v12]; 1246 //v14 = pPlayers[v12];
1246 v15 = (double)pPlayers[v12]->GetMaxHealth() * 0.1; 1247 //v15 = (double)pPlayers[v12]->GetMaxHealth() * 0.1;
1247 v14->ReceiveDamage((signed __int64)v15, DMGT_FIRE); 1248 pPlayers[v12]->ReceiveDamage((signed __int64)pPlayers[v12]->GetMaxHealth() * 0.1, DMGT_FIRE);
1248 if ( pParty->uFlags & 4 ) 1249 if ( pParty->uFlags & 4 )
1249 { 1250 {
1250 strcpy(GameUI_Footer_TimedString.data(), pGlobalTXT_LocalizationStrings[660]); 1251 strcpy(GameUI_Footer_TimedString.data(), pGlobalTXT_LocalizationStrings[660]);
1251 GameUI_Footer_TimeLeft = 128; 1252 GameUI_Footer_TimeLeft = 128;
1252 } 1253 }
1253 } 1254 }
1254 else 1255 else
1255 { 1256 pPlayers[v12]->PlayEmotion(CHARACTER_EXPRESSION_37, 0);
1256 v13 = pPlayers[v12]; 1257 }
1257 v13->PlayEmotion(CHARACTER_EXPRESSION_37, v58); 1258 //++v12;
1258 } 1259 //if ( v12 > 4 )
1259 } 1260 //{
1260 ++v12; 1261 //v11 = LODWORD(pParty->uTimePlayed);
1261 if ( v12 > 4 ) 1262 //break;
1262 { 1263 }
1263 v11 = LODWORD(pParty->uTimePlayed); 1264 v11 = LODWORD(pParty->uTimePlayed);
1264 break; 1265 //}
1265 }
1266 }
1267 } 1266 }
1268 if ( pParty->uFlags & 0x200 && pParty->field_6FC < (signed __int64)__PAIR__(HIDWORD(pParty->uTimePlayed), v11) ) 1267 if ( pParty->uFlags & 0x200 && pParty->field_6FC < (signed __int64)__PAIR__(HIDWORD(pParty->uTimePlayed), v11) )
1269 { 1268 {
1270 viewparams->bRedrawGameUI = 1; 1269 viewparams->bRedrawGameUI = 1;
1271 pParty->field_6FC = v11 + 128; 1270 pParty->field_6FC = v11 + 128;