Mercurial > mm7
diff mm7_3.cpp @ 1035:306ec23b37df
004C1EE5 & other stuff
author | Nomad |
---|---|
date | Wed, 22 May 2013 14:12:51 +0200 |
parents | 3a5c8df8381d |
children | ff2d888f8033 |
line wrap: on
line diff
--- a/mm7_3.cpp Tue May 21 23:45:26 2013 +0200 +++ b/mm7_3.cpp Wed May 22 14:12:51 2013 +0200 @@ -13756,13 +13756,8 @@ _5B65A8_npcdata_uflags_or_other = 0; } } -// 5B65A8: using guessed type int _5B65A8_npcdata_uflags_or_other; -// 5B65AC: using guessed type int _5B65AC_npcdata_fame_or_other; -// 5B65B0: using guessed type int _5B65B0_npcdata_rep_or_other; -// 5B65B4: using guessed type int _5B65B4_npcdata_loword_house_or_other; -// 5B65B8: using guessed type int _5B65B8_npcdata_hiword_house_or_other; -// 5B65BC: using guessed type int dword_5B65BC; -// 5B65C0: using guessed type int dword_5B65C0; + + //----- (00449A49) -------------------------------------------------------- __int16 __fastcall sub_449A49_door_switch_animation(unsigned int uDoorID, int a2) @@ -13859,7 +13854,7 @@ //----- (00449B57) -------------------------------------------------------- bool _449B57_test_bit( unsigned __int8 *a1, __int16 a2 ) - { +{ return a1[(a2 - 1) >> 3] & (0x80u >> (a2 - 1) % 8); } @@ -13877,23 +13872,6 @@ pArray[v3 / 8] &= ~set_bit; } -//----- (0044A56A) -------------------------------------------------------- -void __cdecl Party__CountHirelings() -{ - pParty->field_70A = 0; - - for (int i = 0; i < pNPCStats->uNumNewNPCs; ++i) - { - auto npc = pNPCStats->pNewNPCData + i; - if (npc->Hired() && - (!pParty->pHirelings[0].pName || strcmp(npc->pName, pParty->pHirelings[0].pName))) - { - if (!pParty->pHirelings[1].pName || strcmp(npc->pName, pParty->pHirelings[1].pName)) - ++pParty->field_70A; - } - } -} - //----- (0044C175) -------------------------------------------------------- void __fastcall ShowStatusBarString(const char *pString, unsigned int uNumSeconds) { @@ -13910,7 +13888,7 @@ } //----- (0044C1D0) -------------------------------------------------------- -void __cdecl ShowNothingHereStatus() +void ShowNothingHereStatus() { if ( !GameUI_Footer_TimeLeft ) ShowStatusBarString(pGlobalTXT_LocalizationStrings[521], 2u);// Nothing here @@ -13948,20 +13926,27 @@ //----- (0044C2F4) -------------------------------------------------------- int LevelDecoration::IsInteractive() { - signed int v1; // eax@1 - - v1 = this->uDecorationDescID; - if ( v1 > 34 ) - { - if ( v1 == 184 || v1 == 187 || v1 == 190 || v1 > 205 && v1 <= 221 ) - return 1; - } - else - { - if ( v1 == 34 || v1 >= 4 && (v1 <= 6 || v1 == 11 || v1 > 12 && (v1 <= 14 || v1 == 24)) ) - return 1; - } - return 0; + switch (uDecorationDescID) + { + case 4: // trash pile + case 5: // campfire + case 6: // cauldron + case 11: // fruit plate + case 13: // trash pile + case 14: // dirt + case 24: // keg + case 184: // fire + case 187: // fire + case 190: // fire + return true; + } + + if (uDecorationDescID >= 206 && uDecorationDescID <= 209) // lighthouse fire + return true; + if (uDecorationDescID >= 210 && uDecorationDescID <= 221) // magic pedistal + return true; + + return false; } //----- (0044C362) -------------------------------------------------------- @@ -13982,6 +13967,7 @@ float v13; // ST14_4@1 double v14; // ST0C_8@1 + assert(false); //v1 = this; v2 = (double)this->x * 0.000015258789; v3 = v2;