CWorldMap Class


Overview

Note

The CWorldMap class handles the world map and links between areas. For the interaction of the world map see CScreenWorldMap

The structure used for this class is CWorldMap


Quick Reference

Quick Ref

void CWorldMap::CWorldMap()

void CWorldMap::~CWorldMap()

void CWorldMap::AddArea(unsigned long nMap, CWorldMapArea& cNewArea, CWorldMapLinks* pLinks, CWorldMapLinks* pNewLinksToArea, int nNumLinksTo)

void CWorldMap::ClearData()

void CWorldMap::EnableArea(unsigned long nMap, CResRef& cResArea, int bEnable)

int CWorldMap::EnterArea(unsigned long nMap, CResRef& cResArea)

unsigned long CWorldMap::FindSourceAreaIndex(unsigned long nMap, unsigned long nLink)

CList* CWorldMap::GetAllLinks(unsigned long nMap, unsigned long nArea)

CWorldMapArea* CWorldMap::GetArea(unsigned long nMap, unsigned long nArea)

int CWorldMap::GetAreaIndex(unsigned long nMap, CResRef& cResArea, unsigned long& nArea)

int CWorldMap::GetAreaNumber(unsigned long nMap, CString sAreaName)

CSize CWorldMap::GetAreaPosition(CWorldMapArea* pArea)

CWorldMapLinks* CWorldMap::GetLink(unsigned long nMap, unsigned long nLink)

unsigned long CWorldMap::GetLinkIndex(unsigned long nMap, unsigned long nSrcArea, unsigned long nDstArea)

CWorldMapData* CWorldMap::GetMap(unsigned long nMap)

unsigned long CWorldMap::GetNumAreas(unsigned long nMap)

CList* CWorldMap::GetShortestPath(unsigned long nMap, unsigned long nSrcArea, unsigned long nDstArea)

void CWorldMap::LeaveAreaEast(unsigned long nMap, CResRef& cResArea)

void CWorldMap::LeaveAreaNorth(unsigned long nMap, CResRef& cResArea)

void CWorldMap::LeaveAreaSouth(unsigned long nMap, CResRef& cResArea)

void CWorldMap::LeaveAreaWest(unsigned long nMap, CResRef& cResArea)

void CWorldMap::Marshal()

void CWorldMap::SetEncounterProbability(CString& sFromArea, CString& sToArea, int nNewProbability)

void CWorldMap::SetExplorable(unsigned long nMap, unsigned long nLinkOffset, unsigned long nLinkCount)

void CWorldMap::SetResRef(CResRef& cResRef)


Constructors

Name

Description

CWorldMap::CWorldMap

Constructs a CWorldMap object

CWorldMap::CWorldMap

Destroys a CWorldMap object

CWorldMap::CWorldMap

Constructs a CWorldMap object

void CWorldMap::CWorldMap();

Remarks

Constructs a CWorldMap object


CWorldMap::~CWorldMap

Destroys the CWorldMap object

void CWorldMap::~CWorldMap();

Remarks

Destroys the CWorldMap object


Methods

Name

Description

CWorldMap::AddArea

CWorldMap::ClearData

CWorldMap::EnableArea

CWorldMap::EnterArea

CWorldMap::FindSourceAreaIndex

CWorldMap::GetAllLinks

CWorldMap::GetArea

CWorldMap::GetAreaIndex

CWorldMap::GetAreaNumber

CWorldMap::GetAreaPosition

CWorldMap::GetLink

CWorldMap::GetLinkIndex

CWorldMap::GetMap

CWorldMap::GetNumAreas

CWorldMap::GetShortestPath

CWorldMap::LeaveAreaEast

CWorldMap::LeaveAreaNorth

CWorldMap::LeaveAreaSouth

CWorldMap::LeaveAreaWest

CWorldMap::Marshal

CWorldMap::SetEncounterProbability

CWorldMap::SetExplorable

CWorldMap::SetResRef


CWorldMap::AddArea

Add an area to the world map

void CWorldMap::AddArea(
   unsigned long nMap,
   CWorldMapArea& cNewArea,
   CWorldMapLinks* pLinks,
   CWorldMapLinks* pNewLinksToArea,
   int nNumLinksTo);

Parameters

  • unsigned long nMap -

  • CWorldMapArea& cNewArea - new area to add to map

  • CWorldMapLinks* pLinks - pointer to an array of links for this area

  • CWorldMapLinks* pNewLinksToArea - pointer to an array of new links for this area

  • int nNumLinksTo - number of links in the pNewLinksToArea array

Remarks

The area added will be visible to players and any new links to this area will be updated to reflect the journey from any one area to this new area


CWorldMap::ClearData

void CWorldMap::ClearData();

Remarks


CWorldMap::EnableArea

Enable or disable a visible area from being accessable

void CWorldMap::EnableArea(
   unsigned long nMap,
   CResRef& cResArea,
   int bEnable);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea -

  • int bEnable - boolean true or false to enable or disable area

Remarks

A visible area may be set unavailable after some game story event has occured, or a visable area that is known or has been added to the world map may be unavailable until some game story condition has been satisfied or may only be available when party is at a neighbouring area.


CWorldMap::EnterArea

Enter the area specified

int CWorldMap::EnterArea(
   unsigned long nMap,
   CResRef& cResArea);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea - resource reference of area to be entered (loaded)

Return Value

Returns int

Remarks

The party enters the area after travelling or after resuming travel after a random encounter.


CWorldMap::FindSourceAreaIndex

unsigned long CWorldMap::FindSourceAreaIndex(
   unsigned long nMap,
   unsigned long nLink);

Parameters

  • unsigned long nMap -

  • unsigned long nLink -

Return Value

Returns unsigned long

Remarks


CWorldMap::GetArea

Return the CWorldMapArea object for the specified area

CWorldMapArea* CWorldMap::GetArea(
   unsigned long nMap,
   unsigned long nArea);

Parameters

  • unsigned long nMap -

  • unsigned long nArea -

Return Value

Returns CWorldMapArea*

Remarks


CWorldMap::GetAreaIndex

int CWorldMap::GetAreaIndex(
   unsigned long nMap,
   CResRef& cResArea,
   unsigned long& nArea);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea - resource reference of area

  • unsigned long& nArea -

Return Value

Returns int

Remarks


CWorldMap::GetAreaNumber

int CWorldMap::GetAreaNumber(
   unsigned long nMap,
   CString sAreaName);

Parameters

  • unsigned long nMap -

  • CString sAreaName - string containing area name

Return Value

Returns int

Remarks


CWorldMap::GetAreaPosition

Returns x and y coordinates on the world map of the specified area

CSize CWorldMap::GetAreaPosition(CWorldMapArea* pArea);

Parameters

Return Value

Returns CSize

Remarks

Note: Should return CPoint, but as structure members are same size as CSize doesnt really matter.


CWorldMap::GetLinkIndex

unsigned long CWorldMap::GetLinkIndex(
   unsigned long nMap,
   unsigned long nSrcArea,
   unsigned long nDstArea);

Parameters

  • unsigned long nMap -

  • unsigned long nSrcArea -

  • unsigned long nDstArea -

Return Value

Returns unsigned long

Remarks


CWorldMap::GetMap

Returns a pointer to a CWorldMapData object for the specified map

CWorldMap::GetMap(unsigned long nMap);

Parameters

  • unsigned long nMap -

Return Value

Returns CWorldMapData*

Remarks


CWorldMap::GetNumAreas

Returns number of area for a map

unsigned long CWorldMap::GetNumAreas(unsigned long nMap);

Parameters

  • unsigned long nMap -

Return Value

Returns unsigned long

Remarks


CWorldMap::GetShortestPath

CList* CWorldMap::GetShortestPath(
   unsigned long nMap,
   unsigned long nSrcArea,
   unsigned long nDstArea);

Parameters

  • unsigned long nMap -

  • unsigned long nSrcArea -

  • unsigned long nDstArea -

Return Value

Returns CList*

Remarks


CWorldMap::LeaveAreaEast

void CWorldMap::LeaveAreaEast(
   unsigned long nMap,
   CResRef& cResArea);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea - resource reference of area

Remarks


CWorldMap::LeaveAreaNorth

void CWorldMap::LeaveAreaNorth(
   unsigned long nMap,
   CResRef& cResArea);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea - resource reference of area

Remarks


CWorldMap::LeaveAreaSouth

void CWorldMap::LeaveAreaSouth(
   unsigned long nMap,
   CResRef& cResArea);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea - resource reference of area

Remarks


CWorldMap::LeaveAreaWest

void CWorldMap::LeaveAreaWest(
   unsigned long nMap,
   CResRef& cResArea);

Parameters

  • unsigned long nMap -

  • CResRef& cResArea - resource reference of area

Remarks


CWorldMap::Marshal

void CWorldMap::Marshal();

Remarks


CWorldMap::SetEncounterProbability

Set random encounter chance

void CWorldMap::SetEncounterProbability(
   CString& sFromArea,
   CString& sToArea,
   int nNewProbability);

Parameters

  • CString& sFromArea - string containing area travelling from

  • CString& sToArea - string containing area travelling to

  • int nNewProbability - random encounter chance

Remarks


CWorldMap::SetExplorable

void CWorldMap::SetExplorable(
   unsigned long nMap,
   unsigned long nLinkOffset,
   unsigned long nLinkCount);

Parameters

  • unsigned long nMap -

  • unsigned long nLinkOffset -

  • unsigned long nLinkCount -

Remarks


CWorldMap::SetResRef

Set the world map resource reference

void CWorldMap::SetResRef(CResRef& cResRef);

Parameters

  • CResRef& cResRef - resource reference of world map

Remarks