public static void DrawAParticleSystem(AParticleSystem aps) { aps.particleSystem = EditorGUILayout.ObjectField("Particle System:", aps.particleSystem, typeof(ParticleSystem), false) as ParticleSystem; aps.loop = EditorGUILayout.ToggleLeft("Loop", aps.loop); /* Create some space */ GUILayout.Space(20f); /* Choose direction */ GUILayout.BeginHorizontal(); GUILayout.Label("Direction to play in:"); aps.direction = (AnimObject.AnimationDirection)EditorGUILayout.EnumPopup( "", aps.direction, GUILayout.MaxWidth(250f)); GUILayout.EndHorizontal(); /* Show distance if location != Target or None */ if (aps.direction != AnimObject.AnimationDirection.Target && aps.direction != AnimObject.AnimationDirection.None) { aps.distance = EditorGUILayout.IntField("Distance (hexes):", aps.distance); } aps.speed = EditorGUILayout.FloatField("Speed:", aps.speed); aps.speed = AnimObject.EnsureNoNegativeFloat(aps.speed); /* Create some space */ GUILayout.Space(20f); /* Draws concurrency/target stuff */ DrawBaseAnimObject(aps); }
public static void DrawASpriteAnimation(ASpriteAnimation asa) { //asa.spriteAnimation = EditorGUILayout.ObjectField("Sprite Animation:", asa.spriteAnimation, typeof(AnimationClip), false) // as AnimationClip; // spriteAnimation = EditorGUILayout.PropertyField(spriteAnimation, "Sprite Animation:", false, GUILayout.MaxWidth(300f)) //as Animation; asa.speed = EditorGUILayout.FloatField("Speed:", asa.speed); asa.speed = AnimObject.EnsureNoNegativeFloat(asa.speed); asa.loop = EditorGUILayout.ToggleLeft("Loop", asa.loop); if (asa.loop) { EditorGUILayout.LabelField("Times To Loop (0 for infinite)"); asa.timesToLoop = EditorGUILayout.IntField(asa.timesToLoop, GUILayout.MaxWidth(100f)); asa.timesToLoop = AnimObject.EnsureNoNegativeInt(asa.timesToLoop); } /* Create some space */ GUILayout.Space(20f); DrawBaseAnimObject(asa); }
/// <summary> /// Shows variables for AParticleSystem AnimObject /// </summary> void ShowParticleSystemVariables() { particleSystem = EditorGUILayout.ObjectField("Particle System:", particleSystem, typeof(ParticleSystem), false) as ParticleSystem; particleLoop = EditorGUILayout.ToggleLeft("Loop", particleLoop); /* Create some space */ GUILayout.Space(20f); /* Choose direction */ GUILayout.BeginHorizontal(); GUILayout.Label("Direction to play in:"); particleDirection = (AnimObject.AnimationDirection)EditorGUILayout.EnumPopup( "", particleDirection, GUILayout.MaxWidth(250f)); GUILayout.EndHorizontal(); /* Show distance if location != Target or None */ if (particleDirection != AnimObject.AnimationDirection.Target && particleDirection != AnimObject.AnimationDirection.None) { particleDistance = EditorGUILayout.IntField("Distance (hexes):", particleDistance); } particleSpeed = EditorGUILayout.FloatField("Speed:", particleSpeed); particleSpeed = AnimObject.EnsureNoNegativeFloat(particleSpeed); ShowCommonVariables(); }
/// <summary> /// Shows variables for ASpriteAnimation AnimObject /// </summary> void ShowSpriteAnimationVariables() { spriteAnimation = EditorGUILayout.ObjectField("Particle System:", spriteAnimation, typeof(AnimationClip), false) as AnimationClip; spriteSpeed = EditorGUILayout.FloatField("Speed:", spriteSpeed); spriteSpeed = AnimObject.EnsureNoNegativeFloat(spriteSpeed); spriteLoop = EditorGUILayout.ToggleLeft("Loop", spriteLoop); if (spriteLoop) { spriteTimesToLoop = EditorGUILayout.IntField("Times To Loop (0 for infinite)", spriteTimesToLoop); } /* Create some space */ GUILayout.Space(20f); ShowCommonVariables(); }
public static void DrawATween(ATween at) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Move Direction:"); at.direction = (AnimObject.AnimationDirection)EditorGUILayout.EnumPopup( "", at.direction, GUILayout.MaxWidth(250f)); EditorGUILayout.EndHorizontal(); /* Show distance if location != Target or None */ if (at.direction != AnimObject.AnimationDirection.Target && at.direction != AnimObject.AnimationDirection.None) { at.distance = EditorGUILayout.IntField("Distance (hexes):", at.distance); } at.speed = EditorGUILayout.FloatField("Speed:", at.speed); at.speed = AnimObject.EnsureNoNegativeFloat(at.speed); DrawBaseAnimObject(at); }
/// <summary> /// Shows variables for ATween AnimObject /// </summary> void ShowTweenVariables() { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Move Direction:"); tweenDirection = (AnimObject.AnimationDirection)EditorGUILayout.EnumPopup( "", tweenDirection, GUILayout.MaxWidth(250f)); EditorGUILayout.EndHorizontal(); /* Show distance if location != Target or None */ if (tweenDirection != AnimObject.AnimationDirection.Target && tweenDirection != AnimObject.AnimationDirection.None) { tweenDistance = EditorGUILayout.IntField("Distance (hexes):", tweenDistance); } tweenSpeed = EditorGUILayout.FloatField("Speed:", tweenSpeed); tweenSpeed = AnimObject.EnsureNoNegativeFloat(tweenSpeed); ShowCommonVariables(); }
protected void ShowTargetGUI() { GUILayout.BeginVertical(); commonWaitForAnimObjectToEnd = UnityEditor.EditorGUILayout.ToggleLeft( "Wait For AnimObject to End", commonWaitForAnimObjectToEnd, GUILayout.MinWidth(400f)); commonDelayForTargetAnim = UnityEditor.EditorGUILayout.FloatField("Delay", commonDelayForTargetAnim, GUILayout.MaxWidth(200f)); commonDelayForTargetAnim = AnimObject.EnsureNoNegativeFloat(commonDelayForTargetAnim);//ensure you can't have a negative delay GUILayout.BeginHorizontal(); //"(optional) Target animation play " GUILayout.FlexibleSpace(); GUILayout.Label("(Optional) Target Animation to Play"); commonOptionalTargetAnimationOverride = (AnimObject.AnimationEnum)UnityEditor.EditorGUILayout.EnumPopup( "", commonOptionalTargetAnimationOverride, GUILayout.MaxWidth(250f)); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.EndVertical(); }