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

📄 sectorgroup.h

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


#include <SolarHashTable.h>

using namespace util;

class Sector;

typedef util::SolarHashTable<Sector *>::iterator	SECTOR_ITERATOR;

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

	VOID							Init( WORD wGroupIndex, WORD wSectorNumForGroup );
	VOID							Release();

	VOID							AddSector( Sector *pSector );

	inline SECTOR_ITERATOR			Begin()		{ return m_pSectorHashTable->begin(); }
	inline SECTOR_ITERATOR			End()		{ return m_pSectorHashTable->end(); }

	inline VOID						SetGroupIndex( WORD wGroupIndex )	{ m_wGroupIndex = wGroupIndex; }
	inline WORD						GetGroupIndex()	{ return m_wGroupIndex; }

	BOOL							IsReferenced()	{ return m_bReferenced; }
	VOID							SetReferenceCount( int iPlayerReferenceCount );
	inline int						GetReferenceCount()	{ return m_iPlayerReferenceCount; }

private:
	WORD							m_wGroupIndex;
	BOOL							m_bReferenced;				// 敲饭捞绢俊 狼秦 茄锅捞扼档 曼炼登菌蠢衬
	int								m_iPlayerReferenceCount;	// 泅犁 敲饭捞绢啊 曼炼窍绊 乐绰 荐

	util::SolarHashTable<Sector*> *	m_pSectorHashTable;
};

typedef util::SolarHashTable<SectorGroup *>::iterator	SECTORGROUP_ITERATOR;


class SectorGroupList
{
	enum { _MAX_SECTOR_UNIT_COUNT = 5 };

public:
	SectorGroupList();
	~SectorGroupList();

	VOID					Init( WORD wTotalGroupNum );
	VOID					Release();

	inline SECTORGROUP_ITERATOR		Begin()		{ return m_pSectorGroupHashTable->begin(); }
	inline SECTORGROUP_ITERATOR		End()		{ return m_pSectorGroupHashTable->end(); }

	inline WORD						GetSectorUnitCount()							{ return m_wSectorUnitCount; }
	inline WORD						GetTotalGroupNum()								{ return m_wTotalSectorGroupNum; }
	inline VOID						SetSectorGroupXNum( WORD wGroupXNum )			{ m_wSectorGroupXNum = wGroupXNum; }
	inline VOID						SetSectorGroupYNum( WORD wGroupYNum )			{ m_wSectorGroupYNum = wGroupYNum; }

	SectorGroup*					GetGroup( WORD wGroupIndex )	{ return m_pSectorGroupHashTable->GetData( wGroupIndex ); }
	VOID							AddSectorGroup( SectorGroup *pSectorGroup );

private:
	util::SolarHashTable<SectorGroup*> *	m_pSectorGroupHashTable;

	WORD							m_wSectorUnitCount;		// 茄 弊缝寸 冀磐狼 俺荐(_MAX_SECTOR_UNIT_COUNT = 5)
	WORD							m_wSectorGroupXNum;		// 弊缝狼 X 俺荐
	WORD							m_wSectorGroupYNum;		// 弊缝狼 Y 俺荐
	WORD							m_wTotalSectorGroupNum;	// 傈眉 弊缝 俺荐
};

⌨️ 快捷键说明

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