Sunday, 23 February 2014

Tutorial Flash - MENGELILINGI DUNIA

Di kerangka game ini kita akan membuat sebuah permainan dimana pemain bergerak memutari sebuah lingkaran seakan-akan mengelilingi dunia. Dapatkan seluruh emas yang ada dan jangan sampai tertabrak halangan. Jika sampai tertabrak maka pemain akan terpental.
1. Buatlah sebuah flash document dengan ukuran 550×40 dan frame rate 30fps.
2. Buatlah sebuah lingkaran berwarna kuning seperti gambar dibawah ini :
gold
3. Seleksi lingkaran kuning yang dibuat kemudian tekan F8. Pada panel yang muncul ketikkan “emas” tanpa tanda petik dikotak Name, pilih movie clip sebagai typenya, centang Export for ActionScript dan ketikkan “emas” tanpa tanda petik dikotak identifier lalu tekan ok.
4. Hapus movie clip emas yang berada distage.
5. Buatlah sebuah lingkaran berwarna merah seperti gambar dibawah ini :
obstacle
6. Seleksi lingkaran merah yang dibuat kemudian tekan F8. Pada panel yang muncul ketikkan “halangan” tanpa tanda petik dikotak Name, pilih movie clip sebagai typenya, centang Export for ActionScript dan ketikkan “halangan” tanpa tanda petik dikotak identifier lalu tekan ok.
7. Hapus movie clip halangan yang berada distage.
8. Buatlah sebuah lingkaran berwarna biru seperti gambar dibawah ini :
world
6. Seleksi lingkaran biru yang dibuat kemudian tekan F8. Pada panel yang muncul ketikkan “dunia” tanpa tanda petik dikotak Name, pilih movie clip sebagai typenya tekan ok.
7. Seleksi movie clip dunia dan tekan Ctrl+F3. Pada panel properties yang muncul ketikkan “dunia” tanpa tanda petik dikotak instance name.
8. Buatlah sebuah lingkaran berwarna putih seperti gambar dibawah ini :
player
9. Seleksi lingkaran putih yang dibuat kemudian tekan F8. Pada panel yang muncul ketikkan “pemain” tanpa tanda petik dikotak Name, pilih movie clip sebagai typenya tekan ok.
10. Seleksi movie clip pemain dan tekan Ctrl+F3. Pada panel properties yang muncul ketikkan “pemain” tanpa tanda petik dikotak instance name.
11. Atur letak movie clip dunia dan pemain seperti gambar dibawah ini :
player and world
12. Oh ya pastikan setiap membuat symbo-symbol movie clip diatas, titik registration pointnya selalu ditengah-tengah sebelum menekan tombol ok.
cts2
13. 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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
//variable untuk mengatur kecepatan bergerak
kecepatan = 2;
//variable untuk mendeteksi apakah pemain sedang melompat
melompat = false;
//variable untuk mengatur tinggi pemain melompat
tinggiMelompat = 10;
//variable untuk mengatur daya tarik pemain jatuh ke bawah
gravitasi = 2;
//variable untuk mengetahui tinggi setengah movie clip dunia
setengahDunia = dunia._y-dunia._height/2;
//variable untuk mendeteksi jenis gerakan pemain
gerakanPemain = "";
//variable yang digunakan untuk memantulkan pemain
pantulanKeKanan = 5;
pantulanKeKiri = 5;
pelemahPantulan = 0.5;
pemain.onEnterFrame = function() {
 //gerakan pemain kekiri jika tombol panah kiri ditekan
 if (Key.isDown(Key.LEFT)) {
  dunia._rotation += kecepatan;
 }
 //gerakan pemain kekanan jika tombol panah kanan ditekan
 if (Key.isDown(Key.RIGHT)) {
  dunia._rotation -= kecepatan;
 }
 //buat pemain melompat jika tombol panah atas ditekan
 if (Key.isDown(Key.UP)) {
  melompat = true;
 }
 if (melompat) {
  this._y -= tinggiMelompat;
  tinggiMelompat -= gravitasi;
  if (this._y>setengahDunia) {
   melompat = false;
   this._y = setengahDunia-this._height/2;
   tinggiMelompat = 10;
  }
 }
 //pantulkan pemain jika menabrak halangan
 if (gerakanPemain == "right") {
  dunia._rotation -= pantulanKeKanan;
  pantulanKeKanan -= pelemahPantulan;
  if (pantulanKeKanan<0) {
   pantulanKeKanan = 0;
   gerakanPemain = "";
  }
 }
 if (gerakanPemain == "left") {
  dunia._rotation += pantulanKeKiri;
  pantulanKeKiri -= pelemahPantulan;
  if (pantulanKeKiri<0) {
   pantulanKeKiri = 0;
   gerakanPemain = "";
  }
 }
};
//fungsi untuk membuat halangan
function buatHalangan(place) {
 halangan = attachMovie("halangan", "halangan"+_root.getNextHighestDepth(), _root.getNextHighestDepth());
 halangan.onEnterFrame = function() {
  //untuk mengatur letak halangan berdasarkan nilai palace
  angle = dunia._rotation-place;
  this._x = dunia._x+158*Math.cos(angle*Math.PI/180);
  this._y = dunia._y+158*Math.sin(angle*Math.PI/180);
  //pantulkan pemain jika menabrak halangan
  if (this.hitTest(pemain) && this._x<pemain._x) {
   gerakanPemain = "right";
   pantulanKeKanan = 5;
  }
  if (this.hitTest(pemain) && this._x>pemain._x) {
   gerakanPemain = "left";
   pantulanKeKiri = 5;
  }
 };
}
//fungsi untuk membuat emas
function buatEmas(place) {
 emas = attachMovie("emas", "emas"+_root.getNextHighestDepth(), _root.getNextHighestDepth());
 emas.onEnterFrame = function() {
  //untuk mengatur letak emas berdasarkan nilai palace
  angle = dunia._rotation-place;
  this._x = dunia._x+158*Math.cos(angle*Math.PI/180);
  this._y = dunia._y+158*Math.sin(angle*Math.PI/180);
  //hapus emas jika menyentuh pemain
  if (this.hitTest(pemain)) {
   this.removeMovieClip();
  }
 };
}
 
//jalankan fungsi membuat halangan dan emas
buatHalangan(150);
buatEmas(120);
buatEmas(60);
buatEmas(30);
buatHalangan(0);
buatEmas(-30);
buatEmas(-60);
buatHalangan(-90);
buatEmas(-120);
buatEmas(-150);
buatHalangan(-180);
14. Tekan Ctrl+Enter untuk melihat hasilnya.
Gunakan panah kanan atau kiri untk menggerakan pemain
Gunakan panah atas untuk melompat
Ambil seluruh emas dan jangan tabrak halangan agar tidak terpental
Sourcenya dapat di download di sini

0 comments:

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Powered by Blogger