Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
10.09.2006 21:32

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

Счетчик

Как сделать в нужной комнате что бы ходы сами шли,то есть как,например,находясь под водой выводилось без ввода команд 2-3 сообщение о том,что мол нехватает воздуха и после смерть?
Да к стати,сейчас работаю над дебютной игрой.
MUD вечно жив!

Неактивен

0    0    #2
11.09.2006 21:36

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

Re: Счетчик

Я так понял, что, находясь в определенной комнате, вне зависимости от того
что делает ГП, его ходы должны быть там ограничены...

Делать это мы будем при помощи "демонов". Добавь в комнату:

Код:

firstroom : room {
  started = nil // просто переменная
  i = 0 // для демона
  enterRoom( actor ) = { // при входе в комнату срабатывает эта функция
    if ( !self.started ) {
        self.started = true;
        setdaemon( DyingMsg, nil ); // старт демона
    } else
        pass enterRoom;
  }
}

На все выходы из комнаты повесь:

Код:

  east = { // идти на восток
        self.started = nil;
           self.i = 0;
        remdaemon( DyingMsg, nil ); // останока демона
        Me.travelTo( Another_room ); // переход в другую комнату
  }

Конечно должен быть и демон:

Код:

DyingMsg : function( parm ) {
    firstroom.i++;
    if ( firstroom.i == 1 )
        "Воздух выходит из твоих легких.";
    if ( firstroom.i == 3 ) {
        "Ты задохнулся.";
        die();
    }
}

Неактивен

Powered by PunBB
© copyright 2001–2026 iFiction.Ru