This commit is contained in:
Paul 2001-05-10 19:54:07 +00:00
parent 5a7d82ae66
commit a0b2221837
2 changed files with 22 additions and 2 deletions

View file

@ -1487,6 +1487,7 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage)
m_currentMode!=PLAYER_MODE_DEAD) // Or already dead! :) m_currentMode!=PLAYER_MODE_DEAD) // Or already dead! :)
{ {
int ouchThatHurt=true; int ouchThatHurt=true;
int ouchThatHurtSoMuchThatImJustGoingToDieNow=false;
// Check if we are currently immune to this damage type // Check if we are currently immune to this damage type
switch(_damage) switch(_damage)
@ -1513,6 +1514,10 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage)
case DAMAGE__BURN_ENEMY: case DAMAGE__BURN_ENEMY:
case DAMAGE__BITE_ENEMY: case DAMAGE__BITE_ENEMY:
break; break;
case DAMAGE__KILL_OUTRIGHT:
ouchThatHurt=ouchThatHurtSoMuchThatImJustGoingToDieNow=true;
break;
} }
if(ouchThatHurt) if(ouchThatHurt)
@ -1521,7 +1526,14 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage)
if(invincibleSponge){m_invincibleFrameCount=INVINCIBLE_FRAMES__HIT;return;} if(invincibleSponge){m_invincibleFrameCount=INVINCIBLE_FRAMES__HIT;return;}
if(!isWearingDivingHelmet()) if(!isWearingDivingHelmet())
{ {
m_health--; if(!ouchThatHurtSoMuchThatImJustGoingToDieNow)
{
m_health--;
}
else
{
m_health=-1;
}
if(m_health<0) if(m_health<0)
{ {
died=true; died=true;
@ -1529,7 +1541,14 @@ void CPlayer::takeDamage(DAMAGE_TYPE _damage)
} }
else else
{ {
m_healthWaterLevel-=WATERHEALTHPART; if(!ouchThatHurtSoMuchThatImJustGoingToDieNow)
{
m_healthWaterLevel-=WATERHEALTHPART;
}
else
{
m_health=-1;
}
if(m_healthWaterLevel<0) if(m_healthWaterLevel<0)
{ {
died=true; died=true;

View file

@ -116,6 +116,7 @@ typedef enum
DAMAGE__SQUASH_ENEMY, DAMAGE__SQUASH_ENEMY,
DAMAGE__BURN_ENEMY, DAMAGE__BURN_ENEMY,
DAMAGE__BITE_ENEMY, DAMAGE__BITE_ENEMY,
DAMAGE__KILL_OUTRIGHT,
}DAMAGE_TYPE; }DAMAGE_TYPE;