33 lines
940 B
C#
33 lines
940 B
C#
|
|
using System.Collections.Generic;
|
|||
|
|
using Cielonos.MainGame.Characters;
|
|||
|
|
using Sirenix.OdinInspector;
|
|||
|
|
using SLSUtilities.FunctionalAnimation;
|
|||
|
|
using UnityEngine;
|
|||
|
|
|
|||
|
|
namespace Cielonos.MainGame.FunctionalAnimation
|
|||
|
|
{
|
|||
|
|
public class SetStatus : FuncAnimPayloadBase
|
|||
|
|
{
|
|||
|
|
[Tooltip("要添加或移除的状态列表")]
|
|||
|
|
public List<StatusType> statusToSet;
|
|||
|
|
|
|||
|
|
[Tooltip("是否添加状态,若为false则表示移除状态")]
|
|||
|
|
[LabelText("@this.isAdd ? \"isAdd\" : \"isRemove\"")]
|
|||
|
|
public bool isAdd = true;
|
|||
|
|
|
|||
|
|
public override void Invoke()
|
|||
|
|
{
|
|||
|
|
foreach (StatusType status in statusToSet)
|
|||
|
|
{
|
|||
|
|
if (isAdd)
|
|||
|
|
{
|
|||
|
|
character.statusSm.AddStatus(status);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
character.statusSm.RemoveStatus(status);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|