Vladimir написал:
Russian Bear написал:
Что-то я совсем не понял про порядок сортировки. Откуда беруться эти цифры?
Я, когда делал программу на ассемблере, нуждался в списке слов (Игра "Мешанина"). Слова записывались мной в редакторе самого ассемблера. Подобную задачу сортировки я представил, как бы я делал на месте Кэмпбелла в этой игре. Достаточно после цифры, означающей конец фразы, например #FF ставить код, означающий место вывода этой фразы в окне при выводе на экран. Теперь при создании на экране в окне списка, программа начинает сканировать весь список у себя внутри, ищет байт #FF и следующий за ним порядковый код, если он равен #01, то такая фраза выводится первой, далее снова сканируется список с самого начала и ищется порядковый код #02 и выводится следующая фраза. и так, пока весь список внутри программы не выведится на экран. Если пользователь изменяет порядок в окне, то достаточно изменить порядковый код всех фраз, не перемещая их внутри программы. Этот способ сортировки более рационален.
Конечно, можно по всякому, но это должен сделал Кэмпбелл. Как-нибудь ему сообщу об этом пока есть настрой, гоню игру.
Неактивен
Vladimir написал:
Russian Bear написал:
Что-то я совсем не понял про порядок сортировки. Откуда берутся эти цифры?
Сейчас я рассмотрел окно с текстом фраз с включенными атрибутами и увидел, что ключом сортировки служит атрибут KEY. У меня эти ключи выглядят, как ALR1, ALR2 ит.д.
Если экспортируемый список изменить вручную, а потом импортировать?
Так ведь что получается. Я тоже так делал раньше. Обрадовался, ну, думаю, все нормально. Но нет. Дело в том, что этот твой вновь импортируемый список в библиотеке не меняет старый, а просто добавляется к нему. Создается дубликат, который вообще путает весь порядок. А в окне Text Overrides все выглядит прилично. Нужно лезть в библиотеку и удалять старый. Что еще интересно. Я удалил or и and, а потом добавил их в конец списка. Библиотека моих действий даже не заметила. Там было все по-старому. Короче, этот момент Кэмпбелл еще не отработал. Да, откуда ему понять, что нужно делать, ведь у англичан такой проблемы нет. В общем, на данном этапе нужно править библиотеку через экспорт и импорт модулей. Но и здесь не все так гладко. Исправленный модуль нужно импортировать в новую игру, предварительно закрыв лишние окна. Если импортировать в свою игру, то произойдет, скорее всего, просто сложение библиотек. Но я думаю, что когда-нибудь это будет исправлено, и можно будет редактировать списки просто в окне.
Неактивен
Короче, я отработал методику редактирования библиотеки. Для начинающих делать игру могу дать совет - не заполняйте пока окно Text Overrides. Делайте по старинке свой словарь - файл *.alr. А когда игра будет полностью готова, импортируйте туда свой словарь. Он и станет Text Overrides. Только перед импортом, сделайте копию игры. Может быть вы захотите что-то еще добавить. Т.е. импортируйте словарь только в полностью законченную игру.
Неактивен
Как исправить баг программы при команде "осмотреть объект" или "осмотреть персонажа", если в игре при этом выводится вместо описания "Название предмета.Description"?
1. Удалить из конструктора этот объект.
2. Создать новый объект, но название записать по-английски или английскими буквами, например "book"
3. Записать этот объект в память: нажать "APPLY", "OK" и сохранить на диск.
4. Открыть этот объект, заменить название на нужное по-русски, можно добавить синонимы названия или названия в другом склонении, например "книгу", "книга", "книгой". Вставлять их нужно нажимая ENTER после названия.
5. Сделать описание объекта по-русски.
6. Записать объект снова в память: нажать "APPLY", "OK" и сохранить на диск.
Можете проверить игру.
Теперь по команде "осмотреть объект" программа будет выводить описание правильно, без бага.
Чтобы сразу создавать объекты без багов, рекомендую создавать объект, называя его сначала по-английски, потом делать так, как описано в алгоритме, начиная с пункта 3.
Причина возникновения такого бага.
В ранних версиях пятого Адрифта каждый новый объект получал автоматически ключ Object№, а сейчас ключ формируется из названия объекта, а русский ключ и есть причина бага.
Отредактировано Vladimir (09.05.2013 13:59)
Неактивен
Знающие люди подсказали.
Решить эту проблему можно проще. Нужно в Settings снять галочку с Simple Mood затем Apply. Вверху появится Advanced. Там снять галочку в режиме Generate Key names from item names. И будет, как раньше Object№.
Неактивен
Лёд тронулся, господа присяжные заседатели. Первая игра, созданная на пятом Адрифте, только что отправлена на конкурс КРИЛ 2013.
Неактивен
ASBer написал:
Очень хорошая новость! Нужно посмотреть что за зверь
Зверь хорош. И даже приручен. Сразу скажу - не нужно заполнять окно Text Override. Лучше пойти другим путем.
Неактивен