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.
39 lines
1.2 KiB
39 lines
1.2 KiB
3 years ago
|
using System.Collections.Generic;
|
||
|
using UnityEngine;
|
||
|
|
||
|
namespace ET
|
||
|
{
|
||
|
[ComponentOf(typeof(Unit))]
|
||
|
public class AOIEntity: Entity, IAwake<int, Vector3>, IDestroy
|
||
|
{
|
||
|
public Unit Unit => this.GetParent<Unit>();
|
||
|
|
||
|
public int ViewDistance;
|
||
|
|
||
|
public Cell Cell;
|
||
|
|
||
|
// 观察进入视野的Cell
|
||
|
public HashSet<long> SubEnterCells = new HashSet<long>();
|
||
|
|
||
|
// 观察离开视野的Cell
|
||
|
public HashSet<long> SubLeaveCells = new HashSet<long>();
|
||
|
|
||
|
// 观察进入视野的Cell
|
||
|
public HashSet<long> enterHashSet = new HashSet<long>();
|
||
|
|
||
|
// 观察离开视野的Cell
|
||
|
public HashSet<long> leaveHashSet = new HashSet<long>();
|
||
|
|
||
|
// 我看的见的Unit
|
||
|
public Dictionary<long, AOIEntity> SeeUnits = new Dictionary<long, AOIEntity>();
|
||
|
|
||
|
// 看见我的Unit
|
||
|
public Dictionary<long, AOIEntity> BeSeeUnits = new Dictionary<long, AOIEntity>();
|
||
|
|
||
|
// 我看的见的Player
|
||
|
public Dictionary<long, AOIEntity> SeePlayers = new Dictionary<long, AOIEntity>();
|
||
|
|
||
|
// 看见我的Player单独放一个Dict,用于广播
|
||
|
public Dictionary<long, AOIEntity> BeSeePlayers = new Dictionary<long, AOIEntity>();
|
||
|
}
|
||
|
}
|