You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
175 lines
5.4 KiB
175 lines
5.4 KiB
using DG.Tweening;
|
|
using HJDFrameWork;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace Level05
|
|
{
|
|
public class QuestionWnd : ViewBase
|
|
{
|
|
private Text questionIndex;
|
|
private Transform shuiguan;
|
|
private Transform guanzi;
|
|
private int pass2Index = 0;
|
|
private GameObject pass2ButtonGroup;
|
|
private GameObject rawImg2;
|
|
|
|
private Animator shuiguanAnimator;
|
|
|
|
public override void Init()
|
|
{
|
|
base.Init();
|
|
questionIndex = GetViewData<Text>("questionIndex");
|
|
shuiguan = GetItem("ShuiGuan").transform;
|
|
guanzi = GetItem("GuanZi").transform;
|
|
pass2ButtonGroup = GetItem("pass2btnGroup").gameObject;
|
|
rawImg2 = GetItem("RawImage2").gameObject;
|
|
shuiguanAnimator = shuiguan.GetComponent<Animator>();
|
|
}
|
|
public override void Show()
|
|
{
|
|
base.Show();
|
|
}
|
|
|
|
public override void Hide()
|
|
{
|
|
base.Hide();
|
|
}
|
|
|
|
public void UpdateQuestionIndex(int index)
|
|
{
|
|
questionIndex.text = index.ToString();
|
|
}
|
|
|
|
public void OpenXFDoor()
|
|
{
|
|
Transform door = GetItem("Xfs_Door").transform;
|
|
door.DOLocalRotate(new Vector3(0, -160f, 0), 1f);
|
|
door.DOLocalMoveX(-0.5f, 1f);
|
|
}
|
|
|
|
public void ResetXFDoor()
|
|
{
|
|
Transform door = GetItem("Xfs_Door").transform;
|
|
door.DOComplete();
|
|
door.DOLocalRotate(new Vector3(0, 0, 0), 0f);
|
|
door.DOLocalMoveX(-0.435f, 0f);
|
|
}
|
|
|
|
public void OpenGuanzi()
|
|
{
|
|
guanzi.DOLocalMove(new Vector3(2.54f, 0.92f, -0.72f), 1.5f);
|
|
guanzi.DOLocalRotate(new Vector3(-178, 0.26f, 70f), 1.5f);
|
|
//chuShuiKou
|
|
|
|
}
|
|
public void OpenShuiGuan(int index)
|
|
{
|
|
switch (index)
|
|
{
|
|
case 0:
|
|
shuiguanAnimator.CrossFade("XianJie", 1f);
|
|
shuiguan.DOLocalMove(new Vector3(-0.089f, 0.62f, -0.14f), 1f);
|
|
guanzi.DOLocalMove(new Vector3(2.83f, 0.76f, -0.36f), 1f);
|
|
guanzi.DOLocalRotate(new Vector3(-178, 0.26f, 70), 1f);
|
|
Level05Root.Instance.TimeTask(1.1f, () =>
|
|
{
|
|
guanzi.gameObject.SetActive(false);
|
|
shuiguan.gameObject.SetActive(false);
|
|
GetItem("OKShuiGuan").gameObject.SetActive(true);
|
|
});
|
|
Level05Root.Instance.TimeTask(1f, () =>
|
|
{
|
|
|
|
GetItem("chuShuiKou").gameObject.SetActive(true);
|
|
});
|
|
break;
|
|
case 1:
|
|
shuiguanAnimator.CrossFade("Open", 0.5f);
|
|
break;
|
|
case 2:
|
|
|
|
|
|
|
|
//移动镜头
|
|
Level05Root.Instance.TimeTask(0.5f, () =>
|
|
{
|
|
GetItem("camera2").transform.DOLocalMoveX(-9.463f, 1f);
|
|
Level05Root.Instance.TimeTask(1f, () => { GetItem("q2key").gameObject.SetActive(true); });
|
|
|
|
});
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
public void MoveShuiGuan()
|
|
{
|
|
shuiguan.DOLocalMove(new Vector3(0.3f, 2f, -0.12f), 1);
|
|
Level05Root.Instance.TimeTask(1, () =>
|
|
{
|
|
shuiguan.DOLocalMove(new Vector3(1.88f, 0.68f, -0.5f), 2.5f);
|
|
|
|
pass2Index += 1;
|
|
if (pass2Index == 2)
|
|
{
|
|
pass2ButtonGroup.SetActive(false);
|
|
Level05Root.Instance.TimeTask(2f, () =>
|
|
{
|
|
shuiguan.DOScale(0.7f, 0f);
|
|
guanzi.DOLocalRotate(new Vector3(-180, 0, 0), 0.5f);
|
|
GetViewData<RawImage>("RawImage1").gameObject.SetActive(false);
|
|
rawImg2.SetActive(true);
|
|
});
|
|
|
|
}
|
|
});
|
|
|
|
|
|
}
|
|
public void MoveGuanZi()
|
|
{
|
|
guanzi.DOLocalMove(new Vector3(0.368f, 2.5f, 0), 1f);
|
|
Level05Root.Instance.TimeTask(1, () =>
|
|
{
|
|
guanzi.DOLocalMove(new Vector3(2.48f, 1.5f, -0.8f), 2.5f);
|
|
|
|
pass2Index += 1;
|
|
if (pass2Index == 2)
|
|
{
|
|
pass2ButtonGroup.SetActive(false);
|
|
Level05Root.Instance.TimeTask(2f, () =>
|
|
{
|
|
shuiguan.DOScale(0.7f, 0f);
|
|
guanzi.DOLocalRotate(new Vector3(-180, 0, 0), 0.5f);
|
|
GetViewData<RawImage>("RawImage1").gameObject.SetActive(false);
|
|
rawImg2.SetActive(true);
|
|
});
|
|
}
|
|
});
|
|
}
|
|
|
|
public void MeiHuo(int index)
|
|
{
|
|
GetItem("Water").gameObject.SetActive(true);
|
|
Level05Root.Instance.TimeTask(1f, () =>
|
|
{
|
|
GetItem("Huo_01").GetComponent<ParticleSystem>().startLifetime = 0f;
|
|
});
|
|
Level05Root.Instance.TimeTask(4f, () =>
|
|
{
|
|
|
|
GetItem("Water").gameObject.SetActive(false);
|
|
|
|
AnswerSys.Instance.SetCurrentKey(index);
|
|
});
|
|
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|