Files
Sun1602/Tools/WiseClient/Information/Zone/GameZone.h
T
2022-10-26 12:25:11 +08:00

41 lines
1.0 KiB
C++

#pragma once
//////////////////////////////////////////////////////////////////////////
//
class GameField;
//////////////////////////////////////////////////////////////////////////
// <GameZone>
//
class GameZone
{
friend class WiseMapInfo;
struct sPAIR
{
FIELDCODE mcFIELDCODE;
GameField* pGAMEFIELD;
};
typedef STLX_VECTOR<sPAIR> GAME_FIELD_LIST;
typedef GAME_FIELD_LIST::iterator GAME_FIELD_LIST_IT;
public: GameZone() { _Clear(); }
~GameZone() {}
public: inline MAPCODE GetMapCode() { return m_MapCode; }
BOOL SetCurrentField(FIELDCODE mcFIELDCODE);
inline GameField* GetCurrentField() { return m_pCurrentField; }
DWORD GetMapVersion(FIELDCODE mcFIELDCODE);
private: void Init(MAPCODE mcCODE);
void Release();
void _AddGameField(GameField* pGameField);
BOOL _GetRefGameField(FIELDCODE mcFIELDCODE, GAME_FIELD_LIST_IT& rFIND_IT);
private: void _Clear();
private: MAPCODE m_MapCode;
GameField* m_pCurrentField;
GAME_FIELD_LIST m_GameFieldList;
};