⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gamemenu.java

📁 J2ME飞机设计游戏,希望对学习J2ME的程序员有所帮助
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
import java.io.IOException;
//import java.util.Vector;

import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

/*
 * GameMenu.java
 *
 * Created on 2007年9月12日, 下午3:37
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

/**
 * 
 * @author wangquan84
 */
public class GameMenu {

	/** Creates a new instance of GameMenu */
	private GameMenu() {
		initialGameLogo();
		initialGame();
	}

	public static GameMenu getInstance() {
		return gameMenu;
	}
	
	private void initialGameLogo() {
		try {
			logo1 = Image.createImage("/60logo1.png");
			logo2 = Image.createImage("/60logo2.png");

			imageConfirm = Image.createImage("/confirm.png");
			imageBack = Image.createImage("/back.png");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	//初始化子菜单对象
	public void initialChildMusicMenu() {
		try {
			backGroundImage = Image.createImage("/backGround.png");

			// 设置子菜单
			menu_Music = Image.createImage("/menu_music.png");
			music_On = Image.createImage("/music_on.png");
			music_Off = Image.createImage("/music_off.png");
			menu_next = Image.createImage("/menu_next.png");

		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public void initHelp(){
		initHelpWord();
		//Tool.releaseVector();
	}
	
	public void releaseHelp() {
		// if (menuHelp != null) {
		// menuHelp.removeAllElements();
		// menuHelp = null;
		//			
		// Tool.releaseVector();
		// }

		if (helpImage != null) {
			for (int i = 0; i < helpImage.length; i++) {
				helpImage[i] = null;
			}

			helpImage = null;

			System.gc();
		}
	}

	//清除子菜单对象
	public void releaseChildMusicMenu() {
		backGroundImage = null;
		// 设置子菜单
		menu_Music = null;
		music_On = null;
		music_Off = null;
		menu_next = null;

		System.gc();
	}
	
	//初始化主菜单
	public void initGameMenu() {
		try {
			imageTitle = Image.createImage("/title.png");
			imageSoftstar = Image.createImage("/softstar.png");

			menu_show = new Image[5];
			for (int z = 0; z < menu_show.length; z++) {
				menu_show[z] = Image.createImage("/menu" + z + ".png");
			}

			menu = new Image[5];
			for (int i = 0; i < menu.length; i++) {
				menu[i] = Image.createImage("/m" + i + ".png");
			}

			menu_back = Image.createImage("/menu_back.png");
			menu_next = Image.createImage("/menu_next.png");

			imagePlane = new Image[4];
			for (int j = 0; j < imagePlane.length; j++) {
				imagePlane[j] = Image.createImage("/p" + j + ".png");
			}

			// 加载武器图片
			imageWeapon = new Image[7];
			for (int k = 0; k < imageWeapon.length; k++) {
				imageWeapon[k] = Image.createImage("/wea" + k + ".png");
			}

			// 加载排行榜
			backGroundImage = Image.createImage("/backGround.png");
			scoreWord = Image.createImage("/scoreWord.png");
			scoreNum = (new CImage("/unumber.png")).getClipImages(8, 8);
			english = (new CImage("/uletter.png")).getClipImages(8, 8);

			// 音乐设置菜单
			menu_Music = Image.createImage("/menu_music.png");
			music_On = Image.createImage("/music_on.png");
			music_Off = Image.createImage("/music_off.png");
			
			// 加载帮助
			initHelpWord();
			//Tool.releaseVector();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void releaseAllMenuObject() {
		imageTitle = null;
		imageSoftstar = null;

		for (int sIdx = 0; sIdx < menu_show.length; sIdx++) {
			menu_show[sIdx] = null;
		}
		menu_show = null;

		for (int mIdx = 0; mIdx < menu.length; mIdx++) {
			menu[mIdx] = null;
		}
		menu = null;

		menu_back = null;
		menu_next = null;

		for (int pIdx = 0; pIdx < imagePlane.length; pIdx++) {
			imagePlane[pIdx] = null;
		}
		imagePlane = null;

		for (int wIdx = 0; wIdx < imageWeapon.length; wIdx++) {
			imageWeapon[wIdx] = null;
		}
		imageWeapon = null;

		backGroundImage = null;
		scoreWord = null;
		scoreNum = null;
		english = null;

		menu_Music = null;
		music_On = null;
		music_Off = null;

		//menuHelp.removeAllElements();
		//menuHelp = null;
		//Tool.releaseVector();
		
		releaseHelp();
		System.gc();
	}

	public void initialGame() {
		//System.out.println("225353535353535");

		try {
			imageTitle = Image.createImage("/title.png");
			imageSoftstar = Image.createImage("/softstar.png");
			
			menu_show = new Image[5];
			for (int z = 0; z < menu_show.length; z++) {
				menu_show[z] = Image.createImage("/menu" + z + ".png");
			}

			menu = new Image[5];
			for (int i = 0; i < menu.length; i++) {
				menu[i] = Image.createImage("/m" + i + ".png");
			}

			menu_back = Image.createImage("/menu_back.png");
			menu_next = Image.createImage("/menu_next.png");

			imagePlane = new Image[4];
			for (int j = 0; j < imagePlane.length; j++) {
				imagePlane[j] = Image.createImage("/p" + j + ".png");
			}

			//加载武器图片
			imageWeapon = new Image[7];
			for (int k = 0; k < imageWeapon.length; k++) {
				imageWeapon[k] = Image.createImage("/wea" + k + ".png");
			}

			//加载帮助字体
			initHelpWord();
			//Tool.releaseVector();
			
//			System.out.println("1111111111");
//			for(int i=0;i<menuHelp.size();i++){
//				System.out.println(""+ menuHelp.elementAt(i));
//			}

			// 加载排行榜
			backGroundImage = Image.createImage("/backGround.png");
			scoreWord = Image.createImage("/scoreWord.png");
			scoreNum = (new CImage("/unumber.png")).getClipImages(8, 8);
			english = (new CImage("/uletter.png")).getClipImages(8, 8);

			//设置菜单
			menu_Music = Image.createImage("/menu_music.png");
			music_On = Image.createImage("/music_on.png");
			music_Off = Image.createImage("/music_off.png");

			//设置子菜单
			gameMenuWord = Image.createImage("/gameMenuWord.png");
			gameMenuSec = Image.createImage("/gameMenuSec.png");
		} catch (IOException ex) {
			ex.printStackTrace();
		}
	}

	private void initHelpWord(){
//		String helpString = null;
//		helpString = "恐怖分子们得到了一批新的武器。据可靠消息,其中还包括一枚威力强大的战略导弹。\n"
//		+ "现在,恐怖的阴云已经笼罩在所有人的心头。而你,战斗机王牌中的翘楚,正奉命去解除这一紧急状态。\n"
//		+ "方法只有一个:登上你的爱机,击碎所有的敌人!\n"
//		+ "移动\n"
//		+ "向上:2,向下:8,向左4,向右:6\n"
//		+ "开关子弹:5\n"
//		+ "选择特殊武器:1,3,7,9\n"
//		+ "使用特殊武器:1,3,7,9(对应自己选择的武器)\n"
//		+ "左键为确认键,在游戏中可以调出菜单;右键为返回键。"
//		+ "\n"
//		+ "客服信息\n"
//		+ "发行商:  鸿腾伟业\n"
//		+ "客服电话:\n"
//		+ "4007061841\n"
//		+ "servicewei@mobit.com.cn";
//
//		menuHelp = Tool.getSubsection(helpString, smallFont,
//				GameConstant.iSCREEN_WIDTH - 4, ",.\n");
//		
//		helpString = null;

		try {
			helpImage = new Image[4];
			for (int i = 0; i < helpImage.length; i++) {
				helpImage[i] = Image.createImage("/help" + (i + 1) + ".png");
			}
		} catch (Exception e) {
			System.out.println("fuck!!!!!!!!!!!!");
			e.printStackTrace();
		}
	}

	public void drawLogo1(Graphics graphics, int posX, int posY, int anchor) {
		graphics.drawImage(logo1, posX, posY, anchor);
	}

	public void drawLogo2(Graphics graphics, int posX, int posY, int anchor) {
		graphics.drawImage(logo2, posX, posY, anchor);
	}

	public void drawIsPlaySound(Graphics graphics, int fontWidth) {
		Tool.fillScreen(graphics,0);
		drawWordsEffect(graphics, "是否开启声音?", (GameConstant.iSCREEN_WIDTH >> 1)
				- 3 * fontWidth, GameConstant.iSCREEN_HEIGHT - 40, 0, 0xffffff,
				smallFont);

		graphics.setColor(0xffffff);
		graphics.drawLine(0, GameConstant.iSCREEN_HEIGHT - 20,
				GameConstant.iSCREEN_WIDTH, GameConstant.iSCREEN_HEIGHT - 20);
		graphics.drawImage(imageConfirm, 0, GameConstant.iSCREEN_HEIGHT
				- imageConfirm.getHeight(), GameConstant.TOPLEFT);
		graphics.drawImage(imageBack, GameConstant.iSCREEN_WIDTH
				- imageBack.getWidth(), GameConstant.iSCREEN_HEIGHT
				- imageBack.getHeight(), GameConstant.TOPLEFT);
	}

	public void drawAutoMenu(Graphics graphics, int menuMoveDistance,
			int menu2MoveDistance, int lightChangeTimes, int anchor) {
		this.drawMenuEffect(graphics, menuMoveDistance, menu2MoveDistance,
				lightChangeTimes, anchor);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -