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
24.10.2007 19:28

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

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

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

В общем, пока решил проблему созданием пустого класса, а нужные комнаты сделал потомками в том числе этого класса... Конкретно в моем случае нужно было проверять радиодосягаемость, скажем так, жучка )

radioroom: room
;

...
if (isclass (Me.location, radioroom)
...

Но ответ о средствах языка хотелось бы все же услышать smile

Неактивен

0    0    #3
24.10.2007 21:25

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

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

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

Ага, спасибо! Проблема была именно с неизвестностью названия функции, а читать на инглише весь ман по языку таки утомительно...

find

Call: find(value, target)
If value is a list; the function returns the offset (starting at 1 for the first element) in the list of the target item within the value list. If the target is not found, nil is returned. For example, find([4 5 6], 5) returns 2.

Неактивен

Powered by PunBB
© copyright 2001–2026 iFiction.Ru