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