blob: 779758910905f99f9e7dfdc1686cd2d22cae88cc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
using UnityEngine;
namespace BehaviorDesigner.Runtime.Tasks.Basic.UnityQuaternion
{
[TaskCategory("Basic/Quaternion")]
[TaskDescription("Stores the quaternion after a rotation.")]
public class RotateTowards : Action
{
[Tooltip("The from rotation")]
public SharedQuaternion fromQuaternion;
[Tooltip("The to rotation")]
public SharedQuaternion toQuaternion;
[Tooltip("The maximum degrees delta")]
public SharedFloat maxDeltaDegrees;
[Tooltip("The stored result")]
[RequiredField]
public SharedQuaternion storeResult;
public override TaskStatus OnUpdate()
{
storeResult.Value = Quaternion.RotateTowards(fromQuaternion.Value, toQuaternion.Value, maxDeltaDegrees.Value);
return TaskStatus.Success;
}
public override void OnReset()
{
fromQuaternion = toQuaternion = storeResult = Quaternion.identity;
maxDeltaDegrees = 0;
}
}
}
|