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

📄 statusfactory.h

📁 奇迹世界 部分源代码奇迹世界 部分源代码奇迹世界 部分源代码
💻 H
字号:
#pragma once

#include <Singleton.h>
#include <MemoryPoolFactory.h>

class AbilityStatus;	class WoundStatus;		class StunStatus;
class AbsorbStatus;		class CureStatus;		class BlindStatus;
class MagicShieldStatus;class FearStatus;		class SPBonusStatus;
class ChaosStatus;		class WindShieldStatus;	class MirrorStatus;
class ThrustStatus;		class SleepStatus;		class LowHPStatus;
class BonusDamageStatus;

class BaseStatus;		class StyleThrust;		class StyleStun;
class StyleDown;		class RecoverStatus;	

class StatusFactory : public Singleton<StatusFactory>
{
public:
	StatusFactory();
	~StatusFactory();

	VOID					Init( DWORD dwMaxPoolSize );
	VOID					Release();

	BaseStatus*				AllocStatus( eCHAR_STATE_TYPE eStateID, BOOL bAbility=TRUE );
	VOID					FreeStatus( BaseStatus* pStatus );

	VOID					DisplayPoolInfo();

private:
	BaseStatus*				AllocAbility( eCHAR_STATE_TYPE eStateID );
	BaseStatus*				AllocEtc( eCHAR_STATE_TYPE eStateID );

private:
	// Ability 惑怕甸
	CMemoryPoolFactory<AbilityStatus> *		m_pAbilityPool;
	CMemoryPoolFactory<WoundStatus> *		m_pWoundPool;
	CMemoryPoolFactory<StunStatus> *		m_pStunPool;
	CMemoryPoolFactory<AbsorbStatus> *		m_pAbsorbPool;
	CMemoryPoolFactory<CureStatus> *		m_pCurePool;
	CMemoryPoolFactory<BlindStatus> *		m_pBlindPool;
	CMemoryPoolFactory<MagicShieldStatus> *	m_pMagicShieldPool;
	CMemoryPoolFactory<FearStatus> *		m_pFearPool;
	CMemoryPoolFactory<SPBonusStatus> *		m_pSPBonusPool;
	CMemoryPoolFactory<ChaosStatus> *		m_pChaosPool;
	CMemoryPoolFactory<WindShieldStatus> *	m_pWindShieldPool;
	CMemoryPoolFactory<MirrorStatus> *		m_pMirrorPool;
	CMemoryPoolFactory<ThrustStatus> *		m_pThrustPool;
	CMemoryPoolFactory<SleepStatus> *		m_pSleepPool;
	CMemoryPoolFactory<LowHPStatus> *		m_pLowHPPool;
	CMemoryPoolFactory<BonusDamageStatus> *	m_pBonusDamagePool;

	// 扁鸥 惑怕甸
	CMemoryPoolFactory<BaseStatus> *		m_pBasePool;
	CMemoryPoolFactory<StyleThrust> *		m_pStyleThrustPool;
	CMemoryPoolFactory<StyleStun> *			m_pStyleStunPool;
	CMemoryPoolFactory<StyleDown> *			m_pStyleDownPool;
	CMemoryPoolFactory<RecoverStatus> *		m_pRecoverPool;
};





⌨️ 快捷键说明

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