r2mods/ilspy_dump/ror2_csproj/EntityStates.InfiniteTowerS.../Unburrow.cs

63 lines
1.1 KiB
C#

using RoR2;
using UnityEngine;
using UnityEngine.Networking;
namespace EntityStates.InfiniteTowerSafeWard;
public class Unburrow : BaseSafeWardState
{
[SerializeField]
public float duration;
[SerializeField]
public float radius;
[SerializeField]
public string animationLayerName;
[SerializeField]
public string animationStateName;
[SerializeField]
public string enterSoundString;
private Xoroshiro128Plus rng;
public Unburrow()
{
}
public Unburrow(Xoroshiro128Plus rng)
{
this.rng = rng;
}
public override void OnEnter()
{
base.OnEnter();
if ((bool)safeWardController)
{
safeWardController.SetIndicatorEnabled(enabled: true);
}
PlayAnimation(animationLayerName, animationStateName);
Util.PlaySound(enterSoundString, base.gameObject);
if ((bool)purchaseInteraction)
{
purchaseInteraction.SetAvailable(newAvailable: false);
}
if ((bool)zone)
{
zone.Networkradius = radius;
}
}
public override void FixedUpdate()
{
base.FixedUpdate();
if (NetworkServer.active && base.fixedAge >= duration)
{
outer.SetNextState(new Travelling(rng));
}
}
}