You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.5 KiB
55 lines
1.5 KiB
using UnityEngine; |
|
using UnityEngine.Serialization; |
|
using System.Collections; |
|
|
|
namespace Fungus |
|
{ |
|
[CommandInfo("iTween", |
|
"Punch Rotation", |
|
"Applies a jolt of force to a GameObject's rotation and wobbles it back to its initial rotation.")] |
|
[AddComponentMenu("")] |
|
public class PunchRotation : iTweenCommand, ISerializationCallbackReceiver |
|
{ |
|
#region Obsolete Properties |
|
[HideInInspector] [FormerlySerializedAs("amount")] public Vector3 amountOLD; |
|
#endregion |
|
|
|
[Tooltip("A rotation offset in space the GameObject will animate to")] |
|
public Vector3Data _amount; |
|
|
|
[Tooltip("Apply the transformation in either the world coordinate or local cordinate system")] |
|
public Space space = Space.Self; |
|
|
|
public override void DoTween() |
|
{ |
|
Hashtable tweenParams = new Hashtable(); |
|
tweenParams.Add("name", _tweenName.Value); |
|
tweenParams.Add("amount", _amount.Value); |
|
tweenParams.Add("space", space); |
|
tweenParams.Add("time", duration); |
|
tweenParams.Add("easetype", easeType); |
|
tweenParams.Add("looptype", loopType); |
|
tweenParams.Add("oncomplete", "OniTweenComplete"); |
|
tweenParams.Add("oncompletetarget", gameObject); |
|
tweenParams.Add("oncompleteparams", this); |
|
iTween.PunchRotation(_targetObject.Value, tweenParams); |
|
} |
|
|
|
// |
|
// ISerializationCallbackReceiver implementation |
|
// |
|
|
|
public void OnBeforeSerialize() |
|
{} |
|
|
|
public void OnAfterDeserialize() |
|
{ |
|
if (amountOLD != default(Vector3)) |
|
{ |
|
_amount.Value = amountOLD; |
|
amountOLD = default(Vector3); |
|
} |
|
} |
|
} |
|
|
|
} |