aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Assets/Scripts/Controllers/Ball.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/Controllers/Ball.cs')
-rw-r--r--Assets/Scripts/Controllers/Ball.cs24
1 files changed, 24 insertions, 0 deletions
diff --git a/Assets/Scripts/Controllers/Ball.cs b/Assets/Scripts/Controllers/Ball.cs
new file mode 100644
index 0000000..b63c928
--- /dev/null
+++ b/Assets/Scripts/Controllers/Ball.cs
@@ -0,0 +1,24 @@
+using System;
+using UnityEngine;
+
+namespace Controllers
+{
+ [RequireComponent(typeof(Rigidbody2D))]
+ [RequireComponent(typeof(CircleCollider2D))]
+ public class Ball : MonoBehaviour
+ {
+ internal GameController controller;
+
+ [SerializeField] private float shotForce;
+
+ private void OnCollisionEnter2D(Collision2D other)
+ {
+ controller.BallDropped();
+ }
+
+ public void Shoot(Transform playerTransform)
+ {
+ GetComponent<Rigidbody2D>().AddForce((Vector2)(playerTransform.forward + playerTransform.up) * shotForce);
+ }
+ }
+}