using FSM; namespace DongWuYiXue.QiGuanChaGuan { public class TuMoLiDuoKaYinState : FsmState { 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; } } }