• Tidak ada hasil yang ditemukan

M.Octaviano Pratama

N/A
N/A
Protected

Academic year: 2021

Membagikan "M.Octaviano Pratama"

Copied!
18
0
0

Teks penuh

(1)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com 1

M

M

u

u

d

d

a

a

h

h

M

M

e

e

m

m

b

b

u

u

a

a

t

t

G

G

a

a

m

m

e

e

J

J

2

2

M

M

E

E

M.Octaviano Pratama

tavgreen008@gmail.com http://tavgreen.com

Pada Jaman modern sekarang, teknologi telah berkembang sangat pesat termasuk teknologi berbasis mobile phone. Di tahun-tahun sebelumnya, game hanya berkisar seputar alat komunikasi untuk „menelepon‟ atau mengirimkan pesan singkat saja. Namun pada saat ini, mobile phone telah berubah menjadi trend dan gaya hidup. Berbagai perangkat handphone telah dilengkapi dengan teknologi multimedia, office dan games.

Berbicara mengenai games di mobile phone, J2ME (Java 2 Mobile Edition ) masih cukup banyak digunakan oleh berbagai vendor mobile. Dalam tutorial singkat ini, akan dibahas langkah-langkah membuat game sederhana, disertai dengan sedikit teori mengenai J2ME dan banyak contoh mengenai praktek pembuatan aplikasinya.

Langkah – langkah

Sebelum membuat game, persiapkan terlebih dahulu software berikut:

 Netbeans 6.9 or higher yang telah tersedia emulator J2ME

Mengenal J2ME

Pada bahasan pertama ini, saya akan membahas mengenai pembuatan project dan aplikasi J2ME sederhana. Untuk membangun aplikasi atau games berbasis J2ME, anda dapat menggunakan 2 buah akses User Interface(UI) yaitu Low Level User Interface dan High Level User Interface. Jika High level merupakan UI yang telah tersedia di sistem dan tinggal kita gunakan sedangkan low level merupakan UI yang harus kita desain lagi. Contoh UI High level adalah Alert,Form,Checkbox,ComboBox, dll yang tinggal kita panggil objectnya saja. Untuk low level disini kita harus menggambar layoutnya dengan memanfaatkan kelas canvas atau gamecanvas.

 Buatlah projek baru dengan nama „J2ME1‟

Lisensi Dokumen:

Copyright © 2003-2012 IlmuKomputer.Com

Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.

(2)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

2

 Berikan nama projek „J2ME1‟ kemudian kedua buah checkbox jangan di ceklist. Jika telah selesai, klik finish.

 Pada „default package‟ di project explorer, klik kanan kemudian „new -> Midlet‟. Kita akan membuat satu buah Midlet. Midlet hanya dimiliki oleh satu project yaitu

merupakan kelas yang pertama kali dibuka ketika user menjalankan aplikasi ini nantinya di device mobile.

(3)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

3

 Klik kanan lagi pada <default package> kemudian „new ->java class‟ berikan nama „utama.java‟

 Double klik kelas Midlet dan utama. Kemudian perhatikan potongan script berikut di kelas midlet :

(4)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

4

 Terdapat 3 method di dalam class Midlet yaitu startApp,pauseApp dan destroyApp. Sesuai namanya, startApp merupakan method ketika pertama kali kita menjalankan aplikasi. Pause aktif ketika program dihentikan dan destroyApp aktif ketika Exit program. Sedangkan pada class Utama, hanya memiliki satu buah Construktor yaitu „public Utama‟. Di kelas inilah nantinya program dan game yang akan kita buat.

 Isikan class Midlet dengan Program berikut :

Program diatas berarti kita menampilkan objek „ut‟ ke Display (Layar) dimana objek „ut‟ berasal dari instance „Utama‟.

(5)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

5

 Program diatas berarti: g.setColor(255,0,0);

memberikan set warna Red Aktif(255) g.drawRect(10, 10, 40, 40);

menggambar Rectangle dengan posisi X = 10 , Y = 10, SizeX=40 dan SizeY = 40 g.setColor(0,255,0);

memberikan set warna Green Aktif(255) g.fillRect(70, 10, 40, 40);

mengisi Rectangle dengan posisi X = 70 , Y = 10, SizeX=40 dan SizeY = 40 g.setColor(0,0,255);

memberikan set warna Blue Aktif(255) g.drawString("Menggambar Grafik", 30, 70, 0);

Menuliskan string “Menggambar Grafik” di layar dengan posisiX=30, PosisiY=70

(6)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

6 Sebelum membuat game yang berkualitas, diharapkan anda sudah memahami cara kerja dari class canvas ini. Dikarenakan dalam pembuatan game kita menggunakan juga kelas canvas dan gamecanvas. Jika anda kesulitan dalam mengetahui sintak apa saja yang ada di java, gunakan fasilitas autocomplete code yaitu dengan cara menekan ctrl + spasi seperti berikut :

Perancangan Game

Untuk membuat game yang baik, ada baiknya kita melihat contoh game yang telah ada sebelumnya. Biasanya didalam game terdapat beberapa element yaitu :

- Splash Screen, merupakan halaman yang muncul beberapa detik pada saat kita membuka game.biasanya splash screen memunculkan pembuat game/perusahaan game - Menu, merupakan navigasi menuju permainan, setting,petunjuk dll

- Setting, konfigurasi game seperti level permainan - Petunjuk, cara penggunaan game

- Game, memulai game

Buatlah 5 kelas dengan nama diatas pada project „J2ME‟. Disertai dengan package „resource‟ seperti berikut :

(7)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

7 Berikut merupakan alur dari game yang akan dibuat :

Splash Screen

Splash screen merupakan screen yang muncul selama beberapa detik sebelum masuk ke menu utama. Untuk membuat splash screen dibutuhkan satu buah thread untuk dapat memberikan jeda beberapa detik. Berikut ScreenShot dari Splash :

 Copykan file splash.png anda kedalam Package Resource, kemudian isikan Class Splash.java sebagai berikut :

Midlet Splash

Menu Setting

Petunjuk

(8)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

8

 Program diatas merupakan program untuk menggambar image yang berasal dari file di „resource/splash.png‟. Isilah file Midlet anda dengan program dibawah ini :

Menu

Menu yang akan kita buat muncul setelah splash screen muncul selama 3 detik. Bukalah Class Midlet.Java dan ubah kode yang lama menjadi seperti berikut :

(9)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

9 Keterangan :

- Method splash berfungsi untuk menginstance class Splash dan menampilkan di display. - Diberikan thread sleep sebesar 50 ms untuk splash screen kemudian dilanjutkan dengan

(10)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

(11)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

11 Keterangan :

- public Menu(Midlet m), konstruktor Menu diisi dengan parsing by reference Midlet yang berasal dari kelas midlet.

- setFullScreenMode(true);, merubah display menjadi full screen menu

- this.m = m;, mengisi object m yang ada di class Menu(this) dengan m yang berasal dari class Midlet

- background = Image.createImage("resource/bg_menu.png");merupakan inisialisasi variable background dengan nama image = bg_menu.png

- imgOn[i] = Image.createImage("resource/images_on_" + i + ".png"); merupakan baris yang menginisialisasi tiap gambar(total 4 gambar)

- new Thread(this).start();memulai threa

- g.drawImage(background, 0, 0, 0);menggambar image di object graphic untuk kemudian ditampilkan di display

- if (posisi == i) { g.drawImage(imgOn[i], 40, 55 * i + 60, 0); } , jika posisi(variable pembantu) sama dengan posisi looping, maka draw image yang bertipe on.

- protected void keyPressed(int keyCode) merupakan method untuk menampung apa saja yang dilakukan oleh tombol / keypad mobile phone, hasilnya dikirim ke parameter dengan variable keyCode.

- if ((keyCode == -2 || keyCode == 56) && posisi != 3) posisi++; Jika keycode sama dengan -2 (tombol keypad atas) dan keycode sama dengan 56(tombol keypad nomor 8) dan posisi tidak lebih dari 3(akhir image), maka posisi ditambah 1

(12)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

12

Petunjuk,Setting & Tentang

Untuk menu ini, anda dapat mengexplorasi sesuai dengan kreasi anda dengan bantuan class canvas. Misalnya seperti contoh berikut di menu tentang :

Untuk membuat button back, anda dapat menginstance class Command seperti berikut : private Command back = new Command("Back", Command.BACK, 1);

public void commandAction(Command c, Displayable d) { if(c==back)

(13)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com 13 m.menu(); } }

Game Utama

Game ini bertema GatotKaca Runner. Yaitu game trial berdurasi 30 detik dimana gatotkaca berperang melawan musuhnya. Berikut cuplikannya :

Konsep dari game :

- Background awan akan jalan dari kanan ke kiri. Ketika image habis, maka akan direfresh dengan image baru sehingga image tidak akan terputus dan terus bergerak - Terdapat 2 karakter yaitu gatotkaca(kanan) dan musuh(kiri) ketika gatotkaca

menyerang(tekan tombol 5/tengah), maka roket akan keluar

- Jika musuh terkena roket, maka score akan bertambah secara random

- Limit waktu yang diberikan selama 30 detik. Jika telah habis, maka game akan keluar. Berikut list programnya :

(14)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

(15)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

(16)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

(17)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

17

Installasi Aplikasi di Device Mobile

Semua contoh program diatas menggunakan device dengan layar 240(width) x 320(height) sehingga apabila device anda berlayar resolusi lain maka anda harus merubah source code terutama posisi X dan Y. Untuk mendownload program ke device anda, tekan Shift + F11 (Clean and Build) kemudian masuk ke folder dist pada project anda kemudian copykan file .Jad dan .Jar ke device Mobile anda.

Penutup

Dalam penyusunan E-book ini, penulis mengucapkan terima kasih kepada rekan-rekan dari batch6 ITB – Seamolec dan tim pengajar dari Seamolec khususnya mas Abdul Rizal Adompo yang telah membantu dalam penyampaian materi kepada penulis sehingga penulis dapat menyelesaikan E-Book ini. Penulis juga menyadari banyaknya kekurangan, oleh karena itu penulis mengharapkan mendapat kritik dan saran agar penulis dapat menyusun E-book lainnya dengan lebih baik lagi. Apabila pembaca terdapat kesulitan dalam mengaplikasikan materi-materi yang telah diulas sebelumnya, silahkan menghubungi penulis di

http://tavgreen.com. Untuk Source Code dari E-Book ini dapat didownload di

http://octavianopratama.wordpress.com .Nantikan E-book selanjutnya “Game Development

Android” yang sedang penulis selesaikan.

Referensi

(18)

Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2012 IlmuKomputer.Com

18 Anda dapat menghubungi penulis pada alamat dibawah :

http://www.tavgreen.com tavgreen008@gmail.com

Referensi

Dokumen terkait

Sebagai dasar negara, Pancasila merupakan suatu asas kerohanian yang dalam ilmu kenegaraan populer disebut sebagai dasar filsafat negara (philosofische

Abstrak: Penelitian ini menggunakan kajian ginokritik dengan pendekatan kualitatif. Metode yang digunakan, yaitu metode deskriptif bertujuan yang mendeskripsikan

Pelayanan untuk karyawan di rumah sakit ini dijalankan berpedoman kepada Kesepakatan Kerja Bersama (KKB) antara Manajemen Perusahaan dengan Serikat Pekerja.

Teori tersebut digunakan untuk menganalisis masalah yang berkaitan dengan macam, fungsi, dan makna alih kode serta faktor-faktor yang menyebabkan terjadinya alih

Berdasarkan hasil penelitian yang telah dilakukan maka dapat disimpulkan bahwa fraksi semipolar ekstrak etanol daun inggu (Ruta angustifolia L.) memiliki aktivitas larvasida

Ketika Anda menjumpai masalah seperti layar kabur, huruf kabur, layar berkedip atau gambar di layar nampak miring ketika menggunakan perangkat atau setelah mengubah resolusi

Pada python, anda tidak diharuskan menuliskan tipe data pada variable, dikarenakan python telah mendukung otomatisasi tipe data variable sesuai dengan nilai yang diberikan..

11 Jika sebuah ruang terbatas disahkan sebagai tidak selamat untuk dimasuki, apa yang akan berlaku jika anda masuk.. Anda akan mengalami