CangJie/Assets/Scripts//HuangDi.cs
Roman 9b4623c066 任务:编写场景1逻辑
1.推进流程化
(1.新增演出框架,具体结构如图
(2.使用时仅需要重写父类Stage的虚函数,请视情况决定是否用base

2.修改视差类,使其能够自动捕获主摄像机

3.编写开场的第一个演出
(1.命名为:HuangdiAsk
(2.触发对话:黄帝提需求
(3.留下空缺:黄帝手指左方(动画目前还没有)

4.编写玩家找到正确的绳结后的的演出
(1.命名为:HuangdiConfuse
(2.触发对话:黄帝疑惑

可以摸鱼吗😿
2022-03-20 21:45:58 +08:00

55 lines
1.3 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Sirenix.OdinInspector;
/// <summary>
/// 皇帝类,控制皇帝的行为,继承自可交互物体
/// </summary>
public class HuangDi : EntryTrigger
{
[SerializeField][EnumPaging]
private KnotMediator.KnotType neededType = KnotMediator.KnotType.;
public enum HuangDiState
{
None,
Ask,
Answer,
End
}
public HuangDiState state = HuangDiState.None;
public override void OnCall()
{
if(state == HuangDiState.Ask)
{
if(KnotMediator.Instance.CheckKnotType(neededType))
{
Debug.Log("皇帝接受了绳结");
state = HuangDiState.Answer;
//触发结束演出
FindObjectOfType<HuangdiConfused>().OnCall();
}
else
{
Debug.Log("皇帝拒绝了绳结");
FindObjectOfType<HuangdiAsk>().OnCall();
}
}
if(state == HuangDiState.None)
{
FindObjectOfType<HuangdiAsk>().OnCall();
}
}
public void setNeededType(KnotMediator.KnotType type)
{
neededType = type;
}
}