private void Update() { if (colorState == ColorChangeState.show) { n += TextAnimationSpeed; Narration.color = Color.Lerp(Narration.color, narrationColor, n); if (Narration.color.a == 1) { colorState = ColorChangeState.sustain; n = Time.time; } } else if (colorState == ColorChangeState.sustain) { if (Time.time > n + showForSeconds) { colorState = ColorChangeState.hide; n = 0; } } else if (colorState == ColorChangeState.hide) { if (Narration.color.a > 0) { n += TextAnimationSpeed; Narration.color = Color.Lerp(Narration.color, Color.clear, n); } } }
public override void OnInspectorGUI() { serializedObject.Update(); EditorGUILayout.PropertyField(colorChangeState_Prop); ColorChangeState CCS = (ColorChangeState)colorChangeState_Prop.enumValueIndex; switch (CCS) { case ColorChangeState.Single: EditorGUILayout.ColorField(Color.white); //Start Color break; case ColorChangeState.Gradient: EditorGUILayout.ColorField(Color.white); //Start Color EditorGUILayout.ColorField(Color.white); //End COlor EditorGUILayout.IntSlider(colorLerpDivider_Prop, 0, 1, new GUIContent("colorLerpDivider")); break; case ColorChangeState.None: break; } serializedObject.ApplyModifiedProperties(); }
public override void NarrateInteraction(bool succeeded) { Narration.color = Color.clear; colorState = ColorChangeState.show; if (succeeded) { Narration.text = narrationObject.RandomTextSuccess(); } else { Narration.text = narrationObject.RandomTextFail(); } }