Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //player is swimming and not flagged as in the water
- if(movement_info.flags & MOVEFLAG_SWIMMING && !(_player->m_UnderwaterState & UNDERWATERSTATE_SWIMMING))
- {
- if( ( _player->GetZoneId() == 46 ) && !(_player->m_UnderwaterState & UNDERWATERSTATE_LAVA) && (_player->GetPositionZ() > 125))
- _player->m_UnderwaterState |= UNDERWATERSTATE_LAVA;
- _player->RemoveAurasByInterruptFlag(AURA_INTERRUPT_ON_ENTER_WATER);
- // get water level only if it was not set before
- if(!pSession->m_bIsWLevelSet)
- {
- // water level is somewhere below the nose of the character when entering water
- pSession->m_wLevel = movement_info.z + _player->m_noseLevel * 0.95f;
- pSession->m_bIsWLevelSet = true;
- }
- _player->m_UnderwaterState |= UNDERWATERSTATE_SWIMMING;
- }
Advertisement
Add Comment
Please, Sign In to add comment