// gets task with given job and reachable target // TODO add priority sorting public EcsEntity?getTask(string job, Vector3Int position) { if (openTasks[job].Count > 0) { PassageMap passageMap = GameModel.localMap.passageMap; return(openTasks[job] .First(entity => passageMap.inSameArea(position, entity.Get <TaskActionsComponent>().initialAction.target.getPosition().Value))); } return(null); }
public void initAreas() { passageMap = new PassageMap(this); passageMap.init(); }
public PassageUtil(LocalMap map, PassageMap passage) { this.map = map; this.passage = passage; }