Skyscraper 2.0
SBS::Floor Class Reference

#include <floor.h>

Inheritance diagram for SBS::Floor:
Collaboration diagram for SBS::Floor:

Public Member Functions

 Floor (Object *parent, FloorManager *manager, int number)
 
 ~Floor ()
 
WallAddFloor (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 isexternal, bool legacy_behavior=false)
 
WallAddInterfloorFloor (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)
 
WallAddWall (const std::string &name, const std::string &texture, Real thickness, Real x1, Real z1, Real x2, Real z2, Real height_in1, Real height_in2, Real voffset1, Real voffset2, Real tw, Real th, bool isexternal)
 
WallAddInterfloorWall (const std::string &name, const std::string &texture, Real thickness, Real x1, Real z1, Real x2, Real z2, Real height_in1, Real height_in2, Real voffset1, Real voffset2, Real tw, Real th)
 
void Enabled (bool value)
 
Real FullHeight ()
 
CallStationAddCallButtons (int controller, const std::string &sound_file_up, const std::string &sound_file_down, const std::string &BackTexture, const std::string &UpButtonTexture, const std::string &UpButtonTexture_Lit, const std::string &DownButtonTexture, const std::string &DownButtonTexture_Lit, Real CenterX, Real CenterZ, Real voffset, const std::string &direction, Real BackWidth, Real BackHeight, bool ShowBack, Real tw, Real th)
 
CallStationAddCallStation (int number)
 
void Cut (const Vector3 &start, const Vector3 &end, bool cutwalls, bool cutfloors, bool fast, int checkwallnumber=0, bool prepare=false)
 
void CutAll (const Vector3 &start, const Vector3 &end, bool cutwalls, bool cutfloors, bool prepare=false)
 
void AddGroupFloor (int number)
 
void RemoveGroupFloor (int number)
 
void EnableGroup (bool value)
 
bool IsInGroup (int floor)
 
DoorAddDoor (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, bool external=false)
 
DoorCreateDoor (std::string name, const std::string &open_sound, const std::string &close_sound, bool rotate)
 
DoorGetDoor (const std::string &name)
 
bool CalculateAltitude ()
 
void EnableColumnFrame (bool value)
 
void EnableInterfloor (bool value)
 
WallColumnWallBox (const std::string &name, const std::string &texture, Real x1, Real x2, Real z1, Real z2, Real height_in, Real voffset, Real tw, Real th, bool inside, bool outside, bool top, bool bottom)
 
WallColumnWallBox2 (const std::string &name, const std::string &texture, Real CenterX, Real CenterZ, Real WidthX, Real LengthZ, Real height_in, Real voffset, Real tw, Real th, bool inside, bool outside, bool top, bool bottom)
 
FloorIndicatorAddFloorIndicator (int elevator, int car, bool relative, const std::string &texture_prefix, const std::string &blank_texture, const std::string &direction, Real CenterX, Real CenterZ, Real width, Real height, Real voffset)
 
void UpdateFloorIndicators (int elevator)
 
void UpdateFloorIndicators ()
 
void UpdateDirectionalIndicators (int elevator)
 
void UpdateDirectionalIndicators ()
 
DirectionalIndicatorAddDirectionalIndicator (int elevator, int car, bool relative, bool active_direction, bool single, bool vertical, const std::string &BackTexture, const std::string &uptexture, const std::string &uptexture_lit, const std::string &downtexture, const std::string &downtexture_lit, Real CenterX, Real CenterZ, Real voffset, const std::string &direction, Real BackWidth, Real BackHeight, bool ShowBack, Real tw, Real th)
 
void SetDirectionalIndicators (int elevator, int car, bool UpLight, bool DownLight)
 
void Loop ()
 
std::vector< int > GetCallStations (int elevator)
 
CallStationGetCallStationForElevator (int elevator)
 
CallStationGetCallStation (int number)
 
void AddFillerWalls (const std::string &texture, Real thickness, Real CenterX, Real CenterZ, Real width, Real height, Real voffset, bool direction, Real tw, Real th, bool isexternal)
 
SoundAddSound (const std::string &name, const std::string &filename, Vector3 position, bool loop=true, Real volume=1.0, int speed=100, Real min_distance=1.0, Real max_distance=-1.0, Real doppler_level=0.0, Real cone_inside_angle=360, Real cone_outside_angle=360, Real cone_outside_volume=1.0, Vector3 direction=Vector3(0, 0, 0))
 
ReverbAddReverb (const std::string &name, const std::string &type, const Vector3 &position, Real min_distance, Real max_distance)
 
void Report (const std::string &message)
 
bool ReportError (const std::string &message)
 
Real GetBase (bool relative=false)
 
DoorGetDoor (int number)
 
void RemoveCallStation (CallStation *station)
 
void RemoveFloorIndicator (FloorIndicator *indicator)
 
void RemoveDirectionalIndicator (DirectionalIndicator *indicator)
 
void RemoveDoor (Door *door)
 
void RemoveSound (Sound *sound)
 
void RemoveReverb (Reverb *reverb)
 
void RemoveLight (Light *light)
 
void RemoveModel (Model *model)
 
void RemovePrimitive (Primitive *prim)
 
void RemoveCustomObject (CustomObject *object)
 
void RemoveControl (Control *control)
 
void RemoveTrigger (Trigger *trigger)
 
void RemoveCameraTexture (CameraTexture *cameratexture)
 
void RemoveEscalator (Escalator *escalator)
 
void RemoveMovingWalkway (MovingWalkway *walkway)
 
LightAddLight (const std::string &name, int type)
 
LightGetLight (const std::string &name)
 
ModelAddModel (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)
 
PrimitiveAddPrimitive (const std::string &name)
 
void AddPrimitive (Primitive *primitive)
 
CustomObjectAddCustomObject (const std::string &name, const Vector3 &position, const Vector3 &rotation, Real max_render_distance=0, Real scale_multiplier=1)
 
void AddCustomObject (CustomObject *object)
 
void ReplaceTexture (const std::string &oldtexture, const std::string &newtexture)
 
ControlAddControl (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)
 
TriggerAddTrigger (const std::string &name, const std::string &sound_file, Vector3 &area_min, Vector3 &area_max, std::vector< std::string > &action_names)
 
CameraTextureAddCameraTexture (const std::string &name, int quality, Real fov, const Vector3 &position, bool use_rotation, const Vector3 &rotation)
 
EscalatorAddEscalator (const std::string &name, int run, Real speed, const std::string &sound_file, const std::string &riser_texture, const std::string &tread_texture, const std::string &direction, Real CenterX, Real CenterZ, Real width, Real risersize, Real treadsize, int num_steps, Real voffset, Real tw, Real th)
 
MovingWalkwayAddMovingWalkway (const std::string &name, int run, Real speed, const std::string &sound_file, const std::string &texture, const std::string &direction, Real CenterX, Real CenterZ, Real width, Real treadsize, int num_steps, Real voffset, Real tw, Real th)
 
std::vector< Sound * > GetSound (const std::string &name)
 
ReverbGetReverb (const std::string &name)
 
void SetAltitude (Real altitude)
 
void ShowInfo (bool detailed=true, bool display_header=true)
 
void GetElevatorList (std::vector< int > &listing, bool get_locals=true, bool get_express=true, bool get_service=true)
 
void GetStairwellList (std::vector< int > &listing)
 
void GetShaftList (std::vector< int > &listing)
 
ElevatorRouteGetDirectRoute (int DestinationFloor, std::string ElevatorType)
 
std::vector< int > GetDirectFloors (bool include_service)
 
ModelGetModel (std::string name)
 
PrimitiveGetPrimitive (std::string name)
 
CustomObjectGetCustomObject (std::string name)
 
RevolvingDoorAddRevolvingDoor (std::string name, bool run, const std::string &soundfile, const std::string &texture, Real thickness, bool clockwise, int segments, Real speed, Real rotation, Real CenterX, Real CenterZ, Real width, Real height, Real voffset, Real tw, Real th, bool external)
 
void RemoveRevolvingDoor (RevolvingDoor *door)
 
RevolvingDoorGetRevolvingDoor (int number)
 
CameraTextureGetCameraTexture (int number)
 
int GetCallStationCount ()
 
int GetReverbCount ()
 
ReverbGetReverb (int index)
 
- Public Member Functions inherited from SBS::Object
 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)
 
ObjectGetChild (int index)
 
int GetChildrenCount ()
 
void RemoveChild (Object *object)
 
SceneNodeGetSceneNode ()
 
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)
 
std::string GetNameBase ()
 
template<typename T >
bool IsType ()
 
template<typename T >
T * ConvertTo ()
 
- Public Member Functions inherited from SBS::ObjectBase
 ObjectBase (Object *parent)
 
virtual ~ObjectBase ()
 
ObjectGetParent ()
 
SBSGetRoot ()
 
void SetName (const std::string &name)
 
const std::string & GetName ()
 
std::string GetNameBase ()
 

Public Attributes

MeshObjectLevel
 
MeshObjectInterfloor
 
MeshObjectColumnFrame
 
int Number
 
std::string Name
 
std::string ID
 
std::string NumberID
 
std::string FloorType
 
std::string Description
 
std::string IndicatorTexture
 
Real Altitude
 
Real Height
 
Real InterfloorHeight
 
bool IsEnabled
 
bool IsColumnFrameEnabled
 
bool IsInterfloorEnabled
 
std::vector< CallStation * > CallStationArray
 
std::vector< FloorIndicator * > FloorIndicatorArray
 
std::vector< int > Group
 
bool EnabledGroup
 
int EnabledGroup_Floor
 
bool AltitudeSet
 
- Public Attributes inherited from SBS::Object
std::string command
 
std::string command_processed
 
std::string context
 
int linenum
 
std::string includefile
 
bool parent_deleting
 

Private Attributes

std::vector< Sound * > sounds
 
std::vector< Reverb * > reverbs
 
std::vector< Door * > DoorArray
 
std::vector< RevolvingDoor * > RDoorArray
 
DynamicMeshDoorWrapper
 
std::vector< Light * > lights
 
std::vector< DirectionalIndicator * > DirIndicatorArray
 
std::vector< Model * > ModelArray
 
std::vector< Primitive * > PrimArray
 
std::vector< CustomObject * > CustomObjectArray
 
std::vector< Control * > ControlArray
 
std::vector< Trigger * > TriggerArray
 
std::vector< CameraTexture * > CameraTextureArray
 
std::vector< Escalator * > EscalatorArray
 
std::vector< MovingWalkway * > MovingWalkwayArray
 

Additional Inherited Members

- Protected Member Functions inherited from SBS::Object
void EnableLoop (bool value)
 
void LoopChildren ()
 
bool SelfDestruct ()
 
- Protected Attributes inherited from SBS::ObjectBase
SBSsbs
 

Detailed Description

Definition at line 29 of file floor.h.

Constructor & Destructor Documentation

◆ Floor()

◆ ~Floor()

Member Function Documentation

◆ AddCallButtons()

CallStation * SBS::Floor::AddCallButtons ( int controller,
const std::string & sound_file_up,
const std::string & sound_file_down,
const std::string & BackTexture,
const std::string & UpButtonTexture,
const std::string & UpButtonTexture_Lit,
const std::string & DownButtonTexture,
const std::string & DownButtonTexture_Lit,
Real CenterX,
Real CenterZ,
Real voffset,
const std::string & direction,
Real BackWidth,
Real BackHeight,
bool ShowBack,
Real tw,
Real th )

◆ AddCallStation()

CallStation * SBS::Floor::AddCallStation ( int number)

Definition at line 598 of file floor.cpp.

References CallStationArray, and Number.

Referenced by AddCallButtons(), and Skyscraper::ScriptProcessor::CallStationSection::Run().

◆ AddCameraTexture()

CameraTexture * SBS::Floor::AddCameraTexture ( const std::string & name,
int quality,
Real fov,
const Vector3 & position,
bool use_rotation,
const Vector3 & rotation )

Definition at line 1624 of file floor.cpp.

References CameraTextureArray, and GetBase().

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ AddControl()

Control * SBS::Floor::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 1605 of file floor.cpp.

References ControlArray, GetBase(), and SBS::Object::Move().

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddCustomObject() [1/2]

CustomObject * SBS::Floor::AddCustomObject ( const std::string & name,
const Vector3 & position,
const Vector3 & rotation,
Real max_render_distance = 0,
Real scale_multiplier = 1 )

Definition at line 1573 of file floor.cpp.

References CustomObjectArray.

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

◆ AddCustomObject() [2/2]

void SBS::Floor::AddCustomObject ( CustomObject * object)

Definition at line 1581 of file floor.cpp.

References CustomObjectArray.

◆ AddDirectionalIndicator()

DirectionalIndicator * SBS::Floor::AddDirectionalIndicator ( int elevator,
int car,
bool relative,
bool active_direction,
bool single,
bool vertical,
const std::string & BackTexture,
const std::string & uptexture,
const std::string & uptexture_lit,
const std::string & downtexture,
const std::string & downtexture_lit,
Real CenterX,
Real CenterZ,
Real voffset,
const std::string & direction,
Real BackWidth,
Real BackHeight,
bool ShowBack,
Real tw,
Real th )

◆ AddDoor()

Door * SBS::Floor::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,
bool external = false )

◆ AddEscalator()

Escalator * SBS::Floor::AddEscalator ( const std::string & name,
int run,
Real speed,
const std::string & sound_file,
const std::string & riser_texture,
const std::string & tread_texture,
const std::string & direction,
Real CenterX,
Real CenterZ,
Real width,
Real risersize,
Real treadsize,
int num_steps,
Real voffset,
Real tw,
Real th )

Definition at line 1632 of file floor.cpp.

References EscalatorArray, and GetBase().

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddFillerWalls()

void SBS::Floor::AddFillerWalls ( const std::string & texture,
Real thickness,
Real CenterX,
Real CenterZ,
Real width,
Real height,
Real voffset,
bool direction,
Real tw,
Real th,
bool isexternal )

◆ AddFloor()

Wall * SBS::Floor::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 isexternal,
bool legacy_behavior = false )

◆ AddFloorIndicator()

FloorIndicator * SBS::Floor::AddFloorIndicator ( int elevator,
int car,
bool relative,
const std::string & texture_prefix,
const std::string & blank_texture,
const std::string & direction,
Real CenterX,
Real CenterZ,
Real width,
Real height,
Real voffset )

Definition at line 904 of file floor.cpp.

References FloorIndicatorArray, GetBase(), SBS::SBS::GetElevator(), SBS::Object::GetPosition(), and SBS::ObjectBase::sbs.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddGroupFloor()

void SBS::Floor::AddGroupFloor ( int number)

Definition at line 679 of file floor.cpp.

References Group, and IsInGroup().

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddInterfloorFloor()

Wall * SBS::Floor::AddInterfloorFloor ( 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 338 of file floor.cpp.

References SBS::SBS::AddFloorMain(), SBS::MeshObject::CreateWallObject(), Interfloor, and SBS::ObjectBase::sbs.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddInterfloorWall()

Wall * SBS::Floor::AddInterfloorWall ( const std::string & name,
const std::string & texture,
Real thickness,
Real x1,
Real z1,
Real x2,
Real z2,
Real height_in1,
Real height_in2,
Real voffset1,
Real voffset2,
Real tw,
Real th )

Definition at line 368 of file floor.cpp.

References SBS::SBS::AddWallMain(), SBS::MeshObject::CreateWallObject(), Interfloor, and SBS::ObjectBase::sbs.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddLight()

Light * SBS::Floor::AddLight ( const std::string & name,
int type )

Definition at line 1499 of file floor.cpp.

References GetBase(), lights, and SBS::Object::Move().

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ AddModel() [1/2]

Model * SBS::Floor::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 1519 of file floor.cpp.

References GetBase(), SBS::Model::load_error, and ModelArray.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddModel() [2/2]

void SBS::Floor::AddModel ( Model * model)

Definition at line 1532 of file floor.cpp.

References ModelArray.

◆ AddMovingWalkway()

MovingWalkway * SBS::Floor::AddMovingWalkway ( const std::string & name,
int run,
Real speed,
const std::string & sound_file,
const std::string & texture,
const std::string & direction,
Real CenterX,
Real CenterZ,
Real width,
Real treadsize,
int num_steps,
Real voffset,
Real tw,
Real th )

Definition at line 1640 of file floor.cpp.

References GetBase(), and MovingWalkwayArray.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddPrimitive() [1/2]

Primitive * SBS::Floor::AddPrimitive ( const std::string & name)

Definition at line 1548 of file floor.cpp.

References GetBase(), SBS::Object::Move(), and PrimArray.

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ AddPrimitive() [2/2]

void SBS::Floor::AddPrimitive ( Primitive * primitive)

Definition at line 1557 of file floor.cpp.

References PrimArray.

◆ AddReverb()

Reverb * SBS::Floor::AddReverb ( const std::string & name,
const std::string & type,
const Vector3 & position,
Real min_distance,
Real max_distance )

Definition at line 1965 of file floor.cpp.

References reverbs.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

◆ AddRevolvingDoor()

RevolvingDoor * SBS::Floor::AddRevolvingDoor ( std::string name,
bool run,
const std::string & soundfile,
const std::string & texture,
Real thickness,
bool clockwise,
int segments,
Real speed,
Real rotation,
Real CenterX,
Real CenterZ,
Real width,
Real height,
Real voffset,
Real tw,
Real th,
bool external )

◆ AddSound()

Sound * SBS::Floor::AddSound ( const std::string & name,
const std::string & filename,
Vector3 position,
bool loop = true,
Real volume = 1.0,
int speed = 100,
Real min_distance = 1.0,
Real max_distance = -1.0,
Real doppler_level = 0.0,
Real cone_inside_angle = 360,
Real cone_outside_angle = 360,
Real cone_outside_volume = 1.0,
Vector3 direction = Vector3(0, 0, 0) )

◆ AddTrigger()

Trigger * SBS::Floor::AddTrigger ( const std::string & name,
const std::string & sound_file,
Vector3 & area_min,
Vector3 & area_max,
std::vector< std::string > & action_names )

Definition at line 1615 of file floor.cpp.

References GetBase(), SBS::Object::Move(), and TriggerArray.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ AddWall()

Wall * SBS::Floor::AddWall ( const std::string & name,
const std::string & texture,
Real thickness,
Real x1,
Real z1,
Real x2,
Real z2,
Real height_in1,
Real height_in2,
Real voffset1,
Real voffset2,
Real tw,
Real th,
bool isexternal )

◆ CalculateAltitude()

bool SBS::Floor::CalculateAltitude ( )

Definition at line 839 of file floor.cpp.

References Altitude, FullHeight(), SBS::SBS::GetFloor(), Number, ReportError(), SBS::ObjectBase::sbs, and SetAltitude().

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ ColumnWallBox()

Wall * SBS::Floor::ColumnWallBox ( const std::string & name,
const std::string & texture,
Real x1,
Real x2,
Real z1,
Real z2,
Real height_in,
Real voffset,
Real tw,
Real th,
bool inside,
bool outside,
bool top,
bool bottom )

Definition at line 890 of file floor.cpp.

References ColumnFrame, SBS::SBS::CreateWallBox(), and SBS::ObjectBase::sbs.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ ColumnWallBox2()

Wall * SBS::Floor::ColumnWallBox2 ( const std::string & name,
const std::string & texture,
Real CenterX,
Real CenterZ,
Real WidthX,
Real LengthZ,
Real height_in,
Real voffset,
Real tw,
Real th,
bool inside,
bool outside,
bool top,
bool bottom )

Definition at line 897 of file floor.cpp.

References ColumnFrame, SBS::SBS::CreateWallBox2(), and SBS::ObjectBase::sbs.

Referenced by Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ CreateDoor()

Door * SBS::Floor::CreateDoor ( std::string name,
const std::string & open_sound,
const std::string & close_sound,
bool rotate )

Definition at line 824 of file floor.cpp.

References DoorArray, GetBase(), SBS::Object::Move(), and SBS::ToString().

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ Cut()

void SBS::Floor::Cut ( const Vector3 & start,
const Vector3 & end,
bool cutwalls,
bool cutfloors,
bool fast,
int checkwallnumber = 0,
bool prepare = false )

◆ CutAll()

◆ EnableColumnFrame()

void SBS::Floor::EnableColumnFrame ( bool value)

◆ Enabled()

◆ EnableGroup()

◆ EnableInterfloor()

void SBS::Floor::EnableInterfloor ( bool value)

◆ FullHeight()

◆ GetBase()

◆ GetCallStation()

CallStation * SBS::Floor::GetCallStation ( int number)

Definition at line 1000 of file floor.cpp.

References CallStationArray, and Number.

Referenced by Skyscraper::ScriptProcessor::CallStationSection::Run().

◆ GetCallStationCount()

int SBS::Floor::GetCallStationCount ( )

Definition at line 1960 of file floor.cpp.

References CallStationArray.

◆ GetCallStationForElevator()

CallStation * SBS::Floor::GetCallStationForElevator ( int elevator)

◆ GetCallStations()

std::vector< int > SBS::Floor::GetCallStations ( int elevator)

Definition at line 967 of file floor.cpp.

References CallStationArray.

◆ GetCameraTexture()

CameraTexture * SBS::Floor::GetCameraTexture ( int number)

Definition at line 1952 of file floor.cpp.

References CameraTextureArray.

◆ GetCustomObject()

CustomObject * SBS::Floor::GetCustomObject ( std::string name)

Definition at line 1896 of file floor.cpp.

References CustomObjectArray, SBS::ObjectBase::GetName(), SBS::SetCase(), and SBS::SetCaseCopy().

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ GetDirectFloors()

std::vector< int > SBS::Floor::GetDirectFloors ( bool include_service)

◆ GetDirectRoute()

ElevatorRoute * SBS::Floor::GetDirectRoute ( int DestinationFloor,
std::string ElevatorType )

◆ GetDoor() [1/2]

Door * SBS::Floor::GetDoor ( const std::string & name)

Definition at line 1303 of file floor.cpp.

References DoorArray, and SBS::ObjectBase::GetName().

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ GetDoor() [2/2]

Door * SBS::Floor::GetDoor ( int number)

Definition at line 1291 of file floor.cpp.

References DoorArray.

◆ GetElevatorList()

void SBS::Floor::GetElevatorList ( std::vector< int > & listing,
bool get_locals = true,
bool get_express = true,
bool get_service = true )

◆ GetLight()

Light * SBS::Floor::GetLight ( const std::string & name)

Definition at line 1509 of file floor.cpp.

References SBS::ObjectBase::GetName(), and lights.

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ GetModel()

Model * SBS::Floor::GetModel ( std::string name)

Definition at line 1866 of file floor.cpp.

References SBS::ObjectBase::GetName(), ModelArray, SBS::SetCase(), and SBS::SetCaseCopy().

Referenced by Skyscraper::ScriptProcessor::Section::GetMeshObject().

Here is the call graph for this function:

◆ GetPrimitive()

Primitive * SBS::Floor::GetPrimitive ( std::string name)

Definition at line 1881 of file floor.cpp.

References SBS::ObjectBase::GetName(), PrimArray, SBS::SetCase(), and SBS::SetCaseCopy().

Referenced by Skyscraper::ScriptProcessor::CommandsSection::Run().

Here is the call graph for this function:

◆ GetReverb() [1/2]

Reverb * SBS::Floor::GetReverb ( const std::string & name)

Definition at line 1973 of file floor.cpp.

References reverbs, and SBS::SetCase().

Referenced by SBS::Sound::GetNearestReverbPosition().

Here is the call graph for this function:

◆ GetReverb() [2/2]

Reverb * SBS::Floor::GetReverb ( int index)

Definition at line 2012 of file floor.cpp.

References reverbs.

◆ GetReverbCount()

int SBS::Floor::GetReverbCount ( )

Definition at line 2007 of file floor.cpp.

References reverbs.

Referenced by SBS::Sound::GetNearestReverbPosition().

◆ GetRevolvingDoor()

RevolvingDoor * SBS::Floor::GetRevolvingDoor ( int number)

Definition at line 1940 of file floor.cpp.

References RDoorArray.

◆ GetShaftList()

void SBS::Floor::GetShaftList ( std::vector< int > & listing)

Definition at line 1770 of file floor.cpp.

References SBS::SBS::GetShaft(), SBS::SBS::GetShaftCount(), SBS::Shaft::IsValidFloor(), Number, SBS::ObjectBase::sbs, and SBS::Shaft::ShaftNumber.

Referenced by ShowInfo().

Here is the call graph for this function:

◆ GetSound()

std::vector< Sound * > SBS::Floor::GetSound ( const std::string & name)

Definition at line 1108 of file floor.cpp.

References SBS::SetCase(), and sounds.

Referenced by SBS::Action::Run().

Here is the call graph for this function:

◆ GetStairwellList()

void SBS::Floor::GetStairwellList ( std::vector< int > & listing)

Definition at line 1755 of file floor.cpp.

References SBS::SBS::GetStairwell(), SBS::SBS::GetStairwellCount(), SBS::Stairwell::IsValidFloor(), Number, SBS::ObjectBase::sbs, and SBS::Stairwell::StairsNum.

Referenced by ShowInfo().

Here is the call graph for this function:

◆ IsInGroup()

bool SBS::Floor::IsInGroup ( int floor)

◆ Loop()

void SBS::Floor::Loop ( )
virtual

Reimplemented from SBS::Object.

Definition at line 955 of file floor.cpp.

References IsEnabled, SBS::Object::LoopChildren(), and SBS_PROFILE.

Here is the call graph for this function:

◆ RemoveCallStation()

void SBS::Floor::RemoveCallStation ( CallStation * station)

Definition at line 1313 of file floor.cpp.

References CallStationArray.

Referenced by SBS::CallStation::~CallStation().

◆ RemoveCameraTexture()

void SBS::Floor::RemoveCameraTexture ( CameraTexture * cameratexture)

Definition at line 1460 of file floor.cpp.

References CameraTextureArray.

◆ RemoveControl()

void SBS::Floor::RemoveControl ( Control * control)

Definition at line 1434 of file floor.cpp.

References ControlArray.

◆ RemoveCustomObject()

void SBS::Floor::RemoveCustomObject ( CustomObject * object)

Definition at line 1421 of file floor.cpp.

References CustomObjectArray.

◆ RemoveDirectionalIndicator()

void SBS::Floor::RemoveDirectionalIndicator ( DirectionalIndicator * indicator)

Definition at line 1340 of file floor.cpp.

References DirIndicatorArray.

◆ RemoveDoor()

void SBS::Floor::RemoveDoor ( Door * door)

Definition at line 1354 of file floor.cpp.

References DoorArray.

◆ RemoveEscalator()

void SBS::Floor::RemoveEscalator ( Escalator * escalator)

Definition at line 1473 of file floor.cpp.

References EscalatorArray.

◆ RemoveFloorIndicator()

void SBS::Floor::RemoveFloorIndicator ( FloorIndicator * indicator)

Definition at line 1326 of file floor.cpp.

References FloorIndicatorArray.

◆ RemoveGroupFloor()

void SBS::Floor::RemoveGroupFloor ( int number)

Definition at line 692 of file floor.cpp.

References Group.

◆ RemoveLight()

void SBS::Floor::RemoveLight ( Light * light)

Definition at line 1382 of file floor.cpp.

References lights.

◆ RemoveModel()

void SBS::Floor::RemoveModel ( Model * model)

Definition at line 1395 of file floor.cpp.

References ModelArray.

◆ RemoveMovingWalkway()

void SBS::Floor::RemoveMovingWalkway ( MovingWalkway * walkway)

Definition at line 1486 of file floor.cpp.

References MovingWalkwayArray.

◆ RemovePrimitive()

void SBS::Floor::RemovePrimitive ( Primitive * prim)

Definition at line 1408 of file floor.cpp.

References PrimArray.

◆ RemoveReverb()

void SBS::Floor::RemoveReverb ( Reverb * reverb)

Definition at line 1992 of file floor.cpp.

References reverbs.

◆ RemoveRevolvingDoor()

void SBS::Floor::RemoveRevolvingDoor ( RevolvingDoor * door)

Definition at line 1926 of file floor.cpp.

References RDoorArray.

◆ RemoveSound()

void SBS::Floor::RemoveSound ( Sound * sound)

Definition at line 1368 of file floor.cpp.

References sounds.

◆ RemoveTrigger()

void SBS::Floor::RemoveTrigger ( Trigger * trigger)

Definition at line 1447 of file floor.cpp.

References TriggerArray.

◆ ReplaceTexture()

void SBS::Floor::ReplaceTexture ( const std::string & oldtexture,
const std::string & newtexture )

Definition at line 1597 of file floor.cpp.

References ColumnFrame, Interfloor, Level, and SBS::MeshObject::ReplaceTexture().

Referenced by SBS::Action::Run().

Here is the call graph for this function:

◆ Report()

void SBS::Floor::Report ( const std::string & message)
virtual

Reimplemented from SBS::ObjectBase.

Definition at line 1128 of file floor.cpp.

References Number, SBS::ObjectBase::Report(), and SBS::ToString().

Referenced by AddDirectionalIndicator(), and Enabled().

Here is the call graph for this function:

◆ ReportError()

bool SBS::Floor::ReportError ( const std::string & message)
virtual

Reimplemented from SBS::ObjectBase.

Definition at line 1134 of file floor.cpp.

References Number, SBS::ObjectBase::ReportError(), and SBS::ToString().

Referenced by AddFillerWalls(), and CalculateAltitude().

Here is the call graph for this function:

◆ SetAltitude()

void SBS::Floor::SetAltitude ( Real altitude)

Definition at line 1648 of file floor.cpp.

References Altitude, AltitudeSet, and SBS::Object::SetPositionY().

Referenced by CalculateAltitude(), and Skyscraper::ScriptProcessor::FloorSection::Run().

Here is the call graph for this function:

◆ SetDirectionalIndicators()

void SBS::Floor::SetDirectionalIndicators ( int elevator,
int car,
bool UpLight,
bool DownLight )

◆ ShowInfo()

void SBS::Floor::ShowInfo ( bool detailed = true,
bool display_header = true )

◆ UpdateDirectionalIndicators() [1/2]

◆ UpdateDirectionalIndicators() [2/2]

◆ UpdateFloorIndicators() [1/2]

void SBS::Floor::UpdateFloorIndicators ( )

Definition at line 942 of file floor.cpp.

References FloorIndicatorArray, and SBS_PROFILE.

Referenced by Enabled().

◆ UpdateFloorIndicators() [2/2]

void SBS::Floor::UpdateFloorIndicators ( int elevator)

Definition at line 928 of file floor.cpp.

References FloorIndicatorArray, and SBS::FloorIndicator::Update().

Referenced by SBS::Elevator::FinishMove(), SBS::Elevator::MoveElevatorToFloor(), and SBS::Camera::UpdateCameraFloor().

Here is the call graph for this function:

Member Data Documentation

◆ Altitude

◆ AltitudeSet

bool SBS::Floor::AltitudeSet

Definition at line 54 of file floor.h.

Referenced by Floor(), Skyscraper::ScriptProcessor::FloorSection::Run(), and SetAltitude().

◆ CallStationArray

std::vector<CallStation*> SBS::Floor::CallStationArray

◆ CameraTextureArray

std::vector<CameraTexture*> SBS::Floor::CameraTextureArray
private

Definition at line 182 of file floor.h.

Referenced by AddCameraTexture(), GetCameraTexture(), RemoveCameraTexture(), and ~Floor().

◆ ColumnFrame

◆ ControlArray

std::vector<Control*> SBS::Floor::ControlArray
private

Definition at line 176 of file floor.h.

Referenced by AddControl(), Enabled(), RemoveControl(), and ~Floor().

◆ CustomObjectArray

std::vector<CustomObject*> SBS::Floor::CustomObjectArray
private

◆ Description

std::string SBS::Floor::Description

Definition at line 41 of file floor.h.

Referenced by Floor(), Skyscraper::ScriptProcessor::FloorSection::Run(), and ShowInfo().

◆ DirIndicatorArray

◆ DoorArray

std::vector<Door*> SBS::Floor::DoorArray
private

Definition at line 156 of file floor.h.

Referenced by AddDoor(), CreateDoor(), Enabled(), GetDoor(), GetDoor(), RemoveDoor(), and ~Floor().

◆ DoorWrapper

DynamicMesh* SBS::Floor::DoorWrapper
private

Definition at line 158 of file floor.h.

Referenced by ~Floor().

◆ EnabledGroup

bool SBS::Floor::EnabledGroup

Definition at line 52 of file floor.h.

Referenced by SBS::Shaft::Check(), SBS::SBS::EnableFloorRange(), EnableGroup(), and Floor().

◆ EnabledGroup_Floor

int SBS::Floor::EnabledGroup_Floor

Definition at line 53 of file floor.h.

Referenced by SBS::Shaft::Check(), SBS::SBS::EnableFloorRange(), EnableGroup(), and Floor().

◆ EscalatorArray

std::vector<Escalator*> SBS::Floor::EscalatorArray
private

Definition at line 185 of file floor.h.

Referenced by AddEscalator(), Enabled(), RemoveEscalator(), and ~Floor().

◆ FloorIndicatorArray

std::vector<FloorIndicator*> SBS::Floor::FloorIndicatorArray

◆ FloorType

std::string SBS::Floor::FloorType

◆ Group

std::vector<int> SBS::Floor::Group

Definition at line 51 of file floor.h.

Referenced by AddGroupFloor(), EnableGroup(), IsInGroup(), and RemoveGroupFloor().

◆ Height

◆ ID

◆ IndicatorTexture

std::string SBS::Floor::IndicatorTexture

Definition at line 42 of file floor.h.

Referenced by Floor(), and Skyscraper::ScriptProcessor::FloorSection::Run().

◆ Interfloor

◆ InterfloorHeight

◆ IsColumnFrameEnabled

bool SBS::Floor::IsColumnFrameEnabled

Definition at line 47 of file floor.h.

Referenced by EnableColumnFrame(), Floor(), and Skyscraper::MeshControl::Loop().

◆ IsEnabled

bool SBS::Floor::IsEnabled

◆ IsInterfloorEnabled

bool SBS::Floor::IsInterfloorEnabled

Definition at line 48 of file floor.h.

Referenced by SBS::Shaft::Check(), EnableInterfloor(), Floor(), and Skyscraper::MeshControl::Loop().

◆ Level

◆ lights

std::vector<Light*> SBS::Floor::lights
private

Definition at line 161 of file floor.h.

Referenced by AddLight(), Enabled(), GetLight(), RemoveLight(), and ~Floor().

◆ ModelArray

std::vector<Model*> SBS::Floor::ModelArray
private

Definition at line 167 of file floor.h.

Referenced by AddModel(), AddModel(), Enabled(), GetModel(), RemoveModel(), and ~Floor().

◆ MovingWalkwayArray

std::vector<MovingWalkway*> SBS::Floor::MovingWalkwayArray
private

Definition at line 188 of file floor.h.

Referenced by AddMovingWalkway(), Enabled(), RemoveMovingWalkway(), and ~Floor().

◆ Name

std::string SBS::Floor::Name

◆ Number

◆ NumberID

std::string SBS::Floor::NumberID

Definition at line 39 of file floor.h.

Referenced by Floor(), and Skyscraper::ScriptProcessor::FloorSection::Run().

◆ PrimArray

std::vector<Primitive*> SBS::Floor::PrimArray
private

Definition at line 170 of file floor.h.

Referenced by AddPrimitive(), AddPrimitive(), Enabled(), GetPrimitive(), RemovePrimitive(), and ~Floor().

◆ RDoorArray

std::vector<RevolvingDoor*> SBS::Floor::RDoorArray
private

Definition at line 157 of file floor.h.

Referenced by AddRevolvingDoor(), GetRevolvingDoor(), RemoveRevolvingDoor(), and ~Floor().

◆ reverbs

std::vector<Reverb*> SBS::Floor::reverbs
private

Definition at line 153 of file floor.h.

Referenced by AddReverb(), Enabled(), GetReverb(), GetReverb(), GetReverbCount(), RemoveReverb(), and ~Floor().

◆ sounds

std::vector<Sound*> SBS::Floor::sounds
private

Definition at line 150 of file floor.h.

Referenced by AddSound(), Enabled(), GetSound(), RemoveSound(), and ~Floor().

◆ TriggerArray

std::vector<Trigger*> SBS::Floor::TriggerArray
private

Definition at line 179 of file floor.h.

Referenced by AddTrigger(), Enabled(), RemoveTrigger(), and ~Floor().


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