—————————————
Что нового?:
+ Кастомный акцент
+ Новогодний режим
+ Новые спрайты:
- control stick
- button
+ Новые костюмы
+ Исправления багов
+ Другие изменения
===================
https://dashblocks.github.io/
===================
Dash
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥2👍1
—————————————
В Dash, с появления расширения Maps, существуют пользовательские типы. Эта фича была взята и реализована из PenguinMod'а
—————————————
Для разработчиков:
Внутри кода расширения, пользовательский тип представлен классом с установленной переменной customId. Например:
class CDTVector {
customId = "myExtension_vector";
constructor ([x, y]) {
this.x = Scratch.Cast.toNumber(x);
this.y = Scratch.Cast.toNumber(y);
}
toMonitorContent() {
let el = document.createElement("span");
el.textContent = `(${this.x}; ${this.y})`;
return el;
}
toReporterContent() {
let el = document.createElement("span");
el.textContent = `(${this.x}; ${this.y})`;
return el;
}
toReporterJSONItem() {
let el = document.createElement("i");
el.textContent = "nested vector";
return el;
}
toListItem() {
let el = document.createElement("i");
el.textContent = "nested vector";
return el;
}
toListEditor() {
return "nested vector";
}
}Существует несколько методов, используемых Dash'ом и код которых может быть указан внутри тела класса:
toMonitorContent() => Element
Метод должен возвращать Element, представляющий, как будет отображаться пользовательский тип в мониторах обычных переменных
toReporterContent() => Element
Метод должен возвращать Element, представляющий, как будет отображаться пользовательский тип в всплывающем результате при выполнении блока-репортера
toReporterJSONItem() => Element
Метод должен возвращать Element, представляющий, как будет отображаться пользовательский тип в качестве элемента Массива или Объекта, отображённого в всплывающем результате при выполнении блока-репортера
toListItem() => Element
Метод должен возвращать Element, представляющий, как будет отображаться пользовательский тип в качестве элемента отображаемого списка; Массива или Объекта, отображаемого в мониторе переменной
toListEditor() => string
Метод должен возвращать строку, представляющую пользовательсий тип в качестве редактируемого элемента отображаемого списка; Массива или Объекта, отображаемого в мониторе переменной
Также внутри
constructor'а класса расширения, нужно зарегистрировать сериализатор (сохранение типа в проект) и десериализатор (загрузка типа из проекта) класса пользовательского типа.сlass MyExtension {
constructor () {
Scratch.vm.runtime.registerSerializer(
"myExtension_vector",
(value) => [value.x, value.y],
(value) => new CDTVector(value),
)
}
getInfo () {
return {
// Информация о расширении...
};
}
// Методы блоков...
}registerSerializer(customId: string, serializer: (value: any) => JSONFileCompatValue, deserializer: (value: JSONFileCompatValue) => any) => void
при type JSONFileCompatValue = string | number | null | Record<string | number, JSONFileCompatValue> | JSONFileCompatValue[]
Регистрирует сериализатор и десериализатор класса пользовательского типа
Параметр customId
ID пользовательского типа
Параметр serializer
Функция возвращающая JSONFileCompatValue, представляющий собой сохранённый в файле проекта пользовательский тип
Параметр deserializer
Функция возвращающая пользовательский тип, получаемый с помощью сохранённых данных типа из файла проекта
===================
https://dashblocks.github.io/
===================
Dash
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Dash Button For Scratch Projects.zip
13.1 KB
————————————
Появилось расширение для Chrome, добавляющее кнопку которая открывает проект Scratch в Dash, как кнопка TurboWarp в Scratch Addons, но только для Dash
————————————
Как установить?:
1. Скачайте zip-архив с расширением
2. Распакуйте его в обычную папку
3. Откройте расширения Chrome (chrome://extensions/)
4. Включите режим разработчика
5. Нажмите на кнопку "Загрузить распакованное расширение" и выберите папку с расширением
6. Включите расширение
=======================
https://dashblocks.github.io/
=======================
Dash
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
—————————————
Что нового?:
+ Режим псевдо-консоли
+ Категория блоков "Консоль" (Бета)
+ Конвертор "Текста в фигуры" в редакторе костюмов
+ Новые блоки
+ Новые API для расширений
+ Удаление, удаление неиспользованных и редактирование расширений
+ Пользовательский шрифт
+ Новые расширения
+ Новые шрифты
+ Новые спрайты
+ Новые костюмы
+ Новые звуки
+ Исправления багов
+ Другие изменения...
===================
https://dashblocks.github.io/
===================
Dash
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤1👍1
Dash | Новости 📰
Дополнительные скриншоты
🔥11❤1👍1
—————————————————
В последних обновлениях документации Dash были добавлены страницы:
+ В разделе "Advanced Settings" по режимам сцены
+ В разделе "Development/Custom Extension Tutorial" по пользовательским типам
===================
https://dashblocks.github.io/
===================
Dash
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
—————————————
Что нового?:
+ Комьюнити
+ Форматирование в консоли
+ Новый метод сериализации/десериализации
+ Новый блок: clone?
+ Новая опция "other scripts in target" в блоке "стоп [... v]"
+ Новые спрайты
+ Новые костюмы
+ Страница Условий обслуживания
+ Исправления багов
+ Другие изменения...
===================
https://dashblocks.github.io/
===================
Dash
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤3🤔2👍1