2026-04-12 16:41:37 +08:00

93 lines
3.7 KiB
C#

using FSM;
using UnityEngine;
using ZXKFramework;
namespace YiLiao.XinFeiTingZhen
{
public class ZhengChangDiErXinYinState : FsmState<FSMManager>
{
bool step;
string PositionValue
{
get
{
return GameManager.Instance.sensorManager.GetSensor<TZQ_Sensor>().positionValue.ToString();
}
}
public override void OnStateEnter()
{
base.OnStateEnter();
GameManager.Instance.sensorManager.SendFunction("#ID:3,4;SONG:2,2;%");
fsm.ShowTip(0);
fsm.PlayBgm(0);
fsm.PlayClip("正常第二心音", () => {
fsm.Light_EnableInteraction("主动脉瓣口");
fsm.Light_EnableInteraction("肺动脉瓣口");
fsm.ShowArrow("请将实物听诊器听诊头放置在如图示犬的第一心音最强听取点听诊正常心音", "主动脉瓣口", false, 0, 0, 20);
step = true;
});
//fsm.InteractionDown("主动脉瓣口", obj => {
// fsm.StopBgm();
// fsm.InteractionDown("主动脉瓣口", null);
// fsm.InteractionDown("肺动脉瓣口", null);
// fsm.Unlight_DisableInteraction("肺动脉瓣口");
// fsm.Unlight_DisableInteraction("主动脉瓣口");
// fsm.HideArrow();
// Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true });
// fsm.PlayClip("正常第二心音2");
// ChatUI.Instance.SendAI("心脏听诊》正常心音》正常第二心音", null);
// fsm.ShowNextPanel(() => {
// ChatUI.Instance.CloseChatTxt();
// fsm.nextState = true;
// });
//});
//fsm.InteractionDown("肺动脉瓣口", obj => {
// fsm.StopBgm();
// fsm.InteractionDown("肺动脉瓣口", null);
// fsm.InteractionDown("主动脉瓣口", null);
// fsm.Unlight_DisableInteraction("肺动脉瓣口");
// fsm.Unlight_DisableInteraction("主动脉瓣口");
// fsm.HideArrow();
// Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true });
// fsm.PlayClip("正常第二心音2");
// ChatUI.Instance.SendAI("心脏听诊》正常心音》正常第二心音", null);
// fsm.ShowNextPanel(() => {
// ChatUI.Instance.CloseChatTxt();
// fsm.nextState = true;
// });
//});
}
public override void OnStateStay()
{
base.OnStateStay();
if (PositionValue == "3" || PositionValue == "4" || Input.GetKeyDown(KeyCode.L))
{
if (step)
{
step = false;
fsm.StopBgm();
//fsm.InteractionDown("肺动脉瓣口", null);
//fsm.InteractionDown("主动脉瓣口", null);
fsm.Unlight_DisableInteraction("肺动脉瓣口");
fsm.Unlight_DisableInteraction("主动脉瓣口");
fsm.HideArrow();
Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true });
fsm.PlayClip("正常第二心音_听诊器");
ChatUI.Instance.SendAI("心脏听诊》正常心音》正常第二心音", null);
fsm.ShowNextPanel(() =>
{
ChatUI.Instance.CloseChatTxt();
fsm.nextState = true;
});
}
}
}
public override void OnStateExit()
{
base.OnStateExit();
step = false;
fsm.StopClip("正常第二心音_听诊器");
fsm.nextState = false;
}
}
}