I do not understand how you present this inventory system: what does it look like? how it works?
, , ( csv, LoadVars, xml ..), .
:
- (txt, xml ..)
- - invetory,
(, , ..).
- draw/render ( / , , ..).
,
MovieClipLoader. LoadMovie() MovieClip, MovieClipLoader ( , (%), ..) loadMovie().
, , , .
:
var dataProvider:Array = [];
var dummyItems:Number = 20;
for(var i:Number = 0 ; i < dummyItems ; i++) dataProvider[i] = {label:'item '+i,source:'http://stackexchange.com/images/icon/stackoverflow.com'};
var inventory:MovieClip = this.createEmptyMovieClip('inventory',1);
var inventoryMask:MovieClip = this.createEmptyMovieClip('inventoryMask',2);
inventoryMask.beginFill(0);inventoryMask.lineTo(Stage.width,0);inventoryMask.lineTo(Stage.width,50);inventoryMask.lineTo(0,50);inventoryMask.lineTo(0,0);inventoryMask.endFill();
inventory.setMask(inventoryMask);
for(i = 0 ; i < dummyItems ; i++) makeInventoryRenderItem(dataProvider[i],inventory,i);
inventory.onRollOver = function():Void{
inventory.onEnterFrame = function(){
inventory._x = -_xmouse;
}
}
inventory.onRollOut = function():Void{
delete inventory.onEnterFrame;
}
function makeInventoryRenderItem(data:Object,container:MovieClip,index:Number):Void {
var renderItem:MovieClip = container.createEmptyMovieClip(data.label,index);
var loader:MovieClipLoader = new MovieClipLoader();
loader.loadClip(data.source,renderItem);
var handler:Object = new Object();
handler.onLoadInit = function(target:MovieClip):Void{
target._x = (target._width + 2) * index;
var label:TextField = renderItem.createTextField(data.label+'Label',renderItem.getNextHighestDepth(),0,0,40,22);
label.text = data.label;
}
loader.addListener(handler);
}
:

, / , , .
:
, , ( 70 bload ). , , , , .
List XMLConnector:
,
ls
XMLConnector ( Data) xml
- XML , .
:
<data>
<item label="item 1" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 2" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 3" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 4" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 5" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 6" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 7" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 8" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 9" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 10" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 11" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 12" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 13" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 14" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 15" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 16" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 17" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 18" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 19" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
<item label="item 20" source="http://stackexchange.com/images/icon/stackoverflow.com"/>
</data>
URL XML ,
.
- XML- XML-, "" XML . , "" " ". , . , , .

, xml, .
, / xml, . , + "" " ":

" ", "" "".

item, - , xml, , , ([n]) .
- -, , . , :

Bound To. .

, . -, xml , .
MovieClip , 50x50, stackoverflow (48x48), ActionScript (Linkage)
7 ActionScript.
xml-, defaultIcon, , / , :
xml.trigger();
ls.setStyle('defaultIcon','Icon');
ls.setStyle('useRollOver',false);
ls.rowHeight = 48;
3 , ( ), , , , .
MovieClip:
var index:Number = parseInt(_parent._name.substr(7))-10;
var image:MovieClip = createEmptyMovieClip('image',1);
image.loadMovie(_parent._parent._parent.dataProvider.getItemAt(index).source);
, XML :

, . , , Cell Renderer, . flash-db .
UPDATE:
.
@gmale , attachMovie - , , .
:
theContainerForYourItem.attachMovie('itemLinkageName','someOptionalName',depth);
, itemSize ( , , ):
var selectedItem:MovieClip;
var itemSize:Number = 67;
var inventoryIds:Array = ["New","Folder","Disk","Mail","Graph"];
var inventory:MovieClip = this.createEmptyMovieClip("inventory",0);
var level:MovieClip = this.createEmptyMovieClip("level",1);
for(var i:Number = 0 ; i < inventoryIds.length ; i++){
var itemContainer:MovieClip = inventory.createEmptyMovieClip('item'+i,i);
itemContainer.lineStyle(1);itemContainer.beginFill(0,0),itemContainer.lineTo(itemSize,0);itemContainer.lineTo(itemSize,itemSize);itemContainer.lineTo(0,itemSize);itemContainer.lineTo(0,0);itemContainer.endFill();
itemContainer._x = (itemSize+2) * i;
itemContainer.attachMovie(inventoryIds[i],'icon',0);
itemContainer.onPress = itemSelected;
}
function itemSelected():Void{
if(lastItem != undefined) restoreItemToInventory();
trace('selected item is: ' + inventoryIds[this.getDepth()]);
this.getInstanceAtDepth(0).removeMovieClip();
delete this.onPress;
lastItem = this;
var levelItem:MovieClip = level.attachMovie(inventoryIds[this.getDepth()],'icon',0);
levelItem._x = Stage.width * .5;level._y = Stage.height * .5;
levelItem.onPress = itemUsed;
}
function restoreItemToInventory():Void{
lastItem.attachMovie(inventoryIds[lastItem.getDepth()],'icon',0);
lastItem.onPress = itemSelected;
}
function itemUsed():Void{
this.removeMovieClip();
trace('item is: ' + inventoryIds[lastItem.getDepth()] + ' was used');
restoreItemToInventory();
}
, . , , , , , , , / . , , , , .
( ) , ..., , , Array, splice(), , . .