| Tutorial Flash - HTML5 - Javascript - DKV

Latest Blog



23.10.2020

Virtual Lab Flash

Library untuk pengembangan laboratorium virtual dengan Flash/Animate

06.10.2020

Game Among Us

Membuat gerakan karakter seperti pada game Among Us

05.10.2020

Multimedia Interaktif Tata Surya

Membuat Multimedia Pembelajaran Interaktif tentang tata surya

04.10.2020

Animasi Rotasi Bumi 3D

Membuat animasi bumi berotasi dengan grafik 3 Dimensi

01.10.2020

Membuat Kuis Essay

Mengecek jawaban kuis essay pada aplikasi pembelajaran interaktif

12.09.2020

Membuat Game Ular Tangga

Membuat game ular tangga dengan Adobe Flash/Animate AS3

10.09.2020

Membuat Pengacak Dadu

Membuat acak dadu untuk game ular tangga/monopoly

13.07.2020

Membuat Game Onet

Membuat game mencari gambar yang sama (onet) dengan JS/HTML5

11.06.2020

Membuat Kuis CBT

Membuat kuis CBT, menyimpan nilai ke server dengan PHP dan XML

11.05.2020

Game RPG dengan HTML Canvas (Javascript)

Pengembangan game RPG dengan teknik tiling menggunakan HTML canvas


ALL BLOG

Latest Games


;
Free Games

Indonesia Soccer League

Play Indonesian Soccer League on Flash 3D Games

Menggerakkan Movieclip dengan drag mouse ke posisi tertentu

Konsep dasar

Beberapa aplikasi multimedia memanfaatkan fitur drag objek atau drag movieclip, dari sebuah tempat ke tempat lain. Proses drag sendiri mudah dilakukan dengan AS3 karena AS3 masih menggunakan kode yang sama dengan AS1/2 untuk keperluan drag, yaitu startDrag() dan stopDrag(). Hanya saja ketika menggunakan kode tersebut kita membutuhkan listener berupa MouseEvent yaitu MOUSE_DOWN dan MOUSE_UP. Untuk lebih jelasnya perhatikan langkah berikut :


  1. Pada file aplikasi Flash, buatlah 2 buah gambar yaitu kepala panda dan badan panda yang terpisah, kemudian convert menjadi movieclip kepala dan movieclip badan. Perhatikan letak titik pusat (titik registrasi) dari movieclip tersebut( + )

  2. interactive multi media by wandah_w


  3. Tambahkan instance name pada masing-masing movieclip, yaitu kepala dan badan.
  4. Selanjutnya buatlah sebuah layer baru yaitu layer kode, klik frame 1 layer kode, kemudian ketikkan kode berikut
import flash.events.MouseEvent;

var awal_x:Number = kepala.x;
var awal_y:Number = kepala.y;

kepala.addEventListener(MouseEvent.MOUSE_DOWN, pencet_mouse);
kepala.addEventListener(MouseEvent.MOUSE_UP, lepas_mouse);

function pencet_mouse(e:MouseEvent):void{
	kepala.startDrag();
}
function lepas_mouse(e:MouseEvent):void{
	kepala.stopDrag();
	//snap ke badan
	var jarak = Math.sqrt((kepala.x - badan.x)*(kepala.x - badan.x)+(kepala.y - badan.y)*(kepala.y - badan.y));
	if (jarak <50){	
		kepala.x = badan.x;
		kepala.y = badan.y;
	}else{
		kepala.x = awal_x;
		kepala.y = awal_y;
	}
}

Jalankan aplikasi dengan menekan tombol Ctrl+Enter, maka hasil dari tutorial ini adalah sebagai berikut:


Get Adobe Flash player

Dengan memanfaatkan kodestartDrag dan stopDrag, kita dapat membuat sebuah sistem drag sederhana. Untuk mendeteksi apakah movieclip kepala sudah berada tepat diposisi movieclip badan digunakan metode jarak, yaitu menggunakan teori pitagoras sederhana dengan menghitung akar (Math.sqrt) kuadrat dari selisih kordinat 2 objek. Sehingga ketika movieclip kepala berjarak (ber radius) kurang dari 50 pixel dan tombol mouse dilepas, maka kordinat movieclip kepala dijadikan sama dengan kordinat movieclip badan sehingga akan muncul efek SNAP TO OBJECT.

Sebenarnya kode AS3 memiliki sistem deteksi antara 2 objek yang di drag mouse, yaitu dropTarget. Kodenya kurang lebih sebagai berikut :

function lepas_mouse(e:MouseEvent):void{
	kepala.stopDrag();
	//snap ke badan
	trace(kepala.dropTarget);
}

Akan tetapi kode tersebut kurang optimal, karena deteksi posisi masih terlalu luas, sehingga ketika kepala baru menyentuh titik terluar badan sudah dianggap sebagai dropTarget, sehingga lebih baik menggunakan metode pengukuran jarak agar akurasi lebih tepat.

File Sumber


download



Share ( Ayo Berbagi )

Leave me a comment

untuk pertanyaan lebih baik di email langsung ke wandah [at] wandah [dot] com agar cepat direspon