Minggu, 24 April 2016

AS3 Load hide menu dengan tombol dalam movieclip

Sering kali ada sahabat dari facebook atau medsos yang lain menanyakan bisa gag memasang tombol dalam movieclip, bisa gag menu utama tidak frame sendiri tetapi berbentuk movie clip yang di load. Sering kali juga jawaban saya tidak memuaskan... maaf. Untuk memperjelas jawaban saya maka saya buat postingan ini. Dalam postingan ini menu utama tersebunyi dan akan di load menempel dalam tampilan (bukan frame tersendiri). Selain itu tampilan menu yang di load terdapat tombol-tombol navigasi ke scene yang lain. Tidak usah bertele-tele langsung aja coba...
LANGKAH - LANGKAH
  1. Buat proyek baru dengan format AIR for Android atau AS3 sesuai kebutuhan anda.
  2. Buat movieclip baru dengan Insert>New Symbol.
  3. pasangkan AS Linkage pada movie clip tersebut dengan nama "simenu".
  4. Dalam mc baru tersebut pasang gambar/tulisan sebagai penanda tampilan dan pasang dua tombol dengan instant name "btmn1" dan "btmn2".
  5. Kembali ke root dan pasang tombol dengan instant name "btmenu"
  6. Ganti mana scene menjadi "menu1".
  7. Isikan AS3 di frame awal, seperti pada list dibawah ini
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    import flash.events.MouseEvent;
    import flash.display.MovieClip;

    var mcmenu:MovieClip = new simenu();
    mcmenu.x = 400;//atur koordinat x mc
    mcmenu.y = 250;//atur koordinat y mc

    var simc:Boolean = false;

    function tutupmcmenu()
    {
     removeChild(mcmenu);
     simc = false;
    }

    function clikloadmc(event:MouseEvent):void
    {
     if (simc)
     {
      tutupmcmenu();
     }
     else
     {
      addChild(mcmenu);
      simc = true;
     }
    }
    function clikmenu1(event:MouseEvent):void
    {
     tutupmcmenu();
     gotoAndStop(1, "menu1");
    }
    function clikmenu2(event:MouseEvent):void
    {
     tutupmcmenu();
     gotoAndStop(1, "menu2");
    }

    mcmenu.btmn1.addEventListener(MouseEvent.CLICK, clikmenu1);
    mcmenu.btmn2.addEventListener(MouseEvent.CLICK, clikmenu2);

    stop();
    btmenu.addEventListener(MouseEvent.MOUSE_UP,clikloadmc);
  8. Simpan dan coba di emulator dengan menekan Control enter.
  9. Untuk implementasi pada aplikasi pasangkan as pada line - pada bagian awal yang hanya di load sekali, misalnya bagian akhir dari opening. Jadi scene isi hanya berisi tombol menu dan AS pada line terakhir seperti menu 2

Selamat Mencoba

4 komentar:

  1. Permisi pak Toni, Saya mau tanya...
    Bagaimana cara membuat level seperti Game Angry Bird?
    Saya coba buat, tapi ketika game saya tutup dan kemudian saya buka kembali semua level kembali ter Lock semua...
    Bagaimana kita menyimpan level berikutnya...
    ------------
    stop();
    unlock2.alpha = 0;
    unlock2.visible = false;
    unlock3.alpha = 0;
    unlock3.visible = false;
    unlock4.alpha = 0;
    unlock4.visible = false;
    unlock5.alpha = 0;
    unlock5.visible = false;
    unlock6.alpha = 0;
    unlock6.visible = false;
    unlock7.alpha = 0;
    unlock7.visible = false;
    unlock8.alpha = 0;
    unlock8.visible = false;
    unlock9.alpha = 0;
    unlock9.visible = false;
    unlock10.alpha = 0;
    unlock10.visible = false;

    //-------------------
    unlock.addEventListener(MouseEvent.CLICK,clikkompe1);
    function clikkompe1(event:MouseEvent):void
    {
    gotoAndStop(1, "quiz1");
    }
    unlock2.addEventListener(MouseEvent.CLICK,clikkompe2);
    function clikkompe2(event:MouseEvent):void
    {
    gotoAndStop(1, "quiz2");
    }
    unlock3.addEventListener(MouseEvent.CLICK,clikkompe3);
    function clikkompe3(event:MouseEvent):void
    {
    gotoAndStop(1, "quiz3");
    }

    itu script yang saya buat pada scene menu...
    Mohon pencerahannya ...
    Terima Kasih Sebelumnya

    BalasHapus
  2. Coba manfaatkan chace, caranya ada di postingan yg lain

    BalasHapus
  3. Coba manfaatkan chace, caranya ada di postingan yg lain

    BalasHapus