Fix a whole bunch of issues #9

Merged
Puppyfruit-Lexi merged 5 commits from bugfixes into main 2026-02-14 19:06:42 +11:00
3 changed files with 10 additions and 11 deletions
Showing only changes of commit 89d1f5b4b7 - Show all commits

View File

@@ -13,14 +13,6 @@ func _ready() -> void:
button.hover_text = tr("PROMPT_RADIO_INTERACT")
func get_faction_cards(faction: Card.Faction) -> Array[Card]:
var valid_cards: Array[Card] = []
for card: Card in Data.cards:
if card.faction == faction:
valid_cards.append(card)
return valid_cards
func generate_rarity() -> int:
var weight_total: int = 0
for rarity: String in Data.Rarity:
@@ -43,7 +35,7 @@ func randomize_cards(faction: Card.Faction) -> void:
var pos_x: float = 0.0
for x: int in cards_to_spawn:
var decided_rarity: int = generate_rarity()
var card_choices: Array[Card] = get_faction_cards(faction)
var card_choices: Array[Card] = Card.get_faction_cards(faction)
var card_array: Array = []
var cards_chosen: bool = false
while !cards_chosen:
@@ -76,7 +68,7 @@ func find_cards(faction: Card.Faction, rarity: Data.Rarity, allowed_cards: Array
decided_rarity = generate_rarity()
var card_choices: Array[Card] = allowed_cards
if !card_choices:
card_choices = get_faction_cards(faction)
card_choices = Card.get_faction_cards(faction)
var cards: Array[Card] = []
var valid_cards_found: bool = false
var testing_rarity: int = decided_rarity

View File

@@ -7,6 +7,13 @@ enum Faction {
MAGE = 2,
}
static func get_faction_cards(faction: Card.Faction) -> Array[Card]:
var valid_cards: Array[Card] = []
for card: Card in Data.cards:
if card.faction == faction:
valid_cards.append(card)
return valid_cards
@export var cost: int
@export var rarity: Data.Rarity
@export var faction: Faction

View File

@@ -157,7 +157,7 @@ func level_selected(level: LevelConfig, side: int) -> void:
gamemode.rng_seed = generate_seed() if gamemode.endless else level.game_seed
gamemode.daily = false
if gamemode.endless:
level.allowed_cards = level.hero_class.deck
level.allowed_cards = Card.get_faction_cards(level.hero_class.faction)
level.waves = []
game.level_config = level
if !gamemode.multiplayer: