Mercurial > mm7
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; |