void Awake() { _navmesh = Plane.GetComponent <DotsNavNavmesh>(); foreach (var obstacle in FindObjectsOfType <DotsNavObstacle>()) { var l = new List <Vector2>(); for (int i = 0; i < obstacle.Vertices.Length; i++) { l.Add(obstacle.GetVertexWorldSpace(i).xz); } _toDump.Add(l); } _cameraController = FindObjectOfType <CameraController>(); _cameraController.Initialize(Plane.Size); _lineDrawer = GetComponent <LineDrawer>(); _camera = Camera.main; Help.gameObject.SetActive(!Application.isEditor); _agent = FindObjectOfType <DotsNavPathFindingAgent>(); var tr = _agent.transform; _start = tr.parent; _goal = _start.Find("Goal"); _goal.parent = null; if (Reverse) { var tempPos = _start.position; _start.position = _goal.position; _goal.position = tempPos; } var size = _start.localScale.x; var s = new Vector3(size, size, size); _goal.localScale = s; _agent.GetComponent <DotsNavAgent>().Radius = size / 2; }
void Start() { // Ensure gameobject conversion when loading a scene World.All[0].GetOrCreateSystem <InitializationSystemGroup>().Update(); _navmesh = Plane.GetComponent <DotsNavNavmesh>(); _cameraController = FindObjectOfType <CameraController>(); _cameraController.Initialize(Plane.Size, .5f); _lineDrawer = GetComponent <LineDrawer>(); _camera = Camera.main; Help.gameObject.SetActive(!Application.isEditor); _agent = FindObjectOfType <DotsNavPathFindingAgent>(); var tr = _agent.transform; _start = tr.parent; _goal = _start.Find("Goal"); _goal.parent = null; var size = _start.localScale.x; var s = new Vector3(size, size, size); _goal.localScale = s; _agent.GetComponent <DotsNavAgent>().Radius = size / 2; }