Skyscraper 2.0
|
#include <shaft.h>
Public Member Functions | |
Level (Shaft *parent, int number) | |
~Level () | |
Wall * | AddWall (const std::string &name, const std::string &texture, Real thickness, Real x1, Real z1, Real x2, Real z2, Real height1, Real height2, Real voffset1, Real voffset2, Real tw, Real th) |
bool | AddWall (Wall *wall, const std::string &name, const std::string &texture, Real thickness, Real x1, Real z1, Real x2, Real z2, Real height1, Real height2, Real voffset1, Real voffset2, Real tw, Real th) |
Wall * | AddFloor (const std::string &name, const std::string &texture, Real thickness, Real x1, Real z1, Real x2, Real z2, Real voffset1, Real voffset2, bool reverse_axis, bool texture_direction, Real tw, Real th, bool legacy_behavior=false) |
bool | AddFloor (Wall *wall, const std::string &name, const std::string &texture, Real thickness, Real x1, Real z1, Real x2, Real z2, Real voffset1, Real voffset2, bool reverse_axis, bool texture_direction, Real tw, Real th, bool legacy_behavior=false) |
void | Enabled (bool value, bool EnableShaftDoors) |
bool | Cut (bool relative, const Vector3 &start, const Vector3 &end, bool cutwalls, bool cutfloors, int checkwallnumber=0) |
bool | IsEnabled () |
void | RemoveLight (Light *light) |
void | RemoveModel (Model *model) |
void | RemovePrimitive (Primitive *prim) |
void | RemoveCustomObject (CustomObject *object) |
void | RemoveControl (Control *control) |
void | RemoveTrigger (Trigger *trigger) |
MeshObject * | GetMeshObject () |
Light * | AddLight (const std::string &name, int type) |
Light * | GetLight (const std::string &name) |
Model * | AddModel (const std::string &name, const std::string &filename, bool center, Vector3 position, Vector3 rotation, Real max_render_distance=0, Real scale_multiplier=1, bool enable_physics=false, Real restitution=0, Real friction=0, Real mass=0) |
void | AddModel (Model *model) |
Primitive * | AddPrimitive (const std::string &name) |
void | AddPrimitive (Primitive *primitive) |
CustomObject * | AddCustomObject (const std::string &name, const Vector3 &position, const Vector3 &rotation, Real max_render_distance=0, Real scale_multiplier=1) |
void | AddCustomObject (CustomObject *object) |
Control * | AddControl (const std::string &name, const std::string &sound, const std::string &direction, Real CenterX, Real CenterZ, Real width, Real height, Real voffset, int selection_position, std::vector< std::string > &action_names, std::vector< std::string > &textures) |
Trigger * | AddTrigger (const std::string &name, const std::string &sound_file, Vector3 &area_min, Vector3 &area_max, std::vector< std::string > &action_names) |
void | ReplaceTexture (const std::string &oldtexture, const std::string &newtexture) |
Door * | AddDoor (std::string name, const std::string &open_sound, const std::string &close_sound, bool open_state, const std::string &texture, const std::string &side_texture, Real thickness, const std::string &face_direction, const std::string &open_direction, bool rotate, Real open_speed, Real close_speed, Real CenterX, Real CenterZ, Real width, Real height, Real voffset, Real tw, Real th, Real side_tw, Real side_th) |
Door * | CreateDoor (std::string name, const std::string &open_sound, const std::string &close_sound, bool rotate) |
Door * | GetDoor (const std::string &name) |
void | RemoveDoor (Door *door) |
Model * | GetModel (std::string name) |
Primitive * | GetPrimitive (std::string name) |
CustomObject * | GetCustomObject (std::string name) |
int | GetFloor () |
void | Loop () |
CameraTexture * | AddCameraTexture (const std::string &name, int quality, Real fov, const Vector3 &position, bool use_rotation, const Vector3 &rotation) |
void | RemoveCameraTexture (CameraTexture *camtex) |
![]() | |
Object (Object *parent) | |
virtual | ~Object () |
void | SetValues (const std::string &type, const std::string &name, bool is_permanent, bool is_movable=true) |
bool | IsPermanent () |
bool | IsMovable () |
const std::string & | GetType () |
int | GetNumber () |
void | AddChild (Object *object) |
Object * | GetChild (int index) |
int | GetChildrenCount () |
void | RemoveChild (Object *object) |
SceneNode * | GetSceneNode () |
void | ShowBoundingBox (bool value) |
virtual void | Move (const Vector3 &vector, Real speed=1.0) |
virtual void | Move (Real X, Real Y, Real Z, Real speed=1.0) |
virtual void | SetPosition (const Vector3 &position) |
void | SetPositionRelative (const Vector3 &position) |
virtual void | SetPosition (Real X, Real Y, Real Z) |
void | SetPositionRelative (Real X, Real Y, Real Z) |
virtual void | SetPositionY (Real value) |
virtual Vector3 | GetPosition (bool relative=false) |
virtual void | Rotate (const Vector3 &vector, Real speed=1.0) |
virtual void | Rotate (Real X, Real Y, Real Z, Real speed=1.0) |
virtual void | SetRotation (const Vector3 &rotation) |
virtual void | SetRotation (Real X, Real Y, Real Z) |
virtual Vector3 | GetRotation () |
Quaternion | GetOrientation (bool relative=false) |
void | SetOrientation (const Quaternion &q, bool relative=false) |
virtual void | OnMove (bool parent) |
virtual void | OnRotate (bool parent) |
virtual void | OnClick (Vector3 &position, bool shift, bool ctrl, bool alt, bool right) |
virtual void | OnUnclick (bool right) |
virtual void | OnHit () |
void | NotifyMove (bool parent=false) |
void | NotifyRotate (bool parent=false) |
virtual void | ResetState () |
void | ChangeParent (Object *new_parent) |
bool | IsGlobal () |
void | Init (bool children=true) |
virtual void | OnInit () |
void | RegisterLoop (Object *object) |
void | UnregisterLoop (Object *object) |
virtual void | Enabled (bool value) |
std::string | GetNameBase () |
template<typename T > | |
bool | IsType () |
template<typename T > | |
T * | ConvertTo () |
![]() | |
ObjectBase (Object *parent) | |
virtual | ~ObjectBase () |
Object * | GetParent () |
SBS * | GetRoot () |
void | SetName (const std::string &name) |
const std::string & | GetName () |
std::string | GetNameBase () |
virtual void | Report (const std::string &message) |
virtual bool | ReportError (const std::string &message) |
Public Attributes | |
bool | enabled |
![]() | |
std::string | command |
std::string | command_processed |
std::string | context |
int | linenum |
std::string | includefile |
bool | parent_deleting |
Private Attributes | |
MeshObject * | mesh |
std::vector< Door * > | DoorArray |
std::vector< Light * > | lights |
std::vector< Model * > | ModelArray |
std::vector< Primitive * > | PrimArray |
std::vector< CustomObject * > | CustomObjectArray |
std::vector< Control * > | ControlArray |
std::vector< CameraTexture * > | CameraTextureArray |
int | floornum |
Shaft * | parent |
Additional Inherited Members | |
![]() | |
void | EnableLoop (bool value) |
void | LoopChildren () |
bool | SelfDestruct () |
![]() | |
SBS * | sbs |
SBS::Shaft::Level::Level | ( | Shaft * | parent, |
int | number ) |
Definition at line 674 of file shaft.cpp.
References SBS::Floor::Altitude, enabled, SBS::Object::EnableLoop(), floornum, SBS::Shaft::GetDynamicMesh(), SBS::SBS::GetFloor(), SBS::ObjectBase::GetName(), mesh, parent, SBS::ObjectBase::sbs, SBS::ObjectBase::SetName(), SBS::Object::SetPositionY(), SBS::Object::SetValues(), SBS::Shaft::ShaftNumber, and SBS::ToString().
CameraTexture * SBS::Shaft::Level::AddCameraTexture | ( | const std::string & | name, |
int | quality, | ||
Real | fov, | ||
const Vector3 & | position, | ||
bool | use_rotation, | ||
const Vector3 & | rotation ) |
Definition at line 1338 of file shaft.cpp.
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
Control * SBS::Shaft::Level::AddControl | ( | const std::string & | name, |
const std::string & | sound, | ||
const std::string & | direction, | ||
Real | CenterX, | ||
Real | CenterZ, | ||
Real | width, | ||
Real | height, | ||
Real | voffset, | ||
int | selection_position, | ||
std::vector< std::string > & | action_names, | ||
std::vector< std::string > & | textures ) |
Definition at line 1152 of file shaft.cpp.
References SBS::Object::Move().
Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().
CustomObject * SBS::Shaft::Level::AddCustomObject | ( | const std::string & | name, |
const Vector3 & | position, | ||
const Vector3 & | rotation, | ||
Real | max_render_distance = 0, | ||
Real | scale_multiplier = 1 ) |
Definition at line 1128 of file shaft.cpp.
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
void SBS::Shaft::Level::AddCustomObject | ( | CustomObject * | object | ) |
Door * SBS::Shaft::Level::AddDoor | ( | std::string | name, |
const std::string & | open_sound, | ||
const std::string & | close_sound, | ||
bool | open_state, | ||
const std::string & | texture, | ||
const std::string & | side_texture, | ||
Real | thickness, | ||
const std::string & | face_direction, | ||
const std::string & | open_direction, | ||
bool | rotate, | ||
Real | open_speed, | ||
Real | close_speed, | ||
Real | CenterX, | ||
Real | CenterZ, | ||
Real | width, | ||
Real | height, | ||
Real | voffset, | ||
Real | tw, | ||
Real | th, | ||
Real | side_tw, | ||
Real | side_th ) |
Definition at line 1241 of file shaft.cpp.
References SBS::Utility::AddDoorwayWalls(), SBS::Door::CreateDoor(), SBS::Floor::Cut(), SBS::Floor::GetBase(), SBS::SBS::GetFloor(), SBS::Object::GetPosition(), SBS::SBS::GetUtility(), SBS::Utility::ResetDoorwayWalls(), SBS::ObjectBase::sbs, and SBS::ToString().
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run(), and Skyscraper::ScriptProcessor::FloorSection::Run().
Wall * SBS::Shaft::Level::AddFloor | ( | const std::string & | name, |
const std::string & | texture, | ||
Real | thickness, | ||
Real | x1, | ||
Real | z1, | ||
Real | x2, | ||
Real | z2, | ||
Real | voffset1, | ||
Real | voffset2, | ||
bool | reverse_axis, | ||
bool | texture_direction, | ||
Real | tw, | ||
Real | th, | ||
bool | legacy_behavior = false ) |
Definition at line 812 of file shaft.cpp.
Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().
bool SBS::Shaft::Level::AddFloor | ( | Wall * | wall, |
const std::string & | name, | ||
const std::string & | texture, | ||
Real | thickness, | ||
Real | x1, | ||
Real | z1, | ||
Real | x2, | ||
Real | z2, | ||
Real | voffset1, | ||
Real | voffset2, | ||
bool | reverse_axis, | ||
bool | texture_direction, | ||
Real | tw, | ||
Real | th, | ||
bool | legacy_behavior = false ) |
Definition at line 826 of file shaft.cpp.
References SBS::SBS::AddFloorMain(), SBS::Floor::Altitude, SBS::Shaft::bottom, SBS::SBS::GetFloor(), and SBS::ObjectBase::sbs.
Light * SBS::Shaft::Level::AddLight | ( | const std::string & | name, |
int | type ) |
Definition at line 1055 of file shaft.cpp.
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
Model * SBS::Shaft::Level::AddModel | ( | const std::string & | name, |
const std::string & | filename, | ||
bool | center, | ||
Vector3 | position, | ||
Vector3 | rotation, | ||
Real | max_render_distance = 0, | ||
Real | scale_multiplier = 1, | ||
bool | enable_physics = false, | ||
Real | restitution = 0, | ||
Real | friction = 0, | ||
Real | mass = 0 ) |
Definition at line 1074 of file shaft.cpp.
References SBS::Model::load_error.
Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().
Primitive * SBS::Shaft::Level::AddPrimitive | ( | const std::string & | name | ) |
Definition at line 1104 of file shaft.cpp.
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
void SBS::Shaft::Level::AddPrimitive | ( | Primitive * | primitive | ) |
Wall * SBS::Shaft::Level::AddWall | ( | const std::string & | name, |
const std::string & | texture, | ||
Real | thickness, | ||
Real | x1, | ||
Real | z1, | ||
Real | x2, | ||
Real | z2, | ||
Real | height1, | ||
Real | height2, | ||
Real | voffset1, | ||
Real | voffset2, | ||
Real | tw, | ||
Real | th ) |
Definition at line 789 of file shaft.cpp.
Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().
bool SBS::Shaft::Level::AddWall | ( | Wall * | wall, |
const std::string & | name, | ||
const std::string & | texture, | ||
Real | thickness, | ||
Real | x1, | ||
Real | z1, | ||
Real | x2, | ||
Real | z2, | ||
Real | height1, | ||
Real | height2, | ||
Real | voffset1, | ||
Real | voffset2, | ||
Real | tw, | ||
Real | th ) |
Definition at line 803 of file shaft.cpp.
References SBS::SBS::AddWallMain(), and SBS::ObjectBase::sbs.
Door * SBS::Shaft::Level::CreateDoor | ( | std::string | name, |
const std::string & | open_sound, | ||
const std::string & | close_sound, | ||
bool | rotate ) |
Definition at line 1301 of file shaft.cpp.
References SBS::ToString().
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
bool SBS::Shaft::Level::Cut | ( | bool | relative, |
const Vector3 & | start, | ||
const Vector3 & | end, | ||
bool | cutwalls, | ||
bool | cutfloors, | ||
int | checkwallnumber = 0 ) |
Definition at line 930 of file shaft.cpp.
References SBS::Utility::Cut(), SBS::SBS::GetFloor(), SBS::Object::GetPosition(), SBS::SBS::GetUtility(), and SBS::ObjectBase::sbs.
Referenced by SBS::Floor::CutAll(), and SBS::ElevatorDoor::FinishDoors().
void SBS::Shaft::Level::Enabled | ( | bool | value, |
bool | EnableShaftDoors ) |
Definition at line 848 of file shaft.cpp.
References SBS::Elevator::GetCar(), SBS::Elevator::GetCarCount(), SBS::SBS::GetElevator(), SBS::Shaft::IsEnabled, SBS::ObjectBase::sbs, SBS_PROFILE, SBS::ElevatorCar::ServicedFloors, and SBS::ElevatorCar::ShaftDoorsEnabled().
Referenced by SBS::Floor::EnableGroup(), SBS::Shaft::EnableRange(), SBS::Shaft::EnableWhole(), and Skyscraper::MeshControl::On_chkShafts_Click().
CustomObject * SBS::Shaft::Level::GetCustomObject | ( | std::string | name | ) |
Definition at line 1209 of file shaft.cpp.
References SBS::ObjectBase::GetName(), SBS::SetCase(), and SBS::SetCaseCopy().
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
Door * SBS::Shaft::Level::GetDoor | ( | const std::string & | name | ) |
Definition at line 1315 of file shaft.cpp.
References SBS::ObjectBase::GetName().
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
Light * SBS::Shaft::Level::GetLight | ( | const std::string & | name | ) |
Definition at line 1064 of file shaft.cpp.
References SBS::ObjectBase::GetName().
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
MeshObject * SBS::Shaft::Level::GetMeshObject | ( | ) |
Definition at line 1048 of file shaft.cpp.
Referenced by SBS::Elevator::AddRails(), SBS::ElevatorDoor::AddShaftDoorComponent(), SBS::ElevatorDoor::FinishDoors(), and Skyscraper::ScriptProcessor::Section::GetMeshObject().
Model * SBS::Shaft::Level::GetModel | ( | std::string | name | ) |
Definition at line 1179 of file shaft.cpp.
References SBS::ObjectBase::GetName(), SBS::SetCase(), and SBS::SetCaseCopy().
Referenced by Skyscraper::ScriptProcessor::Section::GetMeshObject().
Primitive * SBS::Shaft::Level::GetPrimitive | ( | std::string | name | ) |
Definition at line 1194 of file shaft.cpp.
References SBS::ObjectBase::GetName(), SBS::SetCase(), and SBS::SetCaseCopy().
Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().
|
virtual |
Reimplemented from SBS::Object.
Definition at line 1234 of file shaft.cpp.
References SBS::Object::LoopChildren().
void SBS::Shaft::Level::RemoveCameraTexture | ( | CameraTexture * | camtex | ) |
void SBS::Shaft::Level::RemoveControl | ( | Control * | control | ) |
void SBS::Shaft::Level::RemoveCustomObject | ( | CustomObject * | object | ) |
void SBS::Shaft::Level::RemovePrimitive | ( | Primitive * | prim | ) |
void SBS::Shaft::Level::RemoveTrigger | ( | Trigger * | trigger | ) |
void SBS::Shaft::Level::ReplaceTexture | ( | const std::string & | oldtexture, |
const std::string & | newtexture ) |
|
private |
|
private |
|
private |
bool SBS::Shaft::Level::enabled |
Definition at line 123 of file shaft.h.
Referenced by SBS::Shaft::EnableWhole(), and Level().
|
private |
|
private |
|
private |
|
private |