Actionscript 3 试图创建碰撞
它只与第一面墙碰撞,而不是与阵列中的每面墙碰撞。我什么都试过了,但我想不出来我是actionscrip3的新手,所以我不知道该怎么办。谢谢 您没有按需要在数组中循环。它应该更像这样:Actionscript 3 试图创建碰撞,actionscript-3,flash,adobe,Actionscript 3,Flash,Adobe,它只与第一面墙碰撞,而不是与阵列中的每面墙碰撞。我什么都试过了,但我想不出来我是actionscrip3的新手,所以我不知道该怎么办。谢谢 您没有按需要在数组中循环。它应该更像这样: var i:int = 0; stage.focus=stage; var Walls:Array = [Wall,Wall1]; addEventListener(Event.ENTER_FRAME,HitDetection); function HitDetection(event:Event):void{
var i:int = 0;
stage.focus=stage;
var Walls:Array = [Wall,Wall1];
addEventListener(Event.ENTER_FRAME,HitDetection);
function HitDetection(event:Event):void{
stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDown);
function myKeyDown(e:KeyboardEvent):void
{
{
if (e.keyCode == Keyboard.LEFT)
{
if (KeemStar1.hitTestObject(Walls[i])) {
trace("1")
KeemStar1.x -=-0.1;
}
else
{
KeemStar1.x -=0.1;
}
}
if (e.keyCode == Keyboard.RIGHT)
{
{
if (KeemStar1.hitTestObject(Walls[i])) {
KeemStar1.x -=-0.1;
trace ("n")
}
else
{
KeemStar1.x +=0.1;
}
}
}
}
}
}
将条件
替换为您想要的任何内容(如KeemStar1.hitTestObject(Walls[i])
),并将//code
替换为条件为真时应发生的内容
你应该学会缩进正确的数量,并摆脱所有疯狂的空白。这使它几乎无法阅读。我必须仔细检查并纠正缩进和空格过多,才意识到括号错了。您没有按需要在数组中循环。它应该更像这样:
var i:int = 0;
stage.focus=stage;
var Walls:Array = [Wall,Wall1];
addEventListener(Event.ENTER_FRAME,HitDetection);
function HitDetection(event:Event):void{
stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDown);
function myKeyDown(e:KeyboardEvent):void
{
{
if (e.keyCode == Keyboard.LEFT)
{
if (KeemStar1.hitTestObject(Walls[i])) {
trace("1")
KeemStar1.x -=-0.1;
}
else
{
KeemStar1.x -=0.1;
}
}
if (e.keyCode == Keyboard.RIGHT)
{
{
if (KeemStar1.hitTestObject(Walls[i])) {
KeemStar1.x -=-0.1;
trace ("n")
}
else
{
KeemStar1.x +=0.1;
}
}
}
}
}
}
将条件
替换为您想要的任何内容(如KeemStar1.hitTestObject(Walls[i])
),并将//code
替换为条件为真时应发生的内容
你应该学会缩进正确的数量,并摆脱所有疯狂的空白。这使它几乎无法阅读。我必须仔细检查并纠正你的缩进和多余的空白,才意识到你的括号错了
if (condition){
// code
}