gpt4 book ai didi

actionscript-3 - 我正在获取ArgumentError : Error #2025:

转载 作者:行者123 更新时间:2023-12-02 11:10:54 25 4
gpt4 key购买 nike

这是我的代码。请任何人可以帮助我。我是一个初学者。
它给我这个错误

ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller. at flash.display::DisplayObjectContainer/removeChild() at final2_fla::MainTimeline/loop()


import flash.events.Event;
import flash.events.MouseEvent;
var kUp:Boolean = false;
var kDn:Boolean = false;
var kLt:Boolean = false;
var kRt:Boolean = false;
var speedX:Number = 0;
var speedY:Number = 0;
var level:Array=new Array();
var scr:Number = 0;
var cn_arr:Array = new Array();
var score:Number = 0;
var rep:Replay=new Replay();
var player:Player=new Player();
addChild(player);
player.x=200;
player.y=250;
//scoreboard.txt.text = score.toString();
var camera = new Rectangle(0,0,stage.stageWidth,stage.stageHeight);
var scoreboard:ScoreBoard = new ScoreBoard();
addChild(scoreboard);
for (var i:int = 0; i< numChildren; i++)
{
if (getChildAt(i) is platform)
{
level.push(getChildAt(i).getRect(this));
//trace("ok");
}
}
for (i = 0; i<numChildren; i++)
{
if (getChildAt(i) is cn )
{
cn_arr.push(getChildAt(i));
}
}


function initGame(e:Event):void
{

stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
stage.addEventListener(Event.ENTER_FRAME, loop);
}

function keyPressed(e:KeyboardEvent):void
{
//trace("pressed");
if (e.keyCode == Keyboard.A)
{
kRt = true;
//trace("kRt");
}
if (e.keyCode == Keyboard.SPACE)
{
kUp = true;
//trace("Jump");

}
if (e.keyCode == Keyboard.D)
{
kLt = true;
//trace("kRt");
}
if (e.keyCode == Keyboard.S)
{
kDn = true;
//trace("kRt");
}
}

function keyReleased(e:KeyboardEvent):void
{
//trace("notpressed");
if (e.keyCode == Keyboard.A)
{
kRt = false;
//trace("UnkRt");
}
if (e.keyCode == Keyboard.SPACE)
{
kUp = false;
//trace("UnkYUp");
}
if (e.keyCode == Keyboard.D)
{
kLt = false;
//trace("UnkLT");
}
if (e.keyCode == Keyboard.S)
{
kDn = false;
//trace("UnkDN");
}
}

stage.addEventListener(Event.ENTER_FRAME,initGame);


function loop(e:Event):void
{
if (kRt)
{
speedX = -5;
}
else if (kLt)
{
speedX = 5;
}
else
{
speedX *= 0.5;
}

player.x += speedX;

for (i=0; i<level.length; i++)
{
if (player.getRect(this).intersects(level[i]))
{
if (speedX> 0)
{
player.x = level[i].left - player.width / 2;

}
if (speedX < 0)
{
player.x = level[i].right + player.width / 2;
}
speedX = 0;
}

}

var jumpable:Boolean = false;
speedY += 1;

player.y += speedY;

for (i=0; i<level.length; i++)
{
if (player.getRect(this).intersects(level[i]))
{
if (speedY > 0)
{
player.y = level[i].top - player.height / 2;
speedY = 0;
jumpable = true;
//player.gotoAndStop("jump");

}
if (speedY < 0)
{
player.y = level[i].bottom + player.height / 2;
speedY *= -0.5;
}
}
}
for (var j:int=0; j<cn_arr.length; j++)
{
if ((cn_arr[j]).hitTestObject(player))
{
removeChild(cn_arr[j]);
//removeChild(cn_arr[j]);
score += 2;
//var a:String=scr.toString();
scoreboard.txt.text = score.toString();

//score.x=50;


}
}
if (kUp && jumpable)
{
speedY = -15;
}


if(player.hitTestObject(ground))
{
removeChild(player);
addChild(rep);
rep.x=stage.stageWidth/2;
rep.y=stage.stageHeight/2;

rep.btn_re.addEventListener(MouseEvent.CLICK,oncl);

function oncl(e:MouseEvent):void
{
removeChild(rep);
addChild(player);
player.x=166;
player.y=205;
}
}
scoreboard.x = camera.x + 280;
scoreboard.y = camera.y + 370;
/*trace(scoreboard.y + " score");
trace(camera.y);*/

camera.x = (player.x - camera.width+150);
camera.y = (player.y - camera.height+250);



if (camera.x >= 2000)
{
camera.x = 2000;
}

if (camera.x <= 0)
{
camera.x = 0;
}
if (camera.y >= 0)
{
camera.y = 0;
}
if (camera.y <= -610)
{
camera.y = -610;
}
scrollRect = camera;

}

enter code here

最佳答案

此错误意味着您尝试删除的 child 不在显示列表中。因此,在所有使用(例如)displayObject.removeChild(child);的地方,都应首先使用if (displayObject.contains(child)) { // do removal }对其进行检查。这将解决您的错误。

关于actionscript-3 - 我正在获取ArgumentError : Error #2025:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23034774/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com