Мне нужен совет, пожалуйста. Я работаю над одним проектом - простой игрой. Это будет нечто вроде «Space Invaders». Я просто нуждался в том, чтобы угодить кораблю не мог покинуть этот район (этап). Функция, называемая «RMimoXY», не работает. Может кто-нибудь, пожалуйста, проверьте, что мне не хватает в программе?Как создать границу на этапе
Заранее благодарим за ваш совет.
import flash.events.KeyboardEvent;
import flash.display.Sprite;
import flash.display.DisplayObject;
import flash.media.Sound;
import flash.display.Stage;
var let: Boolean = false;
var pozadi: Stage;
var vx:Number = 0;
var vy:Number = 0;
function mezernik(){
var mySound: Sound = new laserFire();
mySound.play();
RMimoXY();
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, klavesnice);
function klavesnice(e: KeyboardEvent){
switch(e.keyCode){
case Keyboard.LEFT: lod.x += -5; break;
case Keyboard.RIGHT: lod.x += 5; break;
case Keyboard.UP: lod.y += -5; break;
case Keyboard.DOWN: lod.y += 5; break;
case Keyboard.SPACE: mezernik(); break;
}
}
function RMimoXY(){
if (lod.x > stage.stageWidth){
lod.x = 0 - lod.width;
}
else if (lod.x < 0 - lod.width){
lod.x = stage.stageWidth;
}
if (lod.y > stage.stageHeight){
lod.y = 0 - lod.height;
}
else if (lod.y < 0 - lod.height){
lod.y = stage.stageHeight;
}
}
Попробуйте запустить этот метод на каждом кадре, как: 'stage.addEventListener (Event.ENTER_FRAME, RMimoXY)', и изменить его определение как 'функции RMimoXY (e: Event): void' – Cherniv
Спасибо за ответ, но не работаем. – user3134756