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

📄 regenmanager.h

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

#include <vector>
#include <Timer.h>

class Field;
class RegenLocation;
struct REGEN_INFO;

typedef std::vector<RegenLocation*>			LOCATION_VECTOR;
typedef LOCATION_VECTOR::iterator			LOCATION_VECTOR_ITER;

class RegenManager
{
public:
	RegenManager( Field *pField );
	~RegenManager();

	VOID					Init( DWORD dwMapCode, DWORD dwFieldIndex, WORD wMonType );
	VOID					Release();
	VOID					Update();
	VOID					CreateNPC( DWORD dwCode, DWORD dwNumberOfNPCs, WzVector *pwvPos, RegenLocation *pHomeLocation, DWORD dwGroupID );

	VOID					AddRegenLocation( RegenLocation* pLoc ){ m_vecRegenLocations.push_back(pLoc);	}
private:
	DWORD					DecisionNumberOfRegen( RegenLocation *pLocation, DWORD dwNPCCode, DWORD dwMaxNum );
	VOID					ExecuteRegen( BOOL bSpawnAll = FALSE );
	VOID					ExecuteGroupRegen( BOOL bBossRegen, DWORD dwAreaTileCnt, DWORD *pdwTileIndex );
	VOID					ExecuteSingleRegen( BOOL bSpawnAll, DWORD dwAreaTileCnt, DWORD *pdwTileIndex );

	enum { MAX_GROUP = 3 };
	util::Timer				m_RegenTimer;
	Field					*m_pField;
	LOCATION_VECTOR			m_vecRegenLocations;

	// Local 函荐甸
	REGEN_INFO				*m_pLocalRegenInfo;
	RegenLocation			*m_pLocalLocation;
};

⌨️ 快捷键说明

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