如何阻止可移动对象(通过箭头键移动)离开 Adob​​e Flash Professional CS6 Action Script 3.0 中的舞台

How to stop a movable object (which moves via the arrow keys) from going off the stage in Adobe Flash Professional CS6 Action Script 3.0

您好,我目前正在使用 Adob​​e Flash Professional CS6 创建游戏。我有一个角色,实例名称为 "alien"。 到目前为止,我只能编写我的游戏代码,使外星人不能离开舞台的顶部或左侧。我不知道如何编写代码,这样外星人就不会离开舞台的底部或右侧。我的编码如下:

if((alien.x) < (alien.width/2)){
      alien.x += 10;
}
if((alien.y) < (alien.width/2)){
      alien.y += 10;
}

感谢您的宝贵时间。

使用stage.stageWidthstage.stageHeight值来确定舞台区域的大小。使用 矩形 不是强制性的,但我喜欢它的自解释性。

import flash.geom.Rectangle;

// new Rectangle(left, top, width, height)
var aBounds:Rectangle = new Rectangle(
    alien.width / 2,
    alien.height / 2,
    stage.stageWidth - alien.width,
    stage.stageHeight - alien.height
);

if (alien.y < aBounds.top) alien.y = aBounds.top;
if (alien.x < aBounds.left) alien.x = aBounds.left;
if (alien.x > aBounds.right) alien.x = aBounds.right;
if (alien.y > aBounds.bottom) alien.y = aBounds.bottom;