|
Metode dan Algoritma | Membuat Aplikasi Blackberry Game - Tutorial Part 3 Game Play . Anda bisa melakukan konsultasi tentang Membuat Aplikasi Blackberry Game - Tutorial Part 3 Game Play melalui form di samping kanan !!!
Membuat Aplikasi Blackberry Game -Tutorial Part 3 Game Play
Baca artikel sebelumnya :
<< – Tutorial Part 2 : Membuat Aplikasi Blackberry Game- Membuat Menu Utama
Game Play
Sekarang bahwa menu awal kami beralih kontrol ke kelas Gameplay (dengan menempatkan sebuah instance dari itu pada stack layar – [gameplay meluas Fullscreen]), kita harus benar-benar mendefinisikannya! Gameplay mengurus fungsi permainan tingkat tinggi dengan multitasking tindakan melalui benang.
Satu thread, “Penyegaran”, mengurus menciptakan objek baru, perulangan melalui benda-benda yang ada dan memberitahu mereka untuk memproses sendiri, kemudian memeriksa untuk deteksi tabrakan, menambahkan poin yang didapat untuk total skor, memberitahu mesin grafis untuk redraw layar, dll pada dasarnya adalah loop detak jantung primer yang memastikan semuanya terus memperbarui dengan benar.
Thread lain adalah benang EnemyAI, yang bertanggung jawab untuk perulangan melalui semua benda dan mengatakan musuh untuk menjalankan proses kecerdasan mereka, yang menetapkan gerakan dan tembakan mereka.
Harap dicatat – ini adalah salah satu daerah di mana emulator Blackberry tampaknya berbeda dari hal yang nyata. Pada emulator, pengolahan benang hanya akan menghentikan jika tidak ada tombol yang ditekan, sementara di Blackberry tidak akan ada masalah. Sementara ini mungkin kesalahan saya, itu tidak mengubah fakta bahwa emulator bertindak sangat jauh berbeda dengan hal yang nyata.
Terakhir, gameplay memiliki keychar dan navigationMovement diganti untuk memproses ketika Escape atau Spacebar ditekan, serta ketika trackball tersebut akan dipindahkan.
GamePlay.java
package com.synthdreams.GalacticBlast;
import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.container.FullScreen;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.system.Characters;
import net.rim.device.api.system.Application;
import java.lang.Thread;
import java.lang.Math;
import java.util.*;
// Gameplay meluas Fullscreen, tidak perlu fungsionalitas dari
// Mainscreen objek.
// Catatan Khusus: Bagi mereka yang akrab dengan konsep ganda penyangga, seharusnya
// RIM UI otomatis melakukan hal ini. Tampaknya dari apa yang saya lihat, saya
// Perhatikan tidak merobek atau anomali grafis.
// Untuk mereka yang tidak terbiasa, jika Anda blit (write) data grafis grafis langsung primer
// Penyangga, itu adalah tidak sinkron dengan refresh layar. Hal ini dapat menyebabkan
// Merobek atau masalah grafis aneh lainnya, seperti setengah dari layar masih ditampilkan
// Di mana benda itu, dan setengah lainnya di mana objek sekarang. ini
// Diselesaikan dengan gambar pertama ke back buffer, dan kemudian membalik seluruh
// Kembali buffer dengan depan selama refresh layar itu. Dalam java ada
// Kelas layar berorientasi permainan tertentu untuk melakukan hal ini, tetapi seharusnya RIM
// Libs melakukan ini secara otomatis.
public class GamePlay extends FullScreen
{
// Ketiga obyek disebut dari banyak tempat dan dibuat publik
public static GFX gfx; // Object statis untuk kontrol grafis
public static SND snd; // Objek statis untuk kontrol suara
public static Random rndGenerator; // Objek statis untuk nomor acak
Refresher _refresher; // Thread yang terus menyegarkan permainan
EnemyAI _enemyai; // Thread ketika musuh berpikir
Vector _objects; //Sebuah vektor dari semua obyek yang sedang bermain
boolean _active; // Tanda jika permainan kami saat ini aktif atau tidak (misalnya apakah kita kehilangan)
int _score; // Score player
// Untuk mengambil score
boolean getActive() { return _active; }
int getScore() {return _score; }
// Refreshwe adalah jenis benang yang berjalan untuk menyegarkan permainan.
// Tugasnya adalah untuk memastikan semua proses ini disebut untuk setiap objek, memperbarui latar belakang,
// Update skor, memeriksa akhir pertandingan, dll ini adalah detak jantung utama.
private class Refresher extends Thread
{
// Ketika objek dibuat dimulai dirinya sebagai thread
Refresher()
{
start();
}
// Metode ini mendefinisikan apa thread ini tidak setiap kali berjalan.
public void run()
{
// Variabel sementara yang menyimpan nilai skor semua
// Objek yang hanya dibersihkan (hancur / dihapus)
// Mengembalikan angka negatif jika kita telah mati
int cleanReturn;
// Thread ini berjalan sementara permainan aktif
while (_active)
{
// Tingkat populasi / pengolahan, bertanggung jawab untuk menciptakan musuh baru
processLevel();
// memanggil perintah proses masing-masing objek. Objects
// Unik dan mengendalikan fisika mereka sendiri (misalnya ledakan foton bisa bergerak
// Lebih cepat daripada kapal hero kita), jadi kita loop melalui semua benda kami
// Dan memanggil metode proses pada masing-masing.
for (int lcv = 0 ; lcv < _objects.size() ; lcv++)
{
((OBJ) _objects.elementAt(lcv)).process();
}
// Objek untuk deteksi tabrakan. Jika mereka bertabrakan, metode ini
// Akan memanggil metode kerusakan setiap objek, yang mungkin menyebabkan
// Tidak ada kehidupan untuk objek
OBJ.collisionDetect(_objects);
// Bersihkan yang hilang (misalnya kehidupan 0 dan lainnya
// destroyable, misalnya grafis ledakan), berhenti jika kita hancur
cleanReturn = OBJ.cleanObjects(_objects);
// Jika kita tidak mati, tambahkan skor, redraw, dll
if (cleanReturn >= 0)
{
_score += cleanReturn;
// Sekarang semua proses kita dilakukan, memberitahu mesin grafis untuk
// Gambar ulang melalui panggilan untuk membatalkan (membatalkan layar
// Dan secara otomatis menyebabkan redraw)
invalidate();
}
else
{
/ / Jika mati, menandai aktif sebagai false.
_active = false;
}
try
{
// Beri sleep 50 ms
this.sleep(50);
}
catch (InterruptedException e)
{
}
}
}
}
// Kita membuat thread terpisah yang menangani AI musuh. Hal ini memungkinkan kita untuk mengontrol bagaimana
// Cepat musuh berpikir di luar benang menyegarkan utama kami. Dengan begitu kita dapat membuat
// Musuh bodoh yang berpikir jauh lebih lambat dibandingkan aksi terjadi di sekitar mereka, atau pintar
// Musuh yang berpikir lebih cepat.
private class EnemyAI extends Thread
{
EnemyAI()
{
start();
}
public void run()
{
// Pastikan benang tidak sengaja berjalan ketika permainan berakhir
while (_active)
{
// Loop melalui semua benda dan memanggil metode think, yang
// Mengontrol tindakan obyek itu. Secara teknis, panggilan ini
// hero pikir metode juga, tetapi hero tidak memiliki
// Berpikir metode ditimpa dari orang tua, yang hanya kosong,
// Jadi hero tidak melakukan pemikiran otomatis.
for (int lcv = 0 ; lcv < _objects.size() ; lcv++)
{
if (_active)
((OBJ) _objects.elementAt(lcv)).think(_objects);
}
try
{
// Musuh berpikir 5 kali setiap detik
this.sleep(1000/5);
}
catch (InterruptedException e)
{
// Ga melakukan apa2
}
}
}
}
public GamePlay()
{
snd = new SND(); // Untuk Membuat suara
gfx = new GFX(); // Untuk membuat grafis
rndGenerator = new Random(); // Membuat generator angka random
_active = true; // tandai game sebagai aktif
_score = 0; // Mulai dengan score 0
// Set latar belakang kita untuk stars.png dengan kecepatan 3 pixel per menyegarkan
gfx.initBackground("stars.jpg", 3);
// Mulai mainkan musik. Sesuatu yang aneh saya perhatikan dengan Blackberry 8830,
// Yang dapat berupa bug atau beberapa fungsi yang hilang dari
// Rutin sound / suara, adalah volume mulai keluar sangat tenang saat pertama kali Anda
// Mulai bermain. Jika Anda berhenti bermain musik dan bermain lagi, volume
// Baik-baik saja. Ini mungkin tidak berlaku untuk semua BlackBerrys, tapi tidak ada salahnya
// Apa pun untuk memulai, menghentikan, dan mulai lagi, jadi itulah apa yang kami lakukan di sini,
// Hanya untuk memecahkan maslaah bug volume
snd.playMusic("music.mid");
snd.stopMusic();
snd.playMusic("music.mid");
// Buat sebuah vektor untuk menampung semua objek aktif (hero, musuh, foton, dll)
_objects = new Vector();
// hero kita akan selalu menjadi obyek pertama dalam vektor.
_objects.addElement(new Hero(Graphics.getScreenWidth() / 2, Graphics.getScreenHeight() - 50));
// Buat penyegaran dan musuh AI terakhir, kami ingin memastikan semua benda kami adalah setup pertama
// Sehingga benang tidak menggunakan benda uninitialized
_refresher = new Refresher();
_enemyai = new EnemyAI();
}
// Tingkat Proses bertanggung jawab atas peristiwa yang dihasilkan komputer baru dalam permainan. dalam kami
// Kasus, satu-satunya yang benar-benar menciptakan musuh baru.
public void processLevel()
{
OBJ tempObject;
// Melempar musuh baru di setiap 25 piksel. Hal ini dapat dibuat lebih kompleks jika diinginkan
// Tentu saja
if (gfx.getBackPos() % 25 == 0)
{
// Buat sebuah pesawat musuh baru dengan X koordinasi di antara dua tepi
// Layar
tempObject = new EnemyDrone(rndGenerator.nextInt() % Graphics.getScreenWidth(), 0);
// Set Y berkoordinasi di atas layar, sehingga datang dari atas
tempObject.setY(tempObject.getY() - tempObject.getBitmap().getHeight() + 3);
// Tambahkan musuh untuk vektor objek
_objects.addElement(tempObject);
}
}
// Metode ini disebut ketika metode membatalkan disebut dari benang menyegarkan.
// Kami memilikinya melewati objek grafis ke mesin grafis kami sehingga kami
// Custom rutinitas grafis dapat mengurus segala gambar yang diperlukan.
protected void paint(Graphics graphics)
{
gfx.process(graphics, _objects, _score, ((Hero)_objects.elementAt(0)).getLives());
}
// Metode keyChar disebut oleh event ketika tombol ditekan.
public boolean keyChar(char key, int status, int time)
{
boolean retVal = false;
switch (key)
{
// Jika tombol Escape ditekan, kita mengatur permainan untuk aktif (berhenti)
case Characters.ESCAPE:
_active = false;
retVal = true;
break;
// Jika spasi ditekan, kita panggil metode api
// dari objek hero untuk menembak
case Characters.SPACE:
((Hero)_objects.elementAt(0)).fire(_objects);
retVal = true;
break;
default:
break;
}
return retVal;
}
// Metode navigationMovement disebut dengan event saat trackball digunakan.
protected boolean navigationMovement(int dx, int dy, int status, int time)
{
// Jika trackball itu menggulir ke arah horisontal, kita menambahkan jumlah tersebut
// Kecepatan X hero kita
if (dx != 0)
((OBJ)_objects.elementAt(0)).setVelX(dx/Math.abs(dx)*5+((OBJ)_objects.elementAt(0)).getVelX());
// Jika trackball itu menggulir ke arah vertikal, kita menambahkan jumlah tersebut
// Kecepatan Y hero kita
if (dy != 0)
((OBJ)_objects.elementAt(0)).setVelY(dy/Math.abs(dy)*5+((OBJ)_objects.elementAt(0)).getVelY());
return true;
}
}
Gameplay bersama-sama dengan set OBJ kelas adalah jantung dari logika permainan kami. Gameplay mewakili manajer, kontrol tingkat tinggi yang mengarahkan tindakan, sedangkan kelas OBJ melakukan pekerjaan sepele pengolahan untuk setiap objek (benda menjadi hal-hal seperti hero, musuh, dan foton). Sekarang yang kita lihat Gameplay, mari kita lihat di OBJ (benda).
Bersambung ke Part 4 : Tutorial Membuat Aplikasi Blackberry Game- Membuat – >>
belajar membuat aplikasi blackberry
Belajar Buat Aplikasi BlackBerry Dalam 10 Menit
dan Tanpa Perlu gabrielradewablogspotcom belajar buat aplikasi blackberry oleh Gabriel Radewa Purba Tanjung 9 Des 2012 Pernahkah Anda mendengar BlackBerry App Generator? Produk baru keluaran RIM ini adalah sebuah aplikasi pada BlackBerry App World Cara membuat aplikasi BlackBerry Tutorial Blog ngocop16blogspotcom › Blackberry Diakui atau tidak, kemampuan dalam membuat aplikasi untuk berbagai platform seperti BlackBerry, Android, iPhone, dan lainnya merupakan dambaan banyak Anda mengunjungi laman ini pada 29 07 13 Tips Sederhana Membuat Aplikasi BlackBerry Kang Nanto wwwkangnantocom berita 372 tips sederhana membuat aplikasi black
Untuk membuat aplikasi di blackBerry
tidak lah terlalu repot sih Dengan sedikit belajar mengenai bahasa pemprograman Java, kita bisa membuat aplikasi Tutorial Membuat Layout Design Aplikasi Blackberry Java Google https: groupsgooglecom d topic blackberry developer IEG5p ihfdE Tutorial Membuat Layout Design Aplikasi Blackberry Java, Bli Dodi, 8 23 11 10:46 PM, Teman" BlackBerry Developer, saya baru belajar mengembangkan Re: [BB Developer] Belajar Membuat aplikasi BB10 dengan https: groupsgooglecom d msg blackberry AVsOHeOY80gJ 6 Mei 2012 Wah, om momos skrg kerja di Malay yak ? Mantaplah Btw, itu simulator BB10 sy gak bs pake mode normal, graphic nya gak kuat, jd nya pake TIPS
Tutorial Buat Mentahan Aplikasi Blackberry
Forum forumdukunganblackberrycom › › Aplikasi untuk BlackBerry Tutorial Membuat File Mentahan Silahkan download install OTA downloader update 146 http: bbibnuxnet OTAdownloader langkah: klik link a BB10 Believe Mudah Buat Aplikasi di BlackBerry 10 « Blog Belajar agusharyantonet wordpress ?p=802 26 Feb 2013 Akhirnya saya putuskan pada artikel ini yang akan kita angkat adalah Membuat Aplikasi di BlackBerry 10 dengan menggunakan HTML5 belajar membuat aplikasi blackberry « Blog Belajar Pengembangan agusharyantonet wordpress ?tag=belajar membuat aplikasi blackberry January 2nd, 2012 | Tags: aplikasi blacberry persegipanjang, aplikasi blackberry, aplikasi sederhana, belajar blackberry, belajar membuat aplikasi blackberry, belajar membuat aplikasi BlackBerry I Jualbeliforumcom 100 wwwjualbeliforumcom › Club › Handphone
Beginning BlackBerry Development
belajar bagaimana menggunakan komponen antarmuka pengguna BlackBerry untuk membuat tampilan dan nuansa yang Nanti Aja | Satu Menit Membuat Aplikasi Blackberry Dengan App nantiajacom satu menit membuat aplikasi blackberry dengan app ge 18 Jan 2013 Uniknya dalam pengembangan aplikasi Blackberry, kamu bisa membuat aplikasi sendiri tanpa harus belajar pemrograman yang rumit karena Penelusuran yang terkait dengan belajar membuat aplikasi blackberry pembuat aplikasi blackberry membuat aplikasi blackberry dengan eclipse membuat aplikasi blackberry dengan netbeans membuat aplikasi blackberry dengan java membuat aplikasi android 13 Langkah Membuat Aplikasi Blackberry 10 | Kaskus The Largest wwwkaskuscoid › › FORUM › Computer Stuff › Programmer Forum 29 Okt 2012 20 pesan 16 penulis dear agan dan aganwati se kaskus raya, sudah pada tahu kan kalau RIM (Research in Motion) produsennya ponsel pintar Blackberry bakal Jeruknipiscom Belajar Cara Membuat BlackBerry Tidak Lemot Lagi! wwwjeruknipiscom belajar cara membuat blackberry tidak lemot la 7 Mei 2013 Belajar Cara Membuat BlackBerry Tidak Lemot Lagi! Aplikasi yang berat atau aplikasi aplikasi yang sering dibuka secara bersamaan Share:
Belajar Buat Aplikasi BlackBerry Dalam 10 Menit
dan Tanpa wwwberryindocom › › BlackBerry Share › BlackBerry Applications 23 Des 2012 2 pesan 2 penulis Langsung aja kesini: http: gabrielradewablogspotcom 2012 12 belajar buat aplikasi blackberry dalamhtml Indahnya berbagi Tolong share Belajar Menjadi ‘Mobile Apps Programmer’ Kompasiana teknologikompasianacom belajar menjadi mobile apps programmer 21 Des 2012 Untuk dapat membuat aplikasi Java ME bisa dengan mulai Situs developer BlackBerry juga menyediakan banyak tutorial yang bisa diikuti Belajar Membuat Aplikasi Blackberry | Jasa Pembuatan Program wwwproject graduatecom jasapembuatan belajar membuat a oleh Hank Maudi kemampuan dalam membuat aplikasi untuk berbagai platform seperti BlackBerry, Android, iPhone, dan lainnya merupakan dambaan banyak orang Betapa Membuat Aplikasi HTML5 Semakin Mudah dengan BLACKBERRY blackberrygopegocom web design cheat sheet untuk belajar membu 3 Jun 2013 Bagi Anda yang ingin sekali bisa membuat aplikasi mobile tetapi masih bingung dengan beragam software pendukungnya, Anda bisa
Tips Trik Cara Membuat Aplikasi Blackberry Terlengkap
idblackberrynet › Tips Idblackberrynet Cara Membuat Aplikasi Blackberry terlengkap paling mudah untuk dilakukan Kali ini kami Belajar Java Programming Language bila anda [ Tips ] Bagaimana Cara membuat aplikasi BlackBerry | Arjun Wap arjun wapblogspotcom tips bagaimana cara membuat aplik oleh Arjun Lap dalam 74 lingkaran Google+ 29 Mar 2013 [ Tips ] Bagaimana Cara membuat aplikasi BlackBerry cukup belajar sedikit ihwal bhs pemrograman java serta inilah Cara membuat aplikasi Menjadi Developer Aplikasi Blackberry suatu kebetulan saja wwwdeskapahendricom menjadi developer aplikasi blackberry suat 2 Feb 2011 Sebenarnya selama ini tidak terpikir kalo mau bikin aplikasi buat pengembang blackberry secara aktif, masih belajar mandiri saja, toh dari Belajar Bikin Aplikasi BlackBerry Infogue programinginfoguecom belajar_bikin_aplikasi_blackberry eminar sehari ini mendatangkan pembicara tamu dari University of Guelph, Kanada, Assoc Prof Dr Qusay H Mahmoud Direktur sekaligus pendiri Centre for
Membuat Aplikasi Blackberry Game - Tutorial Part 3 Game Play
ActionScript AS3 ASP.NET AJAX C / C++ C# Clipper COBOL ColdFusion DataFlex Delphi Emacs Lisp Fortran FoxPro Java J2ME JavaScript JScript Lingo MATLAB Perl PHP PostScript Python SQL VBScript Visual Basic 6.0 Visual Basic .NET Flash MySQL Oracle Android
Rating: 100% based on 99998 ratings. 5 user reviews.
Ditulis Oleh hank2
{ 0 komentar... Views All / Send Comment! }
Posting Komentar