53 lines
1.2 KiB
C#
53 lines
1.2 KiB
C#
using RoR2;
|
|
using UnityEngine;
|
|
|
|
namespace EntityStates.Missions.BrotherEncounter;
|
|
|
|
public class Phase1 : BrotherEncounterPhaseBaseState
|
|
{
|
|
public static string prespawnSoundString;
|
|
|
|
public static float prespawnSoundDelay;
|
|
|
|
public static GameObject centerOrbDestroyEffect;
|
|
|
|
private bool hasPlayedPrespawnSound;
|
|
|
|
protected override string phaseControllerChildString => "Phase1";
|
|
|
|
protected override EntityState nextState => new Phase2();
|
|
|
|
public override void OnEnter()
|
|
{
|
|
KillAllMonsters();
|
|
base.OnEnter();
|
|
}
|
|
|
|
protected override void PreEncounterBegin()
|
|
{
|
|
base.PreEncounterBegin();
|
|
Transform transform = childLocator.FindChild("CenterOrbEffect");
|
|
transform.gameObject.SetActive(value: false);
|
|
EffectManager.SpawnEffect(centerOrbDestroyEffect, new EffectData
|
|
{
|
|
origin = transform.transform.position
|
|
}, transmit: false);
|
|
}
|
|
|
|
public override void FixedUpdate()
|
|
{
|
|
base.FixedUpdate();
|
|
if (!hasPlayedPrespawnSound && base.fixedAge > prespawnSoundDelay)
|
|
{
|
|
Transform transform = childLocator.FindChild("CenterOrbEffect");
|
|
Util.PlaySound(prespawnSoundString, transform.gameObject);
|
|
hasPlayedPrespawnSound = true;
|
|
}
|
|
}
|
|
|
|
protected override void OnMemberAddedServer(CharacterMaster master)
|
|
{
|
|
base.OnMemberAddedServer(master);
|
|
}
|
|
}
|