bool CPlayerStateJump::UpdateCommon( CPlayer& player, const bool isHeavyWeapon, const SActorFrameMovementParams& movement, float frameTime, Vec3* pDesiredVel ) { Vec3 move(ZERO); const bool bigWeaponRestrict = isHeavyWeapon; CPlayerStateUtil::CalculateGroundOrJumpMovement( player, movement, bigWeaponRestrict, move ); return UpdateCommon( player, isHeavyWeapon, move, frameTime, pDesiredVel ); }
bool CGUITextLayout::UpdateW(const std::wstring &text, float maxWidth /*= 0*/, bool forceUpdate /*= false*/, bool forceLTRReadingOrder /*= false*/) { if (text == m_lastText && !forceUpdate && m_lastUpdateW) return false; m_lastText = text; m_lastUpdateW = true; UpdateCommon(text, maxWidth, forceLTRReadingOrder); return true; }
bool CGUITextLayout::Update(const std::string &text, float maxWidth, bool forceUpdate /*= false*/, bool forceLTRReadingOrder /*= false*/) { if (text == m_lastUtf8Text && !forceUpdate && !m_lastUpdateW) return false; m_lastUtf8Text = text; m_lastUpdateW = false; std::wstring utf16; g_charsetConverter.utf8ToW(text, utf16, false); UpdateCommon(utf16, maxWidth, forceLTRReadingOrder); return true; }
void CPlayerStateJump::UpdateFalling( CPlayer& player, const bool isHeavyWeapon, const SActorFrameMovementParams& movement, float frameTime ) { Vec3 desiredVel(ZERO); if( !CPlayerStateUtil::IsOnGround( player ) ) { if( UpdateCommon( player, isHeavyWeapon, movement, frameTime, &desiredVel ) ) { FinalizeVelocity( player, desiredVel ); } } else { // We were falling, now we're on ground - we landed! Land(player, isHeavyWeapon, frameTime); } }
void CPlayerStateJump::UpdateJumping( CPlayer& player, const bool isHeavyWeapon, const SActorFrameMovementParams& movement, float frameTime ) { Vec3 desiredVel(ZERO); if( UpdateCommon( player, isHeavyWeapon, movement, frameTime, &desiredVel ) ) { Vec3 jumpExtraForce(0,0,0); switch( GetJumpState() ) { case JState_Jump: jumpExtraForce = CalculateInAirJumpExtraVelocity( player, desiredVel ); break; } desiredVel += jumpExtraForce; FinalizeVelocity( player, desiredVel ); if( CPlayerStateUtil::IsOnGround( player ) ) { Land(player, isHeavyWeapon, frameTime); } } }
// INonViewClient void PaletteEditorDialog::UpdateNonView(CObject *pObject) { UpdateCommon(pObject); }