2025-09-30 14:54:08 +08:00

92 lines
3.3 KiB
C#

using FSM;
using ZXKFramework;
namespace DongWuYiXue.QiGuanChaGuan
{
public class QueRenChaGuanWeiZhiState : FsmState<FSMManager>
{
public override void OnStateEnter()
{
base.OnStateEnter();
this.Log("进入确认插管位置状态");
fsm.ShowCamera("确认插管位置1_Camera");
fsm.ShowTip(0);
fsm.PlayBgm(0);
fsm.Show("二氧化碳监测装置");
fsm.Light_EnableInteraction("二氧化碳监测装置");
fsm.Light_EnableInteraction("二氧化碳监测装置位置");
fsm.ShowArrow("请拖拽二氧化碳监测装置", "二氧化碳监测装置");
fsm.ShowTipBtn(() =>
{
fsm.Light_EnableInteraction("二氧化碳监测装置", true);
fsm.Light_EnableInteraction("二氧化碳监测装置位置", true);
fsm.ShowArrow("请拖拽二氧化碳监测装置", "二氧化碳监测装置", 0, 0, 5, true);
}, 2);
fsm.InteractionTrigger("二氧化碳监测装置", c =>
{
if (c.name.Equals("二氧化碳监测装置位置"))
{
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
{
fsm.AddScore(5, 0);
}
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
{
fsm.AddScore(4, 0);
}
fsm.HideArrow();
fsm.Hide("二氧化碳监测装置");
fsm.Unlight_DisableInteraction("二氧化碳监测装置");
fsm.Unlight_DisableInteraction("二氧化碳监测装置位置");
fsm.PlayClip("确认插管位置1_TimeLine", () =>
{
fsm.ShowCamera("确认插管位置2_Camera");
fsm.ShowTip(1);
fsm.PlayBgm(1);
fsm.Light_EnableInteraction("呼吸机");
fsm.ShowArrow("请点击呼吸机", "呼吸机");
fsm.ShowTipBtn(() =>
{
fsm.Light_EnableInteraction("呼吸机", true);
fsm.ShowArrow("请点击呼吸机", "呼吸机", 0, 0, 5, true);
}, 2);
});
}
});
fsm.InteractionDown("呼吸机", c =>
{
if (fsm.main_gameModel.modeType == ModeType.ShiXun)
{
fsm.AddScore(5, 1);
}
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
{
fsm.AddScore(4, 1);
}
fsm.HideArrow();
fsm.Unlight_DisableInteraction("呼吸机");
fsm.PlayClip("确认插管位置2_TimeLine", () =>
{
fsm.nextState = true;
});
});
}
public override void OnStateStay()
{
base.OnStateStay();
}
public override void OnStateExit()
{
base.OnStateExit();
fsm.HideArrow();
fsm.Hide("二氧化碳监测装置");
fsm.Unlight_DisableInteraction("呼吸机");
fsm.Unlight_DisableInteraction("二氧化碳监测装置");
fsm.Unlight_DisableInteraction("二氧化碳监测装置位置");
fsm.nextState = false;
}
}
}