enemy movement should be deterministic now

This commit is contained in:
2026-02-11 05:37:55 +11:00
parent b72b05f33b
commit a2dc8f1630
15 changed files with 75 additions and 45 deletions

View File

@@ -4,8 +4,6 @@ class_name CardPrinter extends StaticBody3D
@export var button_collider: CollisionShape3D
@export var card_selection_menu: PackedScene
#TODO: use faction enum
var base_faction: int = 1
var cards_generated: int = 0
var reply_player: Hero
var spawned_cards: Array[CardItem] = []
@@ -41,9 +39,9 @@ func generate_rarity() -> int:
func randomize_cards(faction: Card.Faction) -> void:
#TODO: no magic numbers, asshole! 3 = cards to spawn
var cards_to_spawn: int = 3
var pos_x: float = 0.0
for x: int in 3:
for x: int in cards_to_spawn:
var decided_rarity: int = generate_rarity()
var card_choices: Array[Card] = get_faction_cards(faction)
var card_array: Array = []

View File

@@ -21,6 +21,7 @@ var blanks_available: int = 5
var blank_cost: int = 20
var buy_blank_prompt: String = "PROMPT_BUY_BLANK"
var buy_card_prompt: String = "PROMPT_BUY_CARD"
var shops_generated: int = 0
func close() -> void:
@@ -34,9 +35,14 @@ func close() -> void:
func randomize_cards() -> void:
#TODO: use seeded randomness
blanks_available = 5
var random_faction: int = randi_range(1, Card.Faction.values().size() - 1)
var unlocked_classes: Array[HeroClass] = Data.save_data.get_unlocked_classes()
var faction_choices: Array[Card.Faction]
for hero: HeroClass in unlocked_classes:
if !faction_choices.has(hero.faction):
faction_choices.append(hero.faction)
var random_faction: int = NoiseRandom.randi_in_range(shops_generated, 0, faction_choices.size() - 1)
shops_generated += 1
var cheap_cards: Array[Card] = []
var medium_cards: Array[Card] = []
var pricey_cards: Array[Card] = []