]> git.cameronkatri.com Git - gmtk-gamejam.git/blobdiff - Assets/Scripts/Controllers/Hoop.cs
Add VFX
[gmtk-gamejam.git] / Assets / Scripts / Controllers / Hoop.cs
index 8809b87be858425023cd7522694a5d88982d14e4..488c38b9b4eef989847742359eb3ff4b81270fe8 100644 (file)
@@ -3,6 +3,7 @@ using UnityEngine;
 
 namespace Controllers
 {
+       [RequireComponent(typeof(AudioSource))]
        [RequireComponent(typeof(AudioSource))]
        public class Hoop : MonoBehaviour
        {
@@ -11,19 +12,18 @@ namespace Controllers
                [SerializeField] private BoxCollider2D Rim;
                [SerializeField] private BoxCollider2D Net;
                [SerializeField] private AudioSource shotSound;
+               [SerializeField] private AudioSource crowdSound;
 
                private Animator HoopAnimator;
 
-               private void Awake()
-               {
-                       HoopAnimator = GetComponentInChildren<Animator>();
-               }
+               private void Awake() => HoopAnimator = GetComponentInChildren<Animator>();
 
                private void OnTriggerEnter2D(Collider2D other)
                {
                        if (other.GetComponent<Ball>() == null) return;
 
-                       if (Rim.IsTouching(other) && Net.IsTouching(other))
+                       // We don't want people shooting up the hoop so check the velocity of the ball to make sure it is going down.
+                       if (Rim.IsTouching(other) && Net.IsTouching(other) && (other.GetComponent<Rigidbody2D>().velocity.y < 0))
                        {
                                HoopAnimator.Rebind();
                                shotSound.Play();
@@ -31,6 +31,7 @@ namespace Controllers
                                        controller.player.Score(Rim.transform.position);
                                else if (this == controller.EnemyHoop)
                                        controller.enemy.Score(Rim.transform.position);
+                               crowdSound.Play();
                        }
                }
        }