Русскоязычный форум поклонников игры «Они» от Bungie
Доброй ночи
Решил написать программу для редактирования скриптов bsl.
Проект сыроват еще, но наработки есть уже(прикрепил).
Если есть предложения что туда можно добавить-пишите.
ЗЫ если что, листбокс справа служит для того, чтобы в него добавляли комманды скриптовые, это так, на всякий
И если есть какие нибудь баги то тоже пишите
Отредактировал(а) Aka_Nike (27-07-2012 22:57:31)
Оффлайн
Я об этом тоже думал на самом деле..
Сделаю
Пересобрал для 3.0
Исправил ошибку с выделением текста.
Вечером постараюсь выложить "обновление"
Отредактировал(а) Aka_Nike (28-07-2012 11:03:30)
Оффлайн
Поигрался. Подсветку синтаксиса так делать не стоит, ибо:
• richedit мерцает при изменении текста;
• изменяем выделенный текст – выделение уезжает вправо;
• творится ужас при удалении подсвеченного текста (попробуй void в скрипте Backspace-ом стереть);
• меняем шрифт – подсветка синтаксиса отваливается до первого изменения текста;
• undo не работает;
То есть, надо хотя бы SelectionStart/SelectionLength запоминать и восстанавливать.
Остальное:
• без quick_commands.cfg вываливается;
• настройка шрифта не сохраняется;
• поиск Enter не понимает, приходится тянуться мышкой;
• размер окна, запрос о сохранении файла при выходе/открытии нового, подсветка комментариев...
• так и не понял, зачем нужен список справа.
Парсинг script_commands.txt (dump_docs) + автодополнение + calltips с форматом вызова функций и описанием потянешь?
Оффлайн
Aka_Nike, после пересборки стало запускаться под вайном, но как-то грустно: курсор пляшет как сумасшедший. +)
а вообще, редактор bsl лучше делать плагином к какому-нибудь готовому редактору, типа vim или notepad++. всякие автодополнения, подсветка синтаксиса, скрывание содержимого {}, расстановка отступов и т.д. там уже есть, всё, что надо добавить - совмещение C-подобного синтаксиса с shell-подобным (мб и автоматизированный перевод с одного на другое), и все известные функции (распарсить script_commands.txt). ну и повыкидывать то, что скриптовым движком не поддерживается, добавить варнинги про излишний размер файла и избыток вложенных блоков (if).
в идеале, конечно, нужен ещё парсинг ресурсов игры (преимущественно BINA) на тему имён персонажей, текстур для кинематики, имеющихся видов оружия, звуков и всяких прочих объектов и эффектов...
Оффлайн
Mih@ написал(а):
нужен ещё парсинг ресурсов игры (преимущественно BINA) на тему имён персонажей, текстур для кинематики, имеющихся видов оружия, звуков и всяких прочих объектов и эффектов...
Тогда внутриигровой редактор – ещё лучше. И данные с полпинка доступны, и парсер родной под боком, и код запустить сразу можно. Да только кто делать-то будет?..
Оффлайн
Sfeli написал(а):
Поигрался. Подсветку синтаксиса так делать не стоит, ибо:
• richedit мерцает при изменении текста;
• изменяем выделенный текст – выделение уезжает вправо;
• творится ужас при удалении подсвеченного текста (попробуй void в скрипте Backspace-ом стереть);
• меняем шрифт – подсветка синтаксиса отваливается до первого изменения текста;
• undo не работает;
То есть, надо хотя бы SelectionStart/SelectionLength запоминать и восстанавливать.
Остальное:
• без quick_commands.cfg вываливается;
• настройка шрифта не сохраняется;
• поиск Enter не понимает, приходится тянуться мышкой;
• размер окна, запрос о сохранении файла при выходе/открытии нового, подсветка комментариев...
• так и не понял, зачем нужен список справа.
Парсинг script_commands.txt (dump_docs) + автодополнение + calltips с форматом вызова функций и описанием потянешь?
С проблемой подсветки синтаксиса проблемы полностью улажены! Тоесть теперь проблем не будет.
С проблемой что без "quick_commands" не работает тоже исправил)
Систему поиска чутка переработал, теперь как в текстовом редакторе.
Вечером постараюсь выложить что получилось.
В крайнем случае днем завтра)
Добавлено спустя 3 минуты 8 секунд:
С парсингом, описанием и прочеем)) надо подумать будет еще, не обещаю, но постараюсь, знаний мало пока что
Добавлено спустя 4 минуты 47 секунд:
Mih@, всмысле?? Что с курсором? Объясни)
Оффлайн
Ну лично у меня такого бага нет.. Ну сообственно посмотрю все равно, постараюсь исправить.
На 2.0 пересобирать не буду. Уж слишком будет
Добавлено спустя 8 минут 32 секунды:
Стоит ли оставлять листбокс для добавления комманд?
Оффлайн
Обновление готово.
Исправлено выделение синтаксиса(теперь все выделяется нормально).
При отсутствии "quick_commands.cfg" - программа работает.
Полностью переработанный поиск.
Внимание, dll-ка работает на .net framework 3.5
хм, на OCF обнаружил такой же редактор, только лучше, намного
Отредактировал(а) Aka_Nike (28-07-2012 15:39:34)
Оффлайн
Aka_Nike Я тож как-то начил писать такой редактор потом поленился, бросил, а так молодец, ну могу посоветовать полный список всех команд добавить + краткое описание, ну и даже незнаю, что ещё, а да кстати тут помоему в разделе загрузок на онимии есть такую чуо, написанное американцами ну или (Англинчанами) хз как правельно... )) (Всё равно ты молодец)
Оффлайн