Skyscraper 2.0
|
#include <doorsystem.h>
Public Member Functions | |
DoorWrapper (Object *parent_obj, ElevatorDoor *door_object, bool shaftdoor, int shaftdoor_floor=0) | |
DoorWrapper (Door *parent, bool rotate) | |
~DoorWrapper () | |
DoorComponent * | CreateDoor (const std::string &doorname, const std::string &Direction, bool OpenClockwise, Real OpenSpeed, Real CloseSpeed, DynamicMesh *dynmesh) |
void | Enabled (bool value) |
bool | CheckDoorsOpen () |
bool | IsFinished () |
void | ResetFinished () |
void | MoveDoors (bool open, bool manual=false) |
void | StopDoors () |
void | ResetState () |
void | OnClick (Vector3 &position, bool shift, bool ctrl, bool alt, bool right) |
void | OnHit () |
![]() | |
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 | OnUnclick (bool right) |
void | NotifyMove (bool parent=false) |
void | NotifyRotate (bool parent=false) |
void | ChangeParent (Object *new_parent) |
bool | IsGlobal () |
void | Init (bool children=true) |
virtual void | OnInit () |
virtual void | Loop () |
void | RegisterLoop (Object *object) |
void | UnregisterLoop (Object *object) |
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 | |
std::vector< DoorComponent * > | doors |
std::string | name |
bool | Open |
bool | IsEnabled |
Real | Width |
Real | Height |
Real | Thickness |
ElevatorDoor * | parent_elevdoor |
Door * | parent_door |
bool | IsShaftDoor |
Real | Shift |
Real | voffset |
int | floor |
bool | rotate |
![]() | |
std::string | command |
std::string | command_processed |
std::string | context |
int | linenum |
std::string | includefile |
bool | parent_deleting |
Additional Inherited Members | |
![]() | |
void | EnableLoop (bool value) |
void | LoopChildren () |
bool | SelfDestruct () |
![]() | |
SBS * | sbs |
Definition at line 69 of file doorsystem.h.
SBS::DoorWrapper::DoorWrapper | ( | Object * | parent_obj, |
ElevatorDoor * | door_object, | ||
bool | shaftdoor, | ||
int | shaftdoor_floor = 0 ) |
Definition at line 588 of file doorsystem.cpp.
References SBS::ElevatorDoor::car, SBS::ElevatorDoor::elev, floor, SBS::Floor::GetBase(), SBS::SBS::GetFloor(), SBS::Object::GetPosition(), Height, IsEnabled, IsShaftDoor, name, SBS::Elevator::Number, SBS::ElevatorCar::Number, SBS::ElevatorDoor::Number, Open, parent_door, parent_elevdoor, rotate, SBS::ObjectBase::sbs, SBS::Object::SetPosition(), SBS::Object::SetValues(), Shift, Thickness, SBS::ToString(), voffset, and Width.
SBS::DoorWrapper::DoorWrapper | ( | Door * | parent, |
bool | rotate ) |
Definition at line 615 of file doorsystem.cpp.
References floor, SBS::ObjectBase::GetName(), Height, IsEnabled, IsShaftDoor, name, Open, parent_door, parent_elevdoor, rotate, SBS::Object::SetValues(), Shift, Thickness, voffset, and Width.
SBS::DoorWrapper::~DoorWrapper | ( | ) |
Definition at line 634 of file doorsystem.cpp.
References doors, SBS::Object::parent_deleting, parent_elevdoor, and SBS::ElevatorDoor::RemoveShaftDoor().
bool SBS::DoorWrapper::CheckDoorsOpen | ( | ) |
Definition at line 691 of file doorsystem.cpp.
Referenced by SBS::Door::MoveDoor(), and SBS::ElevatorDoor::MoveDoors().
DoorComponent * SBS::DoorWrapper::CreateDoor | ( | const std::string & | doorname, |
const std::string & | Direction, | ||
bool | OpenClockwise, | ||
Real | OpenSpeed, | ||
Real | CloseSpeed, | ||
DynamicMesh * | dynmesh ) |
Definition at line 651 of file doorsystem.cpp.
References doors.
Referenced by SBS::Door::AddDoorComponent(), and SBS::ElevatorDoor::AddDoorComponent().
|
virtual |
Reimplemented from SBS::Object.
Definition at line 660 of file doorsystem.cpp.
References doors, SBS::MeshObject::Enabled(), IsEnabled, and SBS::DoorComponent::mesh.
Referenced by SBS::Door::Enabled(), SBS::ElevatorDoor::Enabled(), SBS::Floor::Enabled(), SBS::Shaft::EnableWhole(), and SBS::Stairwell::EnableWhole().
bool SBS::DoorWrapper::IsFinished | ( | ) |
Definition at line 710 of file doorsystem.cpp.
References doors.
Referenced by SBS::Door::MoveDoor(), and SBS::ElevatorDoor::MoveDoors().
void SBS::DoorWrapper::MoveDoors | ( | bool | open, |
bool | manual = false ) |
Definition at line 676 of file doorsystem.cpp.
Referenced by SBS::Door::MoveDoor(), and SBS::ElevatorDoor::MoveDoors().
|
virtual |
Reimplemented from SBS::Object.
Definition at line 764 of file doorsystem.cpp.
References SBS::ElevatorCar::AreDoorsMoving(), SBS::ElevatorCar::AreDoorsOpen(), SBS::ElevatorCar::AreShaftDoorsOpen(), SBS::ElevatorDoor::car, SBS::ElevatorCar::CloseDoorsEmergency(), floor, IsShaftDoor, SBS::ElevatorDoor::Number, SBS::Door::OnClick(), SBS::ElevatorCar::OpenDoorsEmergency(), parent_door, parent_elevdoor, and SBS::ElevatorCar::StopDoors().
|
virtual |
Reimplemented from SBS::Object.
Definition at line 812 of file doorsystem.cpp.
References SBS::ElevatorDoor::car, floor, SBS::ElevatorCar::GetFloor(), SBS::ElevatorDoor::GetWhichDoors(), IsShaftDoor, SBS::ElevatorDoor::Number, SBS::ElevatorDoor::OpenDoor, SBS::ElevatorCar::OpenDoors(), and parent_elevdoor.
void SBS::DoorWrapper::ResetFinished | ( | ) |
Definition at line 726 of file doorsystem.cpp.
References doors.
Referenced by SBS::Door::Close(), SBS::ElevatorDoor::MoveDoors(), and SBS::Door::Open().
|
virtual |
Reimplemented from SBS::Object.
Definition at line 751 of file doorsystem.cpp.
Referenced by SBS::ElevatorDoor::ResetState().
void SBS::DoorWrapper::StopDoors | ( | ) |
Definition at line 737 of file doorsystem.cpp.
References doors.
Referenced by SBS::ElevatorDoor::StopDoors().
std::vector<DoorComponent*> SBS::DoorWrapper::doors |
Definition at line 86 of file doorsystem.h.
Referenced by CheckDoorsOpen(), CreateDoor(), Enabled(), SBS::Door::FinishDoor(), SBS::ElevatorDoor::FinishDoors(), IsFinished(), MoveDoors(), ResetFinished(), ResetState(), StopDoors(), and ~DoorWrapper().
int SBS::DoorWrapper::floor |
Definition at line 98 of file doorsystem.h.
Referenced by SBS::ElevatorDoor::AreShaftDoorsClosed(), DoorWrapper(), DoorWrapper(), OnClick(), and OnHit().
Real SBS::DoorWrapper::Height |
Definition at line 91 of file doorsystem.h.
Referenced by SBS::ElevatorDoor::AddShaftDoor(), SBS::ElevatorDoor::Chime(), DoorWrapper(), DoorWrapper(), SBS::ElevatorDoor::EarlyChime(), SBS::Door::FinishDoor(), SBS::ElevatorDoor::FinishDoors(), Skyscraper::editelevator::Loop(), SBS::DoorComponent::MoveDoors(), SBS::ElevatorDoor::MoveSound(), and SBS::DoorComponent::Reset().
bool SBS::DoorWrapper::IsEnabled |
Definition at line 89 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), Enabled(), and SBS::ElevatorDoor::IsEnabled().
bool SBS::DoorWrapper::IsShaftDoor |
Definition at line 95 of file doorsystem.h.
Referenced by SBS::ElevatorDoor::AddDoorComponent(), SBS::SBS::DeleteObject(), DoorWrapper(), DoorWrapper(), OnClick(), and OnHit().
std::string SBS::DoorWrapper::name |
Definition at line 87 of file doorsystem.h.
Referenced by DoorWrapper(), and DoorWrapper().
bool SBS::DoorWrapper::Open |
Definition at line 88 of file doorsystem.h.
Referenced by SBS::ElevatorDoor::AreDoorsOpen(), SBS::ElevatorDoor::AreShaftDoorsClosed(), CheckDoorsOpen(), DoorWrapper(), DoorWrapper(), and ResetState().
Door* SBS::DoorWrapper::parent_door |
Definition at line 94 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), SBS::DoorComponent::Move(), SBS::DoorComponent::MoveDoors(), OnClick(), and SBS::DoorComponent::Reset().
ElevatorDoor* SBS::DoorWrapper::parent_elevdoor |
Definition at line 93 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), SBS::DoorComponent::Move(), SBS::DoorComponent::MoveDoors(), OnClick(), OnHit(), SBS::DoorComponent::Reset(), and ~DoorWrapper().
bool SBS::DoorWrapper::rotate |
Definition at line 99 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), SBS::DoorComponent::MoveDoors(), MoveDoors(), SBS::DoorComponent::Reset(), and SBS::DoorComponent::RotateDoors().
Real SBS::DoorWrapper::Shift |
Definition at line 96 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), SBS::Door::FinishDoor(), SBS::ElevatorDoor::FinishDoors(), and SBS::DoorComponent::MoveDoors().
Real SBS::DoorWrapper::Thickness |
Definition at line 92 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), SBS::Door::FinishDoor(), and SBS::ElevatorDoor::FinishDoors().
Real SBS::DoorWrapper::voffset |
Definition at line 97 of file doorsystem.h.
Referenced by DoorWrapper(), DoorWrapper(), SBS::Door::FinishDoor(), SBS::ElevatorDoor::FinishDoors(), SBS::ElevatorDoor::GetShaftDoorAltitude(), and SBS::DoorComponent::MoveDoors().
Real SBS::DoorWrapper::Width |
Definition at line 90 of file doorsystem.h.
Referenced by SBS::ElevatorDoor::AddShaftDoor(), DoorWrapper(), DoorWrapper(), SBS::Door::FinishDoor(), SBS::ElevatorDoor::FinishDoors(), Skyscraper::editelevator::Loop(), SBS::DoorComponent::MoveDoors(), and SBS::DoorComponent::Reset().