90 lines
2.4 KiB
C#
90 lines
2.4 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using DragonLi.Core;
|
|
using UnityEngine;
|
|
|
|
public class SeekGemTask : Task
|
|
{
|
|
public override void Init()
|
|
{
|
|
base.Init();
|
|
}
|
|
|
|
public override void StartTask()
|
|
{
|
|
base.StartTask();
|
|
winTaskTime = Random.Range(40, 61);
|
|
endTaskTime = 60;
|
|
// winTaskTime = 5;
|
|
// endTaskTime =7;
|
|
}
|
|
|
|
public override void EndTask()
|
|
{
|
|
base.EndTask();
|
|
if(GameManager.Ins.taskManager.isGetGem)
|
|
return;
|
|
foreach (var item in curGems)
|
|
{
|
|
if (item != null)
|
|
{
|
|
item.GetComponent<SeekGem>().GetGem(3);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
public override void CompleteTask()
|
|
{
|
|
base.CompleteTask();
|
|
//if (GameLocal.Ins.place == Place.Chongqing_Yuzhong_Hongyadong_Xiakexing_shiwan)
|
|
//{
|
|
// Debug.Log("重庆地点任务完成,直接结束游戏");
|
|
// // 调用游戏结束逻辑
|
|
// GameManager.Ins.GameOver(GameState.Victory);
|
|
|
|
// // 直接显示胜利界面,跳过舞会场景
|
|
// //GameManager.Ins.PlayBGM(1); // 播放胜利BGM
|
|
// WinPanel.Show();
|
|
|
|
// return; // 直接返回,不执行后续的敌人显示等逻辑
|
|
//}
|
|
foreach (var item in curGems)
|
|
{
|
|
Destroy(item);
|
|
}
|
|
curGems.Clear();
|
|
MonoSingleton<CoroutineTaskManager>.Instance.WaitSecondTodo(() =>
|
|
{
|
|
GameManager.Ins.enemy.Show();
|
|
GameManager.Ins.enemy.SetState(1);
|
|
},3);
|
|
}
|
|
|
|
public override void Update()
|
|
{
|
|
base.Update();
|
|
if(isEnd)
|
|
return;
|
|
foreach (var item in curGems)
|
|
{
|
|
if (item && GameManager.Ins.playerRightHand.hit)
|
|
{
|
|
var seekGem=GameManager.Ins.playerRightHand.hit.transform.parent.GetComponent<SeekGem>();
|
|
if(seekGem==null|| item.GetComponent<SeekGem>()==null)
|
|
continue;
|
|
if ((seekGem.Id == item.GetComponent<SeekGem>().Id))
|
|
{
|
|
item.GetComponent<SeekGem>().outline.enabled = true;
|
|
continue;
|
|
}
|
|
}
|
|
|
|
if (item&&item.GetComponent<SeekGem>())
|
|
{
|
|
item.GetComponent<SeekGem>().outline.enabled = false;
|
|
}
|
|
}
|
|
}
|
|
}
|