Files
AliceBall/Assets/_Alice/Scripts/Task/GemTask/SeekGemTask.cs
2025-07-23 18:47:59 +08:00

78 lines
1.9 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();
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;
}
}
}
}