diff --git a/Game/objects/goal.tscn b/Game/objects/goal.tscn index 1025014..225a8ad 100644 --- a/Game/objects/goal.tscn +++ b/Game/objects/goal.tscn @@ -1,4 +1,6 @@ -[gd_scene load_steps=3 format=3 uid="uid://cofdcxo5170rs"] +[gd_scene load_steps=4 format=3 uid="uid://cofdcxo5170rs"] + +[ext_resource type="Script" path="res://scripts/goal.gd" id="1_v8ikr"] [sub_resource type="BoxMesh" id="BoxMesh_4ngif"] size = Vector3(3.5, 1.5, 0.1) @@ -7,9 +9,12 @@ size = Vector3(3.5, 1.5, 0.1) size = Vector3(3.5, 1.5, 0.1) [node name="Goal" type="Area3D"] +script = ExtResource("1_v8ikr") [node name="MeshInstance3D" type="MeshInstance3D" parent="."] mesh = SubResource("BoxMesh_4ngif") [node name="CollisionShape3D" type="CollisionShape3D" parent="."] shape = SubResource("BoxShape3D_nmd5r") + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/Game/scenes/match.tscn b/Game/scenes/match.tscn index 5d8188a..fe33cf3 100644 --- a/Game/scenes/match.tscn +++ b/Game/scenes/match.tscn @@ -56,7 +56,8 @@ mesh = SubResource("SphereMesh_uxjj0") [node name="Goals" type="Node3D" parent="."] -[node name="Goal2" parent="Goals" node_paths=PackedStringArray("ball") instance=ExtResource("3_xk008")] +[node name="Goal2" parent="Goals" node_paths=PackedStringArray("ball", "player1") instance=ExtResource("3_xk008")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.08165e-12, 1, -5) script = ExtResource("4_ukkeh") ball = NodePath("../../Ball") +player1 = NodePath("../../Players/Player1") diff --git a/Game/scripts/goal2.gd b/Game/scripts/goal2.gd index 1cf59fc..8613513 100644 --- a/Game/scripts/goal2.gd +++ b/Game/scripts/goal2.gd @@ -1,14 +1,19 @@ extends Area3D @export var ball: RigidBody3D +@export var player1: RigidBody3D +#@export var player2: RigidBody3D # Called when the node enters the scene tree for the first time. func _ready(): pass # Replace with function body. - -# Called every frame. 'delta' is the elapsed time since the previous frame. -func _process(delta): - if (overlaps_body(ball)): +# Called when an object with collision enters the bounds of this object +func _on_body_entered(body): + # Only care if it's the ball + if(body == ball): print("Goal scored in goal 2") + # Reset the ball and player to their starting locations just for testing + ball.global_transform.origin = Vector3(0, 2, 0) + player1.global_transform.origin = Vector3(0, 0.5, 2)