summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLogan <logan@cflip.net>2022-09-24 18:01:37 -0600
committerLogan <logan@cflip.net>2022-09-24 18:01:37 -0600
commitf0b2e02543d0d4acf603f3f1a0c298e80b8227f1 (patch)
tree1acdabc1f053f40e055cdfcd4fc8e34b9c927bdd
parentb41e2b9eeee4370b9f42d63708ab25ee81490996 (diff)
Made power of basketball depend on cursor position.
-rw-r--r--scenes/level.tscn1
-rw-r--r--scripts/basketball.gd18
-rw-r--r--scripts/interface.gd3
3 files changed, 4 insertions, 18 deletions
diff --git a/scenes/level.tscn b/scenes/level.tscn
index cd1b8df..156f530 100644
--- a/scenes/level.tscn
+++ b/scenes/level.tscn
@@ -33,4 +33,3 @@ shape = SubResource( 1 )
position = Vector2( 156, 371 )
[connection signal="score" from="Hoop" to="Interface" method="_on_Hoop_score"]
-[connection signal="change_power" from="Basketball" to="Interface" method="_on_Basketball_change_power"]
diff --git a/scripts/basketball.gd b/scripts/basketball.gd
index 246af81..f9fd4a1 100644
--- a/scripts/basketball.gd
+++ b/scripts/basketball.gd
@@ -1,13 +1,12 @@
extends RigidBody2D
-signal change_power
-
export var spin_speed = -1
export var move_speed = 300
var start_position
var waiting_for_shoot = true
-var power = 100
+var power
+var power_magnitude = 10
var spin_rotation = 0
var ready_to_shoot
@@ -24,9 +23,7 @@ func toggle_mode():
set_use_custom_integrator(waiting_for_shoot)
func shoot():
- var x_power = power * 5
- var y_power = power * -8
- apply_impulse(Vector2(10, 10), Vector2(x_power, y_power))
+ apply_impulse(Vector2(10, 10), Vector2(power))
# Override the default physics when we want to manually set the position and rotation.
func _integrate_forces(state):
@@ -44,18 +41,11 @@ func _process(delta):
if Input.is_action_pressed("ui_right"):
start_position.x += move_speed * delta
start_position.x = clamp(start_position.x, 0, 1024)
- if Input.is_action_pressed("ui_up"):
- if power < 200:
- power += 0.5
- emit_signal("change_power", power)
- if Input.is_action_pressed("ui_down"):
- if power > 10:
- power -= 0.5
- emit_signal("change_power", power)
func _input(event):
if event.is_action_released("shoot"):
if ready_to_shoot or !waiting_for_shoot:
+ power = (position - event.position) * power_magnitude
toggle_mode()
func _on_Area2D_mouse_entered():
diff --git a/scripts/interface.gd b/scripts/interface.gd
index 4f2c8b1..453f468 100644
--- a/scripts/interface.gd
+++ b/scripts/interface.gd
@@ -5,6 +5,3 @@ func _ready():
func _on_Hoop_score():
text = "Score: " + str(global_variables.score)
-
-func _on_Basketball_change_power(power):
- text = "Power: " + str(power)