您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
58 行
1.6 KiB
58 行
1.6 KiB
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.Timeline;
|
|
using GameplayIngredients.Rigs;
|
|
|
|
namespace GameplayIngredients.Actions
|
|
{
|
|
public class DirectorControlRigAction : ActionBase
|
|
{
|
|
[NonNullCheck]
|
|
public DirectorControlRig directorControlRig;
|
|
|
|
[Header("Play Mode")]
|
|
public bool SetPlayMode = true;
|
|
public DirectorControlRig.PlayMode PlayMode = DirectorControlRig.PlayMode.Play;
|
|
|
|
[Header("Wrap Mode")]
|
|
public bool SetWrapMode = false;
|
|
public DirectorControlRig.WrapMode WrapMode = DirectorControlRig.WrapMode.Loop;
|
|
|
|
[Header("Time")]
|
|
public bool SetTime = false;
|
|
public float Time = 0.0f;
|
|
|
|
public bool SetStopTime = false;
|
|
public float StopTime = 1.0f;
|
|
|
|
[Header("Timeline Asset")]
|
|
public bool SetTimeline = false;
|
|
public TimelineAsset TimelineAsset;
|
|
|
|
public override void Execute(GameObject instigator = null)
|
|
{
|
|
if (directorControlRig == null)
|
|
{
|
|
Debug.LogWarning("No DirectorControlRig set, ignoring Call", this.gameObject);
|
|
return;
|
|
}
|
|
|
|
if (SetTime)
|
|
directorControlRig.time = Time;
|
|
|
|
if (SetPlayMode)
|
|
directorControlRig.playMode = PlayMode;
|
|
|
|
if (SetWrapMode)
|
|
directorControlRig.wrapMode = WrapMode;
|
|
|
|
if (SetStopTime)
|
|
directorControlRig.stopTime = StopTime;
|
|
|
|
if (SetTimeline)
|
|
directorControlRig.timeline = TimelineAsset;
|
|
|
|
}
|
|
}
|
|
}
|