summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-05-24 22:05:00 -0400
committerbd <bdunahu@operationnull.com>2025-05-24 22:05:00 -0400
commitd229286f70b619497bc946a36e5440df3d04f674 (patch)
tree21f41eca440ce960b81a322049929ee287173171 /scripts
parenteca6f608a81cc9aa7d2cd3824cbfebdbfe5f7096 (diff)
Add a title screen and music
Diffstat (limited to 'scripts')
-rw-r--r--scripts/audio_looper.gd8
-rw-r--r--scripts/audio_looper.gd.uid1
-rw-r--r--scripts/game_stats_config.gd1
-rw-r--r--scripts/player.gd8
-rw-r--r--scripts/ui_panel.gd13
-rw-r--r--scripts/warlock.gd2
-rw-r--r--scripts/wyvern.gd2
7 files changed, 22 insertions, 13 deletions
diff --git a/scripts/audio_looper.gd b/scripts/audio_looper.gd
new file mode 100644
index 0000000..eae9f0f
--- /dev/null
+++ b/scripts/audio_looper.gd
@@ -0,0 +1,8 @@
+extends AudioStreamPlayer2D
+
+func _ready() -> void:
+ self.connect("finished", Callable(self,"_on_loop_sound").bind(self))
+ play()
+
+func _on_loop_sound(player):
+ player.play()
diff --git a/scripts/audio_looper.gd.uid b/scripts/audio_looper.gd.uid
new file mode 100644
index 0000000..7579a5a
--- /dev/null
+++ b/scripts/audio_looper.gd.uid
@@ -0,0 +1 @@
+uid://1d5icis2ddhc
diff --git a/scripts/game_stats_config.gd b/scripts/game_stats_config.gd
index 89d265c..38d9cd8 100644
--- a/scripts/game_stats_config.gd
+++ b/scripts/game_stats_config.gd
@@ -13,6 +13,7 @@ class_name GameStatsConfig
]
# defenders
+enum defenders_index {WARLOCK, WYVERN, WEREWOLF, WELLSPRING}
@export var defenders : Array[Dictionary] = [
{
"desc": "Warlock",
diff --git a/scripts/player.gd b/scripts/player.gd
index d9ee0bd..f399f02 100644
--- a/scripts/player.gd
+++ b/scripts/player.gd
@@ -15,10 +15,10 @@ var dirs = {
}
var tower_ids = {
- "tower_action_one": 0,
- "tower_action_two": 1,
- "tower_action_three": 2,
- "tower_action_four": 3,
+ "tower_action_one": game_stats_config.defenders_index.WARLOCK,
+ "tower_action_two": game_stats_config.defenders_index.WYVERN,
+ "tower_action_three": game_stats_config.defenders_index.WARLOCK,
+ "tower_action_four": game_stats_config.defenders_index.WARLOCK,
}
signal curr_tile(tile_state)
diff --git a/scripts/ui_panel.gd b/scripts/ui_panel.gd
index 7d3cd7a..6d3ea5a 100644
--- a/scripts/ui_panel.gd
+++ b/scripts/ui_panel.gd
@@ -1,15 +1,14 @@
extends Panel
-var tile_set : TileSet = preload("res://resources/tiles.tres")
-var game_stats_config = preload("res://resources/game_stats_config.tres")
@onready var util = preload("res://scripts/util.gd")
-@export var object_name: String
-@export var cost: String
+@export var desc: String
+@export var cost: int
+@export var sprite_atlas : Vector2i
func _ready():
- var texture = util.get_tile_texture(game_stats_config.defenders[object_name.to_lower()]["sprite_panel"])
+ var texture = util.get_tile_texture(sprite_atlas)
$HBoxContainer/Texture.texture = texture
$HBoxContainer/Texture.stretch_mode = TextureRect.STRETCH_KEEP_ASPECT_CENTERED
- $HBoxContainer/VBoxContainer/Label.text = object_name
- $HBoxContainer/VBoxContainer/Label2.text = cost
+ $HBoxContainer/VBoxContainer/Label.text = desc
+ $HBoxContainer/VBoxContainer/Label2.text = str(cost)
diff --git a/scripts/warlock.gd b/scripts/warlock.gd
index a3174d8..80d6e58 100644
--- a/scripts/warlock.gd
+++ b/scripts/warlock.gd
@@ -3,7 +3,7 @@ extends "res://scripts/base_defender.gd"
var projectile: PackedScene = preload("res://scenes/warlock_projectile.tscn")
func _ready():
- set_tower_stats(0)
+ set_tower_stats(game_stats_config.defenders_index.WARLOCK)
reset_tower_range()
reset_tower_sprite()
diff --git a/scripts/wyvern.gd b/scripts/wyvern.gd
index e9a1efe..a2822fe 100644
--- a/scripts/wyvern.gd
+++ b/scripts/wyvern.gd
@@ -6,7 +6,7 @@ var range_collision : CollisionShape2D
var firing : bool = false
func _ready():
- set_tower_stats(1)
+ set_tower_stats(game_stats_config.defenders_index.WYVERN)
reset_tower_range()
reset_tower_sprite()