📄 regenlocation.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 + -