Simulator::cGameNounManager class

Base classes

class App::IMessageListener
An interface that can receive messages sent through the app.
class cStrategy

Public static functions

static auto Get() -> cGameNounManager*
Returns the active Simulator game noun manager.

Public functions

auto CreateInstance(uint32_t nounID) -> cGameData*
Creates an instance of a simulator object of the given type.
void DestroyInstance(cGameData* pInstance)
void UpdateModels()
template<class T>
auto GetData(ContainerCreateCallback_t<T> pCreate, ContainerClearCallback_t<T> pClear, ContainerAddCallback_t<T> pAdd, ContainerFilterCallback_t pFilter, uint32_t nounID) -> tGameDataVectorT<T>&
Gets all the game data objects that use the given game noun ID.
auto GetAvatar() -> cCreatureAnimal*
void SetAvatar(cCreatureAnimal* pAnimal)

Protected variables

hash_map<int, int> field_20
int field_40
int field_44
int field_48
int field_4C
int field_50
intrusive_ptr<cCreatureAnimal> mpAvatar
intrusive_ptr<Object> mpAvatarHerd
vector<intrusive_ptr<Object>> mPosseMembers
intrusive_ptr<Object> mpPlayerTribe
intrusive_ptr<Object> mpPlayer
intrusive_list<cGameData> mNouns
vector<intrusive_ptr<Object>> field_80
int field_94
map<uint32_t, tGameDataVectorT<cGameDataPtr>> mNounMap
map<int, int> mPoliticalMap
map<int, intrusive_ptr<Object>> field_D0
map<int, intrusive_ptr<Object>> field_EC
int field_108
list<intrusive_ptr<cGameData>> mObjects
int field_118

Function documentation

cGameData* Simulator::cGameNounManager::CreateInstance(uint32_t nounID)

Creates an instance of a simulator object of the given type.

Parameters
nounID The ID of the object to create.
Returns The created object, as a Simulator::cGameData*.

The noun ID is one of the values in the Simulator::GameNounIDs enum.

template<class T>
tGameDataVectorT<T>& Simulator::cGameNounManager::GetData(ContainerCreateCallback_t<T> pCreate, ContainerClearCallback_t<T> pClear, ContainerAddCallback_t<T> pAdd, ContainerFilterCallback_t pFilter, uint32_t nounID)

Gets all the game data objects that use the given game noun ID.

To be more specific, first a container is created with the pCreate callback; then