using System; using UnityEngine; namespace Framework.Dialogue2 { /// Manages animations on the widgets of a dialogue canvas public class UGuiDialogueAnimator { /// Initialized a new UGui dialogue widget animator /// /// Dialogue widget controller through which the widgets will be accessed /// public UGuiDialogueAnimator(UGuiDialogueWidgets dialogueWidgets) { this.dialogueWidgets = dialogueWidgets; } /// Called after the widget controller has been constructed public virtual void Initialize() { } /// Plays the appear animation for the dialogue canvas /// Speech the dialogue canvas should display /// Choices the should be available to the player /// An asynchronous task that reports when the animation has completed public virtual Async.IAsyncTask PlayAppearAnimation( IDialogueText speech, ArraySegment choices ) { return null; } public virtual Async.IAsyncTask PlayHideAnimation(int selectedChoiceIndex) { return null; } public virtual Async.IAsyncTask PlayMoveAnimation( Vector3 sourcePosition, Quaternion sourceOrientation, Vector3 targetPosition, Quaternion targetOrientation ) { return null; } // CreateAppearAnimation // CreateHideAnimation // CreateMoveAnimation // HighlightChoice /// Controller through which widgets are accessed private UGuiDialogueWidgets dialogueWidgets; } } // namespace Framework.Dialogue2