分享
 
 
 

经典飞机游戏代码S60

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

//******************************************************************************

//

// AIMS v1.0 ENGLISH

// (C) IECOM 2004

// DEVELOPED BY Krzysztof Osmulski <clyde@o2.pl>

//******************************************************************************

/* TipS AND ISSUES

*-For All s60 implements use a runtime PRepared flipped image because of some bug

*when try to use image clipping and flipping (from NOKIA UI API) at the same time

*/

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

import java.util.*;

import java.io.*;

import java.lang.Math.*;

import javax.microedition.rms.*;

//#if _NOKIA_ _S60_

import com.nokia.mid.ui.*;

//#if !_MMAPI_

import com.nokia.mid.sound.Sound;

//#endif

//#endif

//#if _MIDP20_

//# import javax.microedition.lcdui.game.*;

//#endif

//#if _MMAPI_

//# import javax.microedition.media.*;

//# import javax.microedition.media.control.*;

//#endif

//------------------------------------------------------------------------------

public class AIMS extends MIDlet {

private Display display;

private GameScreen screen;

public boolean started = false;

public AIMS() {

screen = new GameScreen(this);

}

public void startApp() throws MIDletStateChangeException {

if(display == null)

display = Display.getDisplay(this);

display.setCurrent(screen);

//start the SHOW

screen.th=new Thread(screen);

screen.th.start();

}

public void pauseApp() {

screen.menumode=1;

screen.gamemode=10;

notifyPaused();

}

public void destroyApp(boolean unconditional) {

screen.th=null;

screen.saveRMS();

notifyDestroyed();

}

public void hideNotify(){

}

public void showNotify() {

display.setCurrent(screen);

}

public void exitRequested() {

destroyApp(false);

}

}

//------------------------------------------------------------------------------

//#if _NOKIA_ _S60_

class GameScreen extends FullCanvas implements Runnable

//#else

//# class GameScreen extends Canvas implements Runnable

//#endif

{

//#if _NOKIA_ _S60_

static final int LSOFTKEY=-6,RSOFTKEY=-7;

//#elif _V_

//# static final int LSOFTKEY=21,RSOFTKEY=22;

//#elif _V220_ _E398_ _V980_

//# static final int LSOFTKEY=-21,RSOFTKEY=-22;

//#elif _SIEM_

//# static final int LSOFTKEY=-1,RSOFTKEY=-4;

//#elif _SE_ _SAGEM_

//# static final int LSOFTKEY=-6,RSOFTKEY=-7;

//#endif

static Image[] bobgfx;

static Image Tiles;

static Image myFont;

static Image Tilebuffer;

static Graphics TilebufferP;

//#if _NOKIA_

static DirectGraphics TilebufferDG;

//#endif

//static Image Backbuffer;

//static Graphics BackbufferP;

//static DirectGraphics BackbufferDG;

static int keypressed, game_keypressed;

//#if _S40_

//# //15 just for intro normal 10 changed in the end of intro (but not for s40MIDP20)

//# static int FPS=15;

//# final static int anzahlobjekte=30;

//# final static int screenX=128;

//# final static int screenY=128;

//# final static int LZONE_SLOWER=7;

//#if _MMAPI_

//# final static int PAUSE_Y=screenY-screenY/4-3;

//#else

//# final static int PAUSE_Y=screenY/2;

//#endif

//# final static int MENU_Y=screenY-screenY/6-1;

//#elif _S45_

//# //15 just for intro normal 10 changed in the end of intro (but not for s40MIDP20)

//# static int FPS=15;

//# final static int anzahlobjekte=35;

//# final static int screenX=128;

//# final static int screenY=160;

//# final static int LZONE_SLOWER=5;

//# final static int MENU_Y=screenY-screenY/6-7;

//# final static int PAUSE_Y=MENU_Y-18;

//#elif _S60_

static int FPS=18;

final static int anzahlobjekte=40;

final static int screenX=176;

final static int screenY=208;

final static int LZONE_SLOWER=4;

final static int MENU_Y=screenY-screenY/6-10;

final static int PAUSE_Y=MENU_Y-20;

//because of some API problems with clipping and flipping at the same time we need a second Tiles image

Image Tiles_f;

//#elif _V_ _E398_

//# static int FPS=15;

//# final static int anzahlobjekte=40;

//# final static int screenX=176;

//# final static int screenY=204;

//# final static int LZONE_SLOWER=4;

//# final static int MENU_Y=screenY-screenY/6-12;

//# final static int PAUSE_Y=MENU_Y-20;

//#elif _V220_

//# static int FPS=12;

//# final static int anzahlobjekte=30;

//# final static int screenX=128;

//# final static int screenY=116;

//# final static int LZONE_SLOWER=7;

//# final static int MENU_Y=screenY-screenY/6-5;

//# final static int PAUSE_Y=MENU_Y-18;

//#elif _65_

//# static int FPS=12;

//# final static int anzahlobjekte=37;

//# final static int screenX=132;

//# final static int screenY=176;

//# final static int LZONE_SLOWER=5;

//# final static int MENU_Y=screenY-screenY/6-10;

//# final static int PAUSE_Y=MENU_Y-20;

//#elif _C65_

//# static int FPS=12;

//# final static int anzahlobjekte=30;

//# final static int screenX=130;

//# final static int screenY=130;

//# final static int LZONE_SLOWER=7;

//# final static int PAUSE_Y=screenY-screenY/4-5;

//# final static int MENU_Y=screenY-screenY/6-3;

//#elif _FKZ500_

//# static int FPS=15;

//# final static int anzahlobjekte=35;

//# final static int screenX=128;

//# final static int screenY=160;

//# final static int LZONE_SLOWER=5;

//# final static int MENU_Y=screenY-screenY/6-10;

//# final static int PAUSE_Y=MENU_Y-18;

//#elif _S700_

//# static int FPS=18;

//# final static int anzahlobjekte=50;

//# final static int screenX=240;

//# final static int screenY=266;

//# final static int LZONE_SLOWER=3;

//# final static int MENU_Y=screenY-screenY/6-23;

//# final static int PAUSE_Y=MENU_Y-20;

//#elif _Z1010_ _V980_

//# static int FPS=18;

//# final static int anzahlobjekte=45;

//# final static int screenX=176;

//# final static int screenY=220;

//# final static int LZONE_SLOWER=4;

//# final static int MENU_Y=screenY-screenY/6-12;

//# final static int PAUSE_Y=MENU_Y-20;

//# //SAGEM

//#elif _V65_

//# static int FPS=13;

//# final static int anzahlobjekte=30;

//# final static int screenX=128;

//# final static int screenY=128;

//# final static int LZONE_SLOWER=7;

//# final static int PAUSE_Y=screenY-screenY/4-3;

//# final static int MENU_Y=screenY-screenY/6-1;

//#endif

final static int tiledimension=16; // CONST for TILEWIDTH

final static int tilesPerX=screenX/tiledimension+1;

final static int tilesPerY=screenY/tiledimension+1;

static AIMS midlet;

//static Timer animTimer;

//final static int animperiod = 35;

static int i=0;

static int player;

static int schussdelay = 3;

static int temp1,temp2,temp3,temp4,temp5;

public static int gamemode=0;

public static int menumode=0;

static int ai=0;

static int score=0;

static int lifes=-1;

static int[][] ObjectDB,playerBulletsDB,bulletsDB;

static byte[] leveldata,maskdata;

static int levelbreite=0; // levelwidth in tiles

static int levelhoehe=0; // levelhight in tiles

static int level=0;

// SCROLL VARS

static int levelXPos=0; // LevelPosition in Tiles

static int levelypos=0; // LevelPosition in Tiles

static int lastlevelxpos=0; // actual LevelXposition in Tiles

static int lastlevelypos=0; // actual LevelYPosition in Tiles

static int scrollxpos; // scrollxpos/tiledimension = levelxpos

static int scrollypos; // scrollypos/tiledimension = levelypos

static int softscrollx; // softscroll x (0-15)

static int softscrolly; // softscroll y (0-15)

// vars for target calculation of the bullets

static int targetXoffset=0;

static int targetYoffset=0;

static int targetquadrant=0;

static int zielerfassungswinkel=0;

static int teilquadrantwinkel=0;

static int devicewaiter=3; // WAITER

static boolean musicopt=true; // music yes=1 / no=0

static boolean soundopt=true; // sound yes=1 / no=0

static int waiter=0; // a waiter var

static int explowaiter=2; // waiter for all explosions

//static int flamewaiter=2; // waiter for flameanimation when enemey was hit

(出处:http://www.knowsky.com)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有