flyingstate.cpp

来自「奇迹世界 部分源代码奇迹世界 部分源代码奇迹世界 部分源代码」· C++ 代码 · 共 121 行

CPP
121 行
字号
#include "stdafx.h"
#include "FlyingState.h"
#include "Field.h"
#include <Timer.h>
#include "StatusManager.h"


FlyingState::FlyingState()
{
	m_pFlyingTimer = new util::Timer;
}

FlyingState::~FlyingState()
{
	SAFE_DELETE( m_pFlyingTimer );
}

VOID FlyingState::Init()
{
	__asm nop;
}

VOID FlyingState::OnEnter( LPARAM param1, LPARAM param2, LPARAM param3  )
{
	State::OnEnter( param1, param2, param3 );

	m_pFlyingTimer->SetTimer( (DWORD)param1 );

	// 窍疵肺 栋乐绰 加己阑 难霖促.
	m_pNPC->GetStatusManager()->AllocStatus( eCHAR_STATE_ETC_FLYING );

	m_bKnockDown = FALSE;
}

VOID FlyingState::OnExit()
{
	State::OnExit();

	m_bKnockDown = FALSE;

	// 窍疵肺 栋乐绰 加己阑 波霖促.
	m_pNPC->GetStatusManager()->Remove( eCHAR_STATE_ETC_FLYING );
}

VOID FlyingState::OnUpdate( DWORD dwDeltaTick )
{
	__UNUSED(dwDeltaTick);

	if( m_pFlyingTimer->IsExpired() )
	{
		if ( m_bKnockDown )
		{
			m_pNPC->ChangeState( STATE_ID_KNOCKDOWN );
		}
		else
		{
			if( m_pNPC->GetTargetChar() )
			{
				m_pNPC->ChangeState( STATE_ID_TRACK );
			}
			else
			{
				m_pNPC->ChangeState( STATE_ID_IDLE );
			}
		}
	}
}

VOID FlyingState::OnMsgThrust( AI_MSG *pMsg )
{
	// 窍疵肺 栋乐绰 惑怕狼 NPC绰 固绰 皋技瘤甫 公矫
}

VOID FlyingState::OnMsgFlying( AI_MSG *pMsg )
{
	// 窍疵肺 栋乐绰 惑怕狼 NPC绰 促矫 哆扼绰 皋技瘤甫 公矫
}

VOID FlyingState::OnMsgKnockDown( AI_MSG *pMsg )
{
	m_bKnockDown = TRUE;
}

VOID FlyingState::OnMsgStun( AI_MSG *pMsg )
{
	m_bKnockDown = TRUE;
}

// 饭明绊 公矫
VOID FlyingState::OnMsgLetsGo( AI_MSG *pMsg )
{
}

VOID FlyingState::OnMsgEnemyFound( AI_MSG *pMsg )
{
}

// Flying惑怕啊 场唱搁 Follow(Idle)惑怕肺 汗蓖茄促.
VOID FlyingState::OnMsgCommandFollow( AI_MSG *pMsg )
{
	m_pNPC->SetTargetChar( NULL );
}


















⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?