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]; }) }