// Update is called once per frame void Update() { TargetNode = GridReference.NodeFromWorldPoint(transform.position); TargetNode = GridReference.NodeFromGridPos(TargetNode.iGridX, TargetNode.iGridY); TargetNode.isDiscovered = true; Left = GridReference.NodeFromGridPos(TargetNode.iGridX - 1, TargetNode.iGridY); Bottom = GridReference.NodeFromGridPos(TargetNode.iGridX, TargetNode.iGridY - 1); Up = GridReference.NodeFromGridPos(TargetNode.iGridX, TargetNode.iGridY + 1); Right = GridReference.NodeFromGridPos(TargetNode.iGridX + 1, TargetNode.iGridY); if ((!Left.isWalkable) || (!Up.isWalkable) || (!Right.isWalkable) || (!Bottom.isWalkable)) { tiempo += Time.deltaTime; } tiempo += Time.deltaTime; if (transform.localPosition.x > xMax) { x = Random.Range(-velocidadMax, 0.0f); angulo = Mathf.Atan2(x, z) * (180 / 3.141592f) + 90; transform.localRotation = Quaternion.Euler(0, angulo, 0); tiempo = 0.0f; } if (transform.localPosition.x < xMin) { x = Random.Range(0.0f, velocidadMax); angulo = Mathf.Atan2(x, z) * (180 / 3.141592f) + 90; transform.localRotation = Quaternion.Euler(0, angulo, 0); tiempo = 0.0f; } if (transform.localPosition.z > zMax) { z = Random.Range(-velocidadMax, 0.0f); angulo = Mathf.Atan2(x, z) * (180 / 3.141592f) + 90; transform.localRotation = Quaternion.Euler(0, angulo, 0); tiempo = 0.0f; } if (transform.localPosition.z < zMin) { z = Random.Range(0.0f, velocidadMax); angulo = Mathf.Atan2(x, z) * (180 / 3.141592f) + 90; transform.localRotation = Quaternion.Euler(0, angulo, 0); tiempo = 0.0f; } if (tiempo > 1.0f) { x = Random.Range(-velocidadMax, velocidadMax); z = Random.Range(-velocidadMax, velocidadMax); angulo = Mathf.Atan2(x, z) * (180 / 3.141592f) + 90; transform.localRotation = Quaternion.Euler(0, angulo, 0); tiempo = 0.0f; } transform.localPosition = new Vector3(transform.localPosition.x + x, transform.localPosition.y, transform.localPosition.z + z); }
private void Start() { TargetNode = GridReference.NodeFromWorldPoint(transform.position); print("Player X = " + TargetNode.iGridX + "and Y = " + TargetNode.iGridY); TargetNode = GridReference.NodeFromGridPos(TargetNode.iGridX + 1, TargetNode.iGridY); TargetNode.isDiscovered = true; }