diff --git a/Assets/Prefabs/Door Light.prefab b/Assets/Prefabs/Door Light.prefab index 54a2cf7..7475bd2 100644 Binary files a/Assets/Prefabs/Door Light.prefab and b/Assets/Prefabs/Door Light.prefab differ diff --git a/Assets/Scenes/jp.unity b/Assets/Scenes/jp.unity index 1b9571e..e34beb4 100644 Binary files a/Assets/Scenes/jp.unity and b/Assets/Scenes/jp.unity differ diff --git a/Assets/Scripts/AutoTarget.cs b/Assets/Scripts/AutoTarget.cs index de1ff73..1dabcd8 100644 --- a/Assets/Scripts/AutoTarget.cs +++ b/Assets/Scripts/AutoTarget.cs @@ -2,25 +2,28 @@ using System.Collections; using System.Collections.Generic; -public class AutoTarget : MonoBehaviour { - +public class AutoTarget : MonoBehaviour +{ private List targets; public float minAngleRange = 60f; // Use this for initialization - void Start () { + void Start () + { targets = new List(); GameObject[] gos = GameObject.FindGameObjectsWithTag("Player"); - foreach (GameObject go in gos) { - if( !go.Equals(gameObject) ){ + foreach (GameObject go in gos) + { + if(!go.Equals(gameObject)) + { targets.Add(go.transform); } } - } // Update is called once per frame - void Update () { + void Update () + { } @@ -42,8 +45,8 @@ public class AutoTarget : MonoBehaviour { return GetTarget(movement); } - public Transform GetTarget(Vector3 lookingAngle) { - + public Transform GetTarget(Vector3 lookingAngle) + { Transform closest = null; float minAngle = minAngleRange; @@ -51,28 +54,37 @@ public class AutoTarget : MonoBehaviour { Debug.DrawRay(transform.position, lookingAngle * 2); - foreach (Transform t in targets) { - + foreach (Transform t in targets) + { Vector3 targetDirection = t.transform.position - transform.position; - float realAngle = Mathf.Atan2(targetDirection.z, targetDirection.x) * Mathf.Rad2Deg; - //Debug.Log("real angle:" + realAngle); - + float realAngle = Mathf.Atan2(targetDirection.z, targetDirection.x) * Mathf.Rad2Deg; + float lookAngle = Mathf.Atan2(lookingAngle.z, lookingAngle.x) * Mathf.Rad2Deg; - Debug.Log("look angle:" + lookAngle); + //Debug.Log("look angle:" + lookAngle); float angle = (lookAngle - realAngle + 5*360) % 360; + if (angle > 180) + angle -= 360; //float angle = lookAngle - realAngle; - - if (Mathf.Abs(angle) < minAngle) { - minAngle = lookAngle; - closest = t; - Debug.DrawRay(transform.position, t.transform.position - transform.position, Color.blue); + + if (Input.GetKeyDown(KeyCode.D)) + Debug.Log("Angle: " + angle + "Looking - " + lookAngle + "\nReal - " + realAngle); + //Debug.Log("real angle:" + realAngle); + + if (Mathf.Abs(angle) < minAngle) + { + minAngle = angle; + closest = t; } - } + } + + if (closest != null) + { + Debug.DrawRay(transform.position, closest.transform.position - transform.position, Color.blue); + } return closest; } - } diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 52c12ea..6e63725 100644 Binary files a/ProjectSettings/ProjectSettings.asset and b/ProjectSettings/ProjectSettings.asset differ