Files
2024-11-20 15:21:28 +01:00

61 lines
1.2 KiB
C#

// (c) Copyright HutongGames, LLC 2010-2013. All rights reserved.
using UnityEngine;
namespace HutongGames.PlayMaker.Actions
{
[ActionCategory(ActionCategory.GameObject)]
[Tooltip("Destroys a Game Object.")]
public class DestroyObject : FsmStateAction
{
[RequiredField]
[Tooltip("The GameObject to destroy.")]
public FsmGameObject gameObject;
[HasFloatSlider(0, 5)]
[Tooltip("Optional delay before destroying the Game Object.")]
public FsmFloat delay;
[Tooltip("Detach children before destroying the Game Object.")]
public FsmBool detachChildren;
//public FsmEvent sendEvent;
//DelayedEvent delayedEvent;
public override void Reset()
{
gameObject = null;
delay = 0;
//sendEvent = null;
}
public override void OnEnter()
{
var go = gameObject.Value;
if (go != null)
{
if (delay.Value <= 0)
{
Object.Destroy(go);
}
else
{
Object.Destroy(go, delay.Value);
}
if (detachChildren.Value)
go.transform.DetachChildren();
}
Finish();
//delayedEvent = new DelayedEvent(Fsm, sendEvent, delay.Value);
}
public override void OnUpdate()
{
//delayedEvent.Update();
}
}
}