Дорабатываем проводник
Панель проводника в левой части редактора уже давно умеет отображать все существующие в движке сущности как в виде списка, так и в виде дерева. Но с этими списками ничего нельзя было сделать, кроме обычного просмотра. Дальнейшее ее развитие – это добавление оставшихся CRUD операций, чтобы в списках можно было добавлять новые элементы или же удалять уже существующие. Ну и поскольку copy-paste тоже штука полезная – операцию создания дубликата также нужно предусмотреть.
Вся работа свелась, по большей части, к добавлению панелек с кнопками для выполнения соответствующих операций, плюс реализация логики по типу той, что обычно пишется в reducer-ах в React-Redux приложении – добавить объект в список на n-ом уровне вложенности, отфильтровать удаляемый элемент и так далее.
Как только я закончил, вышло так, что теперь редактор дает полный доступ к чтению и редактированию игры, и в JSON портянку можно уже и не заходить. Разве что, не хватает инструментов по работе со сценой в рамках канваса, вроде выбора и перемещения объектов мышкой или добавления нового по клику в конкретном месте уровня. Этим я займусь дальше, а пока хочется продемонстрировать, что уже можно сделать, используя только редактор. На словах вряд ли что-то будет понятно, поэтому я записал видео, в котором голосом проговариваю свои действия.