Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
24.10.2007 16:39

Hind
Участник
Откуда: Балашиха
Зарегистрирован: 24.10.2007
Сообщений: 135
Вебсайт

Не нервируйте меня! Мне скоро негде будет прятать трупы!

Как узнать принадлежность объекта к списку?

Можно ли упростить конструкцию вида:
if (Me.location = room1 or Me.location = room2 or ...)
?

Например, быстро проверив принадлежность объекта Me.location к списку комнат?
Способ с циклом очевиден, но, может быть, язык предлагает лучший инструмент?
Заранее извиняюсь, если вопрос глупый.

Спасибо smile

Отредактировано Hind (24.10.2007 16:40)

Неактивен

0    0    #2
28.10.2007 15:01

Gremour
Участник (+1)
Откуда: Беларусь
Зарегистрирован: 09.11.2004
Сообщений: 234

Re: Как узнать принадлежность объекта к списку?

Лично мне вариант решения проблемы с помощью наследования кажется естественнее. Такой подход используется повсеместно в библиотеке adv.t, и я пользуюсь именно таким подходом. Только для проверки использую не is_class (), а флаг в родительском классе, и его проверку:

Код:

radioroom: room
isRadioroom = true;
;

if (parserGetMe().location.isRadioroom)
    ...

По умолчанию все неописанные свойства объекта имеют значения nil.

Отредактировано Gremour (28.10.2007 15:02)

Неактивен

Powered by PunBB
© copyright 2001–2026 iFiction.Ru