Class PropDoorRotating
Namespace: ValveResourceFormat.Renderer.Entities
Assembly: Renderer.dll
prop_door_rotating, Source's CPropDoorRotating: the swinging model door on maps like de_inferno. A rotating door with its own keys and manners: it is usable by default, swings away from whoever opened it unless opendir forces a side, and plays the authored sound overrides. Double doors, breaking, and blocking are not simulated. Alyx's prop_door_rotating_physics is played as the same thing: the hand that swings it in VR is a use press here.
public class PropDoorRotating : FuncDoorRotatingInheritance
object ← BaseEntity ← BaseModelEntity ← BaseToggle ← FuncDoor ← FuncDoorRotating ← PropDoorRotating
Inherited Members
FuncDoorRotating.AngleClosed, FuncDoorRotating.AngleOpen, FuncDoorRotating.Distance, FuncDoorRotating.MoveAngles, FuncDoorRotating.ReadMoveAngles(), FuncDoorRotating.SetUpTravel(), FuncDoorRotating.SwapEnds(), FuncDoorRotating.StartMove(bool), FuncDoor.ObjectCaps, FuncDoor.IsOpen, FuncDoor.IsLocked, FuncDoor.Wait, FuncDoor.State, FuncDoor.PositionClosed, FuncDoor.PositionOpen, FuncDoor.LastActivator, FuncDoor.ForceClosed, FuncDoor.PusherForcesThrough, FuncDoor.Spawn(), FuncDoor.ReadWait(), FuncDoor.SpawnsOpen(), FuncDoor.SetUpTravel(), FuncDoor.SwapEnds(), FuncDoor.StartMove(bool), FuncDoor.MoveDone(), FuncDoor.OnArrived(bool), FuncDoor.OnSetOff(bool), FuncDoor.Think(), FuncDoor.Use(BaseEntity?), FuncDoor.InputOpen(EntityInputData), FuncDoor.InputClose(EntityInputData), FuncDoor.InputToggle(EntityInputData), FuncDoor.InputLock(EntityInputData), FuncDoor.InputUnlock(EntityInputData), FuncDoor.InputSetSpeed(EntityInputData), FuncDoor.Open(BaseEntity?), FuncDoor.Close(), FuncDoor.OnLockedUse(), FuncDoor.Toggle(BaseEntity?), BaseToggle.Speed, BaseToggle.Lip, BaseToggle.MoveDirection, BaseToggle.FinalDestination, BaseToggle.IsLinearMoving, BaseToggle.IsPusher, BaseToggle.LinearMove(Vector3), BaseToggle.AngularMove(Vector3, float), BaseToggle.FinishLinearMove(), BaseToggle.GetAxisDirection(bool, bool), BaseToggle.ResolveMoveDirection(bool), BaseToggle.GetTravelDistance(), BaseModelEntity.ModelNode, BaseModelEntity.CreateRootNode(), BaseEntity.Scene, BaseEntity.RootNode, BaseEntity.Transform, BaseEntity.LayerName, BaseEntity.EntitySystem, BaseEntity.Data, BaseEntity.KeyValues, BaseEntity.Classname, BaseEntity.TargetName, BaseEntity.SpawnFlags, BaseEntity.ParentTransform, BaseEntity.Owner, BaseEntity.MoveParent, BaseEntity.EntityScale, BaseEntity.ModelName, BaseEntity.Origin, BaseEntity.Angles, BaseEntity.Velocity, BaseEntity.AngularVelocity, BaseEntity.NextThink, BaseEntity.MoveDoneTime, BaseEntity.IsRemoved, BaseEntity.Collider, BaseEntity.IsSolid, BaseEntity.IsTrigger, BaseEntity.IsDrawn, BaseEntity.InPlayableWorld, BaseEntity.IsCollidable, BaseEntity.TouchingEntities, BaseEntity.CreateRootNode(), BaseEntity.HasSpawnFlags<TSpawnFlags>(TSpawnFlags), BaseEntity.Spawn(), BaseEntity.Activate(), BaseEntity.Think(), BaseEntity.RoundStart(), BaseEntity.MoveDone(), BaseEntity.TryGetTouchBounds(out Vector3, out Vector3), BaseEntity.AcceptsTouchFrom(BaseEntity), BaseEntity.OnStartTouch(BaseEntity), BaseEntity.OnTouch(BaseEntity), BaseEntity.OnEndTouch(BaseEntity), BaseEntity.ObjectCaps, BaseEntity.Use(BaseEntity?), BaseEntity.Teleport(Vector3, Vector3?), BaseEntity.AcceptInput(string, EntityInputData), BaseEntity.InputKill(EntityInputData), BaseEntity.InputFireUser1(EntityInputData), BaseEntity.InputFireUser2(EntityInputData), BaseEntity.InputFireUser3(EntityInputData), BaseEntity.InputFireUser4(EntityInputData), BaseEntity.SetNextThink(float), BaseEntity.SetMoveDoneTime(float), BaseEntity.PhysicsSimulate(float), BaseEntity.IsPusher, BaseEntity.PusherForcesThrough, BaseEntity.GetSurfaceVelocity(Vector3), BaseEntity.TurnBody(Vector3, Vector3), BaseEntity.SetOriginAndAngles(Vector3, Vector3), BaseEntity.AddNode(SceneNode), BaseEntity.OnRemove(), BaseEntity.UpdateTransform(), BaseEntity.UpdateColliderTransform(), BaseEntity.UpdateRenderTransform(float), BaseEntity.SnapInterpolation(), BaseEntity.OnSpawnGroupTransformApplied(), BaseEntity.AngleMod(float)
Constructors
PropDoorRotating(EntitySystem, EntitySpawnInfo)
Initializes a prop_door_rotating from its keyvalues.
public PropDoorRotating(EntitySystem system, EntitySpawnInfo spawnInfo)Parameters
system EntitySystem
spawnInfo EntitySpawnInfo
Properties
ObjectCaps
Usable by default; only the ignore flag switches it off.
public override EntityCapability ObjectCaps { get; }Property Value
OpenDir
Gets which way the door may swing.
public PropDoorRotating.OpenDirection OpenDir { get; }Property Value
PropDoorRotating.OpenDirection
Methods
OnArrived(bool)
Runs when the door lands at either end, for a class with sounds to play.
protected override void OnArrived(bool open)Parameters
open bool
OnLockedUse()
Runs on a press that the lock refused, for a class with sounds to play.
protected override void OnLockedUse()OnSetOff(bool)
Runs as the door sets off, for a class with sounds to play.
protected override void OnSetOff(bool opening)Parameters
opening bool
ReadMoveAngles()
A prop door swings about its hinge, which is always yaw.
protected override Vector3 ReadMoveAngles()Returns
ReadWait()
The returndelay keyvalue; -1, the default, keeps the door open.
protected override float ReadWait()Returns
Spawn()
Sets up the entity: loads its model, reads class-specific keyvalues, and schedules its first think. Called by right after construction, before the entity enters the world.
public override void Spawn()SpawnsOpen()
Reads whether the map authored the door at its open position.
protected override bool SpawnsOpen()Returns
StartMove(bool)
Sets the door travelling towards one of its two ends.
protected override void StartMove(bool opening)Parameters
opening bool
Use(BaseEntity?)
Runs when something presses this entity. Source's CBaseEntity::Use, minus the use type and value, which nothing here distinguishes.
public override void Use(BaseEntity? activator)Parameters
activator BaseEntity?

