added selling cards and made shop items cheaper

This commit is contained in:
2024-03-31 19:32:00 +11:00
parent e84496dcf8
commit 05914a3c64
22 changed files with 354 additions and 413 deletions

View File

@ -6,16 +6,18 @@ class_name CardPrinter extends StaticBody3D
@export var button_box: Node3D
@export var choice_colliders: Array[CollisionShape3D]
var cards_generated: int = 0
var card_available: bool = false
var reply_player: Hero
func randomize_cards() -> void:
func generate_rarity() -> int:
var weight_total: int = 0
for rarity: String in Data.Rarity:
weight_total += Data.rarity_weights[rarity]
var generated_rarity: int = randi_range(0, weight_total)
var generated_rarity: int = Game.randi_in_range(4 * cards_generated, 0, weight_total)
cards_generated += 1
var decided_rarity: int = 0
for rarity: String in Data.Rarity:
@ -23,7 +25,11 @@ func randomize_cards() -> void:
if generated_rarity >= weight_total:
decided_rarity = Data.Rarity[rarity]
break
return decided_rarity
func randomize_cards() -> void:
var decided_rarity: int = generate_rarity()
var card_array: Array = []
for x: Card in Data.cards:
if x.rarity == decided_rarity:
@ -31,7 +37,8 @@ func randomize_cards() -> void:
var card: Card
for x: CardInHand in cards:
if card_array.size() > 0:
card = card_array.pick_random()
card = card_array[Game.randi_in_range(132 * cards_generated, 0, card_array.size() - 1)]
cards_generated += 1
card_array.erase(card)
x.set_card(card)
#TODO: in reality this should just show the icon and then hovering over it lets you see either side at the players own discretion
@ -42,7 +49,7 @@ func randomize_cards() -> void:
card_available = true
func retrieve_card(i: int, reply: Hero) -> void:
func retrieve_card(i: int, _reply: Hero) -> void:
$Node3D.set_visible(false)
for x: CollisionShape3D in choice_colliders:
x.disabled = true