diff --git a/Graphics/levels/Chapter02/Level04/Level04.MEX b/Graphics/levels/Chapter02/Level04/Level04.MEX index fd39e785f..89481cfbb 100644 Binary files a/Graphics/levels/Chapter02/Level04/Level04.MEX and b/Graphics/levels/Chapter02/Level04/Level04.MEX differ diff --git a/Graphics/levels/Chapter02/Level04/level04.Mep b/Graphics/levels/Chapter02/Level04/level04.Mep index 7b9c6e099..70f604dcf 100644 Binary files a/Graphics/levels/Chapter02/Level04/level04.Mep and b/Graphics/levels/Chapter02/Level04/level04.Mep differ diff --git a/source/enemy/nsshark.cpp b/source/enemy/nsshark.cpp index f9f339c2b..803b4c020 100644 --- a/source/enemy/nsshark.cpp +++ b/source/enemy/nsshark.cpp @@ -766,18 +766,21 @@ void CNpcSubSharkEnemy::collidedWith(CThing *_thisThing) if(playerState==ATTACK_STATE__NONE) { - CPlayer *player = GameScene.getPlayer(); - - if ( !player->isRecoveringFromHit() && !m_carryPlayer ) + if ( !player->isRecoveringFromHit() ) { - player->takeDamage( m_data[m_type].damageToUserType,REACT__GET_DIRECTION_FROM_THING,(CThing*)this ); - } + CPlayer *player = GameScene.getPlayer(); - if ( m_state == SUB_SHARK_CHARGE && player->getMode() != PLAYER_MODE_SWALLOW ) - { - m_carryPlayer = true; - m_oldPlayerMode = player->getMode(); - player->setMode( PLAYER_MODE_SWALLOW ); + if ( !player->isRecoveringFromHit() && !m_carryPlayer ) + { + player->takeDamage( m_data[m_type].damageToUserType,REACT__GET_DIRECTION_FROM_THING,(CThing*)this ); + } + + if ( m_state == SUB_SHARK_CHARGE && player->getMode() != PLAYER_MODE_SWALLOW ) + { + m_carryPlayer = true; + m_oldPlayerMode = player->getMode(); + player->setMode( PLAYER_MODE_SWALLOW ); + } } } else if ( m_invulnerableTimer <= 0 )