comparison Indoor.cpp @ 872:2db21a810d48

Merge
author Nomad
date Mon, 01 Apr 2013 13:39:39 +0200
parents 710cf848ad24 f4394e320312
children 0d96349d8c87
comparison
equal deleted inserted replaced
871:710cf848ad24 872:2db21a810d48
3476 if ( !(door->uAttributes & 6) && door->uNumVertices != 0) 3476 if ( !(door->uAttributes & 6) && door->uNumVertices != 0)
3477 { 3477 {
3478 //v66 = 0; 3478 //v66 = 0;
3479 //v65 = 0; 3479 //v65 = 0;
3480 //v64 = 0; 3480 //v64 = 0;
3481 //v7 = 8 * i | OBJECT_BLVDoor; 3481 //v7 = PID(OBJECT_BLVDoor,i);
3482 //v63 = 0; 3482 //v63 = 0;
3483 //v62 = -1; 3483 //v62 = -1;
3484 //LOBYTE(v7) = 8 * i | OBJECT_BLVDoor; 3484 //LOBYTE(v7) = PID(OBJECT_BLVDoor,i);
3485 //v61 = 0; 3485 //v61 = 0;
3486 //v60 = 8 * i | OBJECT_BLVDoor; 3486 //v60 = PID(OBJECT_BLVDoor,i);
3487 //v59 = (SoundID)((int)eDoorSoundID + 1); 3487 //v59 = (SoundID)((int)eDoorSoundID + 1);
3488 //LABEL_17: 3488 //LABEL_17:
3489 pAudioPlayer->PlaySound((SoundID)((int)eDoorSoundID + 1), 8 * i | OBJECT_BLVDoor, 0, -1, 0, 0, 0, 0); 3489 pAudioPlayer->PlaySound((SoundID)((int)eDoorSoundID + 1), PID(OBJECT_BLVDoor,i), 0, -1, 0, 0, 0, 0);
3490 //goto LABEL_18; 3490 //goto LABEL_18;
3491 } 3491 }
3492 goto LABEL_18; 3492 goto LABEL_18;
3493 } 3493 }
3494 } 3494 }
3507 if ( !(door->uAttributes & 6) && door->uNumVertices) 3507 if ( !(door->uAttributes & 6) && door->uNumVertices)
3508 { 3508 {
3509 //v66 = 0; 3509 //v66 = 0;
3510 //v65 = 0; 3510 //v65 = 0;
3511 //v64 = 0; 3511 //v64 = 0;
3512 //v8 = 8 * i | OBJECT_BLVDoor; 3512 //v8 = PID(OBJECT_BLVDoor,i);
3513 //v63 = 0; 3513 //v63 = 0;
3514 //v62 = -1; 3514 //v62 = -1;
3515 //LOBYTE(v8) = 8 * v1 | 1; 3515 //LOBYTE(v8) = 8 * v1 | 1;
3516 //v61 = 1; 3516 //v61 = 1;
3517 //v60 = 8 * i | OBJECT_BLVDoor; 3517 //v60 = PID(OBJECT_BLVDoor,i);
3518 //v59 = eDoorSoundID; 3518 //v59 = eDoorSoundID;
3519 pAudioPlayer->PlaySound(eDoorSoundID, 8 * i | OBJECT_BLVDoor, 1, -1, 0, 0, 0, 0); 3519 pAudioPlayer->PlaySound(eDoorSoundID, PID(OBJECT_BLVDoor,i), 1, -1, 0, 0, 0, 0);
3520 //goto LABEL_18; 3520 //goto LABEL_18;
3521 } 3521 }
3522 LABEL_18: 3522 LABEL_18:
3523 //v11 = __OFSUB__(v2->uNumVertices, 0); 3523 //v11 = __OFSUB__(v2->uNumVertices, 0);
3524 //v9 = v2->uNumVertices == 0; 3524 //v9 = v2->uNumVertices == 0;
3997 stru_721530.uSectorID = v0->uSectorID; 3997 stru_721530.uSectorID = v0->uSectorID;
3998 if ( !stru_721530._47050A(v22) ) 3998 if ( !stru_721530._47050A(v22) )
3999 { 3999 {
4000 v58 = v22; 4000 v58 = v22;
4001 v24 = 8 * v63; 4001 v24 = 8 * v63;
4002 LOBYTE(v24) = 8 * v63 | 3; 4002 LOBYTE(v24) = PID(OBJECT_Actor,v63);
4003 v61 = v22; 4003 v61 = v22;
4004 _this = v24; 4004 _this = v24;
4005 do 4005 do
4006 { 4006 {
4007 _46E44E_collide_against_faces_and_portals(1u); 4007 _46E44E_collide_against_faces_and_portals(1u);
4080 v58 = (unsigned __int64)(stru_721530.field_7C * (signed __int64)stru_721530.field_58.z) >> 16; 4080 v58 = (unsigned __int64)(stru_721530.field_7C * (signed __int64)stru_721530.field_58.z) >> 16;
4081 v36 = stru_721530.uFaceID; 4081 v36 = stru_721530.uFaceID;
4082 v0->vPosition.z += (unsigned int)(stru_721530.field_7C * stru_721530.field_58.z) >> 16; 4082 v0->vPosition.z += (unsigned int)(stru_721530.field_7C * stru_721530.field_58.z) >> 16;
4083 v0->uSectorID = LOWORD(stru_721530.uSectorID); 4083 v0->uSectorID = LOWORD(stru_721530.uSectorID);
4084 stru_721530.field_70 += stru_721530.field_7C; 4084 stru_721530.field_70 += stru_721530.field_7C;
4085 v37 = v36 >> 3; 4085 v37 = PID_ID(v36);
4086 if ( (v36 & 7) != OBJECT_Actor) 4086 if ( PID_TYPE(v36) != OBJECT_Actor)
4087 { 4087 {
4088 if ( (v36 & 7) != OBJECT_Player) 4088 if ( PID_TYPE(v36) != OBJECT_Player)
4089 { 4089 {
4090 if ( (v36 & 7) == OBJECT_Decoration) 4090 if ( PID_TYPE(v36) == OBJECT_Decoration)
4091 { 4091 {
4092 _this = integer_sqrt(v0->vVelocity.x * v0->vVelocity.x + v0->vVelocity.y * v0->vVelocity.y); 4092 _this = integer_sqrt(v0->vVelocity.x * v0->vVelocity.x + v0->vVelocity.y * v0->vVelocity.y);
4093 v45 = stru_5C6E00->Atan2( 4093 v45 = stru_5C6E00->Atan2(
4094 v0->vPosition.x - pLevelDecorations[v37].vPosition.x, 4094 v0->vPosition.x - pLevelDecorations[v37].vPosition.x,
4095 v0->vPosition.y - pLevelDecorations[v37].vPosition.y); 4095 v0->vPosition.y - pLevelDecorations[v37].vPosition.y);
4102 v48 = v47 * (signed __int64)(signed int)_this; 4102 v48 = v47 * (signed __int64)(signed int)_this;
4103 v56 = v48 >> 16; 4103 v56 = v48 >> 16;
4104 v0->vVelocity.y = WORD1(v48); 4104 v0->vVelocity.y = WORD1(v48);
4105 goto LABEL_119; 4105 goto LABEL_119;
4106 } 4106 }
4107 if ( (v36 & 7) == OBJECT_BModel) 4107 if ( PID_TYPE(v36) == OBJECT_BModel)
4108 { 4108 {
4109 stru_721530.field_84 = v36 >> 3; 4109 stru_721530.field_84 = v36 >> 3;
4110 v38 = &pIndoor->pFaces[v37]; 4110 v38 = &pIndoor->pFaces[v37];
4111 if ( v38->uPolygonType == 3 ) 4111 if ( v38->uPolygonType == 3 )
4112 { 4112 {
4205 if ( v56 == v22 ) 4205 if ( v56 == v22 )
4206 { 4206 {
4207 if ( !pActors[v37].pMonsterInfo.uHostilityType ) 4207 if ( !pActors[v37].pMonsterInfo.uHostilityType )
4208 goto LABEL_118; 4208 goto LABEL_118;
4209 LABEL_114: 4209 LABEL_114:
4210 Actor::_402968(v63, v36, v22, (AIDirection *)v22); 4210 Actor::Flee(v63, v36, v22, (AIDirection *)v22);
4211 goto LABEL_119; 4211 goto LABEL_119;
4212 } 4212 }
4213 } 4213 }
4214 Actor::AI_StandOrBored(v63, 4, v22, &v53); 4214 Actor::AI_StandOrBored(v63, 4, v22, &v53);
4215 goto LABEL_119; 4215 goto LABEL_119;