std.prog: INSTEAD программирование

Reply to: 6xJViZV7bkBlVDdAuIf6
From: Peter (syscall,1) 15.08.17 16:20 UTC
To: Wol4ik
Subject: Re: Синтаксис работы с way
> А как добавлять way на сцену?
В way может быть сама комната, и в этом случае можно просто добавить саму эту комнату:

====
ways():add 'локация'
====
Но есть и другие способы. Во первых, вместо добавления-удаления, можно делать open/close или disable/enable локации:

====
room {
    nam = 'дом';
...
}:close() -- закрытый дом

room {
    nam = 'main'
    way = { 'дом' }; -- переход невидим
}
где то в коде:

open 'дом' -- открыли дом -- появился переход
====

И, наконец, можно использовать path:

====
way = { path { nam = '#дом', 'В дом', 'дом'}:disable() };  -- выключенный переход

enable 'вдом' -- включили переход.
====

Можно еще создавать path на лету new и добавлять их... Но это лишнее...

Насчет переменных, не совсем понял вопрос, но вот варианты:

====
a = path('Выход', 'exit')
====
И вставляем везде где хотим:

====
way = { a };
====
Еще вариант:

====
exitroom = room {
    nam = 'exit';
....
}
====
И вставляем где хотим:
====
way = { exitroom };
====

В твоем примере с rtt, просто везде в момент загрузки игры в way вставится слово 'локация5', если это то, что тебе нужно - можно и так. Но изменение переменной rtt ничего не изменит в уже созданных комнатах.
[60 / 61]