This commit is contained in:
Charles 2001-04-05 19:36:04 +00:00
parent 117099c48f
commit ace470e1c4
3 changed files with 130 additions and 55 deletions

View file

@ -685,7 +685,7 @@ bool CNpcEnemy::processSensor()
if ( playerXDistSqr + playerYDistSqr < 10000 )
{
m_controlFunc = NPC_CONTROL_SHOT;
m_state = NPC_GENERIC_DEATH_START;
m_state = NPC_GENERIC_HIT_CHECK_HEALTH;
return( true );
}
@ -1225,21 +1225,52 @@ void CNpcEnemy::processShot()
break;
}
case NPC_SHOT_GENERIC_DIE:
case NPC_SHOT_GENERIC:
{
switch ( m_state )
{
case NPC_GENERIC_DEATH_START:
case NPC_GENERIC_HIT_CHECK_HEALTH:
{
m_animPlaying = true;
m_animNo = m_data[m_type].dieAnim;
m_frame = 0;
m_state = NPC_GENERIC_DEATH_END;
m_health -= 5;
if ( m_health < 0 )
{
m_state = NPC_GENERIC_HIT_DEATH_START;
}
else
{
m_state = NPC_GENERIC_HIT_RECOIL;
m_animPlaying = true;
m_animNo = m_data[m_type].recoilAnim;
m_frame = 0;
}
break;
}
case NPC_GENERIC_DEATH_END:
case NPC_GENERIC_HIT_RECOIL:
{
if ( !m_animPlaying )
{
m_state = 0;
m_controlFunc = NPC_CONTROL_MOVEMENT;
}
break;
}
case NPC_GENERIC_HIT_DEATH_START:
{
m_animPlaying = true;
m_animNo = m_data[m_type].dieAnim;
m_frame = 0;
m_state = NPC_GENERIC_HIT_DEATH_END;
break;
}
case NPC_GENERIC_HIT_DEATH_END:
{
if ( !m_animPlaying )
{