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

Reply to: V0vHMpx3L1Z5cG7l3gc3
From: Andrew Lobanov (tavern,1) 02.08.17 11:18 UTC
To: Wol4ik
Subject: Re: Выложить объект из инвентаря в произвольную сцену room
Wol4ik> Добрый день. Вопрос в следующем, как работать с функциями place, put или иными, если я не готов конкретно назвать имя комнаты куда хочу положить объект (переместить из инвентаря)? Что я имею - служебный объект инвентаря, который выполняет роль одного из действий (починить, сломать, говорить и т.п.) конкретно "выложить".

Wol4ik> obj {-- служебный объект выложить, действие
Wol4ik> nam = '-выложить';
Wol4ik> pri = -99;
Wol4ik> inv = [[Хелен может выкладывать предметы, которые пока ей не нужны.
Wol4ik> Следует один раз кликнуть на действии "выложить",
Wol4ik> и второй раз кликнуть на нужный предмет в инвентаре.]];
Wol4ik> }

Wol4ik> В него я специально не вписываю use/used, так как это все впишу в объекты-цели. Однако, вот есть условно 'кувалда', и нужно, чтобы ее used при соединении и 'выложить', помещал эту кувалду в ту комнату, где находится ГГ, независимо из какой комнаты эта конструкция вызывается.

Wol4ik> obj {-- кувалда, физический объект
Wol4ik> nam = 'кувалда';
Wol4ik> used = function(s)
Wol4ik> if s^'выложить' then
Wol4ik> place (s, ???????????);
Wol4ik> remove(s);
Wol4ik> end;
Wol4ik> }

Wol4ik> То есть вопрос, как вписать в функцию отсылку к ТЕКУЩЕЙ комнате, название которое тоже есть функция?

А почему не используешь drop()?
[44 / 110]