This commit is contained in:
Paul 2001-07-10 21:01:57 +00:00
parent d9fce74cac
commit 7e3a0f69da

View file

@ -1057,11 +1057,13 @@ if(PadGetDown(0)&PAD_TRIANGLE)
m_xMove = Pos.vx - m_xMove; m_xMove = Pos.vx - m_xMove;
// Out of water and wearing helmet..?
ASSERT(!(getIsInWater()==false&&isWearingDivingHelmet()==false)); ASSERT(!(getIsInWater()==false&&isWearingDivingHelmet()==false));
if(isWearingDivingHelmet()&&getIsInWater()==false&& if(isWearingDivingHelmet())
m_currentMode!=PLAYER_MODE_DEAD&&m_currentMode!=PLAYER_MODE_FLY)
{ {
if(getIsInWater()==false&&m_currentMode!=PLAYER_MODE_DEAD&&m_currentMode!=PLAYER_MODE_FLY)
{
// Out of water and wearing helmet!
// Drain water/health // Drain water/health
m_healthWaterLevel-=waterDrainSpeed*_frames; m_healthWaterLevel-=waterDrainSpeed*_frames;
if(m_healthWaterLevel<=0) if(m_healthWaterLevel<=0)
@ -1077,6 +1079,16 @@ if(PadGetDown(0)&PAD_TRIANGLE)
m_helmetSoundTimer=0; m_helmetSoundTimer=0;
} }
} }
else if(getIsInWater())
{
// Back in water - fill up helmet! :)
m_healthWaterLevel+=waterSoakUpSpeed;
if(m_healthWaterLevel>WATERMAXHEALTH)
{
m_healthWaterLevel=WATERMAXHEALTH;
}
}
}
// Ledge look-ahead stuff // Ledge look-ahead stuff
if(m_ledgeLookAhead&&m_ledgeLookAhead==m_lastLedgeLookAhead) if(m_ledgeLookAhead&&m_ledgeLookAhead==m_lastLedgeLookAhead)
@ -1377,7 +1389,7 @@ if(drawlastpos)
sb->printFT4(FRM__WATERMETER,x,y,0,0,POWERUPUI_OT); sb->printFT4(FRM__WATERMETER,x,y,0,0,POWERUPUI_OT);
if(m_healthWaterLevel<(WATER_COUNTER_SECONDTIME*6)&&m_currentPlayerModeClass->getState()!=STATE_SOAKUP) if(!getIsInWater()&&m_healthWaterLevel<(WATER_COUNTER_SECONDTIME*6)&&m_currentPlayerModeClass->getState()!=STATE_SOAKUP)
{ {
int digit; int digit;
DVECTOR src={x+(W/2),y+(H/2)}; DVECTOR src={x+(W/2),y+(H/2)};