MoTaForPSVita/Assets/Scripts/Event/Item/EventItemOther6.cs
2024-05-06 11:25:52 +08:00

30 lines
1.9 KiB
C#

using System.Collections.Generic;
using UnityEngine;
public class EventItemOther6 : MonoBehaviour, IInteraction
{
public bool Interaction()
{
List<GameObject> tempObjs = new List<GameObject>();
// 获取四周的怪物
GameManager.Instance.PoolManager.UseList.ForEach(obj =>
{
if ((Vector2)obj.transform.position == ((Vector2)GameManager.Instance.PlayerManager.PlayerController.transform.position + Vector2.up) && obj.GetComponent<EnemyController>() != null && obj.GetComponent<IExplosionproof>() == null) tempObjs.Add(obj);
else if ((Vector2)obj.transform.position == ((Vector2)GameManager.Instance.PlayerManager.PlayerController.transform.position + Vector2.down) && obj.GetComponent<EnemyController>() != null && obj.GetComponent<IExplosionproof>() == null) tempObjs.Add(obj);
else if ((Vector2)obj.transform.position == ((Vector2)GameManager.Instance.PlayerManager.PlayerController.transform.position + Vector2.left) && obj.GetComponent<EnemyController>() != null && obj.GetComponent<IExplosionproof>() == null) tempObjs.Add(obj);
else if ((Vector2)obj.transform.position == ((Vector2)GameManager.Instance.PlayerManager.PlayerController.transform.position + Vector2.right) && obj.GetComponent<EnemyController>() != null && obj.GetComponent<IExplosionproof>() == null) tempObjs.Add(obj);
});
// 回收资源
foreach (var obj in tempObjs)
{
obj.GetComponent<EnemyController>().Health = 0;
GameManager.Instance.PoolManager.RecycleResource(obj);
}
// 提示信息并从背包清除
int itemId = 16;
GameManager.Instance.UIManager.ShowInfo($"使用 {GameManager.Instance.ResourceManager.GetResourceInfo(EResourceType.Item, itemId).Name} ,击杀了周围的敌人。");
GameManager.Instance.BackpackManager.ConsumeItem(itemId);
return false;
}
}