Flash AS 2,在玩家库存中堆叠物品

时间:2013-05-13 02:28:24

标签: flash stack actionscript-2 inventory

我有一个包含姓名的广告资源,现在我想要添加更多相同项目时名称会增加的数字。

商品代码:

_root.player_inventory = new Array(_root.array);

for (a = 0; a < _root.invslots; a++)
{
    _root.player_inventory[a] = "none";
}

堆叠代码:

_root.player_inventory[a] = new Array(_root.stackAmount);

for (b = 0; b < _root.stackAmount; b++)
{   
    _root.player_inventory[b] = 0;
    //player_inventory[a][b] = "[" + a + "][" + b + "]"; 

    //mainArrayTxt = "[" + a + "][" + b + "]"; 
    //b = 0;
}

我的物品代码很好;我只想添加堆叠。

enter image description here

我从本教程获得了代码:http://www.newgrounds.com/portal/view/448642

1 个答案:

答案 0 :(得分:0)

这样做的一种方法是:

商品代码:

_root.default_items = ["Food","Torch","Sword","Map","Hatchet"];

_root.player_inventory = new Array(_root.array);

for (a = 0; a < _root.invslots; a++)
//fill all inventory spots with "none"
{
    _root.player_inventory[a] = "none";

}

for (a = 0; a < _root.default_items; a++)
//set first spots to default items
{
    _root.player_inventory[a] = _root.default_items[a];
}

堆叠代码:

_root.default_stack = [10,1,1,1,1];

for (b = 0; b < _root.player_inventory; b++)
//set the amount to default stack or 0
{   
    if(_root.player_inventory[b] != "none")
    {
       _root,player_inventory[b].push(_root.default_stack[b]);
    } else {
       _root,player_inventory[b].push(0);
    }

}

最后,您的_root.player_inventory数组将具有以下值:

_root.player_inventory[0][0] returns Food
_root.player_inventory[0][1] returns 10

不幸的是我无法测试代码因为我的Flash版本太旧了,但这是一般的想法。