Mercurial > mm7
diff mm7_5.cpp @ 413:111f25d1cc04
AI_Stand
author | Nomad |
---|---|
date | Sat, 23 Feb 2013 16:39:32 +0200 |
parents | c0700eaabeb8 |
children | d8b3056df4e2 |
line wrap: on
line diff
--- a/mm7_5.cpp Sat Feb 23 16:02:04 2013 +0200 +++ b/mm7_5.cpp Sat Feb 23 16:39:32 2013 +0200 @@ -10104,7 +10104,7 @@ } v21 = 64; LABEL_26: - Actor::_403EB6(v15, v16, v21, v23); + Actor::AI_Stand(v15, v16, v21, v23); return; } LABEL_21: @@ -10300,7 +10300,7 @@ goto LABEL_48; } LABEL_47: - Actor::_403EB6(v13, v22, 0x40u, &v18); + Actor::AI_Stand(v13, v22, 0x40u, &v18); v3 = v21; v21->field_C = 0; goto LABEL_48; @@ -10343,7 +10343,7 @@ v8 = dword_4F6E08[v5 >> 3]; memcpy(&v7, Actor::GetDirectionInfo(v5, v8, &a3, v2), sizeof(v7)); if ( !v1->_406D10(a2) ) - Actor::_403EB6(v10->uPackedID >> 3, v8, 0x20u, &v7); + Actor::AI_Stand(v10->uPackedID >> 3, v8, 0x20u, &v7); } ++a2; ++v10; @@ -10386,7 +10386,7 @@ v4 = v2->uPackedID; v9 = dword_4F6E08[v3]; memcpy(&v6, Actor::GetDirectionInfo(v4, v9, &a3, 0), sizeof(v6)); - Actor::_403EB6(v8, v9, 0x20u, &v6); + Actor::AI_Stand(v8, v9, 0x20u, &v6); v2->field_C = 0; v2->uActionLength = 0; v1 = v7; @@ -10467,7 +10467,7 @@ } if ( !thisa->_406D10(a2) ) LABEL_26: - Actor::_403EB6(v12, v13, 0x20u, &v9); + Actor::AI_Stand(v12, v13, 0x20u, &v9); } } } @@ -10609,7 +10609,7 @@ v21 = 32; if ( v4->pMonsterInfo.uMovementType == 5 ) { - Actor::_403EB6(uActorID, a2a, 0x20u, 0); + Actor::AI_Stand(uActorID, a2a, 0x20u, 0); goto LABEL_25; } LABEL_24: @@ -10668,7 +10668,7 @@ } if ( v4->pMonsterInfo.uMovementType == 5 ) { - Actor::_403EB6(uActorID, a2a, 0x20u, 0); + Actor::AI_Stand(uActorID, a2a, 0x20u, 0); LABEL_53: v17 = v29; v29->field_C = 2; @@ -10742,7 +10742,7 @@ return; } if ( rand() % 2 ) - Actor::_403EB6(uActorID, a2, 0x40u, &a4); + Actor::AI_Stand(uActorID, a2, 0x40u, &a4); else Actor::_402F87(uActorID, a2, &a4); } @@ -12098,6 +12098,8 @@ v7 = 1; if (_449B57_test_bit(pParty->_award_bits, 100)) v5 = 1; + + Log::Warning(L"%S %S %u", __FILE__, __FUNCTION__, __LINE__); // dword_4F6E08[i] for AI_Stand seems always 0; original code behaviour is identical for (uint i = 0; i < uNumActors; ++i) { auto actor = pActors + i; @@ -12109,7 +12111,9 @@ actor->vPosition.z = actor->vInitialPosition.z; actor->sCurrentHP = actor->pMonsterInfo.uHP; if (actor->uAIState != Disabled) - Actor::_403EB6(i, dword_4F6E08[i], actor->pMonsterInfo.uRecoveryTime, 0); + { + Actor::AI_Stand(i, dword_4F6E08[i], actor->pMonsterInfo.uRecoveryTime, 0); + } } actor->pMonsterInfo.uHostilityType = MonsterInfo::Hostility_Friendly;