Еще раз здравствуйте.
Я снова с вопросами.
Необходим создать новый объект из имеющихся составных частей, причем части должны быть сложены в определенном порядке, а при
необходимости объект должен разбираться снова.
Единственная идея, пришедшая мне в голову:
сделать части поверхностями, чтобы была возможность накладывать их друг на друга, а для проверки правильности сборки проверить что на что наложено.
Но при таком наложении у меня в инвентаре части и создаваемый объект все равно отображаются отдельно.
Код и вовсе странный получается:
buterbrod : fooditem, container sdesc = "бутерброд" rdesc = "бутерброда" ddesc = "бутерброду" vdesc = "бутерброд" tdesc = "бутербродом" pdesc = "бутерброде" noun = 'бутерброд' 'бутерброда' 'бутерброду' 'бутербродом' 'бутерброде' 'бутерброду#d' 'бутербродом#t' ldesc = "Бутерброд" isHim = true ; syr: fooditem, surface sdesc = "сыр" rdesc = "сыра" ddesc = "сыру" vdesc = "сыр" tdesc = "сыром" pdesc = "сыре" noun = 'сыр' 'сыра' 'сыру' 'сыром' 'сыре' 'сыру#d' 'сыром#t' ldesc= "Это сыр." isHim = true doPutOn(actor, io) = { self.moveInto(io); bulochka.moveInto(buterbrod); buterbrod.moveInto(Me); "Вы положили сыр "; io.vdesc; ". "; } ; bulochka: fooditem, qsurface sdesc = "булочка" rdesc = "булочки" ddesc = "булочке" vdesc = "булочку" tdesc = "булочкой" pdesc = "булочке" noun = 'булочка' 'булочки' 'булочке' 'булочку' 'булочкой' 'булочке#d' 'булочкой#t' 'булка' 'булки' 'булке' 'булку' 'булкой' 'булке#d' 'булкой#t' ldesc = "Это булочка. " isHer=true ;
Как этого можно избежать?
И может быть существует какой-то более правильный и простой способ конструирования нового объекта?
Заранее спасибо.
Отредактировано Natalka (14.03.2009 21:27)
Неактивен
Спасибо, "бутерброд" теперь получился.
Неактивен