【问题标题】:How to clone an object in as3如何在 as3 中克隆一个对象
【发布时间】:2017-09-18 09:59:26
【问题描述】:

我对 as3 很陌生,但我正在制作的游戏需要使用克隆。我将如何制作它们(我知道这涉及使用孩子的东西,但我不知道如何制作它们)?我还需要创建一个函数,将它们的位置设置为屏幕上的随机位置,我该怎么做?我不确定如何在不移动所有 50 个位置的情况下引用克隆的 x 和 y 位置。 谢谢

【问题讨论】:

    标签: actionscript-3 actionscript


    【解决方案1】:

    克隆任何东西的最佳方法是将 AS3 类分配给 Library 项目(假设您将类命名为 SomeThing),然后使用 new 实例化它运算符并使用 addChild(...) 方法添加到显示列表。

    import SomeThing;
    
    // Lets create a list to keep things.
    var things:Vector.<SomeThing> = new Vector.<SomeThing>;
    
    function addThing():SomeThing
    {
        // Create.
        var result:SomeThing = new SomeThing;
    
        // Put it to a list for further reference.
        things.push(result);
    
        // Add it to display list.
        addChild(result);
    
        return result;
    }
    
    // Create one thing.
    // This one will go to (0,0) coordinates.
    addThing();
    
    // You can create several things.
    for (var i:int = 0; i < 100; i++)
    {
        var aThing:SomeThing = addThing();
    
        aThing.x = 100 + 200 * Math.random();
        aThing.y = 100 + 100 * Math.random();
    }
    
    // Now you can address things via list access.
    things[49].x = 50;
    things[49].y = 50;
    

    【讨论】:

    • @NealDavis 如果构造函数不需要强制参数,则 () 也可以省略。没关系。
    猜你喜欢
    • 2011-12-19
    • 2018-11-27
    • 1970-01-01
    • 2014-08-09
    • 2013-10-11
    • 2015-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多