2025-09-18 17:30:11 +08:00

73 lines
2.7 KiB
C#

using FSM;
namespace DongWuYiXue.QiGuanChaGuan
{
public class TuMoLiDuoKaYinState : FsmState<FSMManager>
{
public override void OnStateEnter()
{
base.OnStateEnter();
this.Log("进入涂抹多卡因凝胶状态");
fsm.ShowCamera("涂抹利多卡因凝胶1_Camera");
fsm.ShowTip(0);
fsm.Show("利多卡因喷壶");
fsm.Light("测算导管插入长度");
fsm.EnableInteraction("测算导管插入长度触发");
fsm.Light_EnableInteraction("利多卡因喷壶");
fsm.ShowArrow("请拖拽利多卡因喷壶", "利多卡因喷壶");
fsm.InteractionTrigger("利多卡因喷壶", c =>
{
if (c.name.Equals("测算导管插入长度触发"))
{
fsm.HideArrow();
fsm.Hide("利多卡因喷壶");
fsm.Unlight("测算导管插入长度");
fsm.DisableInteraction("测算导管插入长度触发");
fsm.Unlight_DisableInteraction("利多卡因喷壶");
//fsm.Hide("利多卡因喷壶");
fsm.PlayClip("涂抹利多卡因1_TimeLine", () =>
{
fsm.ShowTip(1);
fsm.Show("利多卡因纱布");
fsm.Light("测算导管插入长度");
fsm.EnableInteraction("测算导管插入长度触发");
fsm.Light_EnableInteraction("利多卡因纱布");
fsm.ShowArrow("请拖拽纱布", "利多卡因纱布");
});
}
});
fsm.InteractionTrigger("利多卡因纱布", c =>
{
if (c.name.Equals("测算导管插入长度触发"))
{
fsm.HideArrow();
fsm.Unlight("测算导管插入长度");
fsm.Hide("利多卡因纱布");
fsm.DisableInteraction("测算导管插入长度触发");
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.Hide("利多卡因喷壶");
fsm.Unlight("测算导管插入长度");
fsm.DisableInteraction("测算导管插入长度触发");
fsm.Unlight_DisableInteraction("利多卡因喷壶");
fsm.Unlight_DisableInteraction("利多卡因纱布");
fsm.nextState = false;
}
}
}