agent.h

来自「C人工智能游戏开发的一些实例源代码 C Game development in 」· C头文件 代码 · 共 44 行

H
44
字号
#ifndef __AGENT_H__
#define __AGENT_H__

#pragma warning(disable:4786)
#include "Vector.h"

struct TriggerRecordStruct;


class CAgent 
{
public:

	CAgent();

	const Vector&		GetPosition() const { return m_vPos; }
	const unsigned long	GetTriggerFlags() const { return m_flagTriggerFlags; }
	const float			GetTriggerUpdateRate() const { return m_fTriggerUpdateRate; }
	const float			GetTriggerDistance() const { return m_fTriggerDistance; }
	const unsigned long	GetNextTriggerUpdate() const { return m_nNextTriggerUpdate; }

	void				SetID(unsigned long id) { m_id = id; }
	void				SetPosition(Vector& vPos) { m_vPos = vPos; }
	void				SetTriggerFlags(unsigned long flags) { m_flagTriggerFlags = flags; }
	void				SetNextTriggerUpdate(unsigned long nNextTriggerUpdate) { m_nNextTriggerUpdate = nNextTriggerUpdate; }

	virtual bool		HandleTrigger(TriggerRecordStruct* pRecord);

protected:

	unsigned long	m_id;
	Vector			m_vPos;
	float			m_fTriggerUpdateRate; 
	unsigned long	m_nNextTriggerUpdate;
	unsigned long	m_lastTriggerTime;
	float			m_fTriggerDistance;
	unsigned long	m_flagTriggerFlags;
};

extern CAgent* g_pAgentList[100];
extern unsigned long g_nNumAgents;

#endif

⌨️ 快捷键说明

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