This commit is contained in:
Charles 2001-07-31 19:20:19 +00:00
parent 12955a7a5f
commit fe30698db8
6 changed files with 35 additions and 14 deletions

View file

@ -313,12 +313,15 @@ void CNpcStaticClamEnemy::collidedWith( CThing *_thisThing )
if ( !player->isRecoveringFromHit() ) if ( !player->isRecoveringFromHit() )
{ {
if ( m_frame >= ( 5 << 8 ) ) if ( m_frame >= ( 5 << 8 ) )
{
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{ {
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
} }
} }
} }
}
break; break;
} }

View file

@ -430,8 +430,11 @@ void CNpcIronDogfishEnemy::processAttackCollision()
{ {
// only detect collision if in attack mode // only detect collision if in attack mode
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
}
break; break;
} }
@ -513,9 +516,12 @@ void CNpcIronDogfishEnemy::collidedWith( CThing *_thisThing )
} }
case DETECT_ALL_COLLISION: case DETECT_ALL_COLLISION:
{
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{ {
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
}
break; break;
} }

View file

@ -734,9 +734,12 @@ void CNpcFlyingDutchmanEnemy::collidedWith(CThing *_thisThing)
} }
case DETECT_ALL_COLLISION: case DETECT_ALL_COLLISION:
{
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{ {
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
}
processUserCollision( _thisThing ); processUserCollision( _thisThing );

View file

@ -840,9 +840,12 @@ void CNpcMotherJellyfishEnemy::collidedWith(CThing *_thisThing)
} }
case DETECT_ALL_COLLISION: case DETECT_ALL_COLLISION:
{
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{ {
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
}
processUserCollision( _thisThing ); processUserCollision( _thisThing );

View file

@ -915,9 +915,12 @@ void CNpcEnemy::collidedWith( CThing *_thisThing )
} }
case DETECT_ALL_COLLISION: case DETECT_ALL_COLLISION:
{
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{ {
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
}
processUserCollision( _thisThing ); processUserCollision( _thisThing );

View file

@ -122,9 +122,12 @@ void CNpcSmallJellyfish2BackgroundEnemy::collidedWith( CThing *_thisThing )
} }
case DETECT_ALL_COLLISION: case DETECT_ALL_COLLISION:
{
if ( m_controlFunc != NPC_CONTROL_COLLISION )
{ {
m_oldControlFunc = m_controlFunc; m_oldControlFunc = m_controlFunc;
m_controlFunc = NPC_CONTROL_COLLISION; m_controlFunc = NPC_CONTROL_COLLISION;
}
processUserCollision( _thisThing ); processUserCollision( _thisThing );