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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? menucanvas.java

?? 手機射擊游戲源代碼,nokia s60模擬器開發包,eclipse工具開發.不可用于商業用途.
?? JAVA
字號:
package src;

import java.io.IOException;

import javax.microedition.lcdui.*;
import javax.microedition.media.MediaException;
import javax.microedition.rms.RecordStore;

import com.nokia.mid.ui.FullCanvas;

public class MenuCanvas extends FullCanvas implements Runnable {
	//public class MenuCanvas extends Canvas implements Runnable {
	//	Graphics g;
	GameCanvas gamecanvas;

	cirsis cs;

	SoundManager sound;

	Sprite s, ok;

	Thread t;

	int count, curret, ox, oye, mod, hiScores[],music[], x[];

	boolean contiue, newgame, ismenu, iscredite, ishelp, isoption, isscores,
			showImgs[], running;

	Image img[];

	static boolean onsound = true;

	String[] imgname = { "logo1", "logo2", "beijing", "anjian", "music" };

	String[] creditestr = { "游戲運營商:", "北京陽光加信軟件技術有限公司",
			"Raymobile Software Inc.", "vmsp@raymobile.com", "010-51778844",
			"www.raymobile.com", "", "游戲開發商:", "大連游戲工廠-火蟻工作室",
			"zhangm@gamefactory", "0411-85875111-8007 8027", "", "項目組成員:",
			"項目經理:張牧", "策劃:趙少培", "美術:趙少培", "主程序:于銳", "程序:王志強 趙勇哲 譚默",
			"美術指導:張牧", "程序指導:王浩", "策劃指導:黃作秋" };

	String[] helpstr = { "1 鍵:手雷", "2 鍵:向上舉槍", "3 鍵:跳", "4 鍵:向后", "5 鍵:開火/確認",
			"6 鍵:向前", "8 鍵:蹲", "左軟鍵:菜單", "右軟鍵:菜單", "", "故事背景:",
			"    公元2160年,智能機器人", "已經普及全世界,他們能幫助", "人類完成日常的一切工作。它",
			"們是通過一臺中樞服務器控制。", "但是有一天這臺巨大的電腦不", "知道為什么感染了病毒,它把",
			"機器人的行為全都改變了,這", "些機器人都失去了控制。它們", "殺死了發明者,跑到街道上為", "非作歹,見人就殺。這種病毒",
			"綿延的很快,不到一個小時的", "時間全紐約州的機器人都感染", "了這種病毒。Alex家就有這機",
			"器人,機器人殺死他的妻子和", "兒女跑了出去。Alex萬分悲痛", ",他發誓要為家人報仇。Alex",
			"沖向了控制機器人的主機房,", "破壞了主機。最后終于發現原", "來病毒是外星人向地球投放的,",
			"不管怎樣,地球終于恢復了平", "靜!" };

	public MenuCanvas(cirsis cs) {
		this.cs = cs;
		gamecanvas = new GameCanvas(cs, this);
		showImgs = new boolean[3];
		count = 0;
		curret = 0;
		mod = 1;
		contiue = false;
		newgame = true;
		running = true;
		ismenu = true;
		iscredite = false;
		ishelp = false;
		isoption = false;
		isscores = false;
		img = new Image[5];
		try {
			for (int i = 0; i < 5; i++) {
				img[i] = Image.createImage("/res/" + imgname[i] + ".png");
			}
		} catch (IOException e2) {
			e2.printStackTrace();
		}

		hiScores = new int[5];
		music=new int[1];
		try {
			System.out.println("11");
			hiScores = readHiscores("h",0,5);
			System.out.println("22");
			music=readHiscores("m",1,1);
			System.out.println("33");
		} catch (Exception e) {
		}
		if (music[0]-1==0)ox=0;
		if (music[0]-1==1)ox=1;
//		ox = 0;
		ok = new Sprite(img[4], 26, 13);
		sound = new SoundManager();

		s = new Sprite(img[3], 44, 13);
		doThreadStart();
	}

	protected void paint(Graphics g) {
		g.setColor(255, 255, 255);
		g.fillRect(0, 0, getWidth(), getHeight());
		drawImg(showImgs[0], img[0], 25, 50, g); //logo1
		drawImg(showImgs[1], img[1], 35, 50, g); //logo2
		drawImg(showImgs[2], img[2], 0, 0, g); //beijing
		if (ismenu)
			paintMenu(g);
		if (iscredite)
			paintCredite(g);
		if (ishelp)
			paintHelp(g);
		if (isoption)
			paintOptions(g);
		if (isscores)
			paintScores(g);
	}

	void paintMenu(Graphics g) {
		if (showImgs[2]) {
			if (newgame) {
				for (int i = 0; i < 6; i++) {
					drawAnjian(g, i, 60, 50 + i * 25, i * 2);
				}
			} else {
				drawAnjian(g, 0, 60, 50, 12);
				for (int i = 1; i < 6; i++) {
					drawAnjian(g, i, 60, 50 + i * 25, i * 2);
				}
			}
		}
	}

	void drawImg(boolean a, Image img, int d, int b, Graphics g) {
		if (a)
			g.drawImage(img, d, b, 0);
	}

	void drawAnjian(Graphics g, int a, int px, int py, int frame) {
		if (curret == a) {
			s.setFrame(frame);
			s.setPosition(px, py);
			s.paint(g);
		} else {
			s.setFrame(frame + 1);
			s.setPosition(px, py);
			s.paint(g);
		}
	}

	public void paintCredite(Graphics g) {
		g.setColor(255, 255, 255);
		g.setFont(Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD,
				Font.SIZE_SMALL));
		k++;
		for (int i = 0; i < creditestr.length; i++) {
			if (200 + i * 15 - k > 50)
				g.drawString(creditestr[i], 5, 200 + i * 15 - k, 0);
		}
	}

	int j = 0;

	public void paintHelp(Graphics g) {
		g.setColor(255, 255, 255);
		g.setFont(Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD,
				Font.SIZE_SMALL));
		j++;
		for (int i = 0; i < helpstr.length; i++) {
			if (200 + i * 15 - j > 50)
				g.drawString(helpstr[i], 10, 200 + i * 15 - j, 0);
		}
	}

	public void paintOptions(Graphics g) {		
		ok.setFrame(0);
		ok.setPosition(70, 60);
		ok.paint(g);
		switch (ox) {
		case 0:
			ok.setFrame(1);
			ok.setPosition(76, 84);
			ok.paint(g);

			ok.setFrame(4);
			ok.setPosition(76, 108);
			ok.paint(g);
			break;
		case 1:
			ok.setFrame(3);
			ok.setPosition(76, 108);
			ok.paint(g);

			ok.setFrame(2);
			ok.setPosition(76, 84);
			ok.paint(g);
			break;
		}
	}

	public void paintScores(Graphics g) {
		g.setColor(255, 255, 255);
		for (int i = 0; i < 5; i++) {
			g.drawString(Integer.toString(hiScores[i]), 80, 90 + (i * 15), 0);
		}
	}

	void logoKeyPressed(int keycode){
		if (showImgs[0]) {
			showImgs[0] = false;
			showImgs[1] = true;
			return;
		}
		if (showImgs[1]) {
			showImgs[1] = false;
			showImgs[2] = true;
			return;
		}
	}
	
	protected void optionsKeyPressed(int keycode) {
		switch (keycode) {
		case -1:
			playmidi(sound.menuPlayer);
			ox = 0;
			repaint();
			break;
		case -5:
			//			mod++;
			switch (ox) {
			case 0:
//				SoundManager.playBackGroundMid();
				music[0]=1;
				onsound = true;
				writeScores("m",0,1,music[0]);
				break;
			case 1:
				SoundManager.closeSound();
				music[0]=2;
				onsound = false;
				writeScores("m",0,1,music[0]);
				break;
			}
			ismenu = true;
			isoption = false;
			break;
		case -2:
			playmidi(sound.menuPlayer);
			ox = 1;
			repaint();
			break;
		}
	}

	void helpKeyPressed(int keycode) {
		switch (keycode) {
		case -1:
			break;
		case -5:
			mod++;
			ismenu = true;
			ishelp = false;
			j = 0;
			break;
		case -2:
			break;
		}
	}

	int k = 0;

	void crediteKeyPressed(int keycode) {
		switch (keycode) {
		case -1:
			break;
		case -5:
			mod++;
			ismenu = true;
			iscredite = false;
			k = 0;
			break;
		case -2:
			break;
		}
	}

	/** 確認 * */
	void test(int keycode) {
		if (showImgs[2]) {
			switch (curret) {
			case 0:
				if (newgame) {
					//					gamecanvas = null;
					//					System.gc();
					//					gamecanvas = new GameCanvas(cs, this);
					cs.display.setCurrent(gamecanvas);
					gamecanvas.running = true;
					contiue = true;
					gamecanvas.doThreadStart();
					running = false;
					img[0] = null;
					img[1] = null;
					newgame = false;
					j = 0;
					k = 0;
				} else {
					if (contiue) {
						gamecanvas.running = true;
						gamecanvas.doThreadStart();
						cs.display.setCurrent(gamecanvas);
					}
				}
				break;
			case 2:
				//				cs.display.setCurrent(scores);
				mod++;
				if (mod % 2 == 0) {
					isscores = true;
					ismenu = false;
				} else {
					isscores = false;
					ismenu = true;
				}
				break;
			case 3:
				isoption = true;
				ismenu = false;
				break;
			case 4:
				mod++;
				if (mod % 2 == 0) {
					iscredite = true;
					ismenu = false;
				} else {
					iscredite = false;
					ismenu = true;
				}
				break;
			case 1:
				mod++;
				if (mod % 2 == 0) {
					ishelp = true;
					ismenu = false;
				} else {
					ishelp = false;
					ismenu = true;
				}
				break;
			case 5:
				cs.exit();
				break;
			default:
				break;
			}
		}
	}

	public void keyPressed(int keycode) {
		if (isoption) {
			optionsKeyPressed(keycode);
			return;
		}
		if (ishelp) {
			helpKeyPressed(keycode);
			return;
		}
		if (iscredite) {
			crediteKeyPressed(keycode);
			return;
		}

		if(showImgs[0]||showImgs[1]){
			logoKeyPressed(keycode);
			return;
		}
		
		switch (keycode) {
		case -1:
			playmidi(sound.menuPlayer);
			curret--;
			if (curret < 0)
				curret = 5;
			break;
		case -5:
			test(keycode);
			break;
		case 53:
			test(keycode);
			break;
		case -2:
			playmidi(sound.menuPlayer);
			curret++;
			if (curret > 5)
				curret = 0;
			break;
		case -11:
			cs.exit();
			break;
		default: //按任意鍵跳過logo
			if (showImgs[0]) {
				showImgs[0] = false;
				showImgs[1] = true;
				return;
			}
			if (showImgs[1]) {
				showImgs[1] = false;
				showImgs[2] = true;
			}
			break;
		}
	}

	void playmidi(javax.microedition.media.Player player) {
		try {
			player.start();
		} catch (MediaException e) {
			// TODO 自動生成 catch 塊
			e.printStackTrace();
		}
	}

	public void run() {
		while (true) {
			if (count < 81)
				count++;
			if (count == 5)
				showImgs[0] = true;
			if (count == 40) {
				showImgs[0] = false;
				showImgs[1] = true;
			}
			if (count == 80) {
				showImgs[1] = false;
				showImgs[2] = true;
			}

			try {
				Thread.sleep(40);
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
			repaint();
		}
	}

	public void writeScores(String id,int imin,int imax,int gg) {
		try {
			RecordStore.deleteRecordStore(id);
		} catch (Exception e) {
		}
		RecordStore rs = null;
		try {
			rs = RecordStore.openRecordStore(id, true);
		} catch (Exception e) {
		}

		for (int i = imin; i < imax; i++) {
			byte[] recoredDate = Integer.toString(gg).getBytes();
			try {
				rs.addRecord(recoredDate, 0, recoredDate.length);
			} catch (Exception e) {
			}
		}
		try {
			rs.closeRecordStore();
		} catch (Exception e) {
		}
	}

	public void updateHiscores(int s) {
		int i;
		for (i = 0; i < 5; i++) {
			if (s > hiScores[i])
				break;
		}
		if (i < 5) {
			for (int j = 4; j > i; j--) {
				hiScores[j] = hiScores[j - 1];
			}
			hiScores[i] = s;
		}
	}

	/** read高分和option **/
	public int[] readHiscores(String s,int imin,int imax) {
		int ss[]=new int[imax];
		RecordStore rs = null;
		try {
			rs = RecordStore.openRecordStore(s, false);
		} catch (Exception e) {
		}
		if (rs != null) {
			try {
				int len;
				byte[] recordDate = new byte[8];
				for (int i = imin; i <= imax; i++) {
					if (rs.getRecordSize(i) > recordDate.length) {
						recordDate = new byte[rs.getRecordSize(i)];
					}
					len = rs.getRecord(i, recordDate, 0);
					ss[i-1] = (Integer.parseInt(new String(recordDate,
							0, len)));
				}
			} catch (Exception e) {
				System.out.println("readHiscores error");
				e.printStackTrace();

			}
			try {
				rs.closeRecordStore();
			} catch (Exception e) {
			}
		} else {
			for (int i = imin; i < imax; i++){
				if (s=="m"){
					ss[i-1] = 0;
				}
				if (s=="h") {
					ss[i]=0;
				}
			}			
		}
		
		return ss;
	}

	/** 啟動描繪線程的方法 */
	void doThreadStart() {
		t = new Thread(this);
		t.start();
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产91综合久久蜜臀| 日本一区二区三区久久久久久久久不| 91精品久久久久久久91蜜桃 | 六月婷婷色综合| www.亚洲色图| 欧美一区二区免费| 亚洲精品乱码久久久久久黑人| 欧美a一区二区| 欧美性猛片xxxx免费看久爱| 日本一区二区高清| 国内外成人在线| 7777精品伊人久久久大香线蕉| 自拍偷在线精品自拍偷无码专区 | 国产三级精品视频| 麻豆国产精品一区二区三区| 精品婷婷伊人一区三区三| 国产精品成人在线观看| 国产激情精品久久久第一区二区 | 欧美三级电影精品| 18欧美亚洲精品| 99久久99久久久精品齐齐| 国产调教视频一区| 国产精品1区2区3区| 日韩精品专区在线影院观看| 亚洲h动漫在线| 欧美体内she精视频| 亚洲日本青草视频在线怡红院| 成人三级在线视频| 国产精品久久久久毛片软件| 国产91丝袜在线18| 欧美激情一区在线| 福利一区二区在线| 中文字幕精品在线不卡| 丰满少妇在线播放bd日韩电影| 久久精品无码一区二区三区| 国内成人自拍视频| 国产日韩亚洲欧美综合| 成人高清伦理免费影院在线观看| 久久久精品黄色| 国产成人8x视频一区二区| 久久精品日韩一区二区三区| 国产999精品久久| 综合亚洲深深色噜噜狠狠网站| av亚洲精华国产精华精| 亚洲一区二区三区国产| 欧美精品777| 激情综合色丁香一区二区| 久久蜜桃一区二区| 99精品视频一区二区三区| 一区二区三区四区视频精品免费| 91福利在线播放| 免费久久99精品国产| 久久日一线二线三线suv| 国产盗摄女厕一区二区三区| 成人欧美一区二区三区黑人麻豆| 色婷婷狠狠综合| 视频一区视频二区在线观看| 日韩三级视频中文字幕| 国产精品自产自拍| 亚洲青青青在线视频| 91精品欧美一区二区三区综合在| 久久精品国产一区二区三区免费看| 日韩免费成人网| av电影一区二区| 日韩精品电影一区亚洲| 欧美国产欧美综合| 欧美日韩国产综合一区二区| 久久 天天综合| 亚洲精品免费视频| 精品美女在线播放| 欧美午夜精品久久久久久孕妇| 麻豆国产91在线播放| 一区二区三区免费看视频| 精品欧美一区二区久久| 色呦呦网站一区| 国内精品久久久久影院一蜜桃| 日韩美女久久久| www国产精品av| 欧美色图天堂网| 高清国产一区二区| 秋霞国产午夜精品免费视频| 国产精品不卡视频| 久久精品国产免费看久久精品| 男男成人高潮片免费网站| 99久久精品国产精品久久| 久久亚洲精精品中文字幕早川悠里| 亚洲综合激情另类小说区| voyeur盗摄精品| 国产精品污www在线观看| 国产成人免费xxxxxxxx| 久久久久9999亚洲精品| 亚洲一二三四在线观看| 国产91丝袜在线播放| 美女久久久精品| 亚洲一区二区三区视频在线 | 韩国欧美国产1区| 亚洲成人免费观看| 亚洲色图欧美偷拍| 日本一区二区免费在线| 精品少妇一区二区三区在线视频 | 欧美一级久久久| 欧美丝袜丝交足nylons图片| 91美女片黄在线观看91美女| 国产精品一区一区| 久99久精品视频免费观看| 日韩精彩视频在线观看| 亚洲国产精品自拍| 亚洲一区影音先锋| 亚洲曰韩产成在线| 亚洲综合无码一区二区| 亚洲欧美另类久久久精品| 自拍偷在线精品自拍偷无码专区| 欧美激情一区二区三区四区| 国产午夜精品福利| 国产精品入口麻豆九色| 国产欧美va欧美不卡在线| 国产午夜精品一区二区| 亚洲国产精品v| 国产精品国产三级国产aⅴ无密码| 国产精品―色哟哟| 樱桃视频在线观看一区| 一区二区三区国产精品| 亚洲二区在线观看| 午夜精品123| 久久国产综合精品| 国产中文字幕精品| 成年人网站91| 欧美性色欧美a在线播放| 欧美绝品在线观看成人午夜影视| 欧美精品视频www在线观看| 91精品欧美综合在线观看最新| 欧美一级片在线看| 精品国产凹凸成av人网站| 精品福利一区二区三区免费视频| 亚洲精品一区二区在线观看| 欧美国产一区在线| 亚洲在线中文字幕| 久久99这里只有精品| 成人午夜伦理影院| 欧日韩精品视频| 欧美电视剧在线看免费| 欧美激情一区二区三区蜜桃视频| 一区二区三区在线播| 美女国产一区二区三区| 国产成人免费视| 欧美日韩视频一区二区| 精品奇米国产一区二区三区| 中文字幕视频一区二区三区久| 亚洲第一会所有码转帖| 久热成人在线视频| 一本大道av一区二区在线播放| 91精品欧美综合在线观看最新| 亚洲国产激情av| 日韩精品成人一区二区三区| 成人少妇影院yyyy| 5566中文字幕一区二区电影| 国产精品美女一区二区三区| 午夜精品福利一区二区三区av| 国产91对白在线观看九色| 欧美老肥妇做.爰bbww视频| 久久理论电影网| 天堂av在线一区| 91在线高清观看| 精品国产99国产精品| 夜夜嗨av一区二区三区网页| 国产精品一区二区三区乱码| 欧美亚洲国产一卡| 国产精品亲子乱子伦xxxx裸| 日韩中文字幕1| 色天使久久综合网天天| 久久精品水蜜桃av综合天堂| 日韩电影免费在线看| 99精品在线免费| 中文字幕欧美国产| 麻豆91在线播放免费| 欧美日韩国产乱码电影| 亚洲欧洲精品天堂一级| 国产传媒日韩欧美成人| 日韩视频在线观看一区二区| 亚洲激情中文1区| 99久久久精品| 欧美激情在线看| 国产不卡高清在线观看视频| 精品美女被调教视频大全网站| 亚洲国产精品自拍| 91传媒视频在线播放| 中文字幕亚洲一区二区av在线| 国产成人av电影免费在线观看| 日韩免费电影网站| 免费在线视频一区| 欧美一区二区在线视频| 亚洲成av人片一区二区| 欧美写真视频网站| 亚洲第一福利一区| 精品视频在线免费看| 午夜精品在线看| 欧美精品vⅰdeose4hd| 日韩1区2区日韩1区2区| 91精品国产综合久久香蕉麻豆| 天堂久久久久va久久久久|