using FSM; using System; using UnityEngine; using ZXKFramework; namespace YiLiao.JingMaiLiuZhiZhen { public class TiaoJieDiSuState : FsmState { public override void OnStateEnter() { base.OnStateEnter(); if(fsm.main_gameModel.modeType == ModeType.KaoHe) { fsm.ShowTxtQuestion(5, 4, 1, () => { fsm.ShowCamera("TiaoJieDiSuState_Camera"); fsm.ShowTip(0, true); fsm.PlayClip("调节滴速", () => { fsm.ShowTip(1, true); fsm.PlayBgm(1, true); fsm.ShowCamera("TiaoJieDiSuState_Camera2"); fsm.ShowSlider(new UnityEngine.Vector2(-93f, -50f), 100, 0, 0, value => { fsm.Get("滴速调节器").transform.localPosition = new UnityEngine.Vector3(-(value - 50) * 0.000308f, 0, -0.00401f); if (Convert.ToInt32(value) == 0) { fsm.Get("慢").SetActive(false); fsm.Get("中").SetActive(false); fsm.Get("快").SetActive(false); } if (Convert.ToInt32(value) >= 55 && Convert.ToInt32(value) <= 80) { fsm.Get("慢").SetActive(false); if (!fsm.Get("中").activeSelf) { fsm.Get("中").SetActive(true); } fsm.Get("快").SetActive(false); } if (Convert.ToInt32(value) < 55) { if (!fsm.Get("慢").activeSelf) { fsm.Get("慢").SetActive(true); } fsm.Get("中").SetActive(false); fsm.Get("快").SetActive(false); } if (Convert.ToInt32(value) > 80) { fsm.Get("慢").SetActive(false); fsm.Get("中").SetActive(false); if (!fsm.Get("快").activeSelf) { fsm.Get("快").SetActive(true); } } }, value => { if (Convert.ToInt32(value) >= 55 && Convert.ToInt32(value) <= 80) { Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true }); } else { Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = false }); } fsm.Get("滴速调节器").transform.localPosition = new UnityEngine.Vector3(0, 0, -0.00401f); fsm.Get("慢").SetActive(false); fsm.Get("中").SetActive(true); fsm.Get("快").SetActive(false); fsm.nextState = true; }); fsm.ShowArrow("请拖拽滴速进度条", new UnityEngine.Vector3(-90f, -260f)); }); }); } if (fsm.main_gameModel.modeType == ModeType.ShiXun) { fsm.ShowCamera("TiaoJieDiSuState_Camera"); fsm.ShowTip(0, true); fsm.PlayClip("调节滴速", () => { fsm.ShowTip(1, true); fsm.PlayBgm(1, true); fsm.ShowCamera("TiaoJieDiSuState_Camera2"); fsm.ShowSlider(new UnityEngine.Vector2(-93f, -50f), 100, 0, 0, value => { fsm.Get("滴速调节器").transform.localPosition = new UnityEngine.Vector3(-(value - 50) * 0.000308f, 0, -0.00401f); if (Convert.ToInt32(value) == 0) { fsm.Get("慢").SetActive(false); fsm.Get("中").SetActive(false); fsm.Get("快").SetActive(false); } if (Convert.ToInt32(value) >= 55 && Convert.ToInt32(value) <= 80) { fsm.Get("慢").SetActive(false); if (!fsm.Get("中").activeSelf) { fsm.Get("中").SetActive(true); } fsm.Get("快").SetActive(false); } if (Convert.ToInt32(value) < 55) { if (!fsm.Get("慢").activeSelf) { fsm.Get("慢").SetActive(true); } fsm.Get("中").SetActive(false); fsm.Get("快").SetActive(false); } if (Convert.ToInt32(value) > 80) { fsm.Get("慢").SetActive(false); fsm.Get("中").SetActive(false); if (!fsm.Get("快").activeSelf) { fsm.Get("快").SetActive(true); } } }, value => { if (Convert.ToInt32(value) >= 55 && Convert.ToInt32(value) <= 80) { fsm.AddScore(2, 1); } else { fsm.AddScore(0, 1); } fsm.Get("滴速调节器").transform.localPosition = new UnityEngine.Vector3(0, 0, -0.00401f); fsm.Get("慢").SetActive(false); fsm.Get("中").SetActive(true); fsm.Get("快").SetActive(false); fsm.nextState = true; }); fsm.ShowArrow("请拖拽滴速进度条", new UnityEngine.Vector3(-90f, -260f)); }); } } public override void OnStateStay() { base.OnStateStay(); } public override void OnStateExit() { base.OnStateExit(); fsm.nextState = false; } } }