lawang code

lawang Code


Tanyakan kode disini

TypeError: Error #1009: Cannot access a property or method of a null object reference.

ditanyakan oleh tamara 2 bulan yang lalu

saya baru di flash as3. saya membuat sebuah game dengan 2 scene. scene pertama ada button untuk ke scene 2, begitu juga scene 1 ada button untuk ke scene 1.

permasalahan saya : sewaktu saya klik button di secene 2, addchild yang saya buat di scene 2 ikut terlihat di scene 1. trus kalo saya klik lagi button di scene 1, semua object di scene 2 bergerak lebih cepat dari sebelumnya.

code : SCENE 1 stop();

stage.displayState = StageDisplayState.FULL_SCREEN; fscommand("allowscale", "true");

//start game tombolplay.addEventListener(MouseEvent.CLICK, start); function start(e:MouseEvent) { gotoAndStop("play","play"); }

SCENE 2 import flash.display.MovieClip; import flash.events.*;

//import flash.ui.Keyboard;

stop();

bt_home.addEventListener(MouseEvent.CLICK, backhome); function backhome(e:MouseEvent):void{ gotoAndStop("Home","home"); }

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

//batas pemain var jarakKanan = pemain.width4.1; var jarakKiri = pemain.width4.1;

//kecepatan var kecepatanPemain:int = 20; var kecepatanRintangan:int = 10;

//object baru var batu:MovieClip = new batu_mc(); var batu1:MovieClip = new batu_mc();

var Batumc:batu_mc = new batu_mc(); // creates a instance of the movieclip, i.e, an object var Batumc1:batu_mc = new batu_mc();

//===============================rintangan=======================================

//batu addChild(batu); batu.x = 190.1; batu.y = 36.4;

    addChild(batu1);
    batu1.x = 360.1;
    batu1.y = 36.4;

//batas batu var BatasBatu = batu.width/12;

//==================================FUNCTION========================================= //get random number function randomX(minNum:Number, maxNum:Number):Number{ return (Math.floor(Math.random() * (maxNum - minNum + 1)) + minNum); }

//================================NAVIGASI===================================================== stage.addEventListener(KeyboardEvent.KEY_DOWN, buttonpress); function buttonpress(e:KeyboardEvent):void{ if(e.keyCode == Keyboard.RIGHT){ pemainKanan = true; } if(e.keyCode == Keyboard.LEFT){ pemainKiri = true; } if(e.keyCode == Keyboard.DOWN){ //pemainTengah = true; } }

stage.addEventListener(KeyboardEvent.KEY_UP, buttonUp); function buttonUp(e:KeyboardEvent):void{ if(e.keyCode == Keyboard.RIGHT){ pemainKanan = false; } if(e.keyCode == Keyboard.LEFT){ pemainKiri = false; } if(e.keyCode == Keyboard.DOWN){ //pemainTengah = false; } }

//====================================Kejadian Berlangsung===================================== pemain.addEventListener(Event.ENTER_FRAME, eframe); function eframe(e:Event):void{ //pemain bergerak kanan-kiri if(pemainKanan == true){ //pemain.gotoAndStop("right"); pemain.x += kecepatanPemain; } else if(pemainKiri == true){ //pemain.gotoAndStop("left"); pemain.x -= kecepatanPemain; } else if(pemainTengah == true){ pemain.gotoAndStop("middle"); }

    //batas gerak pemain
    while (rumput_mc.hitTestPoint(pemain.x+jarakKanan, pemain.y, true)) {
        pemain.x++;
    }
    while (rumput_mc.hitTestPoint(pemain.x-jarakKiri, pemain.y, true)) {
        pemain.x--;
    }

    /*if(pemain.hitTestObject(batu)){
        batu.y -= kecepatanRintangan;
        pemain.gotoAndPlay("jatuh");

        //removeChild(batu);
        gotoAndStop("kalah","lose");

    }
    else if(pemain.hitTestObject(batu1)){
        pemain.gotoAndStop("jatuh");

    }*/


}

batas_mc.addEventListener(Event.ENTER_FRAME, rintangan); function rintangan(e:Event):void{ //gerakan batu awal batu.y += kecepatanRintangan; batu1.y += kecepatanRintangan;

    //batu menghilang saat sampai bawah
    if(batas_mc.hitTestPoint(batu.x, batu.y+BatasBatu, true)) {
        //duplicateMovieClip(Batu2);
        //e.currentTarget.parent.removeChild(batu);
        batu.visible = false;
        batu1.visible = false;

        //muncul batu baru dengan var baru
        addChild(Batumc);
        Batumc.x = randomX(125, 531);
        Batumc.y = 50;

        //addChild(Batumc1);
        //Batumc1.x = randomX(360, 560);
        //Batumc1.y = 50;

    }
    Batumc.y += kecepatanRintangan;
    Batumc1.y += kecepatanRintangan;

    //pengulangan permunculan batu baru
    if(batas_mc.hitTestPoint(Batumc.x, Batumc.y+BatasBatu, true)) {
        //duplicateMovieClip(Batu2);
        removeChild(Batumc);
        //removeChild(Batumc1);

        addChild(Batumc);
        Batumc.x = randomX(125, 531);
        Batumc.y = 50;

        //addChild(Batumc1);
        //Batumc1.x = randomX(360, 560);
        //Batumc1.y = 50;
    }

}

Anda harus login terlebih dahulu untuk memberikan komentar

Recent Tag

X 6
X 48
X 14
X 10
X 1
X 5
X 4
X 18
X 10

Bantuan

Help

Feedback

Help