Суббота, 05.10.2024, 13:34

Приветствую Вас Странник | RSS
The Elder Scrolls:Morrowind
ГлавнаяРегистрацияВход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Управление игроком
MTESДата: Четверг, 21.06.2007, 22:02 | Сообщение # 1
Admin
Группа: Администраторы
Сообщений: 14
Репутация: 2
Статус: Offline
Усыпление игрока
ShowRestMenu
Вызывает меню отдыха и позволяет игроку спать. Используется, например, на кроватях в ячейках, где иначе запрещено спать.

Пример: Это стандартный скрипт для кровати:
begin Bed_Standard

;исп. На станд.кроватях, которые игрок может активировать и спать на них

if ( MenuMode == 0)
if ( OnActivate == 1 )
ShowRestMenu
endif
endif

end

GetPCSleep (возвращает Boolean/short)
Возвращает истину (1), если игрок спит. Примечание: Выбор времени сна и счетчик, который показывается во время сна, являются меню. Так что будьте внимательны, если используете в скрипте эту функцию и функцию MenuMode!

WakeUpPC
Заставляет игрока проснуться до того, как истечет выбранное им время сна. Иногда создает монстров, если игрок спит не в помещении (и, видимо, вне города /прим.переводчика/). Это обязательно произойдет при попытке поспать только 1 час, если время сна будет жольше, тогда это может и не призойти (Спасибо Manauser эа информацию). WakeUpPC прерывает отдых только когда игрок действительно *спит*. Она не влияет, если игрок пережидает в местах, где отдых запрещен (Форум.инф. / Kir).

Пример: Это подредактированная выдержка из длинного скрипта "sleepers" от Bethesda. Он ответственен за сны о Дагот Уре, мучающие игрока во время основного квеста. Он показывает как использовать GetPCSleep и WakeUpPC:
if ( GetPCSleep == 0 )
return
endif

Set dream to 0

if ( GetPCCell "Balmora" == 1 )
Set dream to 1
endif

if ( GetPCCell "Ald-ruhn" == 1 )
Set dream to 2
endif
[…]
if ( dream == 0 )
Set doOnce to 0
;это для того, чтобы новый кошмар появился после ухода и нового захода в город
return
endif

AddTopic "Тревожные сны "
;добавляет тему, неважно, если это происходит снова и снова

;ПЕРВЫЙ СОН...

if ( GetJournalIndex A1_2_AntabolisInformant >= 10 )
if ( GetJournalIndex A1_Dreams < 1 )
WakeUpPC
MessageBox "У Вас был тревожный сон. Бла бла бла", “Ok"
Journal A1_Dreams 1
return
endif
endif

 
  • Страница 1 из 1
  • 1
Поиск:


Copyright MyCorp © 2024Конструктор сайтов - uCoz