123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- Battle Tank v1.4
- ================
- This application demonstrates the usage of Java ME gaming features: sprites, tiles
- etc. Additionally, a reusable game structure is introduced where resources are
- loaded according to the screen size of device. In the game the player's objective
- is to defend the base and destroy all enemy tanks.
- This example application demonstrates:
- - using Java ME gaming features such as sprites and tiles
- - resusable game structure
- - using different resources for different screen sizes
- -------------------------------------------------------------------------------
- PREREQUISITES
- Java ME basics
- Java ME threads and timers
- -------------------------------------------------------------------------------
- IMPORTANT FILES AND CLASSES
- src\..\BattleTankCanvas.java
- src\..\Game.java
- src\..\Resources.java
- src\..\Level.java
- Classes: GameCanvas, Vector, Graphics, Image, Sprite, TiledLayer.
- -------------------------------------------------------------------------------
- DESIGN CONSIDERATIONS
- There is a game loop running in a thread which force-sleeps at least 1 ms
- between loops to ensure that UI thread events are caught. The thread is paused when a
- screensaver starts, there is a incoming call, or so on, to prevent excess power
- consumption.
- Image resources are pre-scaled for three different resolutions: high
- (360x640), medium (240x320), and low (128x160).
- The state of the game is stored when the user closes the application. The user
- can resume to the saved state when returning to play again.
- -------------------------------------------------------------------------------
- KNOWN ISSUES
- Mixing sounds does not work in Symbian phones.
- -------------------------------------------------------------------------------
- BUILD AND INSTALLATION INSTRUCTIONS
- The example has been created with NetBeans 7.1.2 and Nokia SDK 2.0.
- The project can be easily opened in NetBeans by selecting 'Open Project'
- from the File menu and selecting the application.
- Before opening the project, make sure the Series 40 6th Edition, FP1 SDK or newer is
- installed and added to NetBeans. Building is done by selecting 'Build main
- project'.
- Installing the application on a phone can be done by transfering the JAR file
- via Nokia Suite or via Bluetooth.
- The example can also be built using Eclipse.
- -------------------------------------------------------------------------------
- RUNNING THE EXAMPLE
- From the menu, the player can resume to the latest game, start a new game,
- set sounds on/off, and exit the game.
- The player's objective is to destroy all enemy tanks and not let them destroy the
- base. The player can collect various bonus items which have different effects:
- make the player's tank indestructible for a short time, destroy all enemy tanks,
- etc.
- The top bar shows the number of player's tanks, current score points, and
- enemies left in the current level. The menu button is in the bottom-right
- corner.
- -------------------------------------------------------------------------------
- COMPATIBILITY
- Nokia Asha software platform and Series 40 phones supporting CLDC 1.1, MIDP 2.0
- and Mobile Media API (JSR-135)
- Tested on:
- Nokia Asha 501, Nokia Asha 311, Nokia Asha 308, Nokia Asha 306, Nokia Asha 305,
- Nokia Asha 303, Nokia Asha 302, Nokia Asha 203, Nokia Asha 202
- and Nokia Asha 201
- Developed with:
- Netbeans 7.1.2
- Nokia Asha SDK 1.0
- -------------------------------------------------------------------------------
- CHANGE HISTORY
- 1.0 First release
- 1.1 In-app purchase Release
- 1.2 Added restoration
- 1.3 Ported for FT devices
- 1.4 Nokia Asha software platform support added, In-app purchasing removed.
- Fixed menu navigation for non touch devices
|