GOdot 4.4 uid and added better card ui in game

This commit is contained in:
2ManyProjects 2025-03-03 17:52:55 -06:00
parent c3b166112b
commit 025a690b48
73 changed files with 271 additions and 107 deletions

1
Systems/Card.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://eqadab7yd0qq

View file

@ -1,8 +1,10 @@
class_name CardDisplay extends Control
const CARD_WIDTH = 150
const CARD_HEIGHT = 250
# Base card dimensions
const BASE_CARD_WIDTH = 150
const BASE_CARD_HEIGHT = 250
const CARD_MARGIN = 10
const MAX_HAND_WIDTH_RATIO = 0.7 # Maximum portion of screen width to use for hand
var cardDisplays = [] # Array of {panel: Node, card: Card}
var selectedCard = null
@ -18,7 +20,7 @@ func _ready():
container = HBoxContainer.new()
container.name = "Hand"
container.position = Vector2(10, 500)
container.custom_minimum_size = Vector2(0, CARD_HEIGHT)
container.size_flags_horizontal = SIZE_EXPAND_FILL
add_child(container)
# Create a hover preview panel that will follow the mouse
@ -28,87 +30,69 @@ func _ready():
func update_hand(hand: Array):
clear_cards()
# Calculate card sizes based on hand size and screen width
var card_size = calculate_card_size(hand.size())
for card in hand:
add_card_display(card)
add_card_display(card, card_size)
func add_card_display(card):
func calculate_card_size(hand_size: int) -> Vector2:
# Get screen dimensions
var screen_width = get_viewport_rect().size.x
var screen_height = get_viewport_rect().size.y
var max_hand_width = screen_width * MAX_HAND_WIDTH_RATIO
var width_per_card = max_hand_width / max(hand_size, 1)
# Ensure minimum size and preserve aspect ratio
var card_width = clamp(width_per_card - CARD_MARGIN, 80, BASE_CARD_WIDTH)
var card_height = card_width * (BASE_CARD_HEIGHT / BASE_CARD_WIDTH)
# Ensure cards don't extend off the bottom of the screen
var max_height = screen_height * 0.4 # Use at most 40% of screen height
if card_height > max_height:
card_height = max_height
card_width = card_height * (BASE_CARD_WIDTH / BASE_CARD_HEIGHT)
return Vector2(card_width, card_height)
func add_card_display(card, card_size: Vector2 = Vector2(BASE_CARD_WIDTH, BASE_CARD_HEIGHT)):
# Create a container for the card
var cardContainer = PanelContainer.new()
cardContainer.custom_minimum_size = Vector2(CARD_WIDTH, CARD_HEIGHT)
cardContainer.custom_minimum_size = card_size
# Create a stylebox for selection highlighting
# var style = StyleBoxFlat.new()
# style.bg_color = Utils.DARK_CELL
# style.corner_radius_top_left = 5
# style.corner_radius_top_right = 5
# style.corner_radius_bottom_left = 5
# style.corner_radius_bottom_right = 5
# cardContainer.add_theme_stylebox_override("panel", style)
var style = StyleBoxFlat.new()
style.bg_color = Utils.DARK_CELL
style.corner_radius_top_left = 5
style.corner_radius_top_right = 5
style.corner_radius_bottom_left = 5
style.corner_radius_bottom_right = 5
cardContainer.add_theme_stylebox_override("panel", style)
# Create a simplified card view
var vbox = VBoxContainer.new()
vbox.set_meta("card_id", card.id)
cardContainer.add_child(vbox)
# Create compact card display
var compact_card = CompactCardDisplay.new()
compact_card.set_anchors_preset(Control.PRESET_FULL_RECT)
compact_card.mouse_filter = Control.MOUSE_FILTER_PASS
# Card name
var nameLabel = Label.new()
nameLabel.text = card.cardName
nameLabel.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
nameLabel.add_theme_font_size_override("font_size", 16)
vbox.add_child(nameLabel)
# Card rank with color
var rankLabel = Label.new()
rankLabel.text = "Rank " + str(card.rank)
rankLabel.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
# Apply color based on rank
match card.rank:
Card.Rank.RANK_0:
rankLabel.add_theme_color_override("font_color", Color(0.9, 0.1, 0.1, 1.0)) # Red
Card.Rank.RANK_1:
rankLabel.add_theme_color_override("font_color", Color(0.9, 0.6, 0.1, 1.0)) # Orange
Card.Rank.RANK_2:
rankLabel.add_theme_color_override("font_color", Color(0.1, 0.7, 0.1, 1.0)) # Green
Card.Rank.RANK_3:
rankLabel.add_theme_color_override("font_color", Color(0.1, 0.7, 0.9, 1.0)) # Blue
vbox.add_child(rankLabel)
# Card description (truncated)
var descLabel = Label.new()
descLabel.text = card.description
if descLabel.text.length() > 50:
descLabel.text = descLabel.text.substr(0, 50) + "..."
descLabel.autowrap_mode = TextServer.AUTOWRAP_WORD
descLabel.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
descLabel.custom_minimum_size = Vector2(CARD_WIDTH - 20, 0)
vbox.add_child(descLabel)
# Unit whitelist
var unitLabel = Label.new()
if card.unitWhitelist.is_empty():
unitLabel.text = "Any piece"
else:
unitLabel.text = ", ".join(card.unitWhitelist)
unitLabel.autowrap_mode = TextServer.AUTOWRAP_WORD
unitLabel.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
unitLabel.custom_minimum_size = Vector2(CARD_WIDTH - 20, 0)
vbox.add_child(unitLabel)
# Add to container
cardContainer.add_child(compact_card)
compact_card.set_card(card)
# Connect signals
cardContainer.gui_input.connect(func(event): _on_card_clicked(event, card))
# Connect hover signals for preview
cardContainer.mouse_entered.connect(func(): _on_card_mouse_entered(card))
cardContainer.mouse_exited.connect(func(): _on_card_mouse_exited())
# Add to hand container
container.add_child(cardContainer)
# Add to display list
cardDisplays.append({
"panel": cardContainer,
"card": card
})
container.add_child(cardContainer)
func _on_card_clicked(event: InputEvent, card: Card):
if event is InputEventMouseButton and event.pressed:
@ -121,6 +105,7 @@ func _on_card_clicked(event: InputEvent, card: Card):
func _on_card_mouse_entered(card: Card):
# Show card preview when hovering
print("_on_card_mouse_entered")
currently_hovered_card = card
hoveredPreview.preview_card(card)
hoveredPreview.visible = true
@ -159,19 +144,17 @@ func _process(delta):
func highlight_selectedCard(selected: Card) -> void:
for card_data in cardDisplays:
var panel = card_data.panel
var style = StyleBoxFlat.new()
style.bg_color = Utils.DARK_CELL # Default color
# Style corners
style.corner_radius_top_left = 5
style.corner_radius_top_right = 5
style.corner_radius_bottom_left = 5
style.corner_radius_bottom_right = 5
var compact_card = panel.get_child(0) as CompactCardDisplay
if selected && card_data.card.id == selected.id:
style.bg_color = Color(0.4, 0.6, 0.4, 1) # Selected color
panel.add_theme_stylebox_override("panel", style)
# Apply highlighting to the CompactCardDisplay
if compact_card:
compact_card.set_selected(true)
else:
# Reset highlighting
if compact_card:
compact_card.set_selected(false)
func get_card_by_uuid(uuid: String) -> Card:
for card_data in cardDisplays:
@ -186,4 +169,4 @@ func clear_cards():
for card_data in cardDisplays:
card_data.panel.queue_free()
cardDisplays.clear()
selectedCard = null
selectedCard = null

View file

@ -0,0 +1 @@
uid://dgsj76xih6r3y

View file

@ -0,0 +1 @@
uid://p4ahefeutov0

View file

@ -33,7 +33,8 @@ func preview_card(card: Card):
if !card:
hide_preview()
return
# if !is_inside_tree():
# await ready
# Update all card information
card_name_label.text = card.cardName

View file

@ -0,0 +1 @@
uid://2xcreiq6lhe2

View file

@ -0,0 +1 @@
uid://b1d17jfxagdc7

View file

@ -0,0 +1 @@
uid://b5888fqblsco5

View file

@ -0,0 +1 @@
uid://o16wgudelf8x

View file

@ -0,0 +1 @@
uid://bayyvtfwpshsh

View file

@ -0,0 +1 @@
uid://64bdg86r6t4o

View file

@ -0,0 +1 @@
uid://cpgq5itsb2l8j

View file

@ -0,0 +1 @@
uid://ca4j0d6hrcm4x

View file

@ -0,0 +1 @@
uid://5w8amumsdpto

View file

@ -0,0 +1 @@
uid://cvldhayf5ket0

View file

@ -0,0 +1,109 @@
extends Panel
class_name CompactCardDisplay
# Node references (will be created programmatically)
var card_name_label: Label
var rank_label: Label
var description_label: Label
var effect_type_label: Label
# Card rank colors (same as other card components)
var rank_colors = {
Card.Rank.RANK_0: Color(0.9, 0.1, 0.1, 1.0), # Red
Card.Rank.RANK_1: Color(0.9, 0.6, 0.1, 1.0), # Orange
Card.Rank.RANK_2: Color(0.1, 0.7, 0.1, 1.0), # Green
Card.Rank.RANK_3: Color(0.1, 0.7, 0.9, 1.0) # Blue
}
# Effect type descriptions
var effect_type_names = {
Card.EffectType.MOVEMENT_MODIFIER: "Movement Modifier",
Card.EffectType.BOARD_EFFECT: "Board Effect",
Card.EffectType.PIECE_EFFECT: "Piece Effect",
Card.EffectType.SPECIAL_ACTION: "Special Action"
}
var current_card = null
func _ready():
# Create a stylish background
var style = StyleBoxFlat.new()
style.bg_color = Color(0.15, 0.15, 0.15, 1.0)
style.corner_radius_top_left = 5
style.corner_radius_top_right = 5
style.corner_radius_bottom_left = 5
style.corner_radius_bottom_right = 5
style.border_width_left = 2
style.border_width_top = 2
style.border_width_right = 2
style.border_width_bottom = 2
style.border_color = Color(0.3, 0.3, 0.3)
add_theme_stylebox_override("panel", style)
# Create a content container
var content = VBoxContainer.new()
content.set_anchors_preset(Control.PRESET_FULL_RECT)
content.add_theme_constant_override("separation", 2) # Tight spacing
add_child(content)
card_name_label = Label.new()
card_name_label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
card_name_label.add_theme_font_size_override("font_size", 12)
card_name_label.clip_text = true # Prevent overflow
content.add_child(card_name_label)
rank_label = Label.new()
rank_label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
rank_label.add_theme_font_size_override("font_size", 10)
content.add_child(rank_label)
# Create description label (limited to 2-3 lines)
description_label = Label.new()
description_label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
description_label.add_theme_font_size_override("font_size", 9)
description_label.autowrap_mode = TextServer.AUTOWRAP_WORD
description_label.max_lines_visible = 3
description_label.size_flags_vertical = SIZE_EXPAND_FILL
content.add_child(description_label)
effect_type_label = Label.new()
effect_type_label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
effect_type_label.add_theme_font_size_override("font_size", 8)
effect_type_label.clip_text = true
content.add_child(effect_type_label)
func set_selected(is_selected: bool) -> void:
var style = get_theme_stylebox("panel").duplicate()
if is_selected:
style.bg_color = Utils.GREEN_CELL # Selected color
else:
style.bg_color = Utils.DARK_CELL
add_theme_stylebox_override("panel", style)
func set_card(card: Card):
if !card:
return
if !is_inside_tree():
await ready
current_card = card
card_name_label.text = card.cardName
rank_label.text = "Rank " + str(card.rank)
if card.rank in rank_colors:
rank_label.add_theme_color_override("font_color", rank_colors[card.rank])
var style = get_theme_stylebox("panel").duplicate()
style.border_color = rank_colors[card.rank]
add_theme_stylebox_override("panel", style)
description_label.text = card.description
if card.effectType in effect_type_names:
effect_type_label.text = "Effect: " + effect_type_names[card.effectType]
else:
effect_type_label.text = "Effect: Unknown"

View file

@ -0,0 +1 @@
uid://dm6uv77n0roen

View file

@ -0,0 +1 @@
uid://bdwsolgdmo51y

View file

@ -0,0 +1 @@
uid://dae6g5472sh26

View file

@ -0,0 +1 @@
uid://bnxxex87ax7hc

View file

@ -0,0 +1 @@
uid://bdbap6f4c4d5w

View file

@ -251,7 +251,7 @@ func setupUI() -> void:
var reset_button = Button.new()
reset_button.text = "Reset View"
reset_button.size = Vector2(100, 30)
reset_button.size = Vector2(0, 30)
reset_button.pressed.connect(func(): cameraController.reset_view())
var control_container = VBoxContainer.new()

View file

@ -0,0 +1 @@
uid://cbcu68o863pfp

View file

@ -0,0 +1 @@
uid://vxufsih5pgeu

1
Systems/Game/Game.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://cbaoxhgtk4td8

View file

@ -0,0 +1 @@
uid://bfjmon81nckns

View file

@ -0,0 +1 @@
uid://j0m4rwr86oi6

View file

@ -0,0 +1 @@
uid://bf5ljae05pvla

View file

@ -0,0 +1 @@
uid://dbm5dv81lbdod

View file

@ -0,0 +1 @@
uid://c47i2m0ll101x

View file

@ -0,0 +1 @@
uid://btu5staehrl5k

View file

@ -0,0 +1 @@
uid://bcp8cle0ptyxp

View file

@ -0,0 +1 @@
uid://buuc2ua0y55qu

View file

@ -0,0 +1 @@
uid://dwshyvjsmtsnk

View file

@ -0,0 +1 @@
uid://c8dujt7rgmewm

View file

@ -0,0 +1 @@
uid://ddk4pbq3qpb56

View file

@ -0,0 +1 @@
uid://c0bv30h81kpfh

View file

@ -0,0 +1 @@
uid://bhsnqkwpq6j07

View file

@ -0,0 +1 @@
uid://gcstgtn6qibn

View file

@ -0,0 +1 @@
uid://x5xhlydm4sqa

View file

@ -0,0 +1 @@
uid://dilhmg6yll1b5

View file

@ -0,0 +1 @@
uid://d008wm4s4f13n

View file

@ -0,0 +1 @@
uid://ceygswx1lxgwa

View file

@ -0,0 +1 @@
uid://iom2mj8nkjyl

View file

@ -0,0 +1 @@
uid://btjlt4t08xpkr

View file

@ -0,0 +1 @@
uid://bbcqcob12kjj8

View file

@ -0,0 +1 @@
uid://d2bfw6edgkhfa

View file

@ -0,0 +1 @@
uid://bdd6qti00rf0w

View file

@ -0,0 +1 @@
uid://d374gcphjcd64

1
Systems/Tile.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://dv51spq5jfpn

View file

@ -0,0 +1 @@
uid://t0w5e5p7y02m

View file

@ -0,0 +1 @@
uid://ce2aqwj7tpe2g

View file

@ -0,0 +1 @@
uid://cd7b4rmmnl64d

View file

@ -0,0 +1 @@
uid://babnkyo77rhlx

View file

@ -0,0 +1 @@
uid://41u46uiv0kb4

View file

@ -0,0 +1 @@
uid://4mx8dov6q41n

View file

@ -0,0 +1 @@
uid://da68m1iay1wih

View file

@ -55,5 +55,6 @@ static func location_to_algebraic(location: String) -> String:
static var LIGHT_CELL = Color(0.5, 0.5, 0.5, 1)
static var DARK_CELL = Color(0.2, 0.2, 0.2, 1)
static var GREEN_CELL = Color(0.36, 0.62, 0.43, 1)
static var WALL_CELL = Color(0.59, 0.29, 0.0, 1) # Brown (#964B00)
static var DOUBLE_WALL = Color(0.36, 0.17, 0.0, 1) # Dark Brown (#5C2B00)

1
Utils/Utils.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://bgfb0t7eso7ug

View file

@ -0,0 +1 @@
uid://ou3nhs1sjm3b

View file

@ -0,0 +1 @@
uid://dorhpw5wn2gfd

View file

@ -0,0 +1 @@
uid://cvlk3w6d4ckic

View file

@ -0,0 +1 @@
uid://b8msrnx62vyd7

View file

@ -0,0 +1 @@
uid://ckej5yjb55kcr

View file

@ -0,0 +1 @@
uid://b4x7tb14kjbfn

View file

@ -0,0 +1 @@
uid://drn6iebxdrr3r

View file

@ -1,32 +1,32 @@
[gd_scene load_steps=29 format=3 uid="uid://d0qyk6v20uief"]
[ext_resource type="Script" path="res://Systems/Game/ChessGame.gd" id="1_fkb2r"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/WhiteTurn.gd" id="3_276ip"]
[ext_resource type="Script" path="res://Systems/StateMachine/StateMachine.gd" id="3_lw81y"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/BlackTurn.gd" id="4_tl1oh"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/HandSetup.gd" id="5_4xbce"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/DrawPhase.gd" id="6_xlfb1"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/ResolvePersistentEffects.gd" id="7_1ufry"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/ApplyTileEffects.gd" id="8_h8ea3"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/PreMovePhase.gd" id="9_vq75e"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/AttachCards.gd" id="10_mkypi"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/ApplyCardEffects.gd" id="11_fqmmt"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/Movement.gd" id="12_l81sw"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/PostMovePhase.gd" id="13_d4fiw"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/EvaluatePosition.gd" id="14_icem8"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/CleanupPhase.gd" id="15_m58r8"]
[ext_resource type="Script" path="res://Systems/StateMachine/GameStates/RoundEnd.gd" id="16_8h5do"]
[ext_resource type="Script" path="res://Systems/Game/CameraController.gd" id="17_1epdx"]
[ext_resource type="Script" path="res://Systems/Game/Menu/MenuContainer.gd" id="18_c1y73"]
[ext_resource type="Script" uid="uid://cbcu68o863pfp" path="res://Systems/Game/ChessGame.gd" id="1_fkb2r"]
[ext_resource type="Script" uid="uid://d2bfw6edgkhfa" path="res://Systems/StateMachine/GameStates/WhiteTurn.gd" id="3_276ip"]
[ext_resource type="Script" uid="uid://d374gcphjcd64" path="res://Systems/StateMachine/StateMachine.gd" id="3_lw81y"]
[ext_resource type="Script" uid="uid://c0bv30h81kpfh" path="res://Systems/StateMachine/GameStates/BlackTurn.gd" id="4_tl1oh"]
[ext_resource type="Script" uid="uid://dilhmg6yll1b5" path="res://Systems/StateMachine/GameStates/HandSetup.gd" id="5_4xbce"]
[ext_resource type="Script" uid="uid://gcstgtn6qibn" path="res://Systems/StateMachine/GameStates/DrawPhase.gd" id="6_xlfb1"]
[ext_resource type="Script" uid="uid://btjlt4t08xpkr" path="res://Systems/StateMachine/GameStates/ResolvePersistentEffects.gd" id="7_1ufry"]
[ext_resource type="Script" uid="uid://c8dujt7rgmewm" path="res://Systems/StateMachine/GameStates/ApplyTileEffects.gd" id="8_h8ea3"]
[ext_resource type="Script" uid="uid://iom2mj8nkjyl" path="res://Systems/StateMachine/GameStates/PreMovePhase.gd" id="9_vq75e"]
[ext_resource type="Script" uid="uid://ddk4pbq3qpb56" path="res://Systems/StateMachine/GameStates/AttachCards.gd" id="10_mkypi"]
[ext_resource type="Script" uid="uid://dwshyvjsmtsnk" path="res://Systems/StateMachine/GameStates/ApplyCardEffects.gd" id="11_fqmmt"]
[ext_resource type="Script" uid="uid://d008wm4s4f13n" path="res://Systems/StateMachine/GameStates/Movement.gd" id="12_l81sw"]
[ext_resource type="Script" uid="uid://ceygswx1lxgwa" path="res://Systems/StateMachine/GameStates/PostMovePhase.gd" id="13_d4fiw"]
[ext_resource type="Script" uid="uid://x5xhlydm4sqa" path="res://Systems/StateMachine/GameStates/EvaluatePosition.gd" id="14_icem8"]
[ext_resource type="Script" uid="uid://bhsnqkwpq6j07" path="res://Systems/StateMachine/GameStates/CleanupPhase.gd" id="15_m58r8"]
[ext_resource type="Script" uid="uid://bbcqcob12kjj8" path="res://Systems/StateMachine/GameStates/RoundEnd.gd" id="16_8h5do"]
[ext_resource type="Script" uid="uid://bdbap6f4c4d5w" path="res://Systems/Game/CameraController.gd" id="17_1epdx"]
[ext_resource type="Script" uid="uid://bf5ljae05pvla" path="res://Systems/Game/Menu/MenuContainer.gd" id="18_c1y73"]
[ext_resource type="Texture2D" uid="uid://bn0offg4w11w4" path="res://Assets/main_menu/label_continue.png" id="18_yr4pt"]
[ext_resource type="Theme" uid="uid://cuq0xndnachqb" path="res://Assets/Themes/Title.tres" id="19_enj45"]
[ext_resource type="Texture2D" uid="uid://b8khh5b1iwic1" path="res://Assets/main_menu/label_options.png" id="20_necaf"]
[ext_resource type="Script" path="res://Systems/Game/Menu/MenuOption.gd" id="20_qqo7d"]
[ext_resource type="Script" uid="uid://dbm5dv81lbdod" path="res://Systems/Game/Menu/MenuOption.gd" id="20_qqo7d"]
[ext_resource type="Texture2D" uid="uid://bexpni52h8527" path="res://Assets/main_menu/characters.png" id="23_vmvai"]
[ext_resource type="Theme" uid="uid://btgbiqdc4kf15" path="res://Assets/Themes/SimpleMenuText.tres" id="24_4y4dr"]
[ext_resource type="Script" path="res://Systems/Game/Menu/MenuTextOption.gd" id="24_aslgu"]
[ext_resource type="Script" path="res://Systems/Game/GameMenuScreen.gd" id="26_pb4ja"]
[ext_resource type="Script" path="res://Systems/Game/GameMenuButton.gd" id="26_t2e38"]
[ext_resource type="Script" uid="uid://c47i2m0ll101x" path="res://Systems/Game/Menu/MenuTextOption.gd" id="24_aslgu"]
[ext_resource type="Script" uid="uid://j0m4rwr86oi6" path="res://Systems/Game/GameMenuScreen.gd" id="26_pb4ja"]
[ext_resource type="Script" uid="uid://bfjmon81nckns" path="res://Systems/Game/GameMenuButton.gd" id="26_t2e38"]
[ext_resource type="PackedScene" uid="uid://c7uqbcxdjoais" path="res://deck_manager_screen.tscn" id="28_4nyv8"]
[node name="Board" type="Control"]

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=3 format=3 uid="uid://cqg23tpbanwv4"]
[ext_resource type="Script" path="res://Systems/Cards/CardBankItem.gd" id="1_gu47gh"]
[ext_resource type="Script" uid="uid://b1d17jfxagdc7" path="res://Systems/Cards/CardBankItem.gd" id="1_gu47gh"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_asdfvfa"]
bg_color = Color(0.15, 0.15, 0.15, 1)

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=3 format=3 uid="uid://xxxxxxxx"]
[ext_resource type="Script" path="res://Systems/CardPreviewPanel.gd" id="1_ykslh"]
[ext_resource type="Script" uid="uid://2xcreiq6lhe2" path="res://Systems/CardPreviewPanel.gd" id="1_ykslh"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ykslh"]
bg_color = Color(0.08, 0.08, 0.12, 0.95)

View file

@ -1,6 +1,6 @@
[gd_scene load_steps=3 format=3 uid="uid://b13w87rkhvwcv"]
[ext_resource type="Script" path="res://Systems/Cards/CardSlot.gd" id="1_asdwda"]
[ext_resource type="Script" uid="uid://b5888fqblsco5" path="res://Systems/Cards/CardSlot.gd" id="1_asdwda"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_asdawdf"]
bg_color = Color(0.15, 0.15, 0.15, 1)

View file

@ -1,8 +1,8 @@
[gd_scene load_steps=4 format=3 uid="uid://c7uqbcxdjoais"]
[ext_resource type="Script" path="res://Systems/Game/DeckManagerScreen.gd" id="1_gokg4"]
[ext_resource type="Script" uid="uid://vxufsih5pgeu" path="res://Systems/Game/DeckManagerScreen.gd" id="1_gokg4"]
[ext_resource type="PackedScene" uid="uid://xxxxxxxx" path="res://card_preview_panel.tscn" id="3_abcde"]
[ext_resource type="Script" path="res://Systems/Game/GameMenuButton.gd" id="4_gokg4"]
[ext_resource type="Script" uid="uid://bfjmon81nckns" path="res://Systems/Game/GameMenuButton.gd" id="4_gokg4"]
[node name="DeckManagerScreen" type="Control"]
layout_mode = 3

View file

@ -10,8 +10,10 @@ export_filter="all_resources"
include_filter="Assets/*"
exclude_filter="build/"
export_path="build/Linux/ChessBuilder.x86_64"
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
seed=0
encrypt_pck=false
encrypt_directory=false
script_export_mode=2
@ -50,8 +52,10 @@ export_filter="all_resources"
include_filter="Assets/*"
exclude_filter="build/"
export_path="build/Windows/ChessBuilder.exe"
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
seed=0
encrypt_pck=false
encrypt_directory=false
script_export_mode=2
@ -115,8 +119,10 @@ export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path=""
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
seed=0
encrypt_pck=false
encrypt_directory=false
script_export_mode=2
@ -137,7 +143,8 @@ application/short_version=""
application/version=""
application/copyright=""
application/copyright_localized={}
application/min_macos_version="10.12"
application/min_macos_version_x86_64="10.12"
application/min_macos_version_arm64="11.00"
application/export_angle=0
display/high_res=true
application/additional_plist_content=""
@ -175,6 +182,7 @@ codesign/entitlements/app_sandbox/files_music=0
codesign/entitlements/app_sandbox/files_movies=0
codesign/entitlements/app_sandbox/files_user_selected=0
codesign/entitlements/app_sandbox/helper_executables=[]
codesign/entitlements/additional=""
codesign/custom_options=PackedStringArray()
notarization/notarization=0
privacy/microphone_usage_description=""
@ -352,3 +360,4 @@ open \"{temp_dir}/{exe_name}.app\" --args {cmd_args}"
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
kill $(pgrep -x -f \"{temp_dir}/{exe_name}.app/Contents/MacOS/{exe_name} {cmd_args}\")
rm -rf \"{temp_dir}\""
application/min_macos_version="10.12"

View file

@ -12,7 +12,7 @@ config_version=5
config/name="Godot Chess"
run/main_scene="res://board.tscn"
config/features=PackedStringArray("4.3", "Forward Plus")
config/features=PackedStringArray("4.4", "Forward Plus")
config/icon="res://icon.svg"
[autoload]