Zwiekszanie nazwy mc w petli

Technologia Flash, czyli animacja na potrzeby stron WWW to świat daleko odbiegły od zwykłego programowania i kodu. Zapytaj o pomoc i podziel się z nami Twoimi problemami z zakresu Flasha.
TrueSign
Posty: 8
Rejestracja: pt cze 04, 2010 5:38 pm
Kontakt:

Zwiekszanie nazwy mc w petli

Post autor: TrueSign »

Witam.
Buduje system inventory i chce przechowywac swoje mc w array:
public var inventoryItems:Array = new Array();

Gdy postac zbierze przedmiot dodaje metoda push(); ten przedmiot do array i jak robie trace wszystko sie zgadza. Mam jednak probem z dodawaniem przedmiotow do slotow w inventory. Chcialem zrobic takie loop:

for(var i:uint = 0; i < inventoryItems.length; i++){
Inventory.itemSlot.addChild(inventoryItems);
}

Niestety skaldnia jest zla bo: itemSlot jest nieprawidlowe. Jakiej skaldni urzyc by kazdy kolejny przedmiot z mojej array dodawal do kolejnego slotu w inventory? Probowalem roznych kombinacje: ++, "",(), [] ale nic nie działa. Ktos zna prawidlowa skladnie zmiany numeracji instane name movieclipa?
Marek_bf
Administrator
Posty: 4419
Rejestracja: czw lut 24, 2005 2:14 am
Kontakt:

Re: Zwiekszanie nazwy mc w petli

Post autor: Marek_bf »

Kod: Zaznacz cały

Inventory["itemSlot" + i]

Kod: Zaznacz cały

var inventoryItems:Array = new Array(mc1,mc2,mc3);
var inventoryItemMc:MovieClip;//przechowuje instancje do poszczegolnych przedmiotow
var slot:MovieClip;// przechowuje instancje zawartosci slota
for (var i:uint = 0; i < inventoryItems.length; i++) {
	inventoryItemMc = inventoryItems[i];
	//wyzerowanie polozenia przedmiotow
	inventoryItemMc.x = inventoryItemMc.y = 0;
	//
	slot = Inventory["itemSlot" + i].addChild(inventoryItemMc);
	//
	trace(Inventory.name, " -> ", slot.parent.name, " -> ", slot.name)
}
ODPOWIEDZ