Page 1 of 2 12 LastLast
Results 1 to 10 of 19

Thread: press keyboard

  1. #1
    high dream is offline Laskar Babaflash
    Join Date
    Sep 2011
    Posts
    40

    Default press keyboard

    halo pak saya baru di sini,saya lagi belajar action script 2 dasar, saya lagi bikin projek namun mengalami kendala,jd saya minta bantuanya,,,,
    projek saya memiliki 3 layer
    *layer1 saya kasih frame sebanyak 5 frame masing2 atau per frame saya kasih gambar,
    frame 1 di kasih gambar angka1,frame 2 di kasih gambar 2 begitu sterusnya sampai frame5
    *layer2 saya saya kasih script stop tiap framenya
    *layer 3 saya satuin smua framenya trus di pasang script
    onEnterFrame=function(){
    if(Key.isDown(Key.SpACE))
    nextFrame();
    }
    setelah di publish berhasil pindah ke frame slanjutnya tiap saya tekan tombol spasi,namun setelah saya tahan tombol spasinya malah frame jalan trus ga berhanti,gimana yah biar frame pindah lalu berhenti di frame selanjutnya saat tombol spasi di tekan sekali atau di tahan,,,,atau mungkin ada script alternatif......

  2. #2
    42Unregistered is offline Flash Geek
    Join Date
    Nov 2008
    Posts
    805

    Default

    kita deteksi sewaktu key diangkat, bukan sewaktu ditekan. jadi ditahan berapa lamapun, perintah nextframe belum dijalankan

    kibord = new Object();
    kibord.onKeyUp = function() {
    tuts = Key.getCode();
    if (tuts==Key.SPACE) {
    nextFrame();
    }
    };
    Key.addListener(kibord);
    Last edited by 42Unregistered; 09-24-2011 at 09:24 AM.

  3. #3
    iwonk's Avatar
    iwonk is offline Pahlawan BabaFlash
    Join Date
    Jun 2009
    Location
    KLU
    Posts
    122

    Wink

    Quote Originally Posted by 42Unregistered View Post
    kita deteksi sewaktu key diangkat, bukan sewaktu ditekan. jadi ditahan berapa lamapun, perintah nextframe belum dijalankan

    kibord = new Object();
    kibord.onKeyUp = function() {
    tuts = Key.getCode();
    if (tuts==Key.SPACE) {
    nextFrame();
    }
    };
    Key.addListener(kibord);
    thanks bro, bermanfaat sekali.

  4. #4
    high dream is offline Laskar Babaflash
    Join Date
    Sep 2011
    Posts
    40

    Default

    ok mas bisa di jalanin movie ku,,makasih banyak...sebelumnya saya dah coba script alternatif yg di mana saya harus membuat clip dahulu..scriptnya
    onClipEvent(keyUp)
    {nextFrame();
    }
    berhasih pindah bertahap namun semua tombol di keyboard malah bisa di tekan semua,beda dengan script
    onClipEvent(keyDown){
    if(Key.isDown(Key.SpACE))
    nextFrame();
    }
    di mana kita bisa membuat satu keyboard saja yang di tekan,,
    kalo boleh tau minta penjelasanya dong mas dari scriptnya yang mas kasih perbaris,percuma kalo saya ga bisa memahaminya...arigatou

  5. #5
    42Unregistered is offline Flash Geek
    Join Date
    Nov 2008
    Posts
    805

    Default

    onClipEvent(keyUp)
    {nextFrame();
    }

    kode ini, tentu saja membuat semua tombol keyboard bisa ditekan, karena "key" apa tidak dijelaskan.

    jika ingin membuat tombol space, mesti didefinisikan tombolnya. karena ini event movieclip, maka utk memajukan frame di root, pakai this._parent. jadinya spt ini:

    onClipEvent(keyUp)
    {
    if (Key.getCode() == Key.SPACE) {
    this._parent.nextFrame();
    }
    }


    kode ini hanya mendeteksi saat key ditekan, jadinya nextframe dijalankan terus menerus.
    onClipEvent(keyDown){
    if(Key.isDown(Key.SpACE))
    nextFrame();
    }

    ini sama dengan keypress main game, ketika tombol kanan/kiri ditekan, karakternya jalan terus tanpa berhenti.

    sementara kode ini:
    kibord = new Object();//kita mencatatkan objek bernama "kibord" untuk menerima event tombol keyboard
    kibord.onKeyUp = function() { //fungsi kibord menerima keyboar diangkat
    tuts = Key.getCode(); // tombol keyboard yang diangkat?
    if (tuts==Key.SPACE) {
    nextFrame(); //jalankan perintah nextframe jika keyboarnya space
    }
    };
    Key.addListener(kibord); //kode akhir adalah menyuruh flash mendengarkan event keyboard bernama kibord.


    kita bisa tidak perlu membuat objek baru, tapi memakai movieclip sebagai objek yang menerima keyboard event. misalnya ini kode dalam frame di root.

    function onKeyUp():Void
    {
    if (Key.getCode()==32) {
    nextFrame();
    }
    };
    Key.addListener(this);


    jika kita memakai movieclip dan kodenya di dalam timeline movieclip, dalam kodenya , nextFrame menjadi this._parent.nextFrame, karena kita ingin membuat frame di root yang berjalan:
    function onKeyUp():Void
    {
    if (Key.getCode()==32) {
    this._parent.nextFrame();
    }
    };
    Key.addListener(this);


    apa itu "Key.getCode()==32" itu kode utk tombol "space".
    Di flash ada kode key property bisa diakses melalui Key.getCode() atau Key.getAscii();
    untuk beberapa tombol, flash membuatnya property key, misalnya. Key.SPACE, Key.DOWN, Key.UP, Key.ENTER dll.
    Umumnya tombol seperti ini tidak bisa dibaca stringnya, dan sebagian besar nilai ascii-nya adalah 0. kecuali space, asciinya sama dengan code, yakni 32. sementara tombol enter, ascii dan codenya sama-sama 13.

    jadi tidak soal kita mau buat begini:
    if (Key.getCode()==32)
    atau
    if (Key.getCode()==Key.SPACE)
    atau
    if (Key.getAscii()==32)
    atau
    if (Key.getAscii()==Key.SPACE)

    sama saja


    Misalnya, tombol "g" punya nilai ascii=103, nilai code=71, sementara "G" punya ascii=71 dan code=71. jika kita ambil stringnya dengan String.fromCharCode(Key.getAscii()) maka flash akan membacanya sebagai "g".
    tapi, String.fromCharCode(Key.getAscii()) utk tombol SPACE, ENTER, UP, RIGHT, DOWN, LEFT, tidak ada.

    semoga bermanfaat

  6. #6
    Elcha is offline Anggota BabaFlash
    Join Date
    Aug 2011
    Posts
    17

    Default

    Quote Originally Posted by 42Unregistered View Post
    onClipEvent(keyUp)
    {nextFrame();
    }

    kode ini, tentu saja membuat semua tombol keyboard bisa ditekan, karena "key" apa tidak dijelaskan.

    jika ingin membuat tombol space, mesti didefinisikan tombolnya. karena ini event movieclip, maka utk memajukan frame di root, pakai this._parent. jadinya spt ini:

    onClipEvent(keyUp)
    {
    if (Key.getCode() == Key.SPACE) {
    this._parent.nextFrame();
    }
    }


    kode ini hanya mendeteksi saat key ditekan, jadinya nextframe dijalankan terus menerus.
    onClipEvent(keyDown){
    if(Key.isDown(Key.SpACE))
    nextFrame();
    }

    ini sama dengan keypress main game, ketika tombol kanan/kiri ditekan, karakternya jalan terus tanpa berhenti.

    sementara kode ini:
    kibord = new Object();//kita mencatatkan objek bernama "kibord" untuk menerima event tombol keyboard
    kibord.onKeyUp = function() { //fungsi kibord menerima keyboar diangkat
    tuts = Key.getCode(); // tombol keyboard yang diangkat?
    if (tuts==Key.SPACE) {
    nextFrame(); //jalankan perintah nextframe jika keyboarnya space
    }
    };
    Key.addListener(kibord); //kode akhir adalah menyuruh flash mendengarkan event keyboard bernama kibord.


    kita bisa tidak perlu membuat objek baru, tapi memakai movieclip sebagai objek yang menerima keyboard event. misalnya ini kode dalam frame di root.

    function onKeyUp():Void
    {
    if (Key.getCode()==32) {
    nextFrame();
    }
    };
    Key.addListener(this);


    jika kita memakai movieclip dan kodenya di dalam timeline movieclip, dalam kodenya , nextFrame menjadi this._parent.nextFrame, karena kita ingin membuat frame di root yang berjalan:
    function onKeyUp():Void
    {
    if (Key.getCode()==32) {
    this._parent.nextFrame();
    }
    };
    Key.addListener(this);


    apa itu "Key.getCode()==32" itu kode utk tombol "space".
    Di flash ada kode key property bisa diakses melalui Key.getCode() atau Key.getAscii();
    untuk beberapa tombol, flash membuatnya property key, misalnya. Key.SPACE, Key.DOWN, Key.UP, Key.ENTER dll.
    Umumnya tombol seperti ini tidak bisa dibaca stringnya, dan sebagian besar nilai ascii-nya adalah 0. kecuali space, asciinya sama dengan code, yakni 32. sementara tombol enter, ascii dan codenya sama-sama 13.

    jadi tidak soal kita mau buat begini:
    if (Key.getCode()==32)
    atau
    if (Key.getCode()==Key.SPACE)
    atau
    if (Key.getAscii()==32)
    atau
    if (Key.getAscii()==Key.SPACE)

    sama saja


    Misalnya, tombol "g" punya nilai ascii=103, nilai code=71, sementara "G" punya ascii=71 dan code=71. jika kita ambil stringnya dengan String.fromCharCode(Key.getAscii()) maka flash akan membacanya sebagai "g".
    tapi, String.fromCharCode(Key.getAscii()) utk tombol SPACE, ENTER, UP, RIGHT, DOWN, LEFT, tidak ada.

    semoga bermanfaat
    mantap, nambah ilmu

  7. #7
    high dream is offline Laskar Babaflash
    Join Date
    Sep 2011
    Posts
    40

    Default

    oce thank you .berguna mas,..........mantap

  8. #8
    high dream is offline Laskar Babaflash
    Join Date
    Sep 2011
    Posts
    40

    Default

    o ya mas ada lagi nih,,kira2 ada yg tau ga cara membuat scriptnya jadi tidak berfungsi atao istilahnya mendisable script tanpa harus menghapus script tsb,,

    script yg saya pakai:

    kibord = new Object();
    kibord.onKeyUp = function() {
    tuts = Key.getCode();
    if (tuts==Key.SPACE) {
    nextFrame();
    }
    };
    Key.addListener(kibord);


    trus saya buat button,di mana jika button di klik maka fungsi next frame saat spasi di tekan jadi tak berfungsi lagi
    apa ya script nya buat button tsb...

  9. #9
    high dream is offline Laskar Babaflash
    Join Date
    Sep 2011
    Posts
    40

    Default

    halo mas saya lagi butuh scriptnya ,kira2 ada yang bisa jawab ga nih....saya dah cari kemana mana ga da yang pas scriptnya....pleaseee..

  10. #10
    42Unregistered is offline Flash Geek
    Join Date
    Nov 2008
    Posts
    805

    Default

    function buang()
    {
    Key.removeListener(kibord);
    };

    button.onRelease=function()
    {
    buang()
    }

Page 1 of 2 12 LastLast

Similar Threads

  1. drag and press
    By most_younger in forum ActionScript 1.0/2.0
    Replies: 6
    Last Post: 11-16-2011, 12:10 PM
  2. press keyboard
    By high dream in forum Flash Mobile Application
    Replies: 0
    Last Post: 09-23-2011, 09:30 PM
  3. [HELP]penekanan keyboard....
    By taeyeon in forum Beginner
    Replies: 0
    Last Post: 07-22-2011, 09:19 AM
  4. [AS3] Keyboard
    By giri_keren in forum ActionScript
    Replies: 4
    Last Post: 03-08-2010, 06:42 PM
  5. Press Releasenya HelloFest V.5
    By babaforum in forum Feed Milis BabaFlash
    Replies: 0
    Last Post: 11-21-2008, 09:52 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •