⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cameraobj.h

📁 Blood 2全套源码
💻 H
字号:
// ----------------------------------------------------------------------- //
//
// MODULE  : CameraObj.h
//
// PURPOSE : CameraObj header
//
// CREATED : 02/17/98
//
// ----------------------------------------------------------------------- //

#ifndef __CAMERAOBJ_H__
#define __CAMERAOBJ_H__

#include "cpp_engineobjects_de.h"
#include "cpp_server_de.h"
#include "B2BaseClass.h"
#include "DLink.h"
//#include "PathListData.h"


class CameraObj : public B2BaseClass
{
	public :

		CameraObj();
		~CameraObj();
		DBOOL		Setup(DBYTE nType);
		void		SetActive(DBOOL bActive);
		DBOOL		SetLinkObject(HOBJECT hObject);

		HOBJECT		GetLinkObject() const { return m_hLinkObject; }

		DBOOL		IsListener() const { return m_bIsListener; }
		DBOOL		IsActive() const { return m_bActive; }
		DBOOL		AllowPlayerMovement() const { return m_bPlayerMovement; }

		//efficient means to track destructable objects in a level
		static DLink	m_CameraHead;
		static DDWORD	m_dwNumCameras;
		DLink			m_Link;

	protected :

		DDWORD  EngineMessageFn(DDWORD messageID, void *pData, DFLOAT fData);
		DDWORD	ObjectMessageFn(HOBJECT hSender, DDWORD messageID, HMESSAGEREAD hRead);

	private :

		DBOOL		InitialUpdate();
		DBOOL		Update();
		void		PostPropRead(ObjectCreateStruct *pStruct);
		DBOOL		ReadProp(ObjectCreateStruct *pStruct);
		void		HandleTrigger(HOBJECT hSender, HSTRING hMsg);
		DBOOL		DisplayRay();
		void		Save(HMESSAGEWRITE hWrite, DDWORD dwSaveFlags);
		void		Load(HMESSAGEREAD hRead, DDWORD dwLoadFlags);

	public:

		DBOOL		m_bActive;
		DBOOL		m_bStartActive;		// Camera starts active
		DBOOL		m_bIsListener;		// Camera becomes the listener when active
		DFLOAT		m_fActiveTime;		// Length of time to start active -1
		DFLOAT		m_fDeactivateTime;	// Time we should deactivate
		DBOOL		m_bPlayerMovement;	// Allow player movement when active
		DBYTE		m_nType;			// Camera type
		DBOOL		m_bHidePlayer;		// Hide the player object
		HOBJECT		m_hRay;
		HOBJECT		m_hLinkObject;
};


extern HOBJECT g_hActiveCamera;

#endif // __CAMERAOBJ_H__

⌨️ 快捷键说明

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