Humanoid Control for Unity v4
|
The Teleport Target provides control to where a player can teleport and can be used in combination with a generic Interaction Pointer.
The Teleport Target can be placed on a static or moving Rigidbody object with a collider. It has been implemented as a Event Trigger and will teleport when an PointerDown event is received.
Inherits EventTrigger.
Public Types | |
enum | TargetPosRot { Pointer , Transform } |
Public Member Functions | |
void | TeleportToHere (Transform t) |
Teleport the transform to this Teleport Target. | |
void | TeleportToHere (HumanoidControl humanoid) |
Teleport the Humanoid to this Teleport Target. | |
override void | OnPointerDown (PointerEventData eventData) |
Teleporting initialized by an Unity UI Event. | |
Public Attributes | |
bool | teleportRoot = false |
Teleport the root transform instead of the transform itself. | |
bool | checkCollision = true |
Check the target location for collisions. | |
MovementType | movementType |
The type of movement used to reacht the teleport target. | |
TargetPosRot | targetPosRot = TargetPosRot.Pointer |
Determines the target position and rotation. | |
Transform | targetTransform |
The target transform for the teleport. | |
Pose | pose |
The pose of a humanoid after it has been teleported. | |
bool | enableAnimators = true |
Enables humanoid animators after teleporting. | |
UnityEvent | unityEvents |
Protected Member Functions | |
virtual void | Teleport (Transform transform, Vector3 position, Quaternion rotation, MovementType movementType=MovementType.Teleport, Transform newParent=null) |
Teleport the transform to a position and rotation. | |
virtual bool | IsValid (Vector3 position) |
Check is the target position is valid. | |
void Passer.TeleportTarget.TeleportToHere | ( | Transform | t | ) |
Teleport the transform to this Teleport Target.
This function will teleport the given transform to this teleport target using the teleport target settings. If the targetPosRot is set to TargetPosRot.Pointer, the transform will be transported using the transform of the gameObject as there is no pointer information.
t | The transform to teleport |
void Passer.TeleportTarget.TeleportToHere | ( | HumanoidControl | humanoid | ) |
Teleport the Humanoid to this Teleport Target.
This function will teleport the given humanoid to this teleport target using the teleport target settings. If the targetPosRot is set to TargetPosRot.Pointer, the humanoid will be transported using the transform of the gameObject as there is no pointer information.
humanoid | The humanoid to teleport |
|
protectedvirtual |
Teleport the transform to a position and rotation.
This function will teleport the given transform to this teleport target using the teleport target settings. If the targetPosRot is set to TargetPosRot.Pointer, the transform will be transported using the transform of the gameObject as there is no pointer information.
transform | The transform to teleport |
position | The new world position of the transform after teleporting |
rotation | The new world rotation of the transform after teleporting |
movementType | The movement type to use to get to the target |
newParent | The new parent of the transform after teleporting |
bool Passer.TeleportTarget.teleportRoot = false |
Teleport the root transform instead of the transform itself.
If this is enabled the root of the transform (the topmost transform) will be teleported instead of the transform itself.
bool Passer.TeleportTarget.checkCollision = true |
Check the target location for collisions.
if enabled this will check if the location to which the pointer is pointing contains a collider. Teleporting will only take place if no collider has been found. The check is executed using a capsule of 2 meters/units high and 0.2 meters/units radius.
MovementType Passer.TeleportTarget.movementType |
The type of movement used to reacht the teleport target.
determines how the Transform is moved to the Target Point. Teleport = direct placement a the target point. Dash = a quick movement is a short time from the originating point to the target point.
TargetPosRot Passer.TeleportTarget.targetPosRot = TargetPosRot.Pointer |
Determines the target position and rotation.
TargetPosRot.Pointer = The interaction pointer location is the target position and rotation. TargetPosRot.Transform = The targetTransform determines the target position and rototation.
Transform Passer.TeleportTarget.targetTransform |
The target transform for the teleport.
If targetPosRot is set to TargetPosRot.Transform the targetTransform will determine the position and rotation of the transform to teleport. Next to that, the teleported transform will become a child of this teleportTarget after teleporting
Pose Passer.TeleportTarget.pose |
The pose of a humanoid after it has been teleported.
This is an optional Pose of the Humanoid after it has been teleported. This enables you to teleport to a different pose like a seating pose for instance.
bool Passer.TeleportTarget.enableAnimators = true |
Enables humanoid animators after teleporting.
This will enable or disable the hips and foot animator after teleporting. For poses like seating a walking foot animation is not required. In such cases the foot animator can be switch off with this setting.