首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AS3平台生成

AS3平台生成
EN

Stack Overflow用户
提问于 2012-05-23 02:10:19
回答 2查看 200关注 0票数 0

我试图在玩家面前无限地生成平台x距离,但我几乎不知道从哪里开始。此外,它们不能相互“堆叠”。目前,我所拥有的是在下面,没有错误,虽然它占用了相当多的内存和我的游戏滞后到崩溃的闪存cs3的点

代码语言:javascript
运行
复制
function enterFrameHandler(e:Event):void{
    //gravitate the player
    _vy += 1.5;
    //move the player
    Player.x += _vx;
    Player.y += _vy;

    //process collisions
    processCollisions();
    //Process other collisions
    processOtherCollisions();
    //scroll the stage
    scrollStage();
    //Process Key Presses
    KeyHandler();
    //Process Lives once
    LifeHandler();
    //Generate Objects
    generateObjects();
}
//Function for generating objects
var ObjectArray:Array = [];
var ChildrenColliding:Boolean = false;
function generateObjects():void{
    if(_vx > 0){
        var Square:MovieClip;
        Square = new mcSquare();
        Square.x = Math.random() * 500 + Math.abs(_boundaries.x);
        Square.y = Math.random() * stage.stageHeight/2.5 + (stage.stageHeight/2.5);
        ObjectArray.push(Square);
        _boundaries.addChild(Square);
    }
    for(var i in ObjectArray){
        for(var a in ObjectArray){
            if(ObjectArray[a].hitTestObject(ObjectArray[i]) && a != i){
                ChildrenColliding = true;
            }
        }
        while(ChildrenColliding){
        ObjectArray[i].x = Math.random() * 500 + Math.abs(_boundaries.x);
        ObjectArray[i].y = Math.random() * stage.stageHeight/2.5 + (stage.stageHeight/2.5);
        }
    }

}
EN

回答 2

Stack Overflow用户

发布于 2012-05-23 02:27:50

您在此处显示的代码没有问题。将ObjectArray设置为[]是完全安全的,不应为空。这个故事肯定还有更多的内容。

你能发布这个类的其余代码吗?你有没有其他的代码来设置ObjectArray?必须有一行代码在其他位置设置ObjectArray,将其设置为null。

票数 0
EN

Stack Overflow用户

发布于 2012-05-23 04:21:37

为什么不干脆:

代码语言:javascript
运行
复制
ObjectArray.push(Square);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10707623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档