Форум

Q-Spell - редактор игр в формате txt2gam

fireton: Собственно, вот. Качайте, пробуйте. Обсуждение, наверное, имеет смысл вести здесь. Я в вики дам ссылку на эту ветку.

Ответов - 20

Byte: fireton, сразу бросается в глаза - по-хорошему, нумерация строк должна идти заново для каждой локации. т.е. [pre2] #Начало 1 if a=2: 2 p 'sdsdsssdsd' 3 end - #next 1 i=0 2 :loop 3 i=i+1 4 if i < 1000: jump 'loop' -[/pre2]

Nex: Пожелания к новому редактору теже, что и к новому QGen. Цитирую из "списка добрых дел", за исключением заявленной подсветки: # Сохранение файлов игры в новом внутреннем формате. # Свободно масштабируемые окна(с использованием виджетов, это, я думаю, не проблема). # При экспорте в текстовый файл - сохранение отступов. # Интегрированная справка. # Полная поддержка интернационализации, юникод и перевод интерфейса на разные языки(английский, эсперанто) По заявленным фичам: Продвинутый список локаций (пропущенные, "слепые" и неиспользуемые локации); Это в общем случае не будет работать, т.к. если автор использует переход вида GOTO $my_next_loc, локации проиндексировать не получится. Максимум, что можно здесь сделать - составить список локаций, которые не вызываются "явно". Новое расширение для исходного текста - .qsp, я думаю, лишнее. Проще - следовательно, ближе к пользователю - обычное .txt расширение.

fireton: Byte, думаю, это лишнее. В программах на "обычных" ЯП никто ведь не нумерует каждую процедуру отдельно... Nex Это в общем случае не будет работать, т.к. если автор использует переход вида GOTO $my_next_loc, локации проиндексировать не получится. Максимум, что можно здесь сделать - составить список локаций, которые не вызываются "явно". Ну, это и имелось в виду. Но и такое будет вполне удобно, как мне кажется. Новое расширение мне показалось занятным. :) Могу вставить *.txt в фильтр, мне не трудно.


Nex: fireton пишет: В программах на "обычных" ЯП никто ведь не нумерует каждую процедуру отдельно При исполнении кода в плеере, если возникает ошибка, то возвращается номер строки. Вот эти-то номера строк и отсчитываются для каждой локации или действия отдельно.

Byte: fireton пишет: думаю, это лишнее. В программах на "обычных" ЯП никто ведь не нумерует каждую процедуру отдельно... это совсем не лишнее, потому что QSP возвращает номера строк с ошибками "локально" для каждой локации... очень удобно для отладки будет - имя локации / номер строки в ней.

fireton: О как. Не знал. Я подумаю над отдельной нумерацией... Хотя это не получится сделать просто - я использую сторонний компонент.

Flint: Когда нажимаешь TAB, то получается не отступ в коде, а переход на список локаций. Плохо. :-)

Korwin: Надо писать не "Плохо" а "Я привык к другому" :)

fireton: Выпустил в свет версию 0.2 + подсветка синтаксиса - компиляция и запуск были невозможны, если путь к файлам содержал пробелы - табуляция теперь ведет себя корректно (добавляется в файл) Насчет нумерации. Поигрался с плеером и обнаружил, что номер строки при ошибке выдается некорректный. Пишет "строка 1, локация такая-то". А на самом деле, строка 1 не внутри кода локации, а внутри ACT...END в этой локации. Так что, Byte, надо переделывать отчеты об ошибках: либо выдавать корректный номер строки, либо выписывать саму проблемную строку (а не ее номер) при показе ошибки.

Byte: В 5.3.1 для непосредственно кода в ACT номера строк показываются "локально", да. На самом деле для действий обычно добавляют мало кода, так что посчитать номер строки там не трудно. В 5.4 наверняка будет корректнее ;) Выводить строку с ошибкой - можно, но жутко неудобно для отладки.

Byte: Сделал корректный вывод номера строки с ошибкой для действий, созданных из кода локации.

fireton: Клево. Качать новый проигрыватель из файловой области?

Byte: fireton, нет. это в 5.4 :)

fireton: Ок. А когда будет релиз?

Byte: fireton, в ближайшее время должен зарелизиться wx 2.9.. хотелось бы вместе с ним) может, раньше..

Byte: fireton, будет ли новая версия (хотя бы поиск + замена)?.. кстати, подстветка синтаксиса не совсем корректна - символ "!" не всегда является комментарием.. имхо проще убрать "!" как комментарий, выделив его как спец. символ.

fireton: Версия с поиском/заменой будет в самое ближайшее время. А когда "!" не является комментарием? Ведь его можно ставить и после строки, насколько я понял...

Byte: fireton, "!" это "синоним" операции "<>" (т.е. "не равно"), если используется в выражении: if a!4:jump 'loop' / if a<>4:jump 'loop'

fireton: Но txt2gam как его обработает в середине строки? Нормально? Не отрежет как комментарий?

Byte: fireton, txt2gam нормально обрабатывает :)



полная версия страницы