fuzzyworld

godot-shooter / commit

Trying to avoid using `$Player` or similar code in GDScript, and instead rely on something like `onready var player: Player = $Player`, and then always use `player`.

5be558de33762990ab5b9c39bc7f35d66495286d · Pavel Safronov · 2023-11-17 11:57:44 -0800 · parents e7c3ffe2a74a

Trying to avoid using `$Player` or similar code in GDScript, and instead rely on something like `onready var player: Player = $Player`, and then always use `player`.
 scenes/World.gd | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/scenes/World.gd b/scenes/World.gd
index eb95dca..52375b3 100644
--- a/scenes/World.gd
+++ b/scenes/World.gd
@@ -22,17 +22,17 @@ func enemy_killed(_position: Vector2):
 	player.score += 5
 	player.show_message("Enemy killed!", 1)
 func health_consumed(_data):
-	$Player.heal(10)
+	player.heal(10)
 func gold_consumed(_data):
 	completed_objectives += 1
 	player.score += 1
 func weapon_consumed(data):
 	var weapon: Weapon = data
-	var is_same_weapon = $Player.weapon.name == weapon.name
+	var is_same_weapon = player.weapon.name == weapon.name
 	if is_same_weapon && weapon.ammo != INF:
-		$Player.weapon.ammo += $Player.weapon.reload_size
+		player.weapon.ammo += player.weapon.reload_size
 	else:
-		$Player.weapon = weapon
+		player.weapon = weapon
 
 func create_enemy() -> Enemy:
 	var enemy = Enemy.instance()
@@ -102,7 +102,7 @@ func get_new_environment_position(dist_ratio: float = 1.0) -> Vector2:
 	return potential_pos
 
 func _input(_event: InputEvent) -> void:
-	if $Player.dead:
+	if player.dead:
 		return
 
 func _process(_delta: float) -> void:
@@ -143,12 +143,12 @@ func _process(_delta: float) -> void:
 	player.update_radar(filteredEnemies, Color.red)
 
 func _on_Destination_body_entered(body: Node) -> void:
-	if body == $Player:
+	if body == player:
 		player.clear_destination()
 
 func sort_enemies_ascending_distance(a: Enemy,b: Enemy):
-	var distA = $Player.global_position.distance_to(a.global_position)
-	var distB = $Player.global_position.distance_to(b.global_position)
+	var distA = player.global_position.distance_to(a.global_position)
+	var distB = player.global_position.distance_to(b.global_position)
 	var result = distA < distB
 	return result
 	
@@ -158,7 +158,7 @@ func filter_invalid_enemies(enemy: Enemy) -> bool:
 	return true
 
 func _on_ShootTimer_timeout() -> void:
-	if $Player.dead:
+	if player.dead:
 		return
 	var enemies = get_tree().get_nodes_in_group("enemies")
 	for e in enemies:
@@ -170,10 +170,10 @@ func _on_ShootTimer_timeout() -> void:
 		filteredEnemies.sort_custom(self, "sort_enemies_ascending_distance")
 		var closest_enemy: Enemy = filteredEnemies[0]
 		var dist = closest_enemy.global_position.distance_to($Player.global_position)
-		if dist < $Player.weapon.shooting_range:
+		if dist < player.weapon.shooting_range:
 			closest_enemy.is_targeted = true
-			$Player.shoot_at(closest_enemy.global_position)
-			$PlayerToTarget.points[0] = $Player.global_position
+			player.shoot_at(closest_enemy.global_position)
+			$PlayerToTarget.points[0] = player.global_position
 			$PlayerToTarget.points[1] = closest_enemy.global_position
 
 func _on_Button_pressed() -> void:
@@ -192,4 +192,5 @@ func _on_Player_debug() -> void:
 #	player.score += 1
 #	player.kill()
 #	completed_objectives = max_objectives
+	player.debug()
 	pass # Replace with function body.