70 lines
2.1 KiB
C#
70 lines
2.1 KiB
C#
using FSM;
|
|
using UnityEngine;
|
|
using ZXKFramework;
|
|
namespace DongWuYiXue.DaoNiaoShu
|
|
{
|
|
public class BaChuDaoNiaoGuanState : FsmState<FSMManager>
|
|
{
|
|
Coroutine cor;
|
|
AVProValue avProValue;
|
|
bool isBaGuan = false;
|
|
float baGuanValue = 0;
|
|
public override void OnStateEnter()
|
|
{
|
|
base.OnStateEnter();
|
|
this.Log("进入拔出导尿管状态");
|
|
avProValue = GameManager.Instance.transform.FindFirst<AVProValue>("拔出视频");
|
|
baGuanValue = 0;
|
|
fsm.ShowCamera("拔管_Camera");
|
|
fsm.ShowTip(0);
|
|
fsm.PlayBgm(0);
|
|
cor = Game.Instance.IEnumeratorManager.Run(3.0f, () =>
|
|
{
|
|
isBaGuan = true;
|
|
avProValue.gameObject.SetActive(true);
|
|
});
|
|
}
|
|
public override void OnStateStay()
|
|
{
|
|
base.OnStateStay();
|
|
if (isBaGuan)
|
|
{
|
|
baGuanValue += .0005f;
|
|
fsm.PlayClip("拔管_TimeLine", null, baGuanValue);
|
|
avProValue.PlayValue = baGuanValue;
|
|
avProValue.PlayVideoAsValue();
|
|
}
|
|
if (isBaGuan && Input.GetKeyDown(KeyCode.L))
|
|
{
|
|
baGuanValue = 1.0f;
|
|
fsm.PlayClip("拔管_TimeLine", null, baGuanValue);
|
|
avProValue.PlayValue = baGuanValue;
|
|
avProValue.PlayVideoAsValue();
|
|
}
|
|
if (baGuanValue >= 1.0f && isBaGuan)
|
|
{
|
|
isBaGuan = false;
|
|
|
|
avProValue.gameObject.SetActive(false);
|
|
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
|
|
{
|
|
fsm.AddScore(5, 0);
|
|
}
|
|
fsm.nextState = true;
|
|
}
|
|
}
|
|
public override void OnStateExit()
|
|
{
|
|
base.OnStateExit();
|
|
if (null != cor)
|
|
{
|
|
Game.Instance.IEnumeratorManager.Stop(cor);
|
|
cor = null;
|
|
}
|
|
isBaGuan = false;
|
|
avProValue.gameObject.SetActive(false);
|
|
fsm.nextState = false;
|
|
}
|
|
}
|
|
}
|