Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Sim Class Reference

#include <Sim.h>

Inheritance diagram for Sim:
Universe

List of all members.

Public Types

enum  { REAL_SPACE, AIR_SPACE }

Public Member Functions

 Sim (MotionController *ctrl)
virtual ~Sim ()
virtual void ExecFrame (double seconds)
void LoadMission (Mission *msn, bool preload_textures=false)
void ExecMission ()
void CommitMission ()
void UnloadMission ()
void NextView ()
void ShowGrid (int show=true)
bool GridShown () const
const char * FindAvailCallsign (int IFF)
ElementCreateElement (const char *callsign, int IFF, int type=0)
void DestroyElement (Element *elem)
ShipCreateShip (const char *name, const char *reg_num, ShipDesign *design, const char *rgn_name, const Point &loc, int IFF=0, int cmd_ai=0, const int *loadout=0)
ShipFindShip (const char *name, const char *rgn_name=0)
ShotCreateShot (const Point &pos, const Camera &shot_cam, WeaponDesign *d, const Ship *ship=0, SimRegion *rgn=0)
ExplosionCreateExplosion (const Point &pos, const Point &vel, int type, float exp_scale, float part_scale, SimRegion *rgn=0, SimObject *source=0, System *sys=0)
DebrisCreateDebris (const Point &pos, const Point &vel, Model *model, double mass, SimRegion *rgn=0)
AsteroidCreateAsteroid (const Point &pos, int type, double mass, SimRegion *rgn=0)
void CreateSplashDamage (Ship *ship)
void CreateSplashDamage (Shot *shot)
void DestroyShip (Ship *ship)
void NetDockShip (Ship *ship, Ship *carrier, FlightDeck *deck)
virtual ShipFindShipByObjID (DWORD objid)
virtual ShotFindShotByObjID (DWORD objid)
MissionGetMission ()
List< MissionEvent > & GetEvents ()
List< SimRegion > & GetRegions ()
SimRegionFindRegion (const char *name)
SimRegionFindRegion (OrbitalRegion *rgn)
SimRegionFindNearestSpaceRegion (SimObject *object)
SimRegionFindNearestSpaceRegion (Orbital *body)
SimRegionFindNearestTerrainRegion (SimObject *object)
SimRegionFindNearestRegion (SimObject *object, int type)
bool ActivateRegion (SimRegion *rgn)
void RequestHyperJump (Ship *obj, SimRegion *rgn, const Point &loc, int type=0, Ship *fc_src=0, Ship *fc_dst=0)
SimRegionGetActiveRegion ()
StarSystemGetStarSystem ()
List< StarSystem > & GetSystemList ()
SceneGetScene ()
ShipGetPlayerShip ()
ElementGetPlayerElement ()
OrbitalFindOrbitalBody (const char *name)
void SetSelection (Ship *s)
bool IsSelected (Ship *s)
ListIter< ShipGetSelection ()
void ClearSelection ()
void AddSelection (Ship *s)
void SetTestMode (bool t=true)
bool IsTestMode () const
bool IsNetGame () const
bool IsActive () const
bool IsComplete () const
MotionControllerGetControls () const
ElementFindElement (const char *name)
List< Element > & GetElements ()
int GetAssignedElements (Element *elem, List< Element > &assigned)
void SkipCutscene ()
void ResolveTimeSkip (double seconds)
void ResolveHyperList ()
void ResolveSplashList ()
void ExecEvents (double seconds)
void ProcessEventTrigger (int type, int event_id=0, const char *ship=0, int param=0)
double MissionClock () const
DWORD StartTime () const
ListIter< MissionElementGetMissionElements ()
- Public Member Functions inherited from Universe
 Universe ()
virtual ~Universe ()

Static Public Member Functions

static SimGetSim ()

Protected Member Functions

void CreateRegions ()
void CreateElements ()
void CopyEvents ()
void BuildLinks ()
MissionElementCreateMissionElement (Element *elem)
HangarFindSquadron (const char *name, int &index)

Protected Attributes

SimRegionactive_region
StarSystemstar_system
Scene scene
Dustdust
CameraDirectorcam_dir
List< SimRegionregions
List< SimRegionrgn_queue
List< SimHyperjumplist
List< SimSplashsplashlist
List< Elementelements
List< Elementfinished
List< MissionEventevents
List< MissionElementmission_elements
MotionControllerctrl
bool test_mode
bool grid_shown
Missionmission
NetGamenetgame
DWORD start_time

Static Protected Attributes

static Simsim = 0

Friends

class SimRegion

Detailed Description

Definition at line 69 of file Sim.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
REAL_SPACE 
AIR_SPACE 

Definition at line 74 of file Sim.h.


Constructor & Destructor Documentation

Sim::Sim ( MotionController ctrl)

Definition at line 123 of file Sim.cpp.

Sim::~Sim ( )
virtual

Definition at line 142 of file Sim.cpp.


Member Function Documentation

bool Sim::ActivateRegion ( SimRegion rgn)

Definition at line 1444 of file Sim.cpp.

void Sim::AddSelection ( Ship s)

Definition at line 1319 of file Sim.cpp.

void Sim::BuildLinks ( )
protected

Definition at line 459 of file Sim.cpp.

void Sim::ClearSelection ( )

Definition at line 1312 of file Sim.cpp.

void Sim::CommitMission ( )

Definition at line 159 of file Sim.cpp.

void Sim::CopyEvents ( )
protected

Definition at line 902 of file Sim.cpp.

Asteroid * Sim::CreateAsteroid ( const Point pos,
int  type,
double  mass,
SimRegion rgn = 0 
)

Definition at line 1153 of file Sim.cpp.

Debris * Sim::CreateDebris ( const Point pos,
const Point vel,
Model model,
double  mass,
SimRegion rgn = 0 
)

Definition at line 1137 of file Sim.cpp.

Element * Sim::CreateElement ( const char *  callsign,
int  IFF,
int  type = 0 
)

Definition at line 934 of file Sim.cpp.

void Sim::CreateElements ( )
protected

Definition at line 481 of file Sim.cpp.

Explosion * Sim::CreateExplosion ( const Point pos,
const Point vel,
int  type,
float  exp_scale,
float  part_scale,
SimRegion rgn = 0,
SimObject source = 0,
System sys = 0 
)

Definition at line 1117 of file Sim.cpp.

MissionElement * Sim::CreateMissionElement ( Element elem)
protected

Definition at line 2025 of file Sim.cpp.

void Sim::CreateRegions ( )
protected

Definition at line 406 of file Sim.cpp.

Ship * Sim::CreateShip ( const char *  name,
const char *  reg_num,
ShipDesign design,
const char *  rgn_name,
const Point loc,
int  IFF = 0,
int  cmd_ai = 0,
const int *  loadout = 0 
)

Definition at line 987 of file Sim.cpp.

Shot * Sim::CreateShot ( const Point pos,
const Camera shot_cam,
WeaponDesign d,
const Ship ship = 0,
SimRegion rgn = 0 
)

Definition at line 1096 of file Sim.cpp.

void Sim::CreateSplashDamage ( Ship ship)

Definition at line 1169 of file Sim.cpp.

void Sim::CreateSplashDamage ( Shot shot)

Definition at line 1186 of file Sim.cpp.

void Sim::DestroyElement ( Element elem)

Definition at line 942 of file Sim.cpp.

void Sim::DestroyShip ( Ship ship)

Definition at line 1035 of file Sim.cpp.

void Sim::ExecEvents ( double  seconds)

Definition at line 1583 of file Sim.cpp.

void Sim::ExecFrame ( double  seconds)
virtual

Reimplemented from Universe.

Definition at line 1490 of file Sim.cpp.

void Sim::ExecMission ( )

Definition at line 352 of file Sim.cpp.

const char * Sim::FindAvailCallsign ( int  IFF)

Definition at line 919 of file Sim.cpp.

Element * Sim::FindElement ( const char *  name)

Definition at line 951 of file Sim.cpp.

SimRegion * Sim::FindNearestRegion ( SimObject object,
int  type 
)

Definition at line 1386 of file Sim.cpp.

SimRegion * Sim::FindNearestSpaceRegion ( SimObject object)

Definition at line 1374 of file Sim.cpp.

SimRegion * Sim::FindNearestSpaceRegion ( Orbital body)

Definition at line 1417 of file Sim.cpp.

SimRegion * Sim::FindNearestTerrainRegion ( SimObject object)

Definition at line 1380 of file Sim.cpp.

Orbital * Sim::FindOrbitalBody ( const char *  name)

Definition at line 1077 of file Sim.cpp.

SimRegion * Sim::FindRegion ( const char *  name)

Definition at line 1350 of file Sim.cpp.

SimRegion * Sim::FindRegion ( OrbitalRegion rgn)

Definition at line 1361 of file Sim.cpp.

Ship * Sim::FindShip ( const char *  name,
const char *  rgn_name = 0 
)

Definition at line 1015 of file Sim.cpp.

Ship * Sim::FindShipByObjID ( DWORD  objid)
virtual

Definition at line 1051 of file Sim.cpp.

Shot * Sim::FindShotByObjID ( DWORD  objid)
virtual

Definition at line 1063 of file Sim.cpp.

Hangar * Sim::FindSquadron ( const char *  name,
int &  index 
)
protected

Definition at line 2202 of file Sim.cpp.

SimRegion* Sim::GetActiveRegion ( )
inline

Definition at line 134 of file Sim.h.

int Sim::GetAssignedElements ( Element elem,
List< Element > &  assigned 
)

Definition at line 969 of file Sim.cpp.

MotionController* Sim::GetControls ( ) const
inline

Definition at line 155 of file Sim.h.

List<Element>& Sim::GetElements ( )
inline

Definition at line 158 of file Sim.h.

List<MissionEvent>& Sim::GetEvents ( )
inline

Definition at line 117 of file Sim.h.

Mission* Sim::GetMission ( )
inline

Definition at line 116 of file Sim.h.

ListIter< MissionElement > Sim::GetMissionElements ( )

Definition at line 1996 of file Sim.cpp.

Element * Sim::GetPlayerElement ( )

Definition at line 1278 of file Sim.cpp.

Ship * Sim::GetPlayerShip ( )

Definition at line 1257 of file Sim.cpp.

List<SimRegion>& Sim::GetRegions ( )
inline

Definition at line 118 of file Sim.h.

Scene* Sim::GetScene ( )
inline

Definition at line 137 of file Sim.h.

ListIter< Ship > Sim::GetSelection ( )

Definition at line 1302 of file Sim.cpp.

static Sim* Sim::GetSim ( )
inlinestatic

Definition at line 79 of file Sim.h.

StarSystem* Sim::GetStarSystem ( )
inline

Definition at line 135 of file Sim.h.

List< StarSystem > & Sim::GetSystemList ( )

Definition at line 1238 of file Sim.cpp.

bool Sim::GridShown ( ) const

Definition at line 1230 of file Sim.cpp.

bool Sim::IsActive ( ) const

Definition at line 283 of file Sim.cpp.

bool Sim::IsComplete ( ) const

Definition at line 289 of file Sim.cpp.

bool Sim::IsNetGame ( ) const
inline

Definition at line 151 of file Sim.h.

bool Sim::IsSelected ( Ship s)

Definition at line 1293 of file Sim.cpp.

bool Sim::IsTestMode ( ) const
inline

Definition at line 150 of file Sim.h.

void Sim::LoadMission ( Mission msn,
bool  preload_textures = false 
)

Definition at line 297 of file Sim.cpp.

double Sim::MissionClock ( ) const

Definition at line 1896 of file Sim.cpp.

void Sim::NetDockShip ( Ship ship,
Ship carrier,
FlightDeck deck 
)

Definition at line 1043 of file Sim.cpp.

void Sim::NextView ( )

Definition at line 1250 of file Sim.cpp.

void Sim::ProcessEventTrigger ( int  type,
int  event_id = 0,
const char *  ship = 0,
int  param = 0 
)

Definition at line 1856 of file Sim.cpp.

void Sim::RequestHyperJump ( Ship obj,
SimRegion rgn,
const Point loc,
int  type = 0,
Ship fc_src = 0,
Ship fc_dst = 0 
)

Definition at line 1476 of file Sim.cpp.

void Sim::ResolveHyperList ( )

Definition at line 1593 of file Sim.cpp.

void Sim::ResolveSplashList ( )

Definition at line 1745 of file Sim.cpp.

void Sim::ResolveTimeSkip ( double  seconds)

Definition at line 1943 of file Sim.cpp.

void Sim::SetSelection ( Ship s)

Definition at line 1326 of file Sim.cpp.

void Sim::SetTestMode ( bool  t = true)

Definition at line 1335 of file Sim.cpp.

void Sim::ShowGrid ( int  show = true)

Definition at line 1212 of file Sim.cpp.

void Sim::SkipCutscene ( )

Definition at line 1904 of file Sim.cpp.

DWORD Sim::StartTime ( ) const
inline

Definition at line 170 of file Sim.h.

void Sim::UnloadMission ( )

Definition at line 229 of file Sim.cpp.


Friends And Related Function Documentation

friend class SimRegion
friend

Definition at line 71 of file Sim.h.


Member Data Documentation

SimRegion* Sim::active_region
protected

Definition at line 188 of file Sim.h.

CameraDirector* Sim::cam_dir
protected

Definition at line 192 of file Sim.h.

MotionController* Sim::ctrl
protected

Definition at line 203 of file Sim.h.

Dust* Sim::dust
protected

Definition at line 191 of file Sim.h.

List<Element> Sim::elements
protected

Definition at line 198 of file Sim.h.

List<MissionEvent> Sim::events
protected

Definition at line 200 of file Sim.h.

List<Element> Sim::finished
protected

Definition at line 199 of file Sim.h.

bool Sim::grid_shown
protected

Definition at line 206 of file Sim.h.

List<SimHyper> Sim::jumplist
protected

Definition at line 196 of file Sim.h.

Mission* Sim::mission
protected

Definition at line 207 of file Sim.h.

List<MissionElement> Sim::mission_elements
protected

Definition at line 201 of file Sim.h.

NetGame* Sim::netgame
protected

Definition at line 209 of file Sim.h.

List<SimRegion> Sim::regions
protected

Definition at line 194 of file Sim.h.

List<SimRegion> Sim::rgn_queue
protected

Definition at line 195 of file Sim.h.

Scene Sim::scene
protected

Definition at line 190 of file Sim.h.

Sim * Sim::sim = 0
staticprotected

Definition at line 187 of file Sim.h.

List<SimSplash> Sim::splashlist
protected

Definition at line 197 of file Sim.h.

StarSystem* Sim::star_system
protected

Definition at line 189 of file Sim.h.

DWORD Sim::start_time
protected

Definition at line 210 of file Sim.h.

bool Sim::test_mode
protected

Definition at line 205 of file Sim.h.


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