From 2f21d0cbdac43064e9456317f00bf0b0533b9977 Mon Sep 17 00:00:00 2001 From: Scratch-hv | Oeil-de-Lynx <104771596+OeildeLynx31@users.noreply.github.com> Date: Tue, 16 Apr 2024 17:47:32 +0000 Subject: [PATCH 01/16] Add more keyboard detection blocks --- src/lib/Toolbox/Toolbox.xml | 5 +- src/resources/blocks/events.js | 84 +++++++++++++++++++++++++++++++++ src/resources/blocks/player.js | 9 ++-- src/resources/blocks/sensing.js | 73 ++++++++++++++++++++++++++++ src/resources/compiler/index.js | 7 ++- 5 files changed, 172 insertions(+), 6 deletions(-) diff --git a/src/lib/Toolbox/Toolbox.xml b/src/lib/Toolbox/Toolbox.xml index df7eb09..c087fb8 100644 --- a/src/lib/Toolbox/Toolbox.xml +++ b/src/lib/Toolbox/Toolbox.xml @@ -3,6 +3,8 @@ + + @@ -43,6 +45,7 @@ + @@ -160,7 +163,7 @@ - + diff --git a/src/resources/blocks/events.js b/src/resources/blocks/events.js index bb8c529..39466e1 100644 --- a/src/resources/blocks/events.js +++ b/src/resources/blocks/events.js @@ -171,6 +171,90 @@ function register() { const code = `setTimeout(async () => { ${BLOCKS} }, (${TIME} * 1000));`; return `${code}\n`; }) + + registerBlock(`${categoryPrefix}whenkeypressed`, { + message0: 'when %1 key is pressed %2 %3', + args0: [ + { + "type": "field_dropdown", + "name": "KEY", + "options": keyBoard + }, + { + "type": "input_dummy" + }, + { + "type": "input_statement", + "name": "BLOCKS" + } + ], + nextStatement: null, + inputsInline: true, + colour: categoryColor, + }, (block) => { + const KEY = block.getFieldValue('KEY') + const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); + const code = `document.addEventListener("keypress", event => { + ${KEY===""?`${BLOCKS}`:`if (event.key == '${KEY}') { ${BLOCKS}}`}});`; + return `${code}\n`; + }) } +const keyBoard = [ + ["ANY", ""], + ["SPACE", "32"], + ["UP ARROW", "38"], + ["DOWN ARROW", "40"], + ["LEFT ARROW", "37"], + ["RIGHT ARROW", "39"], + ["A", "65"], + ["B", "66"], + ["C", "67"], + ["D", "68"], + ["E", "69"], + ["F", "70"], + ["G", "71"], + ["H", "72"], + ["I", "73"], + ["J", "74"], + ["K", "75"], + ["L", "76"], + ["M", "77"], + ["N", "78"], + ["O", "79"], + ["P", "80"], + ["Q", "81"], + ["R", "82"], + ["S", "83"], + ["T", "84"], + ["U", "85"], + ["V", "86"], + ["W", "87"], + ["X", "88"], + ["Y", "89"], + ["Z", "90"], + ["0", "48"], + ["1", "49"], + ["2", "50"], + ["3", "51"], + ["4", "52"], + ["5", "53"], + ["6", "54"], + ["7", "55"], + ["8", "56"], + ["9", "57"], + ["F1", "112"], + ["F2", "113"], + ["F3", "114"], + ["F4", "115"], + ["F5", "116"], + ["F6", "117"], + ["F7", "118"], + ["F8", "119"], + ["F9", "120"], + ["F10", "121"], + ["F11", "122"], + ["F12", "123"], +]; + export default register; diff --git a/src/resources/blocks/player.js b/src/resources/blocks/player.js index 622f1f3..c319c32 100644 --- a/src/resources/blocks/player.js +++ b/src/resources/blocks/player.js @@ -76,6 +76,7 @@ function register() { const MENU2 = block.getFieldValue('MENU2'); return [`ModAPI.player?ModAPI.player.dimension===${MENU2}:""`, javascriptGenerator.ORDER_ATOMIC]; }) + registerBlock(`${categoryPrefix}username`, { message0: 'username', args0: [], @@ -86,7 +87,7 @@ function register() { return [`ModAPI.getProfileName()`, javascriptGenerator.ORDER_ATOMIC]; }) - registerBlock(`${categoryPrefix}keypressed`, { + registerBlock(`${categoryPrefix}whengamekeypressed`, { message0: 'when in game key %1 pressed do %2 %3', args0: [ { @@ -116,9 +117,9 @@ function register() { const keyBoard = [ ["SPACE", "57"], ["UP ARROW", "200"], - ["UP DOWN", "208"], - ["UP LEFT", "203"], - ["UP RIGHT", "205"], + ["DOWN ARROW", "208"], + ["LEFT ARROW", "203"], + ["RIGHT ARROW", "205"], ["A", "30"], ["B", "48"], ["C", "46"], diff --git a/src/resources/blocks/sensing.js b/src/resources/blocks/sensing.js index f6fc90d..54a8937 100644 --- a/src/resources/blocks/sensing.js +++ b/src/resources/blocks/sensing.js @@ -133,8 +133,81 @@ function register() { }, (block) => { return [`ModAPI.getFPS()`, javascriptGenerator.ORDER_ATOMIC]; }) + + registerBlock(`${categoryPrefix}keypressed`, { + message0: "is key %1 pressed?", + args0: [ + { + "type": "field_dropdown", + "name": "KEY2", + "options": keyBoard + }, + ], + output: "Boolean", + inputsInline: true, + colour: categoryColor + }, (block) => { + const KEY2 = block.getFieldValue('KEY2'); + return [`pressedKeys[${KEY2}]===true?true:false`, javascriptGenerator.ORDER_ATOMIC]; + }) } +const keyBoard = [ + ["SPACE", "32"], + ["UP ARROW", "38"], + ["DOWN ARROW", "40"], + ["LEFT ARROW", "37"], + ["RIGHT ARROW", "39"], + ["A", "65"], + ["B", "66"], + ["C", "67"], + ["D", "68"], + ["E", "69"], + ["F", "70"], + ["G", "71"], + ["H", "72"], + ["I", "73"], + ["J", "74"], + ["K", "75"], + ["L", "76"], + ["M", "77"], + ["N", "78"], + ["O", "79"], + ["P", "80"], + ["Q", "81"], + ["R", "82"], + ["S", "83"], + ["T", "84"], + ["U", "85"], + ["V", "86"], + ["W", "87"], + ["X", "88"], + ["Y", "89"], + ["Z", "90"], + ["0", "48"], + ["1", "49"], + ["2", "50"], + ["3", "51"], + ["4", "52"], + ["5", "53"], + ["6", "54"], + ["7", "55"], + ["8", "56"], + ["9", "57"], + ["F1", "112"], + ["F2", "113"], + ["F3", "114"], + ["F4", "115"], + ["F5", "116"], + ["F6", "117"], + ["F7", "118"], + ["F8", "119"], + ["F9", "120"], + ["F10", "121"], + ["F11", "122"], + ["F12", "123"], +]; + Blockly.Extensions.register('single_character_validation', function() { this.getField('KEY').setValidator(function(newValue) { return newValue.substring(Math.max(newValue.length - 1, 0),newValue.length); diff --git a/src/resources/compiler/index.js b/src/resources/compiler/index.js index 3fea8c3..01c32bd 100644 --- a/src/resources/compiler/index.js +++ b/src/resources/compiler/index.js @@ -14,9 +14,14 @@ class Compiler { if (code.indexOf('ModAPI.player') > -1) { start+= "ModAPI.require('player');"; } - if (code.indexOf('variables["') > -1) { + if (code.indexOf('variables[') > -1) { start+= 'let variables = [];'; } + if (code.indexOf('pressedKeys[') > -1) { + start+= `var pressedKeys = {}; + window.onkeyup = function(e) { pressedKeys[e.keyCode] = false; } + window.onkeydown = function(e) { pressedKeys[e.keyCode] = true; }`; + } if (code.indexOf('function onload() {') > -1) { start+= 'onload();'; } From cd9dea83d3f34ecc538cc6aac06d76df629cba74 Mon Sep 17 00:00:00 2001 From: Scratch-hv | Oeil-de-Lynx <104771596+OeildeLynx31@users.noreply.github.com> Date: Wed, 17 Apr 2024 13:26:10 +0000 Subject: [PATCH 02/16] Add while and until loop blocks in control category And add a string input by default in display chat block --- src/lib/Toolbox/Toolbox.xml | 10 +++++- src/resources/blocks/control.js | 54 +++++++++++++++++++++++++++++++++ src/routes/+page.svelte | 4 +-- 3 files changed, 65 insertions(+), 3 deletions(-) diff --git a/src/lib/Toolbox/Toolbox.xml b/src/lib/Toolbox/Toolbox.xml index c087fb8..58dcb46 100644 --- a/src/lib/Toolbox/Toolbox.xml +++ b/src/lib/Toolbox/Toolbox.xml @@ -18,6 +18,8 @@ + + @@ -166,7 +168,13 @@ - + + + + hello world! + + + diff --git a/src/resources/blocks/control.js b/src/resources/blocks/control.js index 37c9eb4..cd05208 100644 --- a/src/resources/blocks/control.js +++ b/src/resources/blocks/control.js @@ -75,6 +75,60 @@ function register() { return `${code}\n`; }) + registerBlock(`${categoryPrefix}while`, { + message0: 'while %1 do %2 %3', + args0: [ + { + "type": "input_value", + "name": "CONDITION", + "check": "Boolean" + }, + { + "type": "input_dummy" + }, + { + "type": "input_statement", + "name": "BLOCKS" + } + ], + previousStatement: null, + nextStatement: null, + inputsInline: true, + colour: categoryColor + }, (block) => { + const CONDITION = javascriptGenerator.valueToCode(block, 'CONDITION', javascriptGenerator.ORDER_ATOMIC); + const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); + const code = `do { ${BLOCKS} } while (${CONDITION})`; + return `${code}\n`; + }) + + registerBlock(`${categoryPrefix}until`, { + message0: 'until %1 do %2 %3', + args0: [ + { + "type": "input_value", + "name": "CONDITION", + "check": "Boolean" + }, + { + "type": "input_dummy" + }, + { + "type": "input_statement", + "name": "BLOCKS" + } + ], + previousStatement: null, + nextStatement: null, + inputsInline: true, + colour: categoryColor + }, (block) => { + const CONDITION = javascriptGenerator.valueToCode(block, 'CONDITION', javascriptGenerator.ORDER_ATOMIC); + const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); + const code = `do { ${BLOCKS} } while (!(${CONDITION}))`; + return `${code}\n`; + }) + // if <> then {} registerBlock(`${categoryPrefix}ifthen`, { message0: 'if %1 then %2 %3', diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index c6831f1..17bd50a 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -86,8 +86,8 @@ registerBlocks(); registerFunctions(); registerDebug(); - registerPlayer() - registerDisplay() + registerPlayer(); + registerDisplay(); const EaglerCraftVersion = "1.3"; From 912e54780561e35e51beba2b627b3a09794670ef Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 17:37:02 +0330 Subject: [PATCH 03/16] Update Toolbox.xml --- src/lib/Toolbox/Toolbox.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/lib/Toolbox/Toolbox.xml b/src/lib/Toolbox/Toolbox.xml index df7eb09..afa8d07 100644 --- a/src/lib/Toolbox/Toolbox.xml +++ b/src/lib/Toolbox/Toolbox.xml @@ -30,10 +30,8 @@ - From 8fb3e9783ff1f819874931d4253e5caafa07fb99 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 17:37:18 +0330 Subject: [PATCH 04/16] Update sensing.js --- src/resources/blocks/sensing.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/resources/blocks/sensing.js b/src/resources/blocks/sensing.js index f6fc90d..ed6afec 100644 --- a/src/resources/blocks/sensing.js +++ b/src/resources/blocks/sensing.js @@ -6,9 +6,8 @@ const categoryPrefix = 'sensing_'; const categoryColor = '#5CB1D6'; function register() { - // when key pressed - registerBlock(`${categoryPrefix}keypress`, { - message0: 'when key %1 is pressed %2 %3', + registerBlock(`${categoryPrefix}keydown`, { + message0: 'when key %1 is down %2 %3', args0: [ { "type": "field_input", @@ -32,7 +31,7 @@ function register() { }, (block) => { const KEY = block.getFieldValue('KEY') const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); - const code = `document.addEventListener("keypress", event => { + const code = `window.addEventListener("keydown", event => { if (event.key == '${KEY}') { ${BLOCKS} } });`; return `${code}\n`; From 1b38081a928478a0353fdbfe02f5b29d5a0e7d93 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 17:49:56 +0330 Subject: [PATCH 05/16] Update display.js --- src/resources/blocks/display.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/resources/blocks/display.js b/src/resources/blocks/display.js index ab7354d..3a40c68 100644 --- a/src/resources/blocks/display.js +++ b/src/resources/blocks/display.js @@ -3,7 +3,7 @@ import registerBlock from '../register'; const categoryPrefix = 'display_'; const categoryColor = '#f73030'; - + function register() { registerBlock(`${categoryPrefix}displaychattext`, { message0: 'display %1 in chat', From 10e2e589ce7c3a1dc70675a05c9c2a42c8d53b0d Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 17:52:55 +0330 Subject: [PATCH 06/16] Update package.json --- package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 674280a..0dd7980 100644 --- a/package.json +++ b/package.json @@ -16,10 +16,10 @@ }, "type": "module", "dependencies": { - "@blockly/continuous-toolbox": "^5.0.2", - "@blockly/theme-dark": "^6.0.1", - "@blockly/field-colour-hsv-sliders": "^4.1.6", - "@blockly/workspace-minimap": "^0.1.5", + "@blockly/continuous-toolbox", + "@blockly/theme-dark"", + "@blockly/field-colour-hsv-sliders", + "@blockly/workspace-minimap", "@sveltejs/adapter-vercel": "^3.0.2", "file-saver": "^2.0.5", "js-beautify": "^1.14.9", From 576ff081bc8f65519c083160732220932e7a0f49 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 17:58:37 +0330 Subject: [PATCH 07/16] Update package.json --- package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 0dd7980..674280a 100644 --- a/package.json +++ b/package.json @@ -16,10 +16,10 @@ }, "type": "module", "dependencies": { - "@blockly/continuous-toolbox", - "@blockly/theme-dark"", - "@blockly/field-colour-hsv-sliders", - "@blockly/workspace-minimap", + "@blockly/continuous-toolbox": "^5.0.2", + "@blockly/theme-dark": "^6.0.1", + "@blockly/field-colour-hsv-sliders": "^4.1.6", + "@blockly/workspace-minimap": "^0.1.5", "@sveltejs/adapter-vercel": "^3.0.2", "file-saver": "^2.0.5", "js-beautify": "^1.14.9", From 33f6b61f8d0c1297734735ab9982e185e65f0c75 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 17:58:58 +0330 Subject: [PATCH 08/16] Update package.json --- package.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/package.json b/package.json index 674280a..76e095e 100644 --- a/package.json +++ b/package.json @@ -16,10 +16,7 @@ }, "type": "module", "dependencies": { - "@blockly/continuous-toolbox": "^5.0.2", - "@blockly/theme-dark": "^6.0.1", - "@blockly/field-colour-hsv-sliders": "^4.1.6", - "@blockly/workspace-minimap": "^0.1.5", + "blockly", "@sveltejs/adapter-vercel": "^3.0.2", "file-saver": "^2.0.5", "js-beautify": "^1.14.9", From 9a3f31871eb1ca958eba04376d8e825fb22e5c77 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 18:00:02 +0330 Subject: [PATCH 09/16] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 76e095e..e5513f2 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ }, "type": "module", "dependencies": { - "blockly", + "blockly": "10.4.3", "@sveltejs/adapter-vercel": "^3.0.2", "file-saver": "^2.0.5", "js-beautify": "^1.14.9", From 79cc06429747b92deee3f6a094670ccee4252e1d Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 18:05:22 +0330 Subject: [PATCH 10/16] Update package.json --- package.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index e5513f2..674280a 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,10 @@ }, "type": "module", "dependencies": { - "blockly": "10.4.3", + "@blockly/continuous-toolbox": "^5.0.2", + "@blockly/theme-dark": "^6.0.1", + "@blockly/field-colour-hsv-sliders": "^4.1.6", + "@blockly/workspace-minimap": "^0.1.5", "@sveltejs/adapter-vercel": "^3.0.2", "file-saver": "^2.0.5", "js-beautify": "^1.14.9", From d0a252739ce90f8fd85a2e143467cb4e379cd236 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 18:41:20 +0330 Subject: [PATCH 11/16] Update sensing.js --- src/resources/blocks/sensing.js | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/src/resources/blocks/sensing.js b/src/resources/blocks/sensing.js index ed6afec..73302a1 100644 --- a/src/resources/blocks/sensing.js +++ b/src/resources/blocks/sensing.js @@ -6,37 +6,6 @@ const categoryPrefix = 'sensing_'; const categoryColor = '#5CB1D6'; function register() { - registerBlock(`${categoryPrefix}keydown`, { - message0: 'when key %1 is down %2 %3', - args0: [ - { - "type": "field_input", - "name": "KEY", - "spellcheck": false - }, - { - "type": "input_dummy" - }, - { - "type": "input_statement", - "name": "BLOCKS" - } - ], - nextStatement: null, - inputsInline: true, - colour: categoryColor, - extensions: [ - 'single_character_validation', - ], - }, (block) => { - const KEY = block.getFieldValue('KEY') - const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); - const code = `window.addEventListener("keydown", event => { - if (event.key == '${KEY}') { ${BLOCKS} } - });`; - return `${code}\n`; - }) - // alert registerBlock(`${categoryPrefix}alert`, { message0: 'alert %1', From 0e2ba3074d0823043b1758b56c6d69a698990d95 Mon Sep 17 00:00:00 2001 From: radmanplays <95340057+radmanplays@users.noreply.github.com> Date: Wed, 17 Apr 2024 18:57:08 +0330 Subject: [PATCH 12/16] Update events.js --- src/resources/blocks/events.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/resources/blocks/events.js b/src/resources/blocks/events.js index 39466e1..0fe0cd1 100644 --- a/src/resources/blocks/events.js +++ b/src/resources/blocks/events.js @@ -173,7 +173,7 @@ function register() { }) registerBlock(`${categoryPrefix}whenkeypressed`, { - message0: 'when %1 key is pressed %2 %3', + message0: 'when %1 key is down %2 %3', args0: [ { "type": "field_dropdown", @@ -194,7 +194,7 @@ function register() { }, (block) => { const KEY = block.getFieldValue('KEY') const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); - const code = `document.addEventListener("keypress", event => { + const code = `window.addEventListener("keydown", event => { ${KEY===""?`${BLOCKS}`:`if (event.key == '${KEY}') { ${BLOCKS}}`}});`; return `${code}\n`; }) From 2e552aedbb072dd8aa18afe84d1eddb6790fd0d9 Mon Sep 17 00:00:00 2001 From: radmanplays Date: Wed, 17 Apr 2024 19:06:42 +0330 Subject: [PATCH 13/16] Revert "Update Toolbox.xml" This reverts commit 912e54780561e35e51beba2b627b3a09794670ef. --- src/lib/Toolbox/Toolbox.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/Toolbox/Toolbox.xml b/src/lib/Toolbox/Toolbox.xml index 0af87f8..58dcb46 100644 --- a/src/lib/Toolbox/Toolbox.xml +++ b/src/lib/Toolbox/Toolbox.xml @@ -34,8 +34,10 @@ - + From 7456384e8e57293ac38a173aa0ce664646807b84 Mon Sep 17 00:00:00 2001 From: radmanplays Date: Wed, 17 Apr 2024 19:07:51 +0330 Subject: [PATCH 14/16] Update sensing.js --- src/resources/blocks/sensing.js | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/src/resources/blocks/sensing.js b/src/resources/blocks/sensing.js index 66cd0c9..54a8937 100644 --- a/src/resources/blocks/sensing.js +++ b/src/resources/blocks/sensing.js @@ -6,6 +6,38 @@ const categoryPrefix = 'sensing_'; const categoryColor = '#5CB1D6'; function register() { + // when key pressed + registerBlock(`${categoryPrefix}keypress`, { + message0: 'when key %1 is pressed %2 %3', + args0: [ + { + "type": "field_input", + "name": "KEY", + "spellcheck": false + }, + { + "type": "input_dummy" + }, + { + "type": "input_statement", + "name": "BLOCKS" + } + ], + nextStatement: null, + inputsInline: true, + colour: categoryColor, + extensions: [ + 'single_character_validation', + ], + }, (block) => { + const KEY = block.getFieldValue('KEY') + const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); + const code = `document.addEventListener("keypress", event => { + if (event.key == '${KEY}') { ${BLOCKS} } + });`; + return `${code}\n`; + }) + // alert registerBlock(`${categoryPrefix}alert`, { message0: 'alert %1', From 4a85e06861f3f66303770b22a15473f5f1225a9f Mon Sep 17 00:00:00 2001 From: radmanplays Date: Wed, 17 Apr 2024 19:07:58 +0330 Subject: [PATCH 15/16] Revert "Update display.js" This reverts commit 1b38081a928478a0353fdbfe02f5b29d5a0e7d93. --- src/resources/blocks/display.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/resources/blocks/display.js b/src/resources/blocks/display.js index 3a40c68..ab7354d 100644 --- a/src/resources/blocks/display.js +++ b/src/resources/blocks/display.js @@ -3,7 +3,7 @@ import registerBlock from '../register'; const categoryPrefix = 'display_'; const categoryColor = '#f73030'; - + function register() { registerBlock(`${categoryPrefix}displaychattext`, { message0: 'display %1 in chat', From 787ac6a2a774da71eb3b02d7b30d4275aefc6e93 Mon Sep 17 00:00:00 2001 From: Scratch-hv | Oeil-de-Lynx <104771596+OeildeLynx31@users.noreply.github.com> Date: Wed, 17 Apr 2024 19:42:22 +0200 Subject: [PATCH 16/16] Replace event.key by event.keyCode following advice from EchoGPT, which is a good AI. --- src/resources/blocks/events.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/resources/blocks/events.js b/src/resources/blocks/events.js index 0fe0cd1..3222db9 100644 --- a/src/resources/blocks/events.js +++ b/src/resources/blocks/events.js @@ -195,7 +195,7 @@ function register() { const KEY = block.getFieldValue('KEY') const BLOCKS = javascriptGenerator.statementToCode(block, 'BLOCKS'); const code = `window.addEventListener("keydown", event => { - ${KEY===""?`${BLOCKS}`:`if (event.key == '${KEY}') { ${BLOCKS}}`}});`; + ${KEY===""?`${BLOCKS}`:`if (event.keyCode == '${KEY}') { ${BLOCKS}}`}});`; return `${code}\n`; }) }