From 6edae6dadb634ed558240e413153bb7569d7ee3c Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Sun, 26 Apr 2026 12:28:24 -0700
Subject: [PATCH] Added a dialog explaining kid mode
---
Data/UI/kidmode.xml | 29 +++++++++++++++++++++++++++++
game/Maelstrom_Globals.h | 2 +-
game/main.cpp | 7 +++++++
3 files changed, 37 insertions(+), 1 deletion(-)
create mode 100644 Data/UI/kidmode.xml
diff --git a/Data/UI/kidmode.xml b/Data/UI/kidmode.xml
new file mode 100644
index 00000000..8af747a0
--- /dev/null
+++ b/Data/UI/kidmode.xml
@@ -0,0 +1,29 @@
+<Dialog>
+ <Size w="310" h="176"/>
+ <Anchor anchorFrom="TOPLEFT" anchorTo="TOPLEFT" x="164" y="77"/>
+ <Elements>
+ <Icon name="icon" id="103">
+ <Anchor anchorFrom="TOPLEFT" anchorTo="TOPLEFT" x="19" y="19"/>
+ </Icon>
+ <DialogLabel name="line1" text="Kid mode enabled!">
+ <Anchor anchorFrom="TOPLEFT" anchorTo="TOPRIGHT" anchor="icon" x="25"/>
+ </DialogLabel>
+ <DialogLabel name="line2" text="Reverse thrusters and automatic">
+ <Anchor anchorFrom="TOPLEFT" anchorTo="BOTTOMLEFT" anchor="icon" y="12" x="25"/>
+ </DialogLabel>
+ <DialogLabel name="line3" text="shield defense system are active.">
+ <Anchor anchorFrom="TOPLEFT" anchorTo="BOTTOMLEFT" anchor="line2" y="2"/>
+ </DialogLabel>
+ <DialogLabel name="line4" text="This disqualifies you from a high">
+ <Anchor anchorFrom="TOPLEFT" anchorTo="BOTTOMLEFT" anchor="line3" y="8"/>
+ </DialogLabel>
+ <DialogLabel name="line5" text="score...">
+ <Anchor anchorFrom="TOPLEFT" anchorTo="BOTTOMLEFT" anchor="line4" y="2"/>
+ </DialogLabel>
+
+ <DialogButton text="OK" default="true">
+ <Size w="90"/>
+ <Anchor anchorFrom="TOPLEFT" anchorTo="TOPLEFT" x="210" y="150"/>
+ </DialogButton>
+ </Elements>
+</Dialog>
diff --git a/game/Maelstrom_Globals.h b/game/Maelstrom_Globals.h
index a5e3dd41..764e7954 100644
--- a/game/Maelstrom_Globals.h
+++ b/game/Maelstrom_Globals.h
@@ -175,7 +175,7 @@ extern int gNumSprites;
#define DIALOG_ZAP "zap"
#define DIALOG_DAWN "dawn"
#define DIALOG_CHEAT "cheat"
-#define DIALOG_FEATURE "feature"
+#define DIALOG_KIDMODE "kidmode"
#define DIALOG_MESSAGE "message"
// Sound resource definitions...
diff --git a/game/main.cpp b/game/main.cpp
index 97b01041..614dd343 100644
--- a/game/main.cpp
+++ b/game/main.cpp
@@ -532,6 +532,13 @@ MainPanelDelegate::OnActionToggleKidMode(UIBaseElement *sender)
}
checkbox->SaveData(prefs);
+
+ if (checkbox->IsChecked()) {
+ UIDialog *dialog = ui->GetPanel<UIDialog>(DIALOG_KIDMODE);
+ if (dialog) {
+ ui->ShowPanel(dialog);
+ }
+ }
}
void