177 lines
8.7 KiB
C#
177 lines
8.7 KiB
C#
|
|
using FSM;
|
|||
|
|
using System;
|
|||
|
|
using UnityEngine;
|
|||
|
|
using ZXKFramework;
|
|||
|
|
namespace YiLiao.JingMaiLiuZhiZhen
|
|||
|
|
{
|
|||
|
|
public class JinZhenState : FsmState<FSMManager>
|
|||
|
|
{
|
|||
|
|
public override void OnStateEnter()
|
|||
|
|
{
|
|||
|
|
base.OnStateEnter();
|
|||
|
|
if(fsm.main_gameModel.modeType == ModeType.ShiXun)
|
|||
|
|
{
|
|||
|
|
fsm.ShowCamera("JinZhenState_Camera2");
|
|||
|
|
fsm.ShowTip(0);
|
|||
|
|
fsm.PlayClip("<22><><EFBFBD><EFBFBD>", () => {
|
|||
|
|
fsm.ShowTip(1);
|
|||
|
|
fsm.PlayBgm(1);
|
|||
|
|
fsm.ShowCamera("JinZhenState_Camera2");
|
|||
|
|
fsm.ShowSlider(new UnityEngine.Vector2(-341f, -50f), 90, 0, 45, value => {
|
|||
|
|
fsm.Get("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>").transform.localEulerAngles = new UnityEngine.Vector3(0, -148f, value - 90);
|
|||
|
|
}, value => {
|
|||
|
|
if (Convert.ToInt32(value) >= 15 && Convert.ToInt32(value) <= 30)
|
|||
|
|
{
|
|||
|
|
fsm.AddScore(2, 1);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
fsm.AddScore(0, 1);
|
|||
|
|
}
|
|||
|
|
fsm.Get("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>").transform.localEulerAngles = new UnityEngine.Vector3(0, -148f, -70);
|
|||
|
|
fsm.ShowTip(2);
|
|||
|
|
fsm.PlayBgm(2);
|
|||
|
|
fsm.Light_EnableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
fsm.ShowArrow("<22><><EFBFBD><EFBFBD>ק<EFBFBD><D7A7><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
fsm.InteractionDown("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", args => {
|
|||
|
|
fsm.HideArrow();
|
|||
|
|
fsm.Unlight("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
fsm.ShowArrow("<22><><EFBFBD><EFBFBD>ק<EFBFBD>ǶȽ<C7B6><C8BD><EFBFBD><EFBFBD><EFBFBD>", new UnityEngine.Vector3(-342f, -37.8f));
|
|||
|
|
});
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", obj => {
|
|||
|
|
if (obj.GetComponent<LinearMapping>().value == 1)
|
|||
|
|
{
|
|||
|
|
fsm.AddScore(2, 2);
|
|||
|
|
fsm.ShowTip(3);
|
|||
|
|
fsm.PlayBgm(3);
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", null);
|
|||
|
|
fsm.Unlight_DisableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
fsm.PlayClip("<22><><EFBFBD><EFBFBD>2", () => {
|
|||
|
|
fsm.ShowSlider(new UnityEngine.Vector2(-341f, -50f), 90, 0, 20, value => {
|
|||
|
|
fsm.Get("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>").transform.localEulerAngles = new UnityEngine.Vector3(0, -148f, value - 90);
|
|||
|
|
}, value => {
|
|||
|
|
Debug.Log(value);
|
|||
|
|
if (Convert.ToInt32(value) >= 0 && Convert.ToInt32(value) <= 5)
|
|||
|
|
{
|
|||
|
|
fsm.AddScore(2, 3);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
fsm.AddScore(0, 3);
|
|||
|
|
}
|
|||
|
|
fsm.ShowTip(4);
|
|||
|
|
fsm.PlayBgm(4);
|
|||
|
|
fsm.PlayClip("<22><><EFBFBD><EFBFBD>3");
|
|||
|
|
fsm.Light_EnableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
fsm.ShowArrow("<22><><EFBFBD><EFBFBD>ק<EFBFBD><D7A7><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
fsm.InteractionDown("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", args => {
|
|||
|
|
fsm.HideArrow();
|
|||
|
|
fsm.Unlight("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", obj => {
|
|||
|
|
if (obj.GetComponent<LinearMapping>().value == 1)
|
|||
|
|
{
|
|||
|
|
fsm.AddScore(2, 4);
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", null);
|
|||
|
|
fsm.Unlight_DisableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
fsm.nextState = true;
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
if (fsm.main_gameModel.modeType == ModeType.KaoHe)
|
|||
|
|
{
|
|||
|
|
fsm.ShowCamera("JinZhenState_Camera2");
|
|||
|
|
fsm.ShowTxtQuestion(2, 4, 1, () => {
|
|||
|
|
fsm.ShowTip(0, true);
|
|||
|
|
fsm.PlayClip("<22><><EFBFBD><EFBFBD>", () => {
|
|||
|
|
fsm.ShowTip(1, true);
|
|||
|
|
fsm.PlayBgm(1, true);
|
|||
|
|
fsm.ShowCamera("JinZhenState_Camera2");
|
|||
|
|
fsm.ShowSlider(new UnityEngine.Vector2(-341f, -50f), 90, 0, 45, value => {
|
|||
|
|
fsm.Get("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>").transform.localEulerAngles = new UnityEngine.Vector3(0, -148f, value - 90);
|
|||
|
|
}, value => {
|
|||
|
|
if (Convert.ToInt32(value) >= 15 && Convert.ToInt32(value) <= 30)
|
|||
|
|
{
|
|||
|
|
Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true });
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = false });
|
|||
|
|
}
|
|||
|
|
fsm.Get("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>").transform.localEulerAngles = new UnityEngine.Vector3(0, -148f, -70);
|
|||
|
|
fsm.ShowTip(2, true);
|
|||
|
|
fsm.PlayBgm(2, true);
|
|||
|
|
fsm.Light_EnableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", true);
|
|||
|
|
fsm.ShowArrow("<22><><EFBFBD><EFBFBD>ק<EFBFBD><D7A7><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
fsm.InteractionDown("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", args => {
|
|||
|
|
fsm.HideArrow();
|
|||
|
|
fsm.Unlight("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
fsm.ShowArrow("<22><><EFBFBD><EFBFBD>ק<EFBFBD>ǶȽ<C7B6><C8BD><EFBFBD><EFBFBD><EFBFBD>", new UnityEngine.Vector3(-342f, -37.8f));
|
|||
|
|
});
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", obj => {
|
|||
|
|
if (obj.GetComponent<LinearMapping>().value == 1)
|
|||
|
|
{
|
|||
|
|
fsm.HideTip();
|
|||
|
|
fsm.ShowTxtQuestion(3, 4, 2, () => {
|
|||
|
|
fsm.ShowTip(3, true);
|
|||
|
|
fsm.PlayBgm(3, true);
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>", null);
|
|||
|
|
fsm.Unlight_DisableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>");
|
|||
|
|
fsm.PlayClip("<22><><EFBFBD><EFBFBD>2", () => {
|
|||
|
|
fsm.ShowSlider(new UnityEngine.Vector2(-341f, -50f), 90, 0, 20, value => {
|
|||
|
|
fsm.Get("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>").transform.localEulerAngles = new UnityEngine.Vector3(0, -148f, value - 90);
|
|||
|
|
}, value => {
|
|||
|
|
Debug.Log(value);
|
|||
|
|
if (Convert.ToInt32(value) >= 0 && Convert.ToInt32(value) <= 5)
|
|||
|
|
{
|
|||
|
|
Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = true });
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
Game.Instance.eventManager.Raise(new PlayTrueOrFalseEvent() { isTrue = false });
|
|||
|
|
}
|
|||
|
|
fsm.ShowTip(4, true);
|
|||
|
|
fsm.PlayBgm(4, true);
|
|||
|
|
fsm.PlayClip("<22><><EFBFBD><EFBFBD>3");
|
|||
|
|
fsm.Light_EnableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", true);
|
|||
|
|
fsm.ShowArrow("<22><><EFBFBD><EFBFBD>ק<EFBFBD><D7A7><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
fsm.InteractionDown("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", args => {
|
|||
|
|
fsm.HideArrow();
|
|||
|
|
fsm.Unlight("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", obj => {
|
|||
|
|
if (obj.GetComponent<LinearMapping>().value == 1)
|
|||
|
|
{
|
|||
|
|
fsm.InteractionStay("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2", null);
|
|||
|
|
fsm.Unlight_DisableInteraction("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>2");
|
|||
|
|
fsm.nextState = true;
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public override void OnStateExit()
|
|||
|
|
{
|
|||
|
|
base.OnStateExit();
|
|||
|
|
fsm.HideSlider();
|
|||
|
|
fsm.nextState = false;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|