From 54d221ff10686e667dddc5f0c8b94b5b362001d2 Mon Sep 17 00:00:00 2001 From: bruh-9000 Date: Thu, 14 Mar 2024 18:01:35 -0700 Subject: [PATCH] Make custom join block --- src/blocks/text.js | 22 +++++++++++++++++++++- src/generators/javascript.js | 9 +++++++++ src/toolbox.js | 2 +- 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/blocks/text.js b/src/blocks/text.js index b23b752..748f9f2 100644 --- a/src/blocks/text.js +++ b/src/blocks/text.js @@ -922,6 +922,26 @@ const getPlayerSelectedUnit = { "helpUrl": "" }; +const join = { + "type": "join", + "message0": "join %1 %2", + "args0": [ + { + "type": "input_value", + "name": "text1" + }, + { + "type": "input_value", + "name": "text2" + } + ], + "inputsInline": true, + "output": null, + "colour": 160, + "tooltip": "", + "helpUrl": "" +}; + // Colors per category // 65 for unit // 120 for trigger @@ -940,4 +960,4 @@ export const blocks = Blockly.common.createBlockDefinitionsFromJsonArray( unitStartsUsingAnItem, unitAttributeBecomesZero, unitUsesItem, unitTouchesWall, playerSendsChatMessage, destroyEntity, lastCreatedUnit, playerCameraTrackUnit, createUnitAtPosition, playerJoinsGame, playerLeavesGame, getPlayerName, str2num, num2str, sendChatMessageToPlayer, break1, continue1, decreaseVariableByNumber, increaseVariableByNumber, setVariable, triggeringItem, triggeringRegion, triggeringProjectile, repeat, while1, kickPlayer, comment, dropAllItems, centerOfRegion, getEntireMapRegion, getEntityPosition, itemTypeOfItem, projectileTypeOfProjectile, - setPlayerName, setUnitNameLabel, getPlayerSelectedUnit]); \ No newline at end of file + setPlayerName, setUnitNameLabel, getPlayerSelectedUnit, join]); \ No newline at end of file diff --git a/src/generators/javascript.js b/src/generators/javascript.js index f2ffb1f..0011e6d 100644 --- a/src/generators/javascript.js +++ b/src/generators/javascript.js @@ -494,4 +494,13 @@ forBlock['getplayerselectedunit'] = function (block, generator) { // Generate the function call for this block. const code = `getPlayerSelectedUnit(${player})`; return [code, generator.ORDER_NONE]; +}; + +forBlock['join'] = function (block, generator) { + const text1 = generator.valueToCode(block, 'text1', Order.NONE) || "''"; + const text2 = generator.valueToCode(block, 'text2', Order.NONE) || "''"; + + // Generate the function call for this block. + const code = `${text1} + ${text2}`; + return [code, generator.ORDER_NONE]; }; \ No newline at end of file diff --git a/src/toolbox.js b/src/toolbox.js index 4558c1d..f18b3b6 100644 --- a/src/toolbox.js +++ b/src/toolbox.js @@ -193,7 +193,7 @@ export const toolbox = { }, { 'kind': 'block', - 'type': 'text_join', + 'type': 'join', }, { 'kind': 'block',