как заставить объект двигаться в определенной позиции flash as3 - PullRequest
0 голосов
/ 25 сентября 2019

Я делаю объект MC.этот объект может двигаться вправо и влево с помощью клавиатуры.детали - когда я нажимаю правую кнопку, она перемещается в правую позицию в определенной координате, а когда я нажимаю левую кнопку, она перемещается в левую позицию в определенной координате.Я хочу, чтобы объект просто перемещался в 3 позиции.

для этого случая я пытался использовать массив.

var P:Array = [new Point(100, 300), new Point(275, 300), new Point(425, 300)];
var M:Array = [Kotak];

, но когда я вводил их в свой код, он не работал иошибка не появляется.Кто-нибудь может сказать мне, где моя вина?

это мой полный код:

import flash.geom.Point;

//gerak pemain
var pemainKanan:Boolean = false;
var pemainTengah:Boolean = false;
var pemainKiri:Boolean = false;

//kecepatan
var kecepatanPemain:int = 20;

        //Array object acak
    var P:Array = [new Point(100, 300), new Point(275, 300), new Point(425, 300)];
    var M:Array = [Kotak];
    //var P:Point = new Point(100, 300);


Kotak.addEventListener(KeyboardEvent.KEY_UP, k);
function k(e:KeyboardEvent):void{
    if(e.keyCode == Keyboard.RIGHT){
            pemainKanan = false;
        }
        if(e.keyCode == Keyboard.LEFT){
            pemainKiri = false;
        }
}

Kotak.addEventListener(KeyboardEvent.KEY_DOWN, kk);
function kk(e:KeyboardEvent):void{
    if(e.keyCode == Keyboard.RIGHT){
            pemainKanan = true;
        }
        if(e.keyCode == Keyboard.LEFT){
            pemainKiri = true;
        }
}

Kotak.addEventListener(Event.ENTER_FRAME, eframe);
    function eframe(e:Event):void{
        if(pemainKanan == true){
            //pemain.gotoAndStop("right");
            Kotak.x = P[0];
        }
        else if(pemainKiri == true){
            //pemain.gotoAndStop("left");
            Kotak = P[1];
        }
    }

...