phys_pulleyconstraint
phys_pulleyconstraint
is a point entity available in all Source games. It is a constraint that is essentially two length constraints and two points. Imagine it as a virtual rope connected to two pulleyed objects, specified in the Entity 1 (attach1) and Entity 2 (attach2) keyvalues, each suspended from a pulley above them.
Pulley point 1 - the pulley from which Entity 1 is always suspended from - is the origin of this constraint entity.
Pulley point 2 - the pulley from which Entity 2 is always suspended from - is the position of the "blue ball", set by altering the Pulley Position 2 (position2) keyvalue directly, or by using the Helper Tool.
The constraint keeps the sum of the distances between the pulley points and their suspended objects constant.
Contents
Keyvalues
- Additional Length
(addlength)
<float> - Add (or subtract) this amount to the rest length of the pulley rope.
- Pulley Gear Ratio
(gearratio)
<float> - Add (or subtract) this amount to the rest length of the pulley rope.
- Pulley Position 2
(position2)
<vector> - The position of the pulley for Entity 2. The pulley for Entity 1 is the origin of this constraint entity. Entity 1 is always suspended from pulley point 1, and Entity 2 is always suspended from pulley point 2.
- Entity 1
(attach1)
<targetname> - Entity 2
(attach2)
<targetname> - The entities to constrain. Leave one or the other field blank to constrain to the world. Note:Only one entity will be constrained, even if several share the given targetname.
- Constraint System Manager
(constraintsystem)
<targetname> - A
phys_constraintsystem
that this constraint should be a part of. This avoids the "jiggling" caused by constraints applied to the same set of entities fighting with each other. - Force Limit to Break
(forcelimit)
<float> - Impact force required to break the constraint, in pounds. 0 means infinite. A way of calculating this is to set it to the weight of an object that would break the constraint if it were resting on its objects.
- Torque Limit to Break
(torquelimit)
<float> - Torque required to break the constraint, in pounds*inches. 0 means infinite. A way of calculating this is to multiply any reference mass by the resting distance (from the center of mass of the object) needed to break the constraint.
- Play Sound on Break
(breaksound)
<string> - A sound played when the constraint is broken.
- Follow teleport distance
(teleportfollowdistance)
<float> - If one constrained object teleports more than this many units away, the other will teleport with it.
- Name
(targetname)
<string> - The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
Flags
- 1 : No Collision until break
- 2 : Keep Rigid
- No Collision until break : [
1
] - Start inactive : [
4
] - Change mass to keep stable attachment to world : [
8
] - Do not connect entities until turned on : [
16
]
Inputs
Break
- Force the constraint to break.
TurnOn
- Enable the constraint; do this if the constrained objects don't exist when it spawns. Note that broken constraints cannot be turned back on as they have been deleted.
TurnOff
- Disable the constraint.
Outputs
OnBreak
- Fired when the constraint breaks.