Wintermute Engine Forum

Russian forum => Техниче�?кий фор�?м => Topic started by: GVG on September 05, 2010, 11:22:30 AM

Title: Скопировать/перене
Post by: GVG on September 05, 2010, 11:22:30 AM
Ре
Title: Re: Скопировать/перенести Entity?
Post by: 2.0 on September 11, 2010, 11:31:06 PM
Решил переделать довольно архаичный интерфейс работы с инвентарем. Переделываю как в Kyrandia (кто играл с этим циклом игрушек - в курсе). Сделал:
1. левый клик "обычной" мышью на вещь на сцене, сохраняю параметры соответствующего entity, делаю курсор мыши картинкой из соответствующего item, со сцены entity удаляю.
2. следующий левый клик указывает, куда положить (пока только это) данную вещь.
- проверяю место, walkable ли оно (пока только это)
- создаю entity, заполняю его сохраненными параметрами
- делаю активность. готово

НО! Нет никакого способа (не нашел) взять у исходного entity прикрепленные к нему скрипты!!!

Вопросы:
1. может есть вышеуказанная возможность?
2. если нет - может можно как-то сделать копию исходного entity и потом положить её на нужное место?


Напрямую такого сделать, насколько я понял, нельзя.
Но можно попробовать с помощью доп. телодвижений.
Если скрипты аттачатся динамически, то, например, так:

Code: [Select]
var AttachedScripts = new array();

Entity.AttachScript("Script1FileName"); // Entity - это исходный объект
AttachedScripts[0] = "Script1FileName";
Entity.AttachScript("Script2FileName");
AttachedScripts[1] = "Script2FileName";

Entity.AttachedScripts = AttachedScripts; // Теперь эта новая переменная (часть класса Энтити) будет хранить список присоединённых скриптов.

А потом в другом месте ты прочтёшь этот список следующим образом:

Code: [Select]
var AttachedScripts = Entity.AttachedScripts;

for (var i=0; i< AttachedScripts.Length; i=i+1)
{
   Entity1.AttachScript(AttachedScripts[i]); // Entity1 - это новый объект
}
Title: Re: Скопировать/перене
Post by: GVG on September 13, 2010, 07:50:01 AM
Спа
Title: Re: Скопировать/перене
Post by: 2.0 on September 13, 2010, 04:07:38 PM
Спа
Title: Re: Скопировать/перене
Post by: GVG on September 13, 2010, 05:32:55 PM

Н