trigger_setorigin

From Sven Co-op
Revision as of 18:24, 11 April 2023 by Outerbeast (talk | contribs)
Jump to navigation Jump to search
trigger_setorigin
Type

point

Status

supported

 


Copies the position and orientation of one entity to another, providing several additional options for angles and relative rotation. Entities moved with this won't shove away any objects blocking them, but pass through them, blocking said objects instead. (This entity does set the origin, it does not perform movement of an entity)
This entity has several inconsistencies in its design. Most of the time you are better off assembling the operation you require using trigger_copyvalue with origin as source and destination values.

1 Keyvalues

Target : target

Name of the entity to attach to or move to the copy-pointer entity.

Copy Pointer : copypointer

The entity to copy coordinates/angles from.

Position Offset (X, Y, Z) : offset

Offset the target entity by this vector when "Offset Difference" is set.

Angle Offset (X, Y, Z) : angleoffset

Offsets the target entity's angles by this value when trigger_setorigin is first activated. Will only touch angles set to be copied  as per spawnflags.

Invert X Angle : invert_x

Use inverted pitch for the target entity's orientation.

Invert Y Angle : invert_y

Use inverted yaw for the target entity's orientation.

Invert Z Angle : invert_z

Use inverted roll for the target entity's orientation.

2 Flags

1 : Constant

Always update the target's position and orientation.

4 : Set Once

Only update the target once and remove the trigger_setorigin from the game afterwards.

8 : Lock Offsets

Use the vector between the target and the copypointer plus the "Offset"-keyvalue as the offset vector.

16 : Copy X Angle

Copy the X angle of the copypointer.

32 : Copy Y Angle

Copy the Y angle of the copypointer.

64 : Copy Z Angle

Copy the Z angle of the copypointer.

128 : Copy X Axis

Copy the X axis of the copypointer.

256 : Copy Y Axis

Copy the Y axis of the copypointer.

512 : Copy Z Axis

Copy the Z axis of the copypointer.

1024 : Skip Initial Set

If set, the target entity will not be moved to the copypointer's origin before doing the offset difference calculation (set this unless you want the target entity stuck to the center of the 

3 Notes

If you are copying the origin/angles from or to a brush based entity, then that entity must have an origin brush attached to it. The center of that origin brush will be used as the origin of the entire brush entity.

4 Issues

Due to several quirks with how func_plat is programmed, using it as a copypointer for trigger_setorigin will not work for the target entity. Using trigger_copyvalue instead will work.