diff options
author | bd <bdunahu@operationnull.com> | 2025-05-24 18:50:01 -0400 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2025-05-24 18:50:01 -0400 |
commit | 2190d18d8d58f867927126829e7c0d7ef6fac372 (patch) | |
tree | 1dd88af4374a9105ef2c723c43a68a0fd67e390f /scripts/base_defender.gd | |
parent | c38a303aad3c3c0d8114524e664da6ad721e21c4 (diff) |
Add UI panel which displays actions/upgrades
Diffstat (limited to 'scripts/base_defender.gd')
-rw-r--r-- | scripts/base_defender.gd | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/scripts/base_defender.gd b/scripts/base_defender.gd index 06ac34f..088f235 100644 --- a/scripts/base_defender.gd +++ b/scripts/base_defender.gd @@ -12,9 +12,9 @@ var target : CharacterBody2D var _idle_texture : Texture var _attack_texture : Texture -func set_tower_stats(tower_name : String): - tower_key = tower_name - tower_data = game_stats_config.defenders[tower_key] +func set_tower_stats(tower_index : int): + tower_data = game_stats_config.defenders[tower_index].duplicate() + tower_key = tower_data["desc"] func reset_tower_range(): $Tower/CollisionShape2D.shape.radius = tower_data["range"] @@ -24,9 +24,6 @@ func reset_tower_sprite(): _attack_texture = util.get_tile_texture(tower_data["sprite_attacking"]) _idle_state() -func get_tower_key() -> String: - return tower_key - func select_target() -> void: var targets : Array = _find_targets() @@ -73,7 +70,9 @@ func _idle_state(): func apply_upgrade(effects: Dictionary): for key in effects.keys(): if key in tower_data: - tower_data[key] += effects[key] + tower_data[key] = effects[key] + reset_tower_range() + reset_tower_sprite() # extending classes should override below func _on_fire_timer_timeout() -> void: |