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

📄 regenlocation.h

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

#include <hash_map>

typedef stdext::hash_map<DWORD, DWORD>		ALIVE_NPC_MAP;		// <MonsterCode, Count>
typedef ALIVE_NPC_MAP::iterator				ALIVE_NPC_MAP_ITER;
typedef std::pair<DWORD, DWORD>				ALIVE_NPC_MAP_PAIR;

typedef std::vector<DWORD>					AREAKEY_VECTOR;
typedef AREAKEY_VECTOR::iterator			AREAKEY_VECTOR_ITER;

struct REGEN_INFO;
class ObjectGroup;
class NPC;

class RegenLocation
{
public:
	RegenLocation();
	~RegenLocation();

	VOID					Init( REGEN_INFO *pRegenInfo, DWORD dwAreaKey=0 );
	VOID					Release();
	inline VOID				SetRegenInfo( REGEN_INFO *pRegenInfo ) { m_pRegenInfo = pRegenInfo; }
	inline REGEN_INFO*		GetRegenInfo() { return m_pRegenInfo; }
	DWORD					GetNumberOfAliveNPCs( DWORD dwNPCCode );
	VOID					IncreaseNPC( DWORD dwNPCCode, DWORD dwNum = 1 );
	VOID					DecreaseNPC( DWORD dwNPCCode, DWORD dwNum = 1 );

	VOID					AddRandomAreaKey( DWORD dwAreaKey )	{ m_vecAreaKeys.push_back( dwAreaKey ); }
	DWORD					GetAreaKey()		{ return m_dwAreaKey; }
	DWORD					GetRandomAreaKey();

	ObjectGroup*			JoinGroup( NPC* pNPC );

private:
	REGEN_INFO				*m_pRegenInfo;		// RegenParser狼 府哩 沥焊 傍蜡 器牢磐
	ALIVE_NPC_MAP			m_mapAliveNPC;
	DWORD					m_dwAreaKey;		// 茄 康开俊辑 积己登绰 阁胶磐牢 版快 荤侩
	AREAKEY_VECTOR			m_vecAreaKeys;		// 罚待窍霸 积己登绰 阁胶磐(府歹)牢 版快

	enum { MAX_OBJECTGROUP_PER_AREA = 3 };
	ObjectGroup*			m_pObjectGroup[MAX_OBJECTGROUP_PER_AREA];	// Area俊 家加等 弊缝甸, GroupManager俊 家加等 ObjectGroup客 器牢磐甫 傍蜡茄促.
};

⌨️ 快捷键说明

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