From 829a5a2d6a6470d6a5d8fab1fa8a7aeb8ff663a5 Mon Sep 17 00:00:00 2001
From: Scratch-hv | Oeil-de-Lynx
<104771596+OeildeLynx31@users.noreply.github.com>
Date: Thu, 25 Apr 2024 15:05:10 +0000
Subject: [PATCH] Fix double username block and add current screen id&name
options
---
src/lib/Toolbox/Toolbox.xml | 2 --
src/resources/blocks/interface.js | 20 +++++++++++++++++---
2 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/src/lib/Toolbox/Toolbox.xml b/src/lib/Toolbox/Toolbox.xml
index f62c5db..69baa72 100644
--- a/src/lib/Toolbox/Toolbox.xml
+++ b/src/lib/Toolbox/Toolbox.xml
@@ -165,8 +165,6 @@
-
-
diff --git a/src/resources/blocks/interface.js b/src/resources/blocks/interface.js
index c2fb72b..a349a51 100644
--- a/src/resources/blocks/interface.js
+++ b/src/resources/blocks/interface.js
@@ -75,13 +75,27 @@ function register() {
}
registerBlock(`${categoryPrefix}currentscreen`, {
- message0: 'current screen name',
- args0: [],
+ message0: 'current screen %1',
+ args0: [{
+ "type": "field_dropdown",
+ "name": "MENU",
+ "options": [
+ [ "name", "name" ],
+ [ "ID", "ID" ],
+ ]
+ }],
output: "String",
inputsInline: true,
colour: categoryColor
}, (block) => {
- return [`ModAPI.currentScreen()`, javascriptGenerator.ORDER_ATOMIC];
+ const MENU = block.getFieldValue('MENU');
+ let code = "";
+ if (MENU === "ID") {
+ code = `ModAPI.currentScreen()`
+ } else if (MENU === "name") {
+ code = `ModAPI.currentScreen().substring(ModAPI.currentScreen().lastIndexOf(".")+1, ModAPI.currentScreen().lastIndexOf("@"))`
+ }
+ return [code, javascriptGenerator.ORDER_ATOMIC];
})
}