From e2a45fafda83e5e98ba043b45abb128b923519b9 Mon Sep 17 00:00:00 2001 From: Haze Weathers Date: Mon, 26 Feb 2024 22:55:25 -0500 Subject: [PATCH] make shard requirements depend on difficulty, assign better defaults lol --- autoloads/level_data.tscn | 38 +++++++++++++++++++++++++++++++++----- scripts/level_entry.gd | 16 +++++++++++++++- 2 files changed, 48 insertions(+), 6 deletions(-) diff --git a/autoloads/level_data.tscn b/autoloads/level_data.tscn index eb81a14..2bb2cd5 100644 --- a/autoloads/level_data.tscn +++ b/autoloads/level_data.tscn @@ -24,6 +24,8 @@ title = "Verdant Hills" shard_titles = [ "Climb to the top", "The obstacle course", "The smallest platform", "Energetic eviscerator", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "hills" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "" boss = false scores_id = 13253 @@ -37,6 +39,8 @@ title = "Shady Canopy" shard_titles = [ "Archer and His Friend", "Thirsty Spiders", "Spider's Den", "Dancing Above the Pond", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "canopy" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "" boss = false scores_id = 13254 @@ -50,6 +54,8 @@ title = "Echo Mountain" shard_titles = [ "Push the Rock", "Twin Rolling Fiends", "Beware! Moving Platforms", "Crafty CatBat", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "mountain" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "" boss = false scores_id = 13263 @@ -62,7 +68,9 @@ script = ExtResource( 5 ) title = "VS The Scrump" shard_titles = [ "-w-", "owo", "uwu", "o3o", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "boss1" -shards_required = 4 +shards_required = 10 +shards_required_easy = 7 +shards_required_hard = 15 boss_required = "" boss = true scores_id = -1 @@ -76,6 +84,8 @@ title = "Blue Ray Cavern" shard_titles = [ "Dynamic Duo", "Stalactite Scramble", "OverHead Obstacle Course", "Sneaky Snail", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "cave" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "boss1" boss = false scores_id = 13264 @@ -89,6 +99,8 @@ title = "Crater of the Abyss" shard_titles = [ "Follow the minnow", "Beel enclosure", "Turchin jump", "Drop Down Mine Jump", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "abyss" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "boss1" boss = false scores_id = 13265 @@ -102,6 +114,8 @@ title = "ArlingWood Graveyard" shard_titles = [ "Bone Climb", "Soul Graze", "Bow Happy Hellarcher", "Look out for spikes!", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "graveyard" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "boss1" boss = false scores_id = 13266 @@ -114,7 +128,9 @@ script = ExtResource( 5 ) title = "VS. STG-2600" shard_titles = [ "", "", "", "", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "boss2" -shards_required = 8 +shards_required = 20 +shards_required_easy = 15 +shards_required_hard = 30 boss_required = "" boss = true scores_id = -1 @@ -128,6 +144,8 @@ title = "Dread PD" shard_titles = [ "All Cops Are Bastards", "Save Ms.X", "Treacherous Climb", "Dodge the lasers", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "station" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "boss2" boss = false scores_id = 13267 @@ -141,6 +159,8 @@ title = "Rust Inc." shard_titles = [ "Precarious Block", "Beside the button", "Saws and bullets", "Beyond the Steam", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "rust" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "boss2" boss = false scores_id = 13268 @@ -154,6 +174,8 @@ title = "Fami's Lab" shard_titles = [ "Jump the Spike", "Final Obstacle Course", "5-Finger Discount", "Partners in law", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "lab" shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "boss2" boss = false scores_id = 13269 @@ -166,7 +188,9 @@ script = ExtResource( 5 ) title = "VS. Fami" shard_titles = [ "", "", "", "", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "boss3" -shards_required = 16 +shards_required = 40 +shards_required_easy = 30 +shards_required_hard = 60 boss_required = "" boss = true scores_id = -1 @@ -179,7 +203,9 @@ script = ExtResource( 5 ) title = "Beta Verdant Hills" shard_titles = [ "Climb the Big Vine", "Next to the Lone Tree", "Slime's Treasure", "The Snake Pit", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "beta_hills" -shards_required = 72 +shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "" boss = false scores_id = -1 @@ -192,7 +218,9 @@ script = ExtResource( 5 ) title = "Beta Blue Ray Cavern" shard_titles = [ "Star-Crossed Lovers", "The Snail Cave", "Members Only!", "OverHead Obstacle Course", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] save_id = "beta_cave" -shards_required = 72 +shards_required = 0 +shards_required_easy = 0 +shards_required_hard = 0 boss_required = "" boss = false scores_id = -1 diff --git a/scripts/level_entry.gd b/scripts/level_entry.gd index 2d30d02..7a01230 100644 --- a/scripts/level_entry.gd +++ b/scripts/level_entry.gd @@ -10,13 +10,27 @@ export var shard_titles: Array = [ "Time Bonus", "Life Bonus"] export var save_id: String = "" -export var shards_required: int = 0 +export var shards_required: int = 0 setget , _get_shards_required +export var shards_required_easy: int = 0 +export var shards_required_hard: int = 0 export var boss_required: String = "" export var boss: bool = false export var scores_id: int = -1 export var times_id: int = -1 export var scene: PackedScene +func _get_shards_required() -> int: + if Engine.editor_hint: + return shards_required + match Game.difficulty: + Game.Difficulty.SWEET: + return shards_required_easy + Game.Difficulty.SALTY, Game.Difficulty.SPICY: + return shards_required + Game.Difficulty.PUNGENT: + return shards_required_hard + return shards_required + func set_title(value): title = value resource_name = value