您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
42 行
1.2 KiB
42 行
1.2 KiB
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.Playables;
|
|
|
|
namespace GameplayIngredients.Actions
|
|
{
|
|
[Callable("Sequencing", "Actions/ic-action-timeline.png")]
|
|
public class TimelineControlAction : ActionBase
|
|
{
|
|
public enum TimelineControlMode
|
|
{
|
|
Play,
|
|
Stop,
|
|
Pause,
|
|
Loop,
|
|
Hold
|
|
}
|
|
|
|
public PlayableDirector director;
|
|
public TimelineControlMode mode = TimelineControlMode.Play;
|
|
|
|
public override void Execute(GameObject instigator = null)
|
|
{
|
|
switch(mode)
|
|
{
|
|
case TimelineControlMode.Play: director.Play(); break;
|
|
case TimelineControlMode.Stop: director.Stop(); break;
|
|
case TimelineControlMode.Pause: director.Pause(); break;
|
|
case TimelineControlMode.Loop: director.extrapolationMode = DirectorWrapMode.Loop; break;
|
|
case TimelineControlMode.Hold: director.extrapolationMode = DirectorWrapMode.Hold; break;
|
|
}
|
|
}
|
|
|
|
public override string GetDefaultName()
|
|
{
|
|
return $"Timeline {mode} : '{director?.gameObject.name}'";
|
|
}
|
|
}
|
|
}
|
|
|
|
|