Hind написал:
fireton написал:
При использовании угловых скобок компилятор будет искать только в директориях, перечисленных как библиотечные в TADS Workbench.
Неправильно )))
По крайней мере, вот у меня в C:\Devel\RTADS\3\ лежит файл game.t и модифицированный stdr.t
В game.t указано именно <stdr.t>, так вот - используется именно тот, что лежит В ОДНОЙ ДИРЕКТОРИИ с ним, то есть в C:\Devel\RTADS\3\.
Сорри за оффтоп...
Вообще-то, если верить мануалу, то fireton прав. Вот что написано в оригинальном мануале:Note that when the filename is enclosed in double quotes, the compiler searches for the file first in the current directory, then in the directories in the include path (as set with the -i compiler switch on most operating systems). When the filename is enclosed in angle brackets, the compiler searches only in the directories in the include path - the current directory is not searched. Generally, a system include file (such as adv.t) should be enclosed in angle brackets, while your files should be in the current directory and enclosed in double quotes.
Это - перевод:Обратите внимание, что, когда имя файла заключено в кавычки, компилятор вначале ищет файл в текущем каталоге, а затем в специальном каталоге для "включаемых" файлов (который задается опцией -i для версий компилятора, работающего из командной строки (для большинства операционных систем), либо специальным пунктом меню в комбинированном компиляторе/отладчике TADS). Если же имя файла заключено в угловые скобки, то компилятор не будет просматривать текущий каталог, а сразу перейдет к поиску в каталоге включаемых файлов. Как правило, имена файлов системных библиотек (например, того же advr.t) указываются в угловых скобках, а все остальные размещаются в текущем каталоге и указываются в кавычках. Это может быть особенно удобно, когда автор ведет работу одновременно над несколькими играми, используя для них общие файлы системных библиотек.
У меня прямо сейчас нет возможности проверить это экспериментально, но, Hind, может быть, у тебя каталог C:\Devel\RTADS\3\ прописан в include path?
UPD: вероятно, действительно прописан - TADS Workbench автоматом прописывает текущий каталог игры в include path при ее создании/открытии. Проверить можно, выполнив команду меню Build->Settings и выбрав в открывшемся дивлоге вкладку Include.
Отредактировано uux (28.12.2007 06:40)
Неактивен
Да, там есть строчка "."
Так или иначе, я тоже прав, так как говорил о TADSW с настройками по умолчанию версии с сайта RTADS.org, а не о языке.
Неактивен
А теперь объясните, пожалуйста, что есть Far, Colorer и другие непонятные программы?..
Неактивен
Far -- это консольный файловый менеджер. Со встроенным редактором (тоже консольным). Есть ещё люди, пользующиеся таким в силу привычки, но рекомендовать это новичку не следует.
Существует много удобных виндошных текстовых редакторов. Лично я пользуюсь специальной средой разработки, которая понимает, в том числе, TADS: http://ifarchive.heanet.ie/if-archive/p … te1500.zip
Весит 7 мегабайт. В настройках надо ставить какой-нибудь кириллический шрифт, чтобы русские буквы отображались корректно.
Неактивен
Лично я пользуюсь специальной средой разработки
Что-то мне не удалось заставить этот Imaginate работать. Я не понял тонкой логики его функционирования...
Пользуюсь Notepad++, там можно настроить свои схемы раскраски синтаксиса, что я и сделал для TADS и URQ.
Неактивен
Инсталлируешь, создаёшь новый проект TADS 2, пишешь текст. Затем в меню Build->Compile and Run. Только чтобы он запустился, надо в настройках (Tools->Language options) задпть правильный путь к интерпретатору TADS. По умолчанию Imaginate думает, что файл называется (у меня) c:\Program Files\TADS Toolkit\htmltads.exe. На самом деле он называется (путь)\htmlt2.exe. Ещё желательно положить файлы advr.t, stdr.t и errorru.t в каталог с твоим проектом. Вот и всё. Можно сразу запустить тестовую игру.
P.S. Imaginate создаёт файл проекта для воркбенча (.tdc). Можно сразу загружать его в воркбенче. Правда, там что-то с путями тоже не то. Править надо. Точно не помню (давно было). Позволяю воркбенчу самому создать файл .tdc из исходника.
Отредактировано Gremour (28.12.2007 22:41)
Неактивен
Gremour написал:
Ещё желательно положить файлы advr.t, stdr.t и errorru.t в каталог с твоим проектом.
advr.t вообще-то не принято переписывать для каждого квеста. Тем более что в отличии от буржуев и новые версии время от времени выходят. Пусть не каждый год, но. Не надо насаждать плохой стиль человеку еще до того как он написал первую игру
Пусть уж лучше advr.t в единственном экземпляре лежит в каталоге с библиотеками.
Неактивен
Но потом-то лишние обхекты и функции ненужные все равно придется удалять, так что имхо для каждой игрушки нудны свои версии библиотек.
Неактивен
Тестовый проект у меня не смог найти файл adv.t, который идёт с TADSом (#include <adv.t>). Я не стал искать, почему. К тому же, иметь все исходники сразу удобнее (хотя бы для референса; какая там может быть разбежка с библиотекой у автора игры и у тулкита, инсталллированного на конкретной машине -- непонятно). Библиотеку, если понадобится, всегда можно заменить более свежей.
А вот редактировать файл advr.t напрямую не стоит.
Неактивен
- VampirE - написал:
Но потом-то лишние обхекты и функции ненужные все равно придется удалять, так что имхо для каждой игрушки нудны свои версии библиотек.
Если ты до сих пор не понял, я даже не буду пытаться объяснить почему так не надо делать. Напомню только что твой "пример" "менюшных диалогов" со стандартными файлами библиотеки вообще не компилируется.
А вобще-то существуют команды modify, addword и delword
Неактивен
гор, кстати, все прекрасно компилируется.
Добавь ради интереса, его в любой проект и все будет работать, разве нет?
А команды replace, modify b подобные - вещи полезные, не отрицаю. Но лично мне привычней, когда для каждой игры есть своя версия библиотек.
Неактивен
Но лично мне привычней, когда для каждой игры есть своя версия библиотек
Геморрой начнется, если у тебя будет большой проект и ты захочешь перейти на новую, более совершенную, версию библиотеки...
Неактивен