1) Каким образом можно "осмотреть себя"?
2) Как всучить глав.герою предмет в начале игры (т.е. чтобы игра начиналась уже с этим предметом в инвентаре)?
2.1) Как вообще что-либо вручать герою?
3) Как на RTADS'е написать что-то вроде
если (БатареяЗаряжена=ложь, то сказать "эй, заряди батарею!") иначе (сказать "батарея уже заряжена")
4) Как в одной локации осуществить следующее:
взять книгу со стола -стол слишком далеко подойти к столу -ты стоишь возле стола взять книгу -ты взял книгу
Или для этого нужно создавать несколько локаций?
5) Как избавиться от
ты стоишь в северной комнате ты видишь на столе книгу
хотя в
someroom:room ldesc="ты стоишь в северной комнате";
Заранее немерено благодарен.
Неактивен
отойти в тот угол, идти в середину комнаты, go to the шкаф - совершенно ненужные замороки и их практически никогда не реализуют и не используют. Спрятаться в углу, выйти на сцену, залезть в шкаф - часто.
Приведенный пример имеет право на жизнь в таком варианте:
взять книгу со стола
- ты не дотянешься до туда, пока прикован к батарее!
Неактивен
кхе-кхе. А где в твоей функции doOpen(actor) собственно открывается шкафчик?
Либо добавь
self.setIsopen(true);
либо вообще убери эту функцию. Тогда програма будет отвечать так:
"Открыв шкафчик, ты обнаружил униформу. "
Неактивен
Правильный рабочий код таков:
CellDoor : Doorway closed = true location = startroom ldesc = "красивый текст" verDoOpen(actor)= { if (not actor.isCarrying(Bag)) "текст1"; else if (Uniform.IsWear = nil) "текст2"; else if (Battery.IsCharge = nil) "текст3"; } doOpen(actor) = { "Красивый текст"; pass doOpen; } ;
verDoOpen(actor) предназначен для проверки допустимости действия и выводит всевозможные отговорки (при этом менять значения каких-либо свойств в нем категорически запрещено). Поэтому все напоминалки и запрещалки нужно перенести туда. Код исполнения будет уже в doOpen.
В принципе, код приведенный Корвином тоже должен быть рабочим, но верификация пустая и система неполную команду "открыть" без зазрений совести дополнит: (дверь), после чего выведет отговорку.
Неактивен