напиши расширение для turbowarp которая добовляет ...
Created on: May 9, 2025
Created on: May 9, 2025
напиши расширение для turbowarp которая добовляет новые блоки которые способны перевести двоичный код без пробелов в буквы
Ниже готовый минимальный JavaScript-файл расширения для TurboWarp.
Он добавляет репорт-блок «двоичный [BIN] → текст», который принимает строку из «0» и «1» (без пробелов) и возвращает расшифрованный текст.
javascript/* Binary-to-Text Extension for TurboWarp Автор: ChatGPT • 2025-05-09 */ (() => { // TurboWarp передаёт объект Scratch в качестве аргумента, // но в self-invoking функции он уже в глобальной области. const Scratch = window.Scratch; class BinaryToolsExtension { getInfo () { return { id: 'binaryTools', name: 'Бинарные инструменты', color1: '#4C97FF', color2: '#3373CC', blocks: [ { opcode: 'binToText', blockType: Scratch.BlockType.REPORTER, text: 'двоичный [BIN] → текст', arguments: { BIN: { type: Scratch.ArgumentType.STRING, defaultValue: '01001000011001010110110001101100' } } } ] }; } /** * Преобразует двоичную строку (без пробелов) в обычный текст. * Возвращает сообщение об ошибке, если длина не кратна 8 * или встречены символы отличные от 0/1. */ binToText ({ BIN }) { const cleaned = String(BIN).replace(/\s+/g, ''); if (!/^[01]+$/.test(cleaned)) { return 'только 0 и 1'; } if (cleaned.length % 8 !== 0) { return 'длина не кратна 8'; } let result = ''; for (let i = 0; i < cleaned.length; i += 8) { const byte = cleaned.substr(i, 8); result += String.fromCharCode(parseInt(byte, 2)); } return result; } } // Регистрируем расширение Scratch.extensions.register(new BinaryToolsExtension()); })();
Теперь можно передавать блоку строку вида
0100100001100101011011000110110001101111
и получать результат Hello. Удачного кодинга!