From 7658096653e0088f7571e374ac4aae314f263f6f Mon Sep 17 00:00:00 2001 From: RosimInc Date: Sat, 22 Aug 2015 18:38:54 -0400 Subject: [PATCH] Started fixing auto-target And everything is gonna break Signed-off-by: RosimInc --- Assets/Prefabs/Door Light.prefab | Bin 9020 -> 9020 bytes Assets/Scenes/MomLightSimon.unity | Bin 26612 -> 26740 bytes Assets/Scenes/jp.unity | Bin 26224 -> 26260 bytes Assets/Scripts/AutoTarget.cs | 39 ++++++++++++++++++++++++------ Assets/Scripts/Child.cs | 4 +-- Assets/Scripts/ChildController.cs | 4 +-- 6 files changed, 36 insertions(+), 11 deletions(-) diff --git a/Assets/Prefabs/Door Light.prefab b/Assets/Prefabs/Door Light.prefab index 63d68fe308daf522ef1d3d2df438ab61b3d6d41a..54a2cf7c417389ce8e7e091f4f4db8cfd7ca8633 100644 GIT binary patch delta 20 ccmdnvw#RM58wGaFnErjUW=d}Utl-H60A#xe_W%F@ delta 20 ccmdnvw#RM58wGX~H$QEqT(PBln5gAxP7N+5-7lp$1Z!{onC z(u@x#OFBzi3Mex$=m6ElfHA}j6R0`|pj;17Tm+0Ea;8wZ3!8JDgJl_cHXlrIW}4iR zBtE%2k(ZAPs8Y|&!pPXr+{Ds!a#@lpP?%G=94HKyGB-9fFf}tUHf7lSJ?SqC02fI= AW&i*H delta 215 zcmexzf$__EMh*rB7i|WH^e-DZOq>`qCfhoR%ifSC^tAXry8WZ0VuZ;NFy6%2$eIK{MSjE zF=4W#v$W*|B?bl^pt=|^hL~XjRd)a=*8>z60b_`qDO4_CbFOo+EF;(Eg9*+|n_H4U GumAw13^RBD diff --git a/Assets/Scenes/jp.unity b/Assets/Scenes/jp.unity index 042ec3ca2a514a8f3b783a3975e4f2c819c97635..1b9571e690f3503725a33df8158f3348156ddf38 100644 GIT binary patch delta 303 zcmexxhH=VSMsWrPSA7PCv?&Y>4E#WL0FY)d)ic;A{+Cm=yDfdDdacTdD>-65H;jrH zHGp!tj0_A+AVol6&cM*nGWmd{`sM_#9_Gy~e7TI9Tll;6HVfFPFf#URHnq2BWsI3z z>LSm`K6$Fk41q%V{YtM@N_{8USSMcyW?^KT9GhYfBV@+g!2G|d`an_L zG-X3}ps^00*Mc0(zy`!l+t-2F0zlH&F(N*|$1&11DBjsW)Gq|+IR;ap1B3-YDi@@G I2e}Ch07$-1>i_@% delta 270 zcmbPomhrKSen|I4ZI-9x#>)#^E~WPVhaZNHL_ zCQz<{k%55;qzDMif!tOgJuy*ba{^Zn^W+2CEWAEI!CassAY#zi{FJwZQ7AV)xFoeG zHQzV0s3^b4H$NqHa|C~n-sZ=)s*H@in>p?6Ss67Zd%DOovQ5r(nK4=1)pc`{YnR02 z9-orU32`r2CnrR)FtSeeO|b`(yH4dNG0!av91yT#rzk?_+001-jMA!fT diff --git a/Assets/Scripts/AutoTarget.cs b/Assets/Scripts/AutoTarget.cs index d2920a6..de1ff73 100644 --- a/Assets/Scripts/AutoTarget.cs +++ b/Assets/Scripts/AutoTarget.cs @@ -22,29 +22,54 @@ public class AutoTarget : MonoBehaviour { // Update is called once per frame void Update () { + } + + public Transform GetTarget(float screenX, float screenZ) + { + //Translate into looking angles + + Vector3 forwardDir = Camera.main.transform.forward; + Vector3 rightDir = Camera.main.transform.right; + + forwardDir.y = 0f; + forwardDir = forwardDir.normalized * screenZ; + + rightDir.y = 0f; + rightDir = rightDir.normalized * screenX; + + Vector3 movement = forwardDir + rightDir; + + return GetTarget(movement); } - + public Transform GetTarget(Vector3 lookingAngle) { + Transform closest = null; float minAngle = minAngleRange; - Debug.Log("looking direction:" + lookingAngle); + //Debug.Log("looking direction:" + lookingAngle); + Debug.DrawRay(transform.position, lookingAngle * 2); 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); + //Debug.Log("real angle:" + realAngle); 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; + //float angle = lookAngle - realAngle; - if (Mathf.Abs(lookAngle - realAngle) < minAngle) { + if (Mathf.Abs(angle) < minAngle) { minAngle = lookAngle; - closest = t; - } + closest = t; + Debug.DrawRay(transform.position, t.transform.position - transform.position, Color.blue); + } } return closest; diff --git a/Assets/Scripts/Child.cs b/Assets/Scripts/Child.cs index a7ca486..dceb151 100644 --- a/Assets/Scripts/Child.cs +++ b/Assets/Scripts/Child.cs @@ -44,12 +44,12 @@ public class Child : MonoBehaviour { _isGrounded = IsGrounded(); - if (Mom.IsInRoom && !_isSleeping) + /*if (Mom.IsInRoom && !_isSleeping) { // TODO: Remove a life, kill the player, end the game, etc. Debug.Log("Player " + _index + " is being spotted by mom."); - } + }*/ // look at the target if (target != null) { diff --git a/Assets/Scripts/ChildController.cs b/Assets/Scripts/ChildController.cs index 991eae0..2721ed7 100644 --- a/Assets/Scripts/ChildController.cs +++ b/Assets/Scripts/ChildController.cs @@ -75,7 +75,8 @@ public class ChildController : MonoBehaviour } if (xLookingValue != 0 || zLookingValue != 0) { - Transform target = _autoTarget.GetTarget(new Vector3(xLookingValue, 0, zLookingValue)); + //Transform target = _autoTarget.GetTarget(new Vector3(xLookingValue, 0, zLookingValue)); + Transform target = _autoTarget.GetTarget(xLookingValue, zLookingValue); _child.target = target; if (_child.target != null) { @@ -87,7 +88,6 @@ public class ChildController : MonoBehaviour Mathf.Atan2(xLookingValue, zLookingValue) * Mathf.Rad2Deg, transform.eulerAngles.z); } - } }