# HG changeset patch # User Ritor1 # Date 1360666465 -21600 # Node ID 86a2637ba12549f381cefe6686614ef29814772a # Parent 796b79187c2786e6ce09ec842f722fffef30edcb UpdateActors diff -r 796b79187c27 -r 86a2637ba125 AudioPlayer.cpp --- a/AudioPlayer.cpp Tue Feb 12 15:28:36 2013 +0600 +++ b/AudioPlayer.cpp Tue Feb 12 16:54:25 2013 +0600 @@ -90,7 +90,7 @@ do { sprintf(pSoundName, "%s", pSounds[v2].pSoundName); - // pSoundList->pSounds[v2].pSoundData[0] = ::LoadSound(pSoundName, (SoundData *)0xFFFFFFFF, pSounds[v2].uSoundID); Ritor1: it's error - result: no sound + // pSoundList->pSounds[v2].pSoundData[0] = ::LoadSound(pSoundName, (SoundData *)0xFFFFFFFF, pSounds[v2].uSoundID); //Ritor1: it's error - result: no sound pSoundDesc = &pSoundList->pSounds[v2]; if ( pSoundList->pSounds[v2].eType != SOUND_DESC_SYSTEM || (sprintf(pSoundName, "%s", pSounds[v2].pSoundName), pSoundList->pSounds[v2].pSoundData[0] = ::LoadSound(pSoundName, (SoundData *)0xFFFFFFFF, pSounds[v2].uSoundID), @@ -870,7 +870,7 @@ goto LABEL_184; } v76 = a3; - if ( (a3 & 7) == OBJECT_BLVDoor) + if ( (a3 & 7) == 1 ) { if ( uCurrentlyLoadedLevelType != LEVEL_Indoor ) goto LABEL_184; @@ -890,7 +890,7 @@ AIL_set_sample_pan(pMixerChannel5->hSample, v80); goto LABEL_184; } - if ( (a3 & 7) == OBJECT_Item) + if ( (a3 & 7) == 2 ) { pLayingItem4 = &pLayingItems[a3 >> 3]; if ( !GetSoundStrengthByDistanceFromParty(pLayingItem4->vPosition.x, pLayingItem4->vPosition.y, pLayingItem4->vPosition.z) ) @@ -898,7 +898,7 @@ } else { - if ( (a3 & 7) == OBJECT_Actor) + if ( (a3 & 7) == 3 ) { pActor3 = &pActors[a3 >> 3]; if ( !GetSoundStrengthByDistanceFromParty(pActor3->vPosition.x, pActor3->vPosition.y, pActor3->vPosition.z) ) @@ -910,7 +910,7 @@ AIL_set_sample_pan(pMixerChannel5->hSample, v80); goto LABEL_184; } - if ( (a3 & 7) != OBJECT_Decoration) + if ( (a3 & 7) != 5 ) { LABEL_184: if ( uNumRepeats ) @@ -922,7 +922,7 @@ AIL_start_sample(v85); if ( sPlaybackRate ) AIL_set_sample_playback_rate(pMixerChannel5->hSample, sPlaybackRate); - if ( (v76 & 7) == OBJECT_Player) + if ( (v76 & 7) == 4 ) AIL_sample_ms_position(pMixerChannel5->hSample, &sLastTrackLengthMS, 0); return; } @@ -978,7 +978,7 @@ _4ABE55(pMixerChannel4); goto LABEL_150; } - if ( (a3 & 7) == OBJECT_Item) + if ( (a3 & 7) == 2 ) { varC = 5; v96 = 7; @@ -986,7 +986,7 @@ } else { - if ( (a3 & 7) == OBJECT_Actor) + if ( (a3 & 7) == 3 ) { *(float *)&varC = 0.0; pActor2 = &pActors[a3 >> 3]; @@ -1000,9 +1000,9 @@ return; goto LABEL_123; } - if ( (a3 & 7) != OBJECT_Decoration) + if ( (a3 & 7) != 5 ) { - if ( (a3 & 7) == OBJECT_BModel) + if ( (a3 & 7) == 6 ) { varC = 8; v96 = 9; @@ -1048,7 +1048,7 @@ v21 = (double)pParty->sEyelevel + (double)pParty->vPosition.z; goto LABEL_47; } - if ( (a3 & 7) == OBJECT_Item) + if ( (a3 & 7) == 2 ) { v22 = pAudioPlayer->uNum3DSamples; if ( v22 < 16 ) @@ -1065,7 +1065,7 @@ } else { - if ( (a3 & 7) == OBJECT_Actor) + if ( (a3 & 7) == 3 ) { v18 = pAudioPlayer->uNum3DSamples; v12 = 0; @@ -1081,10 +1081,10 @@ v21 = (double)v100; goto LABEL_47; } - if ( (a3 & 7) != OBJECT_Decoration) + if ( (a3 & 7) != 5 ) { v13 = pAudioPlayer->uNum3DSamples; - if ( (a3 & 7) == OBJECT_BModel) + if ( (a3 & 7) == 6 ) { if ( v13 >= 16 ) { @@ -1256,7 +1256,7 @@ AIL_set_3D_sample_loop_count(*(int *)v42, v86); if ( PartyX == -1 ) { - if ( (a3 & 7) == OBJECT_BLVDoor) + if ( (a3 & 7) == 1 ) { if ( uCurrentlyLoadedLevelType == LEVEL_Indoor ) { @@ -1306,13 +1306,13 @@ } return; } - if ( (a3 & 7) == OBJECT_Item) + if ( (a3 & 7) == 2 ) { pLayingItem2 = &pLayingItems[a3 >> 3]; } else { - if ( (a3 & 7) == OBJECT_Actor) + if ( (a3 & 7) == 3 ) { pActor = &pActors[a3 >> 3]; v46 = pActor->vPosition.y; @@ -1322,7 +1322,7 @@ v47 = (double)uNumRepeatsb; goto LABEL_101; } - if ( (a3 & 7) != OBJECT_Decoration) + if ( (a3 & 7) != 5 ) { pRenderVertexSoft.vWorldPosition.x = (double)pParty->vPosition.x; v43 = (double)pParty->vPosition.y; @@ -1603,7 +1603,7 @@ while ( 1 ) { v31 = v30->dword_000004; - if ( (v30->dword_000004 & 7) == OBJECT_BLVDoor) + if ( (v30->dword_000004 & 7) == 1 ) { if ( uCurrentlyLoadedLevelType == LEVEL_Indoor ) { @@ -1633,12 +1633,12 @@ } else { - if ( (v30->dword_000004 & 7) == OBJECT_Item) + if ( (v30->dword_000004 & 7) == 2 ) { v32 = &pLayingItems[v31 >> 3]; goto LABEL_53; } - if ( (v30->dword_000004 & 7) == OBJECT_Actor) + if ( (v30->dword_000004 & 7) == 3 ) { v33 = &pActors[v31 >> 3]; v34 = GetSoundStrengthByDistanceFromParty(v33->vPosition.x, v33->vPosition.y, v33->vPosition.z); diff -r 796b79187c27 -r 86a2637ba125 Game.cpp --- a/Game.cpp Tue Feb 12 15:28:36 2013 +0600 +++ b/Game.cpp Tue Feb 12 16:54:25 2013 +0600 @@ -326,7 +326,7 @@ v16 = 0; viewparams->bRedrawGameUI = true; } - //pAudioPlayer->_4AAFCF();//Ritor1: it's temporarily, game crash + //pAudioPlayer->_4AAFCF();//Ritor1: it's temporarily, game crash. decorations sounds if (uGameState == 1) //goto LABEL_96; { diff -r 796b79187c27 -r 86a2637ba125 mm7_2.cpp --- a/mm7_2.cpp Tue Feb 12 15:28:36 2013 +0600 +++ b/mm7_2.cpp Tue Feb 12 16:54:25 2013 +0600 @@ -16344,7 +16344,7 @@ UI_CreateTravelDialogue(); } } - //UpdateActors_ODM();Ritor1: it's temporarily + UpdateActors_ODM();//Ritor1: it's temporarily _46CC4B_check_event_triggers(); } diff -r 796b79187c27 -r 86a2637ba125 mm7_3.cpp --- a/mm7_3.cpp Tue Feb 12 15:28:36 2013 +0600 +++ b/mm7_3.cpp Tue Feb 12 16:54:25 2013 +0600 @@ -959,7 +959,7 @@ signed int v60; // eax@107 int v61; // eax@124 Vec3_int_ v62; // [sp+Ch] [bp-44h]@42 - char v63; // [sp+18h] [bp-38h]@64 + int v63; // [sp+18h] [bp-38h]@64 int v64; // [sp+1Ch] [bp-34h]@64 int v65; // [sp+20h] [bp-30h]@2 int v66; // [sp+24h] [bp-2Ch]@2 @@ -1337,8 +1337,8 @@ v70 = v0->vVelocity.z; v70 = (unsigned __int64)(v71 * (signed __int64)(signed int)v70) >> 16; ++v69; - v54 = __OFSUB__(v69, 100); - v10 = ((v69 - 100) & 0x80000000u) != 0; + v54 = v69 < 100; + v10 = (v69 - 100) < 0; v0->vVelocity.z = v70; if ( !(v10 ^ v54) ) break;