Kali ini kita akan mebuat game yang disebut Same Game yaitu game yang akan mencocokan objek yang satu dengan yang lain, dengan menggunakan library Microsoft Foundation Class dari awal sampai akhir. Kita akan menyertakan fitur luar sederhana menghapus blok dalam permainan. Kita akan menerapkan undo / redo subsistem dan beberapa dialog konfigurasi pengguna. Kita akan menunjukkan Anda langkah demi langkah dengan tidak hanya kode sumber tapi screenshot bagaimana membangun permainan menyenangkan dari awal sampai akhir dan bagaimana menggunakan kelas MFC Microsoft. Setiap artikel dilengkapi dengan kode sumber yang lengkap, sehingga Anda dapat membangun dan menjalankan game sendiri.
Aturan untuk SameGame cukup sederhana, Anda mencoba untuk menghapus semua blok berwarna dari lapangan bermain. Dalam rangka untuk menghapus blok pemain harus klik pada setiap blok yang sebelah, secara vertikal maupun horizontal, lain dengan warna yang sama. Ketika ini terjadi semua blok warna yang yang berdekatan dengan blok diklik yang dihapus. Semua blok di atas yang dihapus kemudian jatuh untuk mengambil tempat mereka. Ketika seluruh kolom dihapus, semua kolom ke kanan bergeser ke kiri untuk mengisi ruang tersebut. Blok-blok tersebut tidak bergeser secara individu tetapi sebagai kolom. Permainan berakhir ketika tidak ada lagi yang valid bergerak tersisa. Tujuannya adalah untuk mengakhiri dengan papan kosong di waktu sesedikit mungkin. Beberapa versi dari SameGame menggunakan algoritma scoring yang dapat diimplementasikan sebagai latihan tambahan bagi pengguna.
Kode akan ditulis menggunakan Visual Studio 2005 anda harus menggunakan Standar atau edisi profesional dari Visual Studio, Visual Studio Express tidak dapat digunakan, karena tidak datang dengan MFC.
Pertama jalankan Visual Studio dan Creat New Project. Jenis proyek adalah "Visual C ++" -> "MFC" -> "MFC Application".
Berikutnya pada aplikasi wizard MFC akan muncul. Jika Anda tidak memilih nama SameGame, maka nama-nama kelas Anda akan sedikit berbeda daripada yang muncul dalamtutoriall ini. Hal ini memungkinkan Anda untuk memilih beberapa pilihan yang kode yang dihasilkan yang dihasilkan akan mencakup. Untuk permainan sederhana kami, kami dapat menonaktifkan beberapa pilihan ini. Berikut grafis menunjukkan pilihan yang untuk memilih untuk mendapatkan proyek seperti yang kita inginkan.
Pilih "Single Document " memungkinkan aplikasi untuk menggunakan dokumen / view arsitektur ketika beberapa dokumen yang tidak diperlukan. Pengaturan terakhir dari bunga di halaman ini adalah "Penggunaan MFC". Dua opsi yang untuk DLL bersama atau sebagai static library. Menggunakan DLL berarti user harus memiliki DLL MFC diinstal pada komputer mereka, yang kebanyakan komputer dilakukan. Pilihan static library menghubungkan perpustakaan MFC tepat ke aplikasi Anda. Executable yang dihasilkan akan lebih besar dalam ukuran tetapi akan bekerja pada setiap mesin Windows.
Maju melalui tiga halaman berikutnya, mengambil default sampai halaman berikut akan ditampilkan.
(Jika Anda menggunakan Visual 2010, layar ini tidak ada pilihan None"pada Toolbars. Hanya memilih "Use a Classic Menu" tanpa memeriksa toolbar.) Sebuah frame memungkinkan pengguna untuk mengubah ukuran jendela. Karena game kami adalah ukuran statis, un-check pilihan ini. Maximaize box tidak diperlukan, juga status bar atau toolbar. Maju ke halaman berikutnya akan membawa Anda ke "Fitur Lanjutan" halaman.
Turn Off Printing, kontrol ActiveX dan atur jumlah recent file ke nol. Karena kita tidak akan benar-benar akan memuat file, opsi ini tidak akan diperlukan. Halaman terakhir dari MFC Application Wizard menyajikan anda dengan daftar kelas yang dihasilkan.
Empat kelas yang akan dihasilkan untuk Anda merupakan dasar untuk permainan.
Yang pertama dalam daftar adalah view class, di sini disebut CSameGameView. Kita akan kembali ke kelas ini dalam satu menit.
Kelas berikutnya dalam daftar adalah application class. Kelas ini adalah pembungkus untuk seluruh aplikasi dan fungsi utama disediakan untuk aplikasi Anda dengan kelas ini. Kelas dasar tidak dipilih dan harus CWinApp.
Kelas berikutnya dalam daftar adalah document class, CSameGameDoc berdasarkan kelas CDocument. Kelas dokumen mana semua data aplikasi disimpan. Sekali lagi kelas dasar tidak dapat diubah.
Kelas terakhir adalah kelas CMainFrame. Kelas berdasarkan CFrameWnd ini adalah wrapper class untuk jendela yang sebenarnya. Kelas rangka utama berisi menu dan pandangan wilayah client. Wilayah client adalah di mana permainan yang sebenarnya akan ditarik.
Sekarang kembali ke view class . Kelas dasar adalah dropdown dengan daftarview yang umumnya tersedia, masing-masing dengan penggunaan dan aplikasi sendiri. Tampilan default jenis adalah CView, yang merupakan pandangan umum di mana semua tampilan dan interaksi dengan pengguna harus dilakukan secara manual. Ini adalah salah satu yang ingin kita pilih.
Aku akan cepat turun daftar dan menjelaskan apa yang masing-masing jenis tampilan yang digunakan untuk, hanya untuk informasi Anda. The CEditView adalah pandangan generik yang terdiri dari kotak teks sederhana. CFormView memungkinkan pengembang untuk memasukkan kontrol lain yang umum ke dalamnya, yaitu mengedit kotak, kotak kombo, tombol, dll CHtmlEditView memiliki editor HTML dibangun ke tampilan. The CHtmlView embeds kontrol browser Internet Explorer ke dalam pandangan. The CListView memiliki luas mirip dengan jendela Explorer dengan daftar dan ikon. CRichEditView ini mirip dengan WordPad; memungkinkan entri teks tetapi juga format teks, warna dan hal-hal seperti itu. Sebuah CScrollView adalah pandangan umum mirip dengan CView tetapi memungkinkan bergulir. Akhirnya CTreeView komprehensif kontrol pohon ke tampilan.
Finishing MFC Application Wizard akan menghasilkan aplikasi yang berjalan MFC. Karena kita tidak menulis kode apapun namun itu adalah jendela yang sangat generik dengan apa-apa di dalamnya, tapi itu adalah sebuah aplikasi yang berfungsi penuh semua sama. Di bawah ini adalah screenshot dari aplikasi apa generik Anda harus terlihat seperti. Untuk membangun aplikasi Anda, Anda bisa pergi ke menu Debug, lalu pilih Mulai tanpa Debugging. Visual Studio mungkin meminta Anda untuk membangun kembali proyek-pilih "Ya".
Perhatikan pada menu default (File, Edit danHelp) dan area empty client. Sebelum kita sampai ke coding yang sebenarnya saya ingin menjelaskan sedikit tentang arsitektur dokumen / view yang digunakan dalam aplikasi MFC dan bagaimana kita akan menerapkannya ke permainan kami.
Sekian Tutorial Part 1 ini, pada Part Selanjutnya kita akan membuat dan melihat arsitektur dokumentnya
Sampai Ketemu di Tutorial Selanjutnya.