所以,在我的游戏中我创建了几个随机生成并向上移动的平台,游戏的目的是让玩家不断向下移动,并避免到达顶部,我左右移动工作正常,我有一个名为hittingPlatform的布尔值,它是假的,如果hittingPlatform等于true,我会在循环事件中向下移动播放器。
然而,当玩家确实击中它时,我将其设置为true,在循环事件中让他向上移动平台,我的问题是当他从平台上退回时,我需要将其设置为false。我尝试在碰撞检测中使用else语句,但是这不起作用,我不知道还能做什么,有什么建议吗?如果它没有意义/不够清楚,请告诉我!
var player:Player = new Player();
var platformOne:PlatformOne = new PlatformOne();
var platformTwo:PlatformTwo = new PlatformTwo();
var hittingPlatform:Boolean = false;
stage.addEventListener(Event.ENTER_FRAME,loopEvent);
player.addEventListener(Event.ENTER_FRAME,playerCollision);
function playerCollision(event:Event):void{
if(player.hitTestObject(platformOne)){
hittingPlatform = true;
}
else if(player.hitTestObject(platformTwo)){
hittingPlatform = true;
}
}
function loopEvent(event:Event):void{
if(!hittingPlatform){
player.y -= 5;
}
else if(hittingPlatform){
player.y += 5;
}
}
所以碰撞的地方,我只需要说明如果玩家离开那个特定的平台,它会回到假,我尝试了一个else语句,但由于有几个平台,任何帮助都没有用理解!
答案 0 :(得分:0)
ng-repeat
如何以这种方式编辑代码,以便每当玩家进入平台时,hittingPlatform设置为true,如果没有,则设置为false。