From 46acf8e7ca28ab3d32eb2fe4bd8a38cc1b2fe3b6 Mon Sep 17 00:00:00 2001 From: Ikatono Date: Mon, 15 Apr 2024 20:25:04 -0500 Subject: [PATCH] misc updates, going to start over using controls --- .../tiermaker.metadata.v7.bin | Bin 0 -> 184251 bytes .../tiermaker.projects.v7.bin | Bin 0 -> 102227 bytes .vs/TIERMAKER/DesignTimeBuild/.dtbcache.v2 | Bin 0 -> 82641 bytes ...119fa0ee-0754-40a1-a652-10dfb23fb072.vsidx | Bin 0 -> 9837 bytes .vs/TIERMAKER/v17/.futdcache.v2 | Bin 0 -> 114 bytes .vs/TIERMAKER/v17/.suo | Bin 0 -> 16384 bytes .vs/TIERMAKER/v17/DocumentLayout.json | 37 ++++++++++++ CardShape.cs | 23 ++++++++ CardSprite.cs | 24 ++++++++ Extensions.cs | 55 ++++++++++++++++++ IdLabel.cs | 26 +++++++++ CardCollisionShape2D.cs => Row.cs | 6 +- Sprites/SingleWhitePixel.png | Bin 0 -> 119 bytes Sprites/SingleWhitePixel.png.import | 34 +++++++++++ card.cs | 52 ++++++++++++++++- card.tscn | 37 ++++++++++-- card_theme.tres | 3 + project.godot | 2 +- row.tscn | 7 ++- 19 files changed, 294 insertions(+), 12 deletions(-) create mode 100644 .vs/ProjectEvaluation/tiermaker.metadata.v7.bin create mode 100644 .vs/ProjectEvaluation/tiermaker.projects.v7.bin create mode 100644 .vs/TIERMAKER/DesignTimeBuild/.dtbcache.v2 create mode 100644 .vs/TIERMAKER/FileContentIndex/119fa0ee-0754-40a1-a652-10dfb23fb072.vsidx create mode 100644 .vs/TIERMAKER/v17/.futdcache.v2 create mode 100644 .vs/TIERMAKER/v17/.suo create mode 100644 .vs/TIERMAKER/v17/DocumentLayout.json create mode 100644 CardShape.cs create mode 100644 CardSprite.cs create mode 100644 Extensions.cs create mode 100644 IdLabel.cs rename CardCollisionShape2D.cs => Row.cs (71%) create mode 100644 Sprites/SingleWhitePixel.png create mode 100644 Sprites/SingleWhitePixel.png.import create mode 100644 card_theme.tres diff --git a/.vs/ProjectEvaluation/tiermaker.metadata.v7.bin b/.vs/ProjectEvaluation/tiermaker.metadata.v7.bin new file mode 100644 index 0000000000000000000000000000000000000000..ecbb11afe977fcd0fbeb84f50ed442813682329d GIT binary patch literal 184251 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 literal 0 HcmV?d00001 diff --git a/.vs/ProjectEvaluation/tiermaker.projects.v7.bin b/.vs/ProjectEvaluation/tiermaker.projects.v7.bin new file mode 100644 index 0000000000000000000000000000000000000000..63dc50533c736255c353716d01e8dceed4b9298c GIT binary patch literal 102227 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 KQ7#_06#0Mswb=*& literal 0 HcmV?d00001 diff --git a/.vs/TIERMAKER/DesignTimeBuild/.dtbcache.v2 b/.vs/TIERMAKER/DesignTimeBuild/.dtbcache.v2 new file mode 100644 index 0000000000000000000000000000000000000000..58641351c9bac768a90a89426c16a43562373857 GIT binary patch literal 82641 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.Shape is RectangleShape2D rect) + // Scale = rect.Size; + } + + // Called every frame. 'delta' is the elapsed time since the previous frame. + public override void _Process(double delta) + { + } + + public void UpdateCardSize(Vector2 size) + { + var s = Texture.GetSize(); + Scale = new Vector2(size.X / s.X, size.Y / s.Y); + } +} diff --git a/Extensions.cs b/Extensions.cs new file mode 100644 index 0000000..5f6cc8b --- /dev/null +++ b/Extensions.cs @@ -0,0 +1,55 @@ +using System.Collections.Generic; +using Godot; + +public static class ExtensionHelper +{ + public static Card GetCardWithId(this SceneTree tree, string id) + { + const string CardGroup = "Card"; + var cards = tree.GetNodesInGroup(CardGroup); + foreach (var card in cards) + { + if (card is Card c) + { + if (c.Id == id) + return c; + } + else + throw new System.Exception($"Node in group {CardGroup} is not of type {nameof(Card)}"); + } + return null; + } + public static Row GetRowWithId(this SceneTree tree, string id) + { + const string RowGroup = "Card"; + var rows = tree.GetNodesInGroup(RowGroup); + foreach (var row in rows) + { + if (row is Row r) + { + if (r.Id == id) + return r; + } + else + throw new System.Exception($"Node in group {RowGroup} is not of type {nameof(Row)}"); + } + return null; + } + public static IEnumerable GetAllDescendents(this Node node, bool includeInternal = false) + { + foreach (Node n in node.GetChildren(includeInternal)) + { + yield return n; + foreach (Node c in n.GetAllDescendents()) + yield return c; + } + } + // gets all descendents of a given type (in undefined order) + public static IEnumerable GetAllDescendents(this Node node, + bool includeInternal = false) + { + foreach (var n in node.GetAllDescendents(includeInternal)) + if (n is T t) + yield return t; + } +} diff --git a/IdLabel.cs b/IdLabel.cs new file mode 100644 index 0000000..5b162b1 --- /dev/null +++ b/IdLabel.cs @@ -0,0 +1,26 @@ +using Godot; +using System; + +public partial class IdLabel : Label, IUsesCardId, IUsesCardSize +{ + // Called when the node enters the scene tree for the first time. + public override void _Ready() + { + } + + // Called every frame. 'delta' is the elapsed time since the previous frame. + public override void _Process(double delta) + { + } + public void UpdateCardId(string id) + { + Text = id; + } + //doesn't resize, but realigns + public void UpdateCardSize(Vector2 size) + { + var parentBottomLeft = new Vector2(-size.X, size.Y) / 2; + var thisBottomLeft = new Vector2(0, Size.Y); + Position = parentBottomLeft - thisBottomLeft; + } +} diff --git a/CardCollisionShape2D.cs b/Row.cs similarity index 71% rename from CardCollisionShape2D.cs rename to Row.cs index a466e27..9f0fbb6 100644 --- a/CardCollisionShape2D.cs +++ b/Row.cs @@ -1,13 +1,13 @@ using Godot; using System; -public partial class CardCollisionShape2D : CollisionShape2D +public partial class Row : Area2D { - private Vector2 MouseOffset { get; set; } + [Export] + public string Id { get; set; } // Called when the node enters the scene tree for the first time. public override void _Ready() { - } // Called every frame. 'delta' is the elapsed time since the previous frame. diff --git a/Sprites/SingleWhitePixel.png b/Sprites/SingleWhitePixel.png new file mode 100644 index 0000000000000000000000000000000000000000..818c71d03f435db011069584cda25c1f66af1a85 GIT binary patch literal 119 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx1SBVv2j2s6ii6yp7}lMWc?smOq&xaLGB9lH z=l+w(3gmMZctjR6Fz_7)VaDV6D^h@hJf1F&Arj%qKmPx>XJGxu^l!OoV+&B6!PC{x JWt~$(69DNq9##MV literal 0 HcmV?d00001 diff --git a/Sprites/SingleWhitePixel.png.import b/Sprites/SingleWhitePixel.png.import new file mode 100644 index 0000000..7883fd7 --- /dev/null +++ b/Sprites/SingleWhitePixel.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b8acjd4lvei07" +path="res://.godot/imported/SingleWhitePixel.png-24ae9a98b3e2a24518720903e0c57636.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/SingleWhitePixel.png" +dest_files=["res://.godot/imported/SingleWhitePixel.png-24ae9a98b3e2a24518720903e0c57636.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/card.cs b/card.cs index 63a2fcf..55a47fc 100644 --- a/card.cs +++ b/card.cs @@ -1,23 +1,61 @@ using Godot; using System; +using System.Drawing; -public partial class card : Area2D +public partial class Card : Area2D { private Vector2 MouseOffset { get; set; } + public Vector2 _Size; + [Export] + public Vector2 Size + { + get => _Size; + set + { + _Size = value; + UpdateChildrenSize(value); + } + } + public CollisionShape2D CollisionObject + => GetNode("CollisionShape2D"); + public string _Id; + [Export] + public string Id + { + get => _Id; + set + { + _Id = value; + UpdateChildrenId(value); + } + } + protected void UpdateChildrenId(string id) + { + foreach (var child in this.GetAllDescendents()) + child.UpdateCardId(id); + } + protected void UpdateChildrenSize(Vector2 size) + { + foreach (var child in this.GetAllDescendents()) + child.UpdateCardSize(size); + } + //private Theme CardTheme = GD.Load("res://card_theme.tres"); // Called when the node enters the scene tree for the first time. public override void _Ready() { InputPickable = true; //TODO worry about dragging later, websocket control is more important //InputEvent += MouseClick; + UpdateChildrenId(_Id); } // Called every frame. 'delta' is the elapsed time since the previous frame. public override void _Process(double delta) { + } - private void MouseClick(Node viewport, InputEvent @event, long shapeIdx) + private static void MouseClick(Node viewport, InputEvent @event, long shapeIdx) { if (@event is InputEventMouse mouseEvent) { @@ -32,3 +70,13 @@ public partial class card : Area2D } } } + +public interface IUsesCardId +{ + public void UpdateCardId(string id); +} + +public interface IUsesCardSize +{ + public void UpdateCardSize(Vector2 size); +} \ No newline at end of file diff --git a/card.tscn b/card.tscn index b7b1a78..7b65c40 100644 --- a/card.tscn +++ b/card.tscn @@ -1,10 +1,39 @@ -[gd_scene load_steps=2 format=3 uid="uid://bcmgf041scwb4"] +[gd_scene load_steps=8 format=3 uid="uid://bcmgf041scwb4"] + +[ext_resource type="Script" path="res://Card.cs" id="1_sy5mp"] +[ext_resource type="Texture2D" uid="uid://b8acjd4lvei07" path="res://Sprites/SingleWhitePixel.png" id="2_v2iad"] +[ext_resource type="Script" path="res://CardShape.cs" id="2_w7o1r"] +[ext_resource type="Script" path="res://CardSprite.cs" id="3_0aoyx"] +[ext_resource type="Script" path="res://IdLabel.cs" id="4_0khjp"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_25ape"] +size = Vector2(1, 1) -[node name="Card" type="Area2D"] +[sub_resource type="LabelSettings" id="LabelSettings_vre1j"] +outline_size = 1 +outline_color = Color(0, 0, 0, 1) -[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +[node name="Card" type="Area2D" groups=["Card"]] +script = ExtResource("1_sy5mp") +Size = Vector2(150, 150) + +[node name="CardShape" type="CollisionShape2D" parent="."] shape = SubResource("RectangleShape2D_25ape") +script = ExtResource("2_w7o1r") -[node name="Sprite2D" type="Sprite2D" parent="."] +[node name="IdLabel" type="Label" parent="CardShape"] +anchors_preset = 2 +anchor_top = 1.0 +anchor_bottom = 1.0 +offset_top = -23.0 +offset_right = 40.0 +grow_vertical = 0 +text = "A1" +label_settings = SubResource("LabelSettings_vre1j") +vertical_alignment = 2 +script = ExtResource("4_0khjp") + +[node name="CardSprite" type="Sprite2D" parent="CardShape"] +modulate = Color(0.721569, 0, 0.572549, 1) +texture = ExtResource("2_v2iad") +script = ExtResource("3_0aoyx") diff --git a/card_theme.tres b/card_theme.tres new file mode 100644 index 0000000..c99018e --- /dev/null +++ b/card_theme.tres @@ -0,0 +1,3 @@ +[gd_resource type="Theme" format=3 uid="uid://dhyp0ou15akxv"] + +[resource] diff --git a/project.godot b/project.godot index 179ddc9..f93d20d 100644 --- a/project.godot +++ b/project.godot @@ -11,7 +11,7 @@ config_version=5 [application] config/name="TierMaker" -config/features=PackedStringArray("4.2", "Forward Plus") +config/features=PackedStringArray("4.2", "C#", "Forward Plus") config/icon="res://icon.svg" [dotnet] diff --git a/row.tscn b/row.tscn index c7fdf57..4662aee 100644 --- a/row.tscn +++ b/row.tscn @@ -1,8 +1,11 @@ -[gd_scene load_steps=2 format=3 uid="uid://d4j824viqwho2"] +[gd_scene load_steps=3 format=3 uid="uid://d4j824viqwho2"] + +[ext_resource type="Script" path="res://Row.cs" id="1_lr7oy"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_n14fa"] -[node name="Row" type="Area2D"] +[node name="Row" type="Area2D" groups=["Row"]] +script = ExtResource("1_lr7oy") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource("RectangleShape2D_n14fa")