Tutorial kali ini akan membagikan cara pembuatan game balap yang pergerakan nya cukup mulus (resensi luar negeri, saya edit untuk mempermudah penjelasan).
1. Buat dokumen flash baru dengan cara klik File →New pilih Flash Dokumen
2. Gambar sebuah objek mobil yang nantinya akan dianimasikan
3. Klik kanan gambar mobil kemudian pilih Convert To Symbol

4. Beri nama symbol car, kemudian Instance Name nya beri nama myCar

5.Klik kanan Frame 1, kemudian klik Action, ketikkan script berikut :
akselerasi = 0.4;
rem = 0.96;
maxspeed = 10;
rotation = 10;
gerakmundur = 3;
ini adalah variable yang akan kita gunakan untuk membuat pergerakan mobil.
6. Selanjutnya kita akan mulai membuat pergerakan mobil,klik kanan Symbol car yang telah anda buat kemudian klik Action, ketik script berikut
• Pertama kita akan membuat variabel gerakan mobil,
onClipEvent (load) {
speed = 0;
this._rotation=0;
}
• Kemudian kita akan membuat keadaan saat tombol keyboard ditekan, tambahkan script diatas menjadi :
• Pertama kita akan membuat variabel gerakan mobil,
onClipEvent (load) {
speed = 0;
this._rotation=0;
}
• Kemudian kita akan membuat keadaan saat tombol keyboard ditekan, tambahkan script diatas menjadi :
onClipEvent (load) {
speed = 0;
this._rotation=0;
}
onClipEvent (enterFrame) {
if (this.speed>0.3) {
this.speed *= _root.rem;
} else {
this.speed = 0;
}
if (Key.isDown(Key.UP) && this.speed<_root.maxspeed)>0.3) {
this._rotation +=_root.rotation*(this.speed/_root.maxspeed);
}
if(Key.isDown(Key.LEFT) && Math.abs(this.speed)>0.3){
this._rotation-=_root.rotation*(this.speed/_root.maxspeed);
}
}
• Terakhir kita akan mengkalkulasikan total pergerakan dan rotasi mobil yang terjadi, tambahkan script diatas menjadi :
onClipEvent (load) {
speed = 0;
this._rotation=0;
}
onClipEvent (enterFrame) {
if (this.speed>0.3) {
this.speed *= _root.rem;
} else {
this.speed = 0;
}
if (Key.isDown(Key.UP) && this.speed<_root.maxspeed)>0.3) {
this._rotation +=_root.rotation*(this.speed/_root.maxspeed);
}
if(Key.isDown(Key.LEFT) && Math.abs(this.speed)>0.3){
this._rotation-=_root.rotation*(this.speed/_root.maxspeed);
}
this.speedx = Math.sin(this._rotation*(Math.PI/180))*this.speed;
this.speedy = (Math.cos(this._rotation*(Math.PI/180))*this.speed)*-1;
this._y += this.speedy;
this._x +=this.speedx;
}
7. Lakukan Test Movie, anda telah berhasil membuat pergerakan mobil yang halus.
speed = 0;
this._rotation=0;
}
onClipEvent (enterFrame) {
if (this.speed>0.3) {
this.speed *= _root.rem;
} else {
this.speed = 0;
}
if (Key.isDown(Key.UP) && this.speed<_root.maxspeed)>0.3) {
this._rotation +=_root.rotation*(this.speed/_root.maxspeed);
}
if(Key.isDown(Key.LEFT) && Math.abs(this.speed)>0.3){
this._rotation-=_root.rotation*(this.speed/_root.maxspeed);
}
}
• Terakhir kita akan mengkalkulasikan total pergerakan dan rotasi mobil yang terjadi, tambahkan script diatas menjadi :
onClipEvent (load) {
speed = 0;
this._rotation=0;
}
onClipEvent (enterFrame) {
if (this.speed>0.3) {
this.speed *= _root.rem;
} else {
this.speed = 0;
}
if (Key.isDown(Key.UP) && this.speed<_root.maxspeed)>0.3) {
this._rotation +=_root.rotation*(this.speed/_root.maxspeed);
}
if(Key.isDown(Key.LEFT) && Math.abs(this.speed)>0.3){
this._rotation-=_root.rotation*(this.speed/_root.maxspeed);
}
this.speedx = Math.sin(this._rotation*(Math.PI/180))*this.speed;
this.speedy = (Math.cos(this._rotation*(Math.PI/180))*this.speed)*-1;
this._y += this.speedy;
this._x +=this.speedx;
}
7. Lakukan Test Movie, anda telah berhasil membuat pergerakan mobil yang halus.
Tidak ada komentar:
Posting Komentar