comparison Actor.cpp @ 1052:d48c762de563

-nomarg
author Nomad
date Thu, 23 May 2013 18:26:05 +0200
parents 7f8be9f9769e
children b79139c3b5c8
comparison
equal deleted inserted replaced
1051:05c62d166182 1052:d48c762de563
3154 int v6; // eax@1 3154 int v6; // eax@1
3155 Actor *v7; // ebx@1 3155 Actor *v7; // ebx@1
3156 unsigned int v8; // ecx@1 3156 unsigned int v8; // ecx@1
3157 char v9; // zf@1 3157 char v9; // zf@1
3158 AIDirection *v10; // esi@6 3158 AIDirection *v10; // esi@6
3159 int v12; // ecx@19 3159 //int v12; // ecx@19
3160 unsigned int v13; // eax@19 3160 //unsigned int v13; // eax@19
3161 AIDirection a3; // [sp+Ch] [bp-5Ch]@7 3161 AIDirection a3; // [sp+Ch] [bp-5Ch]@7
3162 AIDirection v15; // [sp+28h] [bp-40h]@7 3162 //AIDirection v15; // [sp+28h] [bp-40h]@7
3163 AIDirection v16; // [sp+44h] [bp-24h]@7 3163 AIDirection v16; // [sp+44h] [bp-24h]@7
3164 unsigned int v17; // [sp+60h] [bp-8h]@1 3164 //unsigned int v17; // [sp+60h] [bp-8h]@1
3165 unsigned int v18; // [sp+64h] [bp-4h]@1 3165 unsigned int v18; // [sp+64h] [bp-4h]@1
3166 int v19; // [sp+70h] [bp+8h]@19 3166 //int v19; // [sp+70h] [bp+8h]@19
3167 3167
3168 v5 = uActorID; 3168 v5 = uActorID;
3169 v6 = 0; 3169 v6 = 0;
3170 v7 = &pActors[uActorID]; 3170 v7 = &pActors[uActorID];
3171 v18 = a2; 3171 v18 = a2;
3172 v8 = PID(OBJECT_Actor,uActorID); 3172 v8 = PID(OBJECT_Actor,uActorID);
3173 v9 = v7->pMonsterInfo.uFlying == 0; 3173 v9 = v7->pMonsterInfo.uFlying == 0;
3174 v17 = v5;
3175 if ( !v9 && !pParty->bFlying ) 3174 if ( !v9 && !pParty->bFlying )
3176 { 3175 {
3177 if ( v7->pMonsterInfo.uMissleAttack1Type ) 3176 if ( v7->pMonsterInfo.uMissleAttack1Type )
3178 v6 = v7->uActorRadius + 512; 3177 v6 = v7->uActorRadius + 512;
3179 else 3178 else
3180 v6 = pParty->uPartyHeight; 3179 v6 = pParty->uPartyHeight;
3181 } 3180 }
3181
3182 v10 = pDir; 3182 v10 = pDir;
3183 if ( !pDir ) 3183 if ( !pDir )
3184 { 3184 {
3185 memcpy(&v15, Actor::GetDirectionInfo(v8, a2, &a3, v6), sizeof(v15)); 3185 memcpy(&v16, Actor::GetDirectionInfo(v8, a2, &a3, v6), sizeof(v16));
3186 memcpy(&v16, &v15, sizeof(v16));
3187 v5 = v17;
3188 v10 = &v16; 3186 v10 = &v16;
3189 } 3187 }
3190 if ( MonsterStats::BelongsToSupertype(v7->pMonsterInfo.uID, MONSTER_SUPERTYPE_TREANT) ) 3188 if ( MonsterStats::BelongsToSupertype(v7->pMonsterInfo.uID, MONSTER_SUPERTYPE_TREANT) )
3191 { 3189 {
3192 if ( !uActionLength ) 3190 if ( !uActionLength )
3207 return; 3205 return;
3208 } 3206 }
3209 v18 = 16; 3207 v18 = 16;
3210 if ( arg0 % 2 ) 3208 if ( arg0 % 2 )
3211 v18 = -16; 3209 v18 = -16;
3212 v12 = ((unsigned __int64)(stru_5C6E00->Cos(v18 + stru_5C6E00->uIntegerPi + v10->uYawAngle) * (signed __int64)v10->uDistanceXZ) >> 16) 3210
3213 + pParty->vPosition.x;
3214 v13 = stru_5C6E00->uIntegerPi + v10->uYawAngle;
3215 v17 = v12;
3216 v19 = stru_5C6E00->Sin(v18 + v13);
3217 v7->uYawAngle = stru_5C6E00->Atan2( 3211 v7->uYawAngle = stru_5C6E00->Atan2(
3218 v17 - v7->vPosition.x, 3212 pParty->vPosition.x + fixpoint_sub0(stru_5C6E00->Cos(v18 + stru_5C6E00->uIntegerPi + v10->uYawAngle), v10->uDistanceXZ) - v7->vPosition.x,
3219 pParty->vPosition.y 3213 pParty->vPosition.y + fixpoint_sub0(stru_5C6E00->Sin(v18 + stru_5C6E00->uIntegerPi + v10->uYawAngle), v10->uDistanceXZ) - v7->vPosition.y);
3220 + ((unsigned __int64)(v19 * (signed __int64)v10->uDistanceXZ) >> 16)
3221 - v7->vPosition.y);
3222 if ( uActionLength ) 3214 if ( uActionLength )
3223 v7->uCurrentActionLength = uActionLength; 3215 v7->uCurrentActionLength = uActionLength;
3224 else 3216 else
3225 v7->uCurrentActionLength = 128; 3217 v7->uCurrentActionLength = 128;
3226 v7->uPitchAngle = LOWORD(v10->uPitchAngle); 3218 v7->uPitchAngle = LOWORD(v10->uPitchAngle);