summaryrefslogtreecommitdiff
path: root/scripts/GUI/Message.cs
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/GUI/Message.cs')
-rw-r--r--scripts/GUI/Message.cs32
1 files changed, 32 insertions, 0 deletions
diff --git a/scripts/GUI/Message.cs b/scripts/GUI/Message.cs
new file mode 100644
index 0000000..b0472ee
--- /dev/null
+++ b/scripts/GUI/Message.cs
@@ -0,0 +1,32 @@
+using Godot;
+
+public partial class Message : Label
+{
+ private static LabelSettings baseSettings = GD.Load<LabelSettings>("res://assets/definitions/message_label_settings.tres");
+ private string plainText;
+ public string PlainText { get => plainText; }
+ private int count = 1;
+ public int Count {
+ get => count;
+ set {
+ count = value;
+ Text = FullText;
+ }
+ }
+
+ public string FullText {
+ get {
+ if (count > 1) {
+ return $"{plainText} ({count})";
+ }
+ return plainText;
+ }
+ }
+
+ public Message(string text) {
+ plainText = text;
+ Text = text;
+ LabelSettings = (LabelSettings) baseSettings.Duplicate();
+ AutowrapMode = TextServer.AutowrapMode.WordSmart;
+ }
+}