diff --git a/source/enemy/nshrkman.cpp b/source/enemy/nshrkman.cpp index f4db05cf4..30936f098 100644 --- a/source/enemy/nshrkman.cpp +++ b/source/enemy/nshrkman.cpp @@ -152,6 +152,26 @@ void CNpcSharkManEnemy::processMovement( int _frames ) void CNpcSharkManEnemy::processClose( int _frames ) { + s32 xDist, yDist; + + DVECTOR newPos = Pos; + newPos.vy -= 50; + + CPlayer *player = GameScene.getPlayer(); + DVECTOR playerPos = player->getPos(); + + xDist = playerPos.vx - newPos.vx; + yDist = playerPos.vy - newPos.vy; + + if ( xDist > 0 ) + { + m_heading = 0; + } + else + { + m_heading = 2048; + } + if ( m_animNo != ANIM_MANRAY_ATTACK ) { m_animPlaying = true; @@ -162,17 +182,6 @@ void CNpcSharkManEnemy::processClose( int _frames ) { // fire - DVECTOR newPos = Pos; - newPos.vy -= 50; - - s32 xDist, yDist; - - CPlayer *player = GameScene.getPlayer(); - DVECTOR playerPos = player->getPos(); - - xDist = playerPos.vx - newPos.vx; - yDist = playerPos.vy - newPos.vy; - s16 heading = ratan2( yDist, xDist ) & 4095; CProjectile *projectile;