Compare commits

..

No commits in common. "91e55a170983322497328be6a448aba353b26b58" and "72c6e49a06afc3bbf066c570a11840a6b6a25bcc" have entirely different histories.

15 changed files with 56 additions and 265 deletions

Binary file not shown.

View file

@ -1,42 +0,0 @@
extends Object
class_name CardInfo
var id := "unknown"
var name := "Unknown card"
var subname := "--"
var colors := []
var keywords := []
var traits := []
var requirements := {}
var cost := 0
var power := 0
var type := "None"
var text := "This card does not exist, if you see it it's because something failed loading"
var rarity := "UR"
var bonus := 0
var opponentPower := 0
func _init(cardEntry: Dictionary):
if not cardEntry.empty():
id = cardEntry.ID
name = cardEntry.Name
subname = cardEntry.Subname
colors = cardEntry.Element
keywords = cardEntry.Keywords
traits = cardEntry.Traits
type = cardEntry.Type
text = cardEntry.Text
rarity = cardEntry.Rarity
if cardEntry.has("Power"):
power = cardEntry.Power
if cardEntry.has("Cost"):
cost = cardEntry.Cost
if cardEntry.has("ProblemBonus"):
bonus = cardEntry.ProblemBonus
if cardEntry.has("Requirement"):
requirements = cardEntry.Requirement
elif cardEntry.has("ProblemRequirement"):
requirements = cardEntry.ProblemRequirement
if cardEntry.has("ProblemOpponentPower"):
opponentPower = cardEntry.ProblemOpponentPower

View file

@ -36,12 +36,12 @@ scroll_horizontal_enabled = false
[node name="PickedCardList" parent="PickedCardListScroll" instance=ExtResource( 3 )]
[node name="PlayerList" type="VBoxContainer" parent="."]
[node name="VBoxContainer" type="VBoxContainer" parent="."]
anchor_bottom = 1.0
margin_left = 20.0
margin_top = 20.0
margin_right = 220.0
margin_bottom = -20.0
margin_bottom = 20.0
[node name="Cards" type="GridContainer" parent="."]
anchor_left = 0.5

View file

@ -1,23 +0,0 @@
extends Panel
export var isBot: bool = false
export var playerName: String = "Nobody"
export var pickedColor: Color
export var pickingColor: Color
onready var playerIcon := $PlayerIcon
onready var playerNameLabel := $PlayerName
func _ready():
if isBot:
var atl := (playerIcon.texture as AtlasTexture).duplicate()
atl.region.position.x = 0
playerIcon.texture = atl
playerNameLabel.text = playerName
func set_picked(picked: bool):
if picked:
playerNameLabel.add_color_override("font_color", pickedColor)
else:
playerNameLabel.add_color_override("font_color", pickingColor)

View file

@ -1,43 +0,0 @@
[gd_scene load_steps=6 format=2]
[ext_resource path="res://Scenes/Draft/PlayerItem.gd" type="Script" id=1]
[ext_resource path="res://UIAssets/Draft/playericons.png" type="Texture" id=2]
[ext_resource path="res://UIAssets/Fonts/Catamaran-Bold.ttf" type="DynamicFontData" id=3]
[sub_resource type="AtlasTexture" id=1]
flags = 13
atlas = ExtResource( 2 )
region = Rect2( 64, 0, 64, 64 )
[sub_resource type="DynamicFont" id=2]
size = 12
extra_spacing_top = 2
font_data = ExtResource( 3 )
[node name="PlayerItem" type="Panel"]
margin_right = 150.0
margin_bottom = 23.0
rect_min_size = Vector2( 150, 23 )
size_flags_horizontal = 3
script = ExtResource( 1 )
pickedColor = Color( 0.380392, 0.984314, 0.372549, 1 )
pickingColor = Color( 1, 0.243137, 0.278431, 1 )
[node name="PlayerIcon" type="TextureRect" parent="."]
anchor_bottom = 1.0
margin_top = 2.0
margin_right = 30.0
margin_bottom = -2.0
texture = SubResource( 1 )
expand = true
stretch_mode = 6
[node name="PlayerName" type="Label" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = 30.0
size_flags_horizontal = 3
size_flags_vertical = 3
custom_fonts/font = SubResource( 2 )
text = "Nobody"
valign = 1

View file

@ -3,6 +3,46 @@ extends Node
var loadedSets := {}
var loadedCards := {}
class CardInfo:
var id := "unknown"
var name := "Unknown card"
var subname := "--"
var colors := []
var keywords := []
var traits := []
var requirements := {}
var cost := 0
var power := 0
var type := "None"
var text := "This card does not exist, if you see it it's because something failed loading"
var rarity := "UR"
var bonus := 0
var opponentPower := 0
func _init(cardEntry: Dictionary):
if not cardEntry.empty():
id = cardEntry.ID
name = cardEntry.Name
subname = cardEntry.Subname
colors = cardEntry.Element
keywords = cardEntry.Keywords
traits = cardEntry.Traits
type = cardEntry.Type
text = cardEntry.Text
rarity = cardEntry.Rarity
if cardEntry.has("Power"):
power = cardEntry.Power
if cardEntry.has("Cost"):
cost = cardEntry.Cost
if cardEntry.has("ProblemBonus"):
bonus = cardEntry.ProblemBonus
if cardEntry.has("Requirement"):
requirements = cardEntry.Requirement
elif cardEntry.has("ProblemRequirement"):
requirements = cardEntry.ProblemRequirement
if cardEntry.has("ProblemOpponentPower"):
opponentPower = cardEntry.ProblemOpponentPower
func _ready():
# Search for sets in MLPData
var dir := Directory.new()

View file

@ -2,23 +2,8 @@ extends Control
signal loaded()
onready var roomList := $RoomScroll/RoomList
var RoomItem := preload("res://Scenes/Lobby/RoomEntry.tscn")
func _ready():
# Load bgm
BGM.load_music("lobby")
emit_signal("loaded")
add_room("test", "Unnamed room")
func add_room(id: String, name: String):
var item := RoomItem.instance()
item.roomName = name
item.connect("clicked", self, "_room_clicked", [id])
roomList.add_child(item)
func _room_clicked(id: String):
print(id)
emit_signal("loaded")

View file

@ -1,14 +1,15 @@
[gd_scene load_steps=3 format=2]
[gd_scene load_steps=4 format=2]
[ext_resource path="res://Scenes/Lobby.gd" type="Script" id=1]
[ext_resource path="res://MLPAssets/Background/menubg.webp" type="Texture" id=2]
[ext_resource path="res://Scenes/Lobby/RoomEntry.tscn" type="PackedScene" id=3]
[node name="Lobby" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 1 )
[node name="Background" type="TextureRect" parent="."]
[node name="TextureRect" type="TextureRect" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = -1.29236
@ -17,17 +18,20 @@ texture = ExtResource( 2 )
expand = true
stretch_mode = 7
[node name="RoomScroll" type="ScrollContainer" parent="."]
[node name="ScrollContainer" type="ScrollContainer" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
margin_left = 30.0
margin_top = 100.0
margin_right = -30.0
margin_bottom = -300.0
scroll_horizontal_enabled = false
[node name="RoomList" type="VBoxContainer" parent="RoomScroll"]
[node name="VBoxContainer" type="VBoxContainer" parent="ScrollContainer"]
margin_right = 1220.0
margin_bottom = 400.0
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Control" parent="ScrollContainer/VBoxContainer" instance=ExtResource( 3 )]
anchor_right = 0.0
margin_right = 1220.0

View file

@ -1,24 +0,0 @@
extends Panel
signal clicked()
export var roomName: String = "Unnamed room"
onready var roomNameLabel := $RoomName
func _ready():
roomNameLabel.text = roomName
func _gui_input(event: InputEvent):
# Left double click
if event is InputEventMouseButton and event.button_index == BUTTON_LEFT:
accept_event()
if event.doubleclick:
emit_signal("clicked")
else:
#TODO Fade in
pass
func _mouse_exited():
#TODO if faded in, fade out
pass

View file

@ -1,14 +1,4 @@
[gd_scene load_steps=4 format=2]
[ext_resource path="res://Scenes/Lobby/RoomEntry.gd" type="Script" id=1]
[ext_resource path="res://UIAssets/Fonts/Catamaran-Bold.ttf" type="DynamicFontData" id=2]
[sub_resource type="DynamicFont" id=1]
size = 26
use_mipmaps = true
use_filter = true
extra_spacing_top = 2
font_data = ExtResource( 2 )
[gd_scene format=2]
[node name="RoomEntry" type="Panel"]
anchor_right = 1.0
@ -16,14 +6,3 @@ margin_right = -280.0
margin_bottom = 50.0
rect_min_size = Vector2( 0, 50 )
size_flags_horizontal = 3
script = ExtResource( 1 )
[node name="RoomName" type="Label" parent="."]
margin_left = 20.0
margin_right = 411.0
margin_bottom = 50.0
custom_fonts/font = SubResource( 1 )
text = "Unnamed Room"
valign = 1
[connection signal="gui_input" from="." to="." method="_gui_input"]
[connection signal="mouse_exited" from="RoomName" to="." method="_mouse_exited"]

View file

@ -1,12 +1,8 @@
extends Control
onready var CardList = $PickedCardListScroll/PickedCardList
onready var PlayerList = $PlayerList
var players = {}
var CardUI := preload("res://Scenes/DeckBuilder/UICard.tscn")
var PlayerItem := preload("res://Scenes/Draft/PlayerItem.tscn")
func _ready():
add_card("pr1")
@ -21,8 +17,6 @@ func _ready():
add_card("pr10")
add_card("pr20")
add_card("pr30")
add_player("Player 1", false)
add_player("Bot 1", true)
func add_card(cardID: String):
var card := CardUI.instance()
@ -46,17 +40,8 @@ func _card_unselected():
func _card_picked(cardID: String):
CardList.add_card(cardID)
players["Player 1"].set_picked(true)
$CardZoom.fadeout()
clear_cards()
func add_player(playerName: String, isBot: bool):
var item := PlayerItem.instance()
item.playerName = playerName
item.isBot = isBot
players[playerName] = item
$PlayerList.add_child(item)
item.set_picked(false)
#clear_cards()
const yMargin = 5
const xEdge = 200

View file

@ -30,36 +30,8 @@ func add_card(cardID: String):
item.cardSubname = data.subname
item.showCost = has_cost(data.type)
item.cardCost = data.cost
if data.type == "Problem":
item.color = to_color_ids(data.requirements.keys())
else:
item.color = to_color_ids(data.colors)
var cat := get_card_group(data)
add_to_card_group(cat, item)
func get_card_group(item: CardInfo) -> String:
match item.type:
"Friend":
# Entry if req is 0, friend otherwise
if item.requirements.size() < 1:
return "entry"
return "friend"
"Event":
#TODO some events are entry (color-fixing)
return "event"
"Resource":
#TODO some resources are entry (color-fixing)
return "resource"
"Troublemaker":
return "troublemaker"
"Problem":
return "problem"
"Mane Character":
return "mane"
func add_to_card_group(cat: String, item: Node):
blocks[cat].add_child(item)
labels[cat].visible = true
item.color = to_color_ids(data.colors)
blocks["entry"].add_child(item)
var colorTable = {
"Loyalty": "blue",
@ -73,7 +45,6 @@ var colorTable = {
func to_color_ids(ogcolors: Array) -> String:
var newcol := []
for ogcol in ogcolors:
ogcol = (ogcol as String).trim_prefix("Not ")
if colorTable.has(ogcol):
newcol.push_back(colorTable[ogcol])
match newcol.size():

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/playericons.png-eeeb153289558a7b4ae89e3caa9a0b44.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UIAssets/Draft/playericons.png"
dest_files=[ "res://.import/playericons.png-eeeb153289558a7b4ae89e3caa9a0b44.stex" ]
[params]
compress/mode=1
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=true
flags/anisotropic=true
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View file

@ -19,11 +19,6 @@ _global_script_classes=[ {
"language": "GDScript",
"path": "res://Scenes/Board/Card.gd"
}, {
"base": "Object",
"class": "CardInfo",
"language": "GDScript",
"path": "res://Classes/CardInfo.gd"
}, {
"base": "Reference",
"class": "Resources",
"language": "GDScript",
@ -42,7 +37,6 @@ _global_script_classes=[ {
_global_script_class_icons={
"Board": "",
"Card": "",
"CardInfo": "",
"Resources": "",
"ScatterCard": "",
"Stack": ""
@ -77,7 +71,6 @@ gdscript/warnings/unsafe_call_argument=true
window/size/width=1280
window/size/height=800
window/dpi/allow_hidpi=true
window/stretch/mode="2d"
window/stretch/aspect="expand"