亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? main.java

?? 一款基于java 的賽車類游戲 一款基于java 的賽車類游戲
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
/*
 * Created on 2005-02-10
 * 
 * 
 *  
 */

//package com.nano.KangooJumper;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.rms.*;
//import com.nokia.mid.ui.*;
import java.io.*;
import javax.microedition.lcdui.game.*;

/**
 * @author plumkawka
 * 
 *  
 */
public class Main extends GameCanvas implements Runnable
{

	public int PosX;
	public int PosY;
	private boolean pressedONE = false;
	public int MenuIndex;
	private	int	nHelpIndex;
	private int nImageState = 0;
	private int SOFTKEY1 = -6;
	private int SOFTKEY2 = -7;
	public Display				display;
	private Thread				thread;
	static MIDlet				midlet;
	public	KeyBuffer			keys;
	static public boolean		bRender;
	public static boolean		bStop;
	public int					nGameState		= -1;
	public int					nLastGameState	= -1;
	public long					nCurrentTime;
	public long					nStartTime = 0;
	public boolean				bGamePaused;
	private boolean				bDelayInput		= false;
	private long				nDelayStartTime = 0;

	public int					nPlayerPoints;
	public int					nPlayerLevelPoints;
	public int					nPlayerLifes;
	public int					nPlayerLevel;
	//public long					nPlayerTime;
	//public int					nPlayerEnergy;
	//public long					nPlayerStartTime;
	public long					nPlayerExtraTime;
	public long					nPlayerBonus;
	public long					nPlayerBonusTime;
	public long					nPlayerBonusTimeMs;

	public boolean				keyDown, keyUp, keyLeft, keyRight;
	public boolean				keyFire, keyPound;
	public boolean				keyDownLeft, keyDownRight, keyUpLeft, keyUpRight;
	public boolean				keySoftLeft, keySoftRight;
	public boolean				key1, key2, key3, key4, key5, key6, key7, key8, key9, key0;
	private	boolean				bAnyKeyReleased;
	private	boolean				bFireKeyReleased;
	
	public static GameMain			GamePlay;
	private boolean				bPauseTimer;
	private long				nPauseTimerTimeLeap;
	private long				nPauseTimerTime;
	private long				nPauseTimerStart;
	private boolean				bPauseApp;
	private boolean				bYesNo;
	private	boolean				doResume;

	private Font fntMedium = Font.getFont(Font.FACE_SYSTEM , Font.STYLE_PLAIN, Font.SIZE_MEDIUM);

	public FontWriter			writer;
	public FontWriter			writerDisabled;
	public FontWriter			writerCopyright;
	private MenuList			MenuOptions;
	/*private TextWriter			mPage;*/

	public CodeGen				codegen;

	public boolean				bSound			= true;
	public String				sErrorMsg, sLeftSoftKey = "SELECT", sRightSoftKey = "";
	private String[]			g_options		= null;
	private MenuList			m_PosList;
	private MenuList			m_NickList;
	private MenuList			m_LevelList;
	private MenuList			m_ScoreList;

	private final static int	STR_NO			= 0;
	private final static int	STR_NICK		= 1;
	private final static int	STR_LEVEL		= 2;
	private final static int	STR_SCORE		= 3;
	private char[]				cNick;
	private char[]				cCode;
	private int					nSelectedChar;
	private boolean				bCodeEntered;
	private	int					progressPercent = 0;
	private	int					progressCount = 0;
	
	private	int					startlevel = 0;
	private	int					testlevel = 0;
	public	Image				iTitle, iLogos, iBackg, iPolar, islogon,irecom, ipowerby, 
											ibox, iabout, menubox, arrowLeft,arrowRight, iselect, iok, 
											iback, ichange,iscore,iname,ilevel,iNO, arrow003,iup,idown;
	public Image imgMain[] = new Image[7];
	public	SoundManager6600	snd;
	public	int	SNDID_MENU, SNDID_GAMEOVER, SNDID_BONUS1, SNDID_BONUS2,SNDID_BONUS3, SNDID_SPLASH, SNDID_COLLIDE; 


	/**
	 *  
	 */
	public Main(Display d, MIDlet m)
	{
		//super();
		super(false);
		this.setFullScreenMode(true);
		//setFullScreenMode(true);
		PosX = 35;
		PosY = 90;
		MenuIndex = 1;
		nHelpIndex=0;
		codegen = new CodeGen(Config.CODES_RECORD_NAME, (Config.GAME_MAX_LEVEL + 1) / 5);

		keys = new KeyBuffer();
		
		keyReset();
		display = d;
		midlet = m;
		thread = new Thread(this);
		thread.start();

		cNick = new char[Config.SCORES_MAX_CHARS];

		//snd = new SoundManager();
		snd = new SoundManager6600();
		//snd = new SoundManagerEmpty();
 
		// handle sound options
		loadOptions();
		if (!bSound)
			snd.disableSound();

		checkRecords();
		bGamePaused = false;
		bYesNo = false;
		bRender = true;
	}

    public static int pauseStartTime = 0;
    public static int pauseEndTime = 0;
    public static int pauseDuration = 0;

    protected void showNotify() {

		if(nGameState == Config.APP_STATE_MENU && bSound == true)
		{
			snd.enableSound();
			snd.playSound(SNDID_MENU, -1);
		}

    }

	protected void hideNotify()
	{
		
	{
		if(nGameState == Config.APP_STATE_MENU && bSound == true)
		{
			snd.enableSound();
			snd.playSound(SNDID_MENU, -1);
		}
	}		
		
	//	if (nGameState == Config.APP_STATE_GAME)
	if (nGameState == Config.APP_STATE_GAME && GamePlay.bDisplaySubMenu == false)
		{
			if (!isPaused())
				pauseTimer();
			bGamePaused = true;
			keyReset();
			pauseStartTime = Utils.getTime();
		}
	}



	public void setState(int state)
	{
		if (state == nGameState)
			return;

		bRender = false;
		keyReset();
		if (keys != null)
			keys.clear();
		
		//Utils.Log("setState - "+state+" ("+nGameState+")");
		nLastGameState = nGameState;
		nGameState = state;

		switch (nGameState)
		{
			case Config.APP_STATE_NONE:				
				iLogos = Utils.LoadImage(FileIds.NANOLOGO_PNG);
				iTitle = Utils.LoadImage(FileIds.TITLE_PNG);
				iPolar = Utils.LoadImage(FileIds.POLARLOGO_PNG);
				try{
							islogon = Image.createImage("/slogan.png");
							ibox = Image.createImage("/bbox50.png");
							iabout = Image.createImage("/about.png");
							
					 }
				catch(Exception e) 
				{
				}
				// font writer
				writer = new FontWriter(FontWriter.NORMAL_OUTLINE, FileIds.FONT_NO_PNG);
				writer.kerning = 1; 
				writerDisabled = new FontWriter(FontWriter.NORMAL_OUTLINE, FileIds.FONT_NO_PNG, FileIds.FONT_DISABLED_PAL);
				writerCopyright = new FontWriter(FontWriter.NORMAL_OUTLINE, FileIds.FONT_NO_PNG, Config.PAL_INVERS);
				writerCopyright.kerning = 1; 
				/*if (GamePlay == null)
				{
					GamePlay = new GameMain(this);
					GamePlay.init(0);
				}*/
				
				setState(Config.APP_STATE_LOGOS);
			break;
			
			case Config.APP_STATE_COPYRIGHT:
				/*mPage = null;
				mPage = new TextWriter(Utils.readUTFStrings("/copyright.utf8")[0], writerCopyright,
								(Config.SCREEN_WIDTH - Config.WRITER_WIDTH) / 2, 
								Config.SCREEN_HEIGHT - Config.WRITER_HEIGHT - writer.getHeight(),
								Config.WRITER_WIDTH, Config.WRITER_HEIGHT, null, 0);*/
			break;

			case Config.APP_STATE_GAMEOVER:
				keyReset();
				keys.clear();
				
			case Config.APP_STATE_ADD_NICK:
				try{
							iok = Image.createImage("/ok.png");						
					 }
				catch(Exception e) 
				{
				}
				//snd.playSound(SNDID_GAME_OVER, 1);
				for (int i = 0; i < Config.SCORES_MAX_CHARS; i++)
					cNick[i] = 'A';
				nSelectedChar = 0;
			break;

			case Config.APP_STATE_ENTER_CODE:
				for (int i = 0; i < Config.CODES_MAX_CHARS; i++)
					cCode[i] = 'A';
				nSelectedChar = 0;
				bCodeEntered = false;
			break;

			case Config.APP_STATE_SCORES2:
			case Config.APP_STATE_SCORES:

				try{
							iNO = Image.createImage("/No.png");
							iname = Image.createImage("/nick.png");
							ilevel = Image.createImage("/Level.png");
							iscore = Image.createImage("/score.png");			
											
					 }
				catch(Exception e) 
				{
				}
				String[] strs = Utils.readUTFStrings("/showhs.utf8");

				int width = 4 * Config.SCORES_MAX_CHARS * writer.getWidest() + 3 * Config.SCORES_SPACE_BETWEEN_COLUMNS;
				int colWidth = width / 4;
				int colHeight = writer.getHeight() * 8;
				int height = colHeight;
				int colX = (Config.SCREEN_WIDTH - width) / 2;
				int colY = (Config.SCREEN_HEIGHT - height) / 2;

				// load highscores
				String[] nick = new String[Config.SCORES_ENTRIES];
				int[] score = new int[Config.SCORES_ENTRIES];
				int[] level = new int[Config.SCORES_ENTRIES];

				readHighScores(nick, score, level);
				//
				// position column
				//
				String[] tmpTab = new String[Config.SCORES_ENTRIES + 2];

				tmpTab[0] = ""; //*****	***************//*****	***************
				tmpTab[1] = "";

				for (int lp = 0; lp < Config.SCORES_ENTRIES; lp++)
					tmpTab[lp + 2] = Integer.toString(lp + 1) + '.';

				m_PosList = new MenuList(writer, null, tmpTab, colX, colY, colWidth, colHeight, 0);

				colX += colWidth;
				//
				// nick column
				//
				tmpTab = new String[Config.SCORES_ENTRIES + 2];
				tmpTab[0] = ""; //*****	***************//*****	***************
				tmpTab[1] = "";
				for (int lp = 0; lp < Config.SCORES_ENTRIES; lp++)
					tmpTab[lp + 2] = nick[lp];
				m_NickList = new MenuList(writer, null, tmpTab, colX, colY, colWidth, colHeight, 0);

				colX += colWidth;
				//
				// level column
				//
				tmpTab = new String[Config.SCORES_ENTRIES + 2];

				tmpTab[0] = "";//*****	***************//*****	***************
				tmpTab[1] = "";

				for (int lp = 0; lp < Config.SCORES_ENTRIES; lp++)
					tmpTab[lp + 2] = Integer.toString(level[lp]);

				m_LevelList = new MenuList(writer, null, tmpTab, colX, colY, colWidth, colHeight, 0);

				colX += colWidth;
				//
				// score column
				//
				tmpTab = new String[Config.SCORES_ENTRIES + 2];

				tmpTab[0] = "";//*****	***************//*****	***************
				tmpTab[1] = "";

				for (int lp = 0; lp < Config.SCORES_ENTRIES; lp++)
					tmpTab[lp + 2] = Integer.toString(score[lp]);

				m_ScoreList = new MenuList(writer, null, tmpTab, colX, colY, colWidth, colHeight, 0);
			break;

			case Config.APP_STATE_ABOUT:
					try{
							irecom = Image.createImage("/recom.png");			
					 	 }
					catch(Exception e) 
					{
					}	
				//iLogos = null;
				//iLogos = Utils.LoadImage(FileIds.LOGOS_PNG);
				/*mPage = null;
				mPage = new TextWriter(Utils.readUTFStrings("/about.utf8")[0], writer,
						(Config.SCREEN_WIDTH - Config.WRITER_WIDTH) / 2, Config.SCREEN_HEIGHT - Config.WRITER_HEIGHT - writer.getHeight(),
						Config.WRITER_WIDTH, Config.WRITER_HEIGHT, iLogos, 2);
*/
			break;

			case Config.APP_STATE_RECOM:
			
			//snd.stopSound();
			/*	if(pressedONE == true && bSound == true)
				{
					snd.enableSound();
					snd.playSound(SNDID_MENU, -1);
					pressedONE = false;
				}			*/
			
			break;

			case Config.APP_STATE_HELP:
				//iLogos = null;
				//iLogos = Utils.LoadImage(FileIds.GFX_PNG);
				/*mPage = null;
				mPage = new TextWriter(Utils.readUTFStrings("/help.utf8")[0], writer,
						(Config.SCREEN_WIDTH - Config.WRITER_WIDTH) / 2, Config.SCREEN_HEIGHT - Config.WRITER_HEIGHT - writer.getHeight(),
						Config.WRITER_WIDTH, Config.WRITER_HEIGHT, iLogos, 25);
						*/

			break;

			case Config.APP_STATE_MENU:
				//bSound = true;
				if(bSound == true)
				{
					snd.enableSound();
					snd.playSound(SNDID_MENU, -1);
				}

					try{
							ichange = Image.createImage("/change.png");
							iselect = Image.createImage("/select.png");
							iback = Image.createImage("/back.png");
							menubox = Image.createImage("/001.png");
							arrowLeft = Image.createImage("/l1.png");
							arrowRight = Image.createImage("/r1.png");
							imgMain[0] = Image.createImage("/main1.png");
							imgMain[1] = Image.createImage("/main2.png");
							imgMain[2] = Image.createImage("/main3.png");
							imgMain[3] = Image.createImage("/main4.png");
							imgMain[4] = Image.createImage("/main5.png");
							imgMain[5] = Image.createImage("/main6.png");
							imgMain[6] = Image.createImage("/main7.png");
							iup = Image.createImage("/up.png");
							idown = Image.createImage("/down.png");		
							ipowerby = Image.createImage("/powerby.png");						

					 	}
					catch(Exception e) 
					{
					}
				
				/*if ((nLastGameState == Config.APP_STATE_GAME) || (nLastGameState == Config.APP_STATE_SCORES2)
						 || (nLastGameState == Config.APP_STATE_LOADING) //|| (nLastGameState == Config.APP_STATE_ASK_FOR_SOUND)
						|| (nLastGameState == Config.APP_STATE_GAMEOVER))
				{
					snd.playSound(SNDID_MENU, -1);
				}*/
				
				
				// enable continue if a save game exists
				/*if (MenuOptions != null)
				{
					if (!saveGameExists())
						MenuOptions.disableLine(0);
					else
						MenuOptions.enableLine(0);
				}*/

			break;


			case Config.APP_STATE_GAME:
				snd.stopSound();
				//SNDID_BONUS3 = snd.loadSound(FileIds.BONUS3_MID, Config.SNDTIME_BONUS3, 0);
				//GamePlay.resetMenuIndex();
				if (GamePlay != null)
				{
					//if (nLastGameState != Config.APP_STATE_RESUME)
					{
						nPlayerPoints = 0;
						nPlayerLevelPoints = 0;
						nPlayerLifes = Config.GAME_LIFES;
						// TODO  change this for final !!!!
						nPlayerLevel = startlevel;
						///nPlayerLevel = testlevel;
						//nPlayerEnergy = 100;
						//nPlayerTime = nPlayerStartTime = Config.GAME_TIME_LEVEL;
						nPlayerBonus = 0;
						nPlayerExtraTime = 0;
					}

					//nStartTime = getTime();
					//GamePlay.bTrainingMode = false;
					
					//for (int a=0; a<Config.GAME_MAX_LEVEL; a++)
						//GamePlay.startLevel(a);
					
					GamePlay.startLevel(nPlayerLevel);
				}
			break;


			case Config.APP_STATE_EXIT:
				stopGame();
			break;

		}
		bRender = true;
	}



	public void run()
	{
		/*long x = 1;
		for (int a = 0; a < 20000; a++)
		{
			x = x + (x / 3) + a;
			long t = x * x;
		}*/
		
		//if (bGamePaused)
		if (bGamePaused && GamePlay.bDisplaySubMenu == false)
		{
			if (keySoftLeft == true)
			{
				keyReset();
				if (isPaused())
					pauseTimer();
				bGamePaused = false;
				
                if (nGameState == Config.APP_STATE_GAME) {
                    pauseEndTime = Utils.getTime();
                    pauseDuration = pauseEndTime - pauseStartTime;
                }				
			}
			repaint();
			display.callSerially(this);

			return;
		}
		//try { Thread.sleep(20); } catch (InterruptedException e) { }

		//if (bRender == false) return;
		if (bStop == false)
		{
			switch (nGameState)
			{
				case Config.APP_STATE_ERROR:
					if (keyAnyReleased())
						setState(Config.APP_STATE_EXIT);
				break;
				

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合久久给合久久狠狠狠97色 | 一区二区三区自拍| 大桥未久av一区二区三区中文| 久久久蜜桃精品| 国产一区二区在线免费观看| 国产日本欧美一区二区| 99久久久精品| 午夜精品久久久久久久99樱桃| 日韩一级黄色大片| 国产成人亚洲精品狼色在线| 成人免费一区二区三区在线观看| 欧美视频日韩视频在线观看| 奇米四色…亚洲| 国产精品日产欧美久久久久| 欧美综合久久久| 久久超级碰视频| 国产精品久久免费看| 欧美日韩一区二区三区在线看| 天天色 色综合| 国产色综合久久| 欧美视频精品在线观看| 国产在线视频精品一区| 亚洲美女在线一区| 日韩精品一区二区三区四区| 99综合电影在线视频| 日本成人中文字幕在线视频| 国产丝袜欧美中文另类| 欧美日韩中文精品| 成人性生交大片免费看视频在线| 午夜视频一区在线观看| 国产精品欧美综合在线| 欧美理论电影在线| 成人av资源在线观看| 看片网站欧美日韩| 亚洲综合自拍偷拍| 久久久777精品电影网影网| 欧美视频一区二区三区在线观看| 国产福利电影一区二区三区| 亚洲一本大道在线| 成人免费在线播放视频| 26uuu亚洲| 欧美伦理电影网| 91在线视频免费观看| 久久99久久精品| 天堂成人国产精品一区| 国产精品天天摸av网| 精品国产污污免费网站入口| 色先锋久久av资源部| 高清免费成人av| 捆绑紧缚一区二区三区视频| 亚洲成人你懂的| 亚洲视频精选在线| 国产精品嫩草99a| 久久老女人爱爱| 精品成人佐山爱一区二区| 欧美视频一区二| 欧美亚洲国产一区二区三区va| 国产成人午夜片在线观看高清观看| 肉丝袜脚交视频一区二区| 亚洲靠逼com| 亚洲人成影院在线观看| 国产精品欧美久久久久一区二区| 久久久久久久久伊人| 日韩一区国产二区欧美三区| 欧美精品久久99久久在免费线| 日本高清不卡aⅴ免费网站| 成人av资源下载| 国产成人亚洲综合a∨猫咪| 国产老妇另类xxxxx| 激情伊人五月天久久综合| 久久精品国产99国产精品| 日本成人在线网站| 久久成人免费网站| 国内精品写真在线观看| 国产自产v一区二区三区c| 极品少妇xxxx精品少妇偷拍 | 美脚の诱脚舐め脚责91| 午夜久久电影网| 青青草国产成人99久久| 午夜电影久久久| 奇米在线7777在线精品 | 亚洲一卡二卡三卡四卡 | 麻豆精品一区二区综合av| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲人一二三区| 一区二区三区在线免费视频| 一区二区高清免费观看影视大全| 亚洲综合一二区| 亚洲国产精品久久久男人的天堂| 日韩综合小视频| 九九九精品视频| 国产精品自拍av| 99精品偷自拍| 欧美肥胖老妇做爰| 2014亚洲片线观看视频免费| 久久久国产一区二区三区四区小说 | 欧美精品久久一区二区三区 | 亚洲第一成年网| 天堂久久一区二区三区| 久久不见久久见中文字幕免费| 国产成人av影院| 色丁香久综合在线久综合在线观看| eeuss鲁片一区二区三区在线观看| 一本在线高清不卡dvd| 精品视频123区在线观看| 日韩一区二区免费电影| 视频一区二区中文字幕| 国产一区二区三区四区五区入口 | 一区二区三区**美女毛片| 亚洲成人av资源| 国产一区二区在线视频| 91在线视频网址| 精品久久久久99| 亚洲欧美日韩一区二区| 毛片av一区二区三区| www.日韩在线| 日韩精品综合一本久道在线视频| 国产精品久久久久久亚洲伦| 丝袜美腿一区二区三区| 成人污污视频在线观看| 欧美精品丝袜中出| 国产精品国产三级国产aⅴ入口 | 99热在这里有精品免费| 日韩午夜av一区| 亚洲日本青草视频在线怡红院| 婷婷国产v国产偷v亚洲高清| eeuss影院一区二区三区| 欧美一区二区三区免费| 亚洲摸摸操操av| 国产成人av一区二区三区在线 | 亚洲综合在线第一页| 国产在线精品不卡| 欧美色偷偷大香| 1区2区3区国产精品| 国产一区二区毛片| 制服.丝袜.亚洲.另类.中文| 亚洲色图一区二区三区| 国产精品亚洲视频| 日韩一区二区在线观看视频播放| 国产精品国产三级国产aⅴ原创 | 中文字幕+乱码+中文字幕一区| 香蕉久久夜色精品国产使用方法| 成人av网址在线观看| xvideos.蜜桃一区二区| 天堂一区二区在线免费观看| 91在线观看美女| 国产欧美一区二区三区网站| 激情综合五月天| 一区二区三区资源| 成人午夜私人影院| 国产婷婷色一区二区三区四区| 久久精品国产99久久6| 欧美一级爆毛片| 日本不卡在线视频| 欧美一区二区视频免费观看| 一区二区三区日本| 欧美在线视频全部完| 亚洲乱码国产乱码精品精小说| 成人涩涩免费视频| 国产精品网站在线播放| 成人午夜碰碰视频| 中文字幕日韩欧美一区二区三区| 国产精品一区二区男女羞羞无遮挡| 欧美一区二区三区四区视频| 日本成人在线看| 精品国产一区二区三区av性色 | 不卡的电视剧免费网站有什么| 久久久高清一区二区三区| 国产米奇在线777精品观看| 精品国产乱子伦一区| 精品夜夜嗨av一区二区三区| 欧美成人三级在线| 国模大尺度一区二区三区| 久久免费的精品国产v∧| 国产一区二区三区精品视频| 精品电影一区二区三区| 国产成人福利片| 中文字幕日韩精品一区| 日本韩国欧美三级| 三级不卡在线观看| 欧美电视剧免费全集观看| 加勒比av一区二区| 国产精品人妖ts系列视频| 色婷婷综合五月| 亚洲成人高清在线| 日韩一区二区免费高清| 国产精品综合二区| 韩国精品久久久| 国产精品午夜电影| 色综合天天综合网国产成人综合天| 亚洲欧美日本在线| 欧美人妖巨大在线| 国产专区欧美精品| 亚洲欧美综合色| 欧美麻豆精品久久久久久| 激情久久五月天| 亚洲少妇最新在线视频| 欧美一区二区三区白人| 丁香天五香天堂综合| 亚洲高清视频在线|