Colobot
Public Member Functions | List of all members
CObjectManager Class Reference

Manages CObject instances. More...

#include <object_manager.h>

Inheritance diagram for CObjectManager:
Inheritance graph
[legend]

Public Member Functions

 CObjectManager (Gfx::CEngine *engine, Gfx::CTerrain *terrain, Gfx::COldModelManager *oldModelManager, Gfx::CModelManager *modelManager, Gfx::CParticle *particle)
 
bool DeleteObject (CObject *instance)
 Deletes the object. More...
 
void DeleteAllObjects ()
 Deletes all objects. More...
 
CObjectGetObjectById (unsigned int id)
 Finds object by id (CObject::GetID()) More...
 
CObjectGetObjectByRank (unsigned int id)
 Gets object by id in range <0; number of objects - 1> More...
 
std::vector< CObject * > GetObjectsOfTeam (int team)
 Gets all objects of given team. More...
 
bool TeamExists (int team)
 Checks if any of team's objects exist. More...
 
void DestroyTeam (int team)
 Destroy all objects of team. More...
 
int CountObjectsImplementing (ObjectInterfaceType interface)
 Counts all objects implementing given interface. More...
 
CObjectContainerProxy GetAllObjects ()
 Returns all objects. More...
 
CObjectCreateObject (ObjectCreateParams params)
 Creates an object. More...
 
CObjectCreateObject (Math::Vector pos, float angle, ObjectType type, float power=-1.0f)
 
std::vector< CObject * > RadarAll (CObject *pThis, ObjectType type=OBJECT_NULL, float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 Finds an object, like radar() in CBot. More...
 
std::vector< CObject * > RadarAll (CObject *pThis, std::vector< ObjectType > type=std::vector< ObjectType >(), float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 
std::vector< CObject * > RadarAll (CObject *pThis, Math::Vector thisPosition, float thisAngle, ObjectType type=OBJECT_NULL, float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 
std::vector< CObject * > RadarAll (CObject *pThis, Math::Vector thisPosition, float thisAngle, std::vector< ObjectType > type=std::vector< ObjectType >(), float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 
CObjectRadar (CObject *pThis, ObjectType type=OBJECT_NULL, float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 Finds an object, like radar() in CBot. More...
 
CObjectRadar (CObject *pThis, std::vector< ObjectType > type=std::vector< ObjectType >(), float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 
CObjectRadar (CObject *pThis, Math::Vector thisPosition, float thisAngle, ObjectType type=OBJECT_NULL, float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 
CObjectRadar (CObject *pThis, Math::Vector thisPosition, float thisAngle, std::vector< ObjectType > type=std::vector< ObjectType >(), float angle=0.0f, float focus=Math::PI *2.0f, float minDist=0.0f, float maxDist=1000.0f, bool furthest=false, RadarFilter filter=FILTER_NONE, bool cbotTypes=false)
 
CObjectFindNearest (CObject *pThis, ObjectType type=OBJECT_NULL, float maxDist=1000.0f, bool cbotTypes=false)
 Returns nearest object that's closer than maxDist. More...
 
CObjectFindNearest (CObject *pThis, std::vector< ObjectType > type=std::vector< ObjectType >(), float maxDist=1000.0f, bool cbotTypes=false)
 
CObjectFindNearest (CObject *pThis, Math::Vector thisPosition, ObjectType type=OBJECT_NULL, float maxDist=1000.0f, bool cbotTypes=false)
 
CObjectFindNearest (CObject *pThis, Math::Vector thisPosition, std::vector< ObjectType > type=std::vector< ObjectType >(), float maxDist=1000.0f, bool cbotTypes=false)
 

Additional Inherited Members

- Static Public Member Functions inherited from CSingleton< CObjectManager >
static CObjectManagerGetInstance ()
 
static CObjectManagerGetInstancePointer ()
 
static bool IsCreated ()
 
- Static Protected Attributes inherited from CSingleton< CObjectManager >
static CObjectManagerm_instance = nullptr
 

Detailed Description

Manages CObject instances.

Member Function Documentation

CObject * CObjectManager::CreateObject ( ObjectCreateParams  params)

Creates an object.

bool CObjectManager::DeleteObject ( CObject instance)

Deletes the object.

void CObjectManager::DeleteAllObjects ( )

Deletes all objects.

CObject * CObjectManager::GetObjectById ( unsigned int  id)

Finds object by id (CObject::GetID())

CObject * CObjectManager::GetObjectByRank ( unsigned int  id)

Gets object by id in range <0; number of objects - 1>

std::vector< CObject * > CObjectManager::GetObjectsOfTeam ( int  team)

Gets all objects of given team.

bool CObjectManager::TeamExists ( int  team)

Checks if any of team's objects exist.

void CObjectManager::DestroyTeam ( int  team)

Destroy all objects of team.

int CObjectManager::CountObjectsImplementing ( ObjectInterfaceType  interface)

Counts all objects implementing given interface.

CObjectContainerProxy CObjectManager::GetAllObjects ( )
inline

Returns all objects.

std::vector< CObject * > CObjectManager::RadarAll ( CObject pThis,
ObjectType  type = OBJECT_NULL,
float  angle = 0.0f,
float  focus = Math::PI*2.0f,
float  minDist = 0.0f,
float  maxDist = 1000.0f,
bool  furthest = false,
RadarFilter  filter = FILTER_NONE,
bool  cbotTypes = false 
)

Finds an object, like radar() in CBot.

CObject * CObjectManager::Radar ( CObject pThis,
ObjectType  type = OBJECT_NULL,
float  angle = 0.0f,
float  focus = Math::PI*2.0f,
float  minDist = 0.0f,
float  maxDist = 1000.0f,
bool  furthest = false,
RadarFilter  filter = FILTER_NONE,
bool  cbotTypes = false 
)

Finds an object, like radar() in CBot.

CObject * CObjectManager::FindNearest ( CObject pThis,
ObjectType  type = OBJECT_NULL,
float  maxDist = 1000.0f,
bool  cbotTypes = false 
)

Returns nearest object that's closer than maxDist.


The documentation for this class was generated from the following files: