Приветствую, столкнулся с проблемой при добавлении 1 и того же предмета 1го класса в ячейки сумки, все пред идущие перестают быть связанны с переменной к которой они относятся. Как это выяснилось: в коде есть переменная targ=e.target; и memory = targ; memory является переменной другого класса о том что за предмет был под указателем мышки когда его вставили в соответствующий слот на персонаже. Как происходит проверка:
if (MenuPanel.menuP.oneHandSw == memory)
MenuPanel - класс
menuP - статическая переменная(через нее связываюсь со всеми методами и св-ми класса)
oneHandSw - переменная того предмета который перетаскивал.
Вот как я создавал эти предметы: (скорее всего тут неправильно)

Код AS3:
public var oneHandSw:OneHanded = new OneHanded ;
bag.addChild(oneHandSw = new oneHandedSword_icon); //oneHandedSword_icon - имя MovieClip
oneHandSw.x = bag.sl1.x;
oneHandSw.y = bag.sl1.y;
bag.addChild(oneHandSw = new oneHandedSword_icon); //oneHandedSword_icon - имя MovieClip
oneHandSw.x = bag.sl2.x;
oneHandSw.y = bag.sl2.y;
Только таким образом я смог создать 2 одинаковых предмета, но такое чувство что в memory передаются не те данные либо вообще не передаются.
Конечно можно создать несколько предметов под разными переменными, но тогда если выпадет такой же предмет как и у меня, мой сразу потеряет связь с переменной+придется для каждого одинакового предмета писать его характеристики.