 |
Русский TADS Русский TADS. Разработка текстовых игр на русском языке. Интерактивная литература. Второй форум находится здесь.
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Cankiller, тот ещё чайник Гость
|
Добавлено: Вс Июл 02, 2006 7:32 pm Заголовок сообщения: |
|
|
1) Никак не могу сделать корректный глагол вроде "Выстрелить ИЗ [чего] В [что]. Жду помощи
2) Как узнать, каким именно синонимом пользовался игрок для ввода команды? |
|
Вернуться к началу |
|
 |
GrAnd Site Admin
Зарегистрирован: 04.02.2003 Сообщения: 299 Откуда: Россия, Москва
|
Добавлено: Вс Июл 02, 2006 8:46 pm Заголовок сообщения: |
|
|
1) занят до четверга, после попробую написать
2) Не советую этого делать, по крайней мере до тех пор, пока не напишешь первую игру. Если есть такое желание, то нужно редактировать функции preparseCmd и parseNounPhrase (т.е. через заднепроходное отверстие).
Нужно писать описание вещей и событий так, чтобы введенный синоним не имел значения. Если он настолько отличается, то наверное, следует создать другой предмет с этим именем. |
|
Вернуться к началу |
|
 |
GrAnd Site Admin
Зарегистрирован: 04.02.2003 Сообщения: 299 Откуда: Россия, Москва
|
Добавлено: Вс Июл 02, 2006 8:51 pm Заголовок сообщения: |
|
|
ещё совет по первому пункту: сделай глагол "выстрелить ВО что", работающий при наличии оружия в инвентаре. Носить можно только одно оружие, либо несколько, но сначала одно нужно "взять на изготовку"(выхватить, привести в боевую готовность и т.д.).
Если не устроит, то жди когда я смогу помочь |
|
Вернуться к началу |
|
 |
Гость
|
Добавлено: Пн Июл 24, 2006 6:31 pm Заголовок сообщения: |
|
|
1)Можно ли сделать так, что бы игра не реагировала на команды игрока, до определенного события, то бишь действия глаголом?
2)Как изменить описание глобалов (пол, потолок, стены) не правя advr?
3) |
|
Вернуться к началу |
|
 |
zerrr
Зарегистрирован: 21.05.2006 Сообщения: 3
|
|
Вернуться к началу |
|
 |
Gremour
Зарегистрирован: 27.06.2006 Сообщения: 4
|
Добавлено: Сб Июл 29, 2006 12:45 am Заголовок сообщения: |
|
|
zerrr,
1) Из описания класса room:
Код: | /*
* roomCheck is true if the verb is valid in the room. This
* is a first pass; generally, its only function is to disallow
* certain commands in a dark room.
*/
roomCheck(v) = { return true; } |
Т. е., в нужной комнате описываешь:
Код: | actionsUnlocked = nil
roomCheck (v) =
{
if (v = yourVerb or actionsUnlocked)
pass roomCheck;
return nil;
} |
Не забудь взвести флаг actionsUnlocked в этой комнате после того, как все действия наконец можно будет производить (скорее всего, в глаголе yourVerb).
А что у тебя за ситуация, можно узнать? У меня было похожее, но я реализовал это через nestedRoom, из которого нельзя выйти обычными командами. В итоге, осматривать всё можно, а действовать нельзя.
2) Для этого есть операторы modify и replace. Например,
Код: | modify theFloor
ldesc = "Новое описание для пола"
; |
Если таким образом модифицировать лексические свойства (noun, adjective, verb), то указанные тобой слова добавятся в список лексем, вместо того, чтобы заменить его. |
|
Вернуться к началу |
|
 |
zerrr
Зарегистрирован: 21.05.2006 Сообщения: 3
|
Добавлено: Сб Июл 29, 2006 11:29 am Заголовок сообщения: |
|
|
Gremour писал(а): |
А что у тебя за ситуация, можно узнать? У меня было похожее, но я реализовал это через nestedRoom, из которого нельзя выйти обычными командами. В итоге, осматривать всё можно, а действовать нельзя.
|
Спасибо громадное, на днях попробую.
Ситуция такая:
Протагонист просыпается с сильной головной болью (предположительно), т.ч. до принятия аспирина, делать нечего не может. Ну, или будет ситуация, когда надо ограничит главного героя в действиях.
Не обязательно, что я это использую, но просто интересно еще раз спасибо. _________________ Interactive Fiction не по-русски |
|
Вернуться к началу |
|
 |
Gremour
Зарегистрирован: 27.06.2006 Сообщения: 4
|
Добавлено: Сб Июл 29, 2006 11:49 pm Заголовок сообщения: |
|
|
Выудил спойлер. %)
В случае с головной болью надо выводить сообщение о том, что болит голова, каждый раз, когда отвергается глагол. Думаю, что сообщение можно вставить в roomCheck перед отрицательным возвратом. |
|
Вернуться к началу |
|
 |
GrAnd Site Admin
Зарегистрирован: 04.02.2003 Сообщения: 299 Откуда: Россия, Москва
|
Добавлено: Вс Июл 30, 2006 5:04 pm Заголовок сообщения: |
|
|
Это первый пазл в в текстовой игре "Путеводитель по вселенной для путешествующего автостопом" Дугласа Адамса. Там без аспирина не можешь выйти из дома, все время промахиваясь мимо двери. |
|
Вернуться к началу |
|
 |
|
|
Вы можете начинать темы Вы можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
Powered by phpBB © 2001, 2005 phpBB Group
|