08
Nov

Memantulkan Bola

Written by admin


Kali ini kita akan mempelajari cara memantulkan bola/lingkaran. Ada dua cara yang akan kami berikan yaitu dengan menggunakan hitTest dan dengan mendekteksi x dan y. Untuk hitTest kita akan membuat 4 buah persegi panjang yang akan ditempatkan di ke empat sisi stage bagian luar. Apabila bola menyentuh persegi panjang ini maka memantul. Namun penggunaan hitTest ini kadang menimbulkan masalah. Masalah tersebut berupa gerakan pantulan yang menjadi aneh. Mislanya ketika bolanya terkena batas bawah maka akan memantul ke atas tetapi baru memantul sedikit saja bola sudah memantul ke bawah.

Jika masalah tersebut terjadi, silahkan menggunakan alternatif kedua yaitu dengan mendekteksi x dan y. Berikut 2 cara memantulkan bola :

A. Dengan hitTest

1. Buatlah sebuah flash document 400×400 pixel.

2. Buatlah sebuah persegi panjang berwarna merah dengan panjang 400 dan lebar 40. Seleksi persegi panjang ini dan tekan F8. Pada panel yang muncul masukkan batas sebagai name dan movie clip sebagai type lalu tekan ok.

3. Seleksi movie clip ini dan tekan Ctrl+D sebanyak 3 kali sehingga di stage muncul 4 buah movie clip batas. Seleksi 2 buah movie clip dari 4 buah movie clip yang ada dan ubah panjangnya menjadi 40 dan lebarnya menjadi 400.

4. Letakkan 2 buah movie clip batas yang berbentuk lurus keluar stage bagian atas dan bawah. Letakkan 2 buah movie clip batas yang berbentuk tegak keluar stage bagian kanan dan kiri.

5. Seleksi movie clip batas yang terletak di luar stage bagian atas kemudian tekan Ctrl+F3. Pada panel properties yang muncul masukkan atas sebagai instance name.

6. Seleksi movie clip batas yang terletak di luar stage bagian bawah kemudian pada panel properties masukkan bawah sebagai instance name.

7. Seleksi movie clip batas yang terletak di luar stage bagian kanan kemudian pada panel properties masukkan kanan sebagai instance name.

8. Seleksi movie clip batas yang terletak di luar stage bagian kiri kemudian pada panel properties masukkan kiri sebagai instance name.

9. Sehingga stage akan terlihat seperti gambar di bawah ini :

peletakan-batas

10. Buatlah sebuah lingkaran berwarna kuning dengan biru sebagai warna garisnya. Seleksi lingkaran ini dan tekan F8. Pada panel yang muncul masukkan bola sebagai name dan movie clip sebagai type lalu tekan ok.

11. Seleksi movie clip bola ini dan pada panel properties masukkan bola sebagai instance name. Letakkan movie clip bola ini di tengah-tengah stage.

12. Klik frame 1 dan tekan F9. Pada panel actions yang muncul masukkan script berikut :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//membuat variable kecepatanX dengan nilai 20
kecepatanX = 20;
//membuat variable kecepatanY dengan nilai 18
kecepatanY = 18;
//perintah yang dijalankan ketika frame pada movie clip bola dimainkan
bola.onEnterFrame = function() {
	//jika movie clip ini menabrak movie clip berinstance name atas atau bawah
	if (this.hitTest(atas) || this.hitTest(bawah)) {
		//minuskan nilai variable kecepatanY 
		kecepatanY = -kecepatanY;
	}
	//jika movie clip ini menabrak movie clip berinstance name kanan atau kiri  
	if (this.hitTest(kanan) || this.hitTest(kiri)) {
		//minuskan nilai variable kecepatanX 
		kecepatanX = -kecepatanX;
	}
	//koordinat x movie clip ini ditambah nilai kecepatanX 
	this._x += kecepatanX;
	//koordinat y movie clip ini ditambah nilai kecepatanY
	this._y += kecepatanY;
};

13. Tekan Ctrl+Enter untuk melihat hasilnya.

B. Dengan mendekteksi x dan y

1. Buatlah sebuah flash document 400×400 pixel.

2. Buatlah sebuah lingkaran berwarna kuning dengan biru sebagai warna garisnya. Seleksi lingkaran ini dan tekan F8. Pada panel yang muncul masukkan bola sebagai name dan movie clip sebagai type lalu tekan ok.

3. Seleksi movie clip bola ini dan tekan Ctrl+F3. Pada panel properties yang muncul masukkan bola sebagai instance name. Letakkan movie clip bola ini di tengah-tengah stage.

4. Klik frame 1 dan tekan F9. Pada panel actions yang muncul masukkan script berikut :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
kecepatanX = 20;
//membuat variable kecepatanY dengan nilai 18
kecepatanY = 18;
//perintah yang dijalankan ketika frame pada movie clip bola dimainkan
bola.onEnterFrame = function() {
	//jika koordniat y movie clip ini berada kurang dari 30 atau lebih dari 370
	if (this._y<30 || this._y>370) {
		//minuskan nilai variable kecepatanY 
		kecepatanY = -kecepatanY;
	}
	//jika koordniat x movie clip ini berada kurang dari 30 atau lebih dari 370 
	if (this._x<30 || this._x>370) {
		//minuskan nilai variable kecepatanX 
		kecepatanX = -kecepatanX;
	}
	//koordinat x movie clip ini ditambah nilai kecepatanX    
	this._x += kecepatanX;
	//koordinat y movie clip ini ditambah nilai kecepatanY
	this._y += kecepatanY;
};

5. Tekan Ctrl+Enter untuk melihat hasilnya.

Kelebihan dengan menggunakan hitTest dibanding dengan mendekteksi x dan y adalah anda hanya tinggal meletakkan movie clip batasnya saja. Sedangkan dengan mendekteksi x dan y anda harus menentukan koordinatnya terlebih dahulu. Namun demikian penggunaan hitTest terkadang menimbulkan masalah seperti yang dikatakan di atas.

Sourcenya dapat di download di sini





Apakah tutorial di atas menarik atau bermanfaat bagi anda? Bantulah Warung Flash agar tetap ada dan memberikan tutorial-tutorial yang lebih bagus dan bermanfaat lagi. Silahkan klik link berikut ini untuk lebih jelasnya : Bantu Warung Flash



Bookmark and Share

21 Responses to “Memantulkan Bola”

  1. Daniel Says:

    oke mas, yg ini sdh bisa, baru ja nyobanya, tapi misal kalo mo nambahin link, misal bolanya tetep gerak tapi jika diklik maka akan menuju ke halaman web yg ditentukan, gimana ya? kan itu movie clip, bkn button :-SS

  2. admin Says:

    Untuk membuka halaman web coba tutorial berikut : http://warungflash.com/2009/08/membuat-link-pada-teks-atau-gambar/

  3. Hilmi Says:

    mas, kalo mo bikin animasi hujan jatuh ke genangan air dan kemudian ada animasi riak air-nya gimana mas?

    thanks, before.

    :hope: :)

  4. admin Says:

    Akan kami coba buatkan. Tapi kami tidak tahu kapan pasti jadinya. Soalnya kami juga sedang sibuk :respect:

  5. VIA Says:

    SUSAH JUGA TERNYATA… ~x(

  6. admin Says:

    Susahnya yang bagian mana?

  7. sikile_kuneng Says:

    mas kalo mo membuat link tapi link buat menampilkan tab flash baru gmna ya? jadi kalo di click kluar tab baru yang bisa di geser2….. tlg tutorialnya mas….. : @-)

  8. admin Says:

    Kalau tab kami kurang tahu. Atau mungkin maksud anda muncul swf baru? Kalau iya, itu scriptnya pake load movie http://warungflash.com/2009/08/loadmovienum/

  9. agung pribadi Says:

    terima kasih. atas semua tutorialnya.. sangat bermanfaat sekali bagi saya, semoga amal mas diterima di sisi Allah SWT.. amin..

    kalo boleh sya pingin tahu bagaimana caranya membuat presentasi dengan flash 8 ?.. kalo ngajar biar mudah.. seperti swf nya e-dukasi.net itu lho mas… gmana ya cara buatnya????

  10. tutorial blog Says:

    Thanks ya mas tutorialnya, lg belajar flash nie :D

  11. edo Says:

    warungflash emank OK………

    maju terus ya OM…… =D>

  12. sagas99 Says:

    mas admin….
    bntuin saya dong…
    klo buat film yg full effect gymna caranya??
    :hope

  13. sagas99 Says:

    mas admin….
    bntuin saya dong…
    klo buat film yg full effect gymna caranya??
    :hope:

  14. Zuer Says:

    Mas, Saya mau tanya. Kalau ingin Membuat banyak bola saling berpantulan satu sama lain gimana ya mas admin..?? Mohon di bantu ya..

  15. ndah Says:

    mas kok saya gag bisa bisa yah :-/ :-? :-/ :-?
    mohon bantuannya :hope: :hope: :respect: :D

  16. dita Says:

    kak misalnya, obyek yang berjalan dengan keyboard akan menumbuk benda diam, setelah menumbuk maka lanjut ke frame berikutnya gimana kak?

    mohon dengan sangat bantuannya……… :hope:

  17. dina Says:

    misi misi mau nanya ni actions untuk menghubungkan antar file ap y?
    terimakasi… :) 8->

  18. Yasa' Says:

    Alhamdulillah… berhasil …. trimakasih mas.. semoga warungflash makin jossss :D

  19. SP Says:

    terima kasih gan….
    sangat membantu….

  20. Taka Says:

    kk admin kok sya buat sndri tpy gak bisa y?
    kecepatan X n Y na undefined.
    maap sya baru belajar

  21. Taka Says:

    ok tq kk admin sya sudah bisa.
    oh y knp d actionscript 3.0 itu gak bisa yg kecX na kk?
    mohon d jelasin

Leave a Reply

B-) =DV <:-P ;)) ;) :yeye: :respect: :peace: :p :idea: :hope: :I: :D :-SS :-? :-/ :)) :) :(( 8-> more »

Komentar yang berisi pertanyaan atau request tutorial kemungkinan besar tidak bisa kami jawab dan penuhi. Hal ini dikarenakan kesibukan kami yang padat . Oleh karena itu kami mohon maaf dan pengertiannya.