Tutorial Flash Maze Double Player

Maze Double Player

 

Berikut ini pengembangan dari tutorial dasar maze game. Di permainan ini kita akan menggerakan 2 pemain sekaligus dalam sebuah maze.
1. Buatlah sebuah flash document.
2. Buatlah sebuah garis persegi.

kotak vektor
3. Buatlah beberapa garis seperti gambar dibawah ini :
garis-garis maze
4. Kemudian warnai seperti gambar di bawah ini :
vektor maze
5. Seleksi seluruh objek, kemudian tekan F8. Pada panel yang muncul masukkan Dinding sebagai name dan movie clip sebagai type lalu tekan ok.
6. Seleksi movie clip Dinding kemudian tekan Ctrl+F3. Pada panel properties yang muncul ketikkan dinding di dalam kotak instance name.
7. Letakkan movie clip Dinding ditengah-tengah stage.
8. Buatlah sebuah lingkaran berwarna merah kemudian tekan F8. Pada panel yang muncul masukkan Pemain1 sebagai name dan movie clip sebagai type lalu tekan ok.
red ball
9. Seleksi movie clip Pemain1 kemudian pada panel properties, ketikkan pemain1 di dalam kotak instance name.
10. Buatlah sebuah lingkaran berwarna biru kemudian tekan F8. Pada panel yang muncul masukkan Pemain2 sebagai name dan movie clip sebagai type lalu tekan ok.
blue circle
11. Seleksi movie clip Pemain2 kemudian pada panel properties, ketikkan pemain2 di dalam kotak instance name.
12. Letakkan movie clip Pemain1 dan Pemain2 seperti gambar di bawah ini :
letak pemain di maze
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
stop();
//jari-jari pemain
jarijari1 = pemain1._width/2;
jarijari2 = pemain2._width/2;
//kecepatan pemain bergerak
kecepatan = 5;
onEnterFrame = function() {
 //jika tombol panah kiri ditekan
 if (Key.isDown(Key.LEFT)) {
  //pemain1 dan pemain2 bergerak ke kiri
  pemain1._x -= kecepatan;
  pemain2._x -= kecepatan;
 }
 //jika tombol panah kanan ditekan
 if (Key.isDown(Key.RIGHT)) {
  //pemain1 dan pemain2 bergerak ke kanan
  pemain1._x += kecepatan;
  pemain2._x += kecepatan;
 }
 //jika tombol panah atas ditekan
 if (Key.isDown(Key.UP)) {
  //pemain1 dan pemain2 bergerak ke atas
  pemain1._y -= kecepatan;
  pemain2._y -= kecepatan;
 }
 //jika tombol panah bawah ditekan
 if (Key.isDown(Key.DOWN)) {
  //pemain1 dan pemain2 bergerak ke bawah
  pemain1._y += kecepatan;
  pemain2._y += kecepatan;
 }
 //membuat pemain1 tidak dapat melewati dinding
 while (dinding.hitTest(pemain1._x, pemain1._y+jarijari1, true)) {
  pemain1._y--;
 }
 while (dinding.hitTest(pemain1._x, pemain1._y-jarijari1, true)) {
  pemain1._y++;
 }
 while (dinding.hitTest(pemain1._x-jarijari1, pemain1._y, true)) {
  pemain1._x++;
 }
 while (dinding.hitTest(pemain1._x+jarijari1, pemain1._y, true)) {
  pemain1._x--;
 }
 while (dinding.hitTest(pemain1._x-jarijari1, pemain1._y+jarijari1, true)) {
  pemain1._x++;
  pemain1._y--;
 }
 while (dinding.hitTest(pemain1._x+jarijari1, pemain1._y-jarijari1, true)) {
  pemain1._x--;
  pemain1._y++;
 }
 while (dinding.hitTest(pemain1._x-jarijari1, pemain1._y-jarijari1, true)) {
  pemain1._x++;
  pemain1._y++;
 }
 while (dinding.hitTest(pemain1._x+jarijari1, pemain1._y+jarijari1, true)) {
  pemain1._x--;
  pemain1._y--;
 }
 //membuat pemain2 tidak dapat melewati dinding
 while (dinding.hitTest(pemain2._x, pemain2._y+jarijari2, true)) {
  pemain2._y--;
 }
 while (dinding.hitTest(pemain2._x, pemain2._y-jarijari2, true)) {
  pemain2._y++;
 }
 while (dinding.hitTest(pemain2._x-jarijari2, pemain2._y, true)) {
  pemain2._x++;
 }
 while (dinding.hitTest(pemain2._x+jarijari2, pemain2._y, true)) {
  pemain2._x--;
 }
 while (dinding.hitTest(pemain2._x-jarijari2, pemain2._y+jarijari2, true)) {
  pemain2._x++;
  pemain2._y--;
 }
 while (dinding.hitTest(pemain2._x+jarijari2, pemain2._y-jarijari2, true)) {
  pemain2._x--;
  pemain2._y++;
 }
 while (dinding.hitTest(pemain2._x-jarijari2, pemain2._y-jarijari2, true)) {
  pemain2._x++;
  pemain2._y++;
 }
 while (dinding.hitTest(pemain2._x+jarijari2, pemain2._y+jarijari2, true)) {
  pemain2._x--;
  pemain2._y--;
 }
};
14. Tekan Ctrl+Enter untuk melihat hasilnya :
Gunakan tombol panah untuk menggerakan pada pemain
Cobalah untuk menggerakan pemain sampai diujung atas
15. Ketika anda memainkkannya memang akan terkesan mudah sekali dimainkan. Tapi ini hanya dasarnya saja. Anda dapat menambahkan rintangan, semisal monster atau tombak dinding, yang mana jika pemain menabraknya maka permainan akan berakhir. Sehingga game akan menjadi lebih menantang untuk dimainkan.

0 komentar: