Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
01.06.2006 20:12

Davarg
Участник
Зарегистрирован: 01.06.2006
Сообщений: 8

Написание Демонов...

Добрый вечер(ну или что там у вас)всем читающим.
1.Подскажите как написать Демон для вывода простеньких сообщений в процессе игры (например "Вы чихнули" и так далее).
2.Как реализовать возможность броска некоторых предметов с последующими событиями(например бросок ножа в стену,при этом будут потом происходит определенные последствия).
3.Как отключить вывод сообщений после большого описания комнаты,что в комнате присутсвует некоторый предмет,при этом не пряча этот предмет никуда.

Неактивен

0    0    #2
02.06.2006 17:19

Unreal
Участник (+3)
Зарегистрирован: 13.09.2002
Сообщений: 170

Re: Написание Демонов...

1. Как ни странно, но в "Блуждания в Окопный День" почти не употребляются демоны... Но берем продолжение этой игры "Бороздящий Просторы Вселенной" (Deep Space Drifter) и видим неплохие примеры использования демонов. Это для самостоятельного изучения, а короткий ответ на вопрос:

setdaemon( funcDaemon, nil ); — запускает демон
remdaemon( funcDaemon, nil ); — останавливает демон (возможно временно)

, где funcDaemon — имя функции, которая будет вызываться каждый ход.

3.  isListed=nil — неплохой вариант. Только при взятии предмета нужно настроить обработчик, чтобы предмет опять был isListed=true . По жаланию можно обрабатывать и такие события, как положить предмет.

А можно вот еще что сделать в свойствах объекта:

Код:

Lastik : item
    isListed = (
        if ( actor.isCarrying( self ) )
            return true;
        else
            return nil;
    )

А можно проверять объект на локацию игрока: Me.location .

Неактивен

0    0    #3
05.06.2006 16:44

Unreal
Участник (+3)
Зарегистрирован: 13.09.2002
Сообщений: 170

Re: Написание Демонов...

Запалы запускаются также, но вроде там можно установить время через сколько ходов произойдет запуск. Точно не помню — см. "Бороздящий Просторы Вселенной". И запалы можно остановить перед тем, как они сработают.

Функция-демон — это абсолютно обычная функция, которая может содержать все что угодно. Правда, входящих параметров она не имеет.

Неактивен

Powered by PunBB
© copyright 2001–2026 iFiction.Ru