2025-09-25 15:47:17 +08:00

105 lines
3.6 KiB
C#

using FSM;
using System.Buffers;
using UnityEngine;
using ZXKFramework;
namespace DongWuYiXue.DaoNiaoShu
{
public class CaoZuoHouZhuFuState : FsmState<FSMManager>
{
public override void OnStateEnter()
{
base.OnStateEnter();
this.Log("进入操作后嘱咐状态");
fsm.ShowCamera("操作后嘱咐_Camera");
fsm.ShowTip(0);
fsm.PlayBgm(0);
fsm.Show("男护士文字位置");
fsm.PlayClip("变为不透明_TimeLine");
//fsm.ShowSpeakPanel(new Vector3(730f, 85f),
// "先生,您好。已经将患宠膀胱内潴留的尿液通过导尿管已经引流出来了,下一步需要查找导致急性尿潴留的病因,然后再对因治疗",
// "急性尿潴留", 2, 1, SpeakAction);
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
{
fsm.ShowSpeakPanel("操作后处理》操作后嘱咐", "先生,您好。导尿术已经操作完毕,下一步需要查找导致急性尿潴留的病因,然后再对因治疗",
new Vector3(210f, 40f), 2, 0, 5, c =>
{
GameManager.Instance.uiManager.CloseUI<SpeakPanel>();
//fsm.PlayClip("操作后嘱咐_TimeLine", () =>
//{
Game.Instance.sound.StopBGM();
//fsm.PlayClip("好的_TimeLine", () =>
//{
fsm.Hide("男护士文字位置");
fsm.nextState = true;
//});
//});
});
}
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
{
fsm.ShowSpeakPanel("操作后处理》操作后嘱咐", "先生,您好。已经将患宠膀胱内潴留的尿液通过导尿管已经引流出来了,下一步需要查找导致急性尿潴留的病因,然后再对因治疗",
new Vector3(730f, 85f), 2, 0, 2, c =>
{
fsm.PlayClip("操作后嘱咐_TimeLine", () =>
{
Game.Instance.sound.StopBGM();
fsm.PlayClip("好的_TimeLine", () =>
{
fsm.Hide("男护士文字位置");
fsm.nextState = true;
});
});
});
}
}
private void SpeakAction(int arg1, string arg2)
{
switch (arg1)
{
case 0:
fsm.AddScore(0, 0);
break;
case 1:
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
{
fsm.AddScore(5, 0);
}
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
{
fsm.AddScore(2, 0);
}
break;
case 2:
fsm.AddScore(0, 0, true);
Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true });
break;
default:
break;
}
fsm.PlayClip("操作后嘱咐_TimeLine", () =>
{
Game.Instance.sound.StopBGM();
fsm.PlayClip("好的_TimeLine", () =>
{
fsm.Hide("男护士文字位置");
fsm.nextState = true;
});
});
}
public override void OnStateStay()
{
base.OnStateStay();
}
public override void OnStateExit()
{
base.OnStateExit();
fsm.Hide("男护士文字位置");
fsm.nextState = false;
}
}
}