📄 movestatecontrol.cpp
字号:
#include "stdafx.h"
#include "MoveStateControl.h"
#include "NumericValues.h"
#include "Player.h"
VOID MoveStateControl::Init( Character *pOwner, eCHAR_MOVE_STATE eMoveState )
{
m_pOwner = pOwner;
SetMoveState( eMoveState );
}
VOID MoveStateControl::SetMoveState( eCHAR_MOVE_STATE eMoveState )
{
m_eMoveState = eMoveState;
if( ( m_pOwner->GetObjectType() & PLAYER_OBJECT ) == PLAYER_OBJECT )
{
m_fBaseMoveSpeed = GetBaseMoveSpeedAsState( m_eMoveState );
}
else if( ( m_pOwner->GetObjectType() & NPC_OBJECT ) == NPC_OBJECT )
{
NPC *pNPC = (NPC*)m_pOwner;
switch( m_eMoveState )
{
case CMS_WALK:
m_fBaseMoveSpeed = pNPC->GetBaseInfo()->m_fWalkSpeed * SPEED_MULTIPLIER;
break;
case CMS_RUN:
m_fBaseMoveSpeed = pNPC->GetBaseInfo()->m_fRunSpeed * SPEED_MULTIPLIER;
break;
default:
m_fBaseMoveSpeed = GetBaseMoveSpeedAsState( m_eMoveState );
}
}
}
float MoveStateControl::GetMoveSpeed()
{
float fMoveSpeed = m_fBaseMoveSpeed;
fMoveSpeed *= m_pOwner->GetMoveSpeedRatio()/100.0f;
if( ( m_pOwner->GetObjectType() & PLAYER_OBJECT ) == PLAYER_OBJECT )
{
Player *pPlayer = (Player*)m_pOwner;
// 眠啊肺 捞悼加档甫 函版矫挪促.(林肺 GM俊辑 荤侩)
float fAddMoveSpeedRatio = pPlayer->GetAddMoveSpeedRatio();
if( fAddMoveSpeedRatio )
fMoveSpeed *= fAddMoveSpeedRatio;
}
return fMoveSpeed;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -