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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? board.java

?? 斜45度游戲《NetIntruder》
?? JAVA
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
package isoj2me;import java.util.*;import javax.microedition.lcdui.*;/** * <p> * isoj2me: Board * </p> * <p> * This is the main class. It manages a Board where you can add, remove and move * Characters and Items. It manages Maps too. This class perform the draw method * to paint the Board on the device * </p> * <p> * Copyright: Copyright (c) 2006 * </p> * <p> * License: Lesser GPL (http://www.gnu.org) * </p> * <p> * Company: <a href=http://www.mondonerd.com target="_blank">Mondonerd.com</a> * </p> *  * @author Massimo Maria Avvisati * @version 0.5 */public class Board {	public static Hashtable tiles = new Hashtable(12); //TODO this value have to be a variable to optimize the result	/**	 * This one of the main method of this class. It paint on the given Graphics	 * the board with its tiles and characters.	 * 	 * @param x	 *            where to paint on the Graphics (x)	 * @param y	 *            where to paint on the Graphics (y)	 * @param cellX	 *            starting cell on the map (x)	 * @param cellY	 *            starting cell on the mpa (y)	 * @param width	 *            width of the map area to be painted (starting from cellX)	 * @param height	 *            height of the map area to be painted (starting from cellY)	 * @param g	 *            Graphics object where to paint	 */	public int cellX = 0;	public int cellY = 0;	public int charactersClipWidth = 60;    public int charactersClipHeight = 60;	public Hashtable characters = new Hashtable(1);	private Hashtable charactersPositions = new Hashtable(1);//	public Hashtable items = new Hashtable();////	private Hashtable itemsPositions = new Hashtable(20);	public Map map;	public String tileSet = "";	public int tileWidth, tileHeight;	public int width, height;	/**	 * Constructor. The tileset basic name will be an empty string.	 */	public Board() {	}	/**	 * Constructor. The tileset basic name will be tileSet and it will be used	 * when loading tiles image files.	 * 	 * @param tileSet	 *            basic name for tile files	 */    private Canvas canvas = null;	public Board(String tileSet, Canvas canvas) {        this.canvas = canvas;		this.tileSet = tileSet;	}	/**	 * This method call the Map() constructor passing the base name for the map	 * files and the number of layers	 * 	 * @param baseFilename	 *            base name for the map files	 * @param numberOfLayers	 *            number of layers to load	 */	public void createMap(String baseFilename, int numberOfLayers) {		map = new Map(baseFilename, numberOfLayers);	}	boolean lastDrawn = false;	int initI = 0;	int lastI = 30;	public void drawTile(int mapX, int mapY, int x, int y, Graphics g) {		Image tempImage = null;        if (map.layers[0][(mapY * map.getWidth()) + mapX] != 48) {		try {			String imageCode = ""					+ map.layers[0][(mapY * map.getWidth()) + mapX];			tempImage = Utility.loadImage(tileSet + imageCode, tiles);		} catch (Exception e) {		}		if (tempImage != null) {			g.drawImage(tempImage, x - (tempImage.getWidth() / 2), y					- tempImage.getHeight() + tileHeight * 2, Graphics.TOP					| Graphics.LEFT);		}        }	}	public void drawCharacter(int mapX, int mapY, int x, int y, Graphics g) {		// Paint characters		if (charactersPositions.containsKey(mapX + "_" + mapY + "_0")) {			isoj2me.Character tempCharacter = (isoj2me.Character) charactersPositions					.get(mapX + "_" + mapY + "_0");			int tempCharX = x + (-tempCharacter.getCurrentImage().getWidth())					/ 2;			if ("player".equals(tempCharacter.name)) {				int xMod = 0;				int yMod = 0;//                if (tempCharacter.speed > 2) {//                    tempCharacter.speed = 2;//                }				if (tempCharacter.getCurrentAction().indexOf("SW") > 0) {					// System.out.println("SW");					if (tempCharacter.speed > 2) {						// System.out.println("Step 1");						tempCharacter.speed = 2;						xMod = +11;						yMod = -5;					} else if (tempCharacter.speed > 1) {						// System.out.println("Step 2");						tempCharacter.speed = 1;						xMod = +8;						yMod = -4;					} else if (tempCharacter.speed > 0) {						// System.out.println("Step 3");						tempCharacter.speed = 0;						tempCharacter.isMoving = false;					}				} else if (tempCharacter.getCurrentAction().indexOf("NW") > 0) {					// System.out.println("NW");					if (tempCharacter.speed > 2) {						// System.out.println("Step 1");						tempCharacter.speed = 2;						xMod = +11;						yMod = +5;					} else if (tempCharacter.speed > 1) {						// System.out.println("Step 2");						tempCharacter.speed = 1;						xMod = +8;						yMod = +4;					} else if (tempCharacter.speed > 0) {						// System.out.println("Step 3");						tempCharacter.speed = 0;						tempCharacter.isMoving = false;					}				} else if (tempCharacter.getCurrentAction().indexOf("SE") > 0) {					// System.out.println("SE");					if (tempCharacter.speed > 2) {						// System.out.println("Step 1");						tempCharacter.speed = 2;						xMod = -11;						yMod = -5;					} else if (tempCharacter.speed > 1) {						// System.out.println("Step 2");						tempCharacter.speed = 1;						xMod = -8;						yMod = -4;					} else if (tempCharacter.speed > 0) {						// System.out.println("Step 3");						tempCharacter.speed = 0;						tempCharacter.isMoving = false;					}				} else if (tempCharacter.getCurrentAction().indexOf("NE") > 0) {					// System.out.println("NE");					if (tempCharacter.speed > 2) {						// System.out.println("Step 1");						tempCharacter.speed = 2;						xMod = -11;						yMod = +5;					} else if (tempCharacter.speed > 1) {						// System.out.println("Step 2");						tempCharacter.speed = 1;						xMod = -8;						yMod = +4;					} else if (tempCharacter.speed > 0) {						// System.out.println("Step 3");						tempCharacter.speed = 0;						tempCharacter.isMoving = false;					}				}				tempCharacter.draw(tempCharX + xMod, y + yMod, g);				tempCharacter.lastDrawnX = tempCharX + xMod						+ tempCharacter.getCurrentImage().getWidth() / 2;				tempCharacter.lastDrawnY = y + yMod						- tempCharacter.getCurrentImage().getHeight() / 2						+ tempCharacter.modifierY;			} else {				tempCharacter.draw(tempCharX, y, g);				tempCharacter.lastDrawnX = tempCharX						+ tempCharacter.getCurrentImage().getWidth() / 2;				tempCharacter.lastDrawnY = y						- tempCharacter.getCurrentImage().getHeight() / 2						+ tempCharacter.modifierY;				tempCharacter.speed = 0;				tempCharacter.isMoving = false;			}		}	}//	private void drawItem(int mapX, int mapY, int x, int y, Graphics g) {//		// Paint items////		if (itemsPositions.containsKey(mapX + "_" + mapY + "_0")) {//			Item tempItem = (Item) itemsPositions.get(mapX + "_" + mapY + "_0");//			Image tempImage = tempItem.getCurrentImage();//			g.drawImage(tempImage, x - (tempImage.getWidth() / 2), y//					- tempImage.getHeight() + tileHeight * 2, Graphics.TOP//					| Graphics.LEFT);//		}//	}	public Image cachedBoard = null;	public boolean changed = true;	// Image characterBoard = null;	//Image cuttedBoard = null;	//int characterCounter = 0;	private int clipWidth;	private int clipHeight;	public void draw(int x, int y, Graphics gInit, boolean centered) {		Character c = null;		if (!centered) {			cachedBoard = Image.createImage(gInit.getClipWidth(), canvas.getHeight());			drawEmpty(x, y, cachedBoard.getGraphics(), true);			gInit.drawImage(cachedBoard, 0, 0, Graphics.TOP | Graphics.LEFT);		} else {			if (changed || cachedBoard == null) {				cachedBoard = Image.createImage(gInit.getClipWidth(), canvas.getHeight());				drawEmpty(x, y, cachedBoard.getGraphics(), false);				gInit						.drawImage(cachedBoard, 0, 0, Graphics.TOP								| Graphics.LEFT);				changed = false;			} else {				gInit						.drawImage(cachedBoard, 0, 0, Graphics.TOP								| Graphics.LEFT);				Enumeration charEnum = characters.elements();				int charactersCounter = 0;				for (Enumeration iter = charEnum; iter.hasMoreElements();) {								c = (Character) iter.nextElement();				//if (c.x >= cellX && c.y >= cellY && c.x < cellX + width && c.y < cellY + height) { //TODO verify				if (true) {					charactersCounter++;					clipWidth = gInit.getClipWidth();					clipHeight = canvas.getHeight();					int clipWidthTemp = charactersClipWidth; //TODO configuration					int clipHeightTemp = charactersClipHeight; //TODO configuration											gInit.setClip(c.lastDrawnX - clipWidthTemp / 2,											c.lastDrawnY - clipHeightTemp / 2, clipWidthTemp,							clipHeightTemp);					drawCharacterBoard(c, x, y, gInit);					// characterboard on					// draw					gInit.setClip(0, 0, clipWidth, clipHeight);				}				}			}		}	}	boolean repaint = true;	public void drawEmpty(int x, int y, Graphics gInit, boolean withPlayer) {		gInit.setColor(0x000000);		gInit.fillRect(0, 0, gInit.getClipWidth(), canvas.getHeight());		boolean firstPainted = false;		int xTemp = x;		int yTemp = 0;		int xInit = x;		lastDrawn = false;		//int lastItemp = lastI;		for (int i = 0; i < height; i++) { // y cycle (counter is "i")			yTemp = y + tileHeight * i;			xTemp = xInit - (tileWidth / 2) * i;			for (int j = 0; j < height; j++) {				if (onScreen(xTemp - tileWidth / 2, yTemp, gInit)						&& (j + cellX < map.getWidth())						&& (i + cellY) < map.getHeight() && (j + cellX >= 0)						&& (i + cellY >= 0)) { //TODO verify// && (map.getCell(0, j + cellX, i + cellY) > 65 || "player".equals(isCharacter(j + cellX, i + cellY, 0)))					if (firstPainted != true) {						firstPainted = true;					}										if (withPlayer) {						drawCharacter(j + cellX, i + cellY, xTemp, yTemp, gInit);					} else {						drawTile(j + cellX, i + cellY, xTemp, yTemp, gInit);					}					if (!lastDrawn) {						lastI = i + 1;					}				}				xTemp = xTemp + tileWidth / 2;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天天色综合天天| 日韩一区二区三区电影| 国产精品伦一区二区三级视频| 国产一区二区三区在线观看免费| 精品剧情在线观看| 福利视频网站一区二区三区| 中文字幕日韩精品一区| 欧日韩精品视频| 美女久久久精品| 国产视频不卡一区| 99久久国产免费看| 奇米四色…亚洲| 国产精品午夜电影| 色婷婷亚洲婷婷| 免费高清成人在线| 国产精品传媒入口麻豆| 欧美乱妇一区二区三区不卡视频| 美日韩一区二区| 国产精品女同一区二区三区| 欧美性videosxxxxx| 玖玖九九国产精品| 国产精品不卡在线观看| 欧美精品九九99久久| 国产iv一区二区三区| 夜夜嗨av一区二区三区四季av| 在线电影欧美成精品| 粉嫩av亚洲一区二区图片| 亚洲午夜激情av| 欧美国产国产综合| 在线成人av网站| 不卡影院免费观看| 蜜臀国产一区二区三区在线播放 | 久久免费偷拍视频| 日本视频中文字幕一区二区三区| 国产午夜精品久久久久久免费视| 99视频在线精品| 日韩va欧美va亚洲va久久| 国产精品乱码一区二区三区软件| 欧美日韩一区中文字幕| 福利一区二区在线| 久久精品国产精品亚洲红杏| 亚洲精品欧美在线| 国产欧美精品区一区二区三区| 欧美丝袜自拍制服另类| 成人小视频在线| 激情另类小说区图片区视频区| 亚洲国产欧美在线| 中文字幕五月欧美| 亚洲国产经典视频| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美熟乱第一页| 色综合激情久久| 成人免费的视频| 国产伦精品一区二区三区免费 | 亚洲欧美电影院| 久久久不卡网国产精品一区| 欧美一区二区三区精品| 欧美性感一类影片在线播放| 91亚洲永久精品| 成人黄色软件下载| 国产大陆亚洲精品国产| 美国十次综合导航| 奇米精品一区二区三区四区| 亚洲123区在线观看| 亚洲欧洲av在线| 国产精品麻豆网站| 国产精品乱人伦中文| 亚洲国产精品成人综合| 国产人伦精品一区二区| 久久久久久电影| 国产欧美视频在线观看| 国产日韩欧美麻豆| 欧美国产一区视频在线观看| 欧美国产精品劲爆| 亚洲图片你懂的| 亚洲激情图片qvod| 亚洲综合自拍偷拍| 国产精品久久久久久一区二区三区 | 国产精品一区二区久久不卡 | 国产精品久久毛片a| 丁香激情综合国产| 国产精品一区在线观看你懂的| 久久不见久久见免费视频7| 一区二区三区在线视频播放| 亚洲欧洲精品成人久久奇米网| 中文字幕一区av| 1024亚洲合集| 亚洲福利一区二区| 人妖欧美一区二区| 国产乱人伦偷精品视频不卡| 国产成人精品影视| 一本在线高清不卡dvd| av在线播放成人| 欧美视频在线不卡| 精品日韩成人av| 国产精品成人在线观看| 亚洲一区日韩精品中文字幕| 三级成人在线视频| 国产精品一区二区无线| 91片在线免费观看| 欧美一区二区视频在线观看2022| 欧美白人最猛性xxxxx69交| 亚洲国产高清不卡| 亚洲高清久久久| 精品一区二区三区视频 | 91美女视频网站| 欧美猛男超大videosgay| 精品奇米国产一区二区三区| 国产精品国产三级国产普通话三级 | 欧美电影免费观看高清完整版| 久久精品男人天堂av| 亚洲乱码国产乱码精品精98午夜| 日韩不卡一二三区| 成人精品免费视频| 欧美一二三四在线| 综合自拍亚洲综合图不卡区| 日韩福利电影在线| 91小视频在线| 精品国产亚洲在线| 天堂午夜影视日韩欧美一区二区| 久久66热偷产精品| 在线观看视频一区二区| 久久久久一区二区三区四区| 亚洲影视资源网| 日韩久久一区二区| 久久久久九九视频| 国产精品亲子伦对白| 亚洲一二三四久久| 国产成人av一区二区三区在线 | 久久精品国产久精国产| 91热门视频在线观看| 久久久噜噜噜久久中文字幕色伊伊| 最近日韩中文字幕| 午夜欧美在线一二页| 从欧美一区二区三区| 欧美一区二区精品在线| 亚洲激情在线激情| 成人一区二区三区中文字幕| 日韩一区二区三区观看| 亚洲一卡二卡三卡四卡 | 看国产成人h片视频| 欧美亚洲动漫另类| 精品处破学生在线二十三| 亚洲v日本v欧美v久久精品| 国产a级毛片一区| 久久综合狠狠综合| 久久99精品久久久久久动态图 | 色噜噜夜夜夜综合网| 91精品婷婷国产综合久久| 亚洲欧美中日韩| 国产成人综合在线观看| 国产精品美女久久久久av爽李琼 | 中文字幕综合网| 国产福利91精品一区| 欧美精品一区二区三| 久久99精品网久久| 欧美mv和日韩mv国产网站| 日韩成人精品在线观看| 欧美在线一区二区| 亚洲激情图片一区| 岛国一区二区三区| 欧美电影在线免费观看| 亚洲女同ⅹxx女同tv| 色噜噜狠狠色综合中国| 一区二区三区精品在线观看| 日本精品一区二区三区四区的功能| 亚洲人成人一区二区在线观看| av不卡免费电影| 亚洲欧洲精品一区二区三区不卡| av电影在线观看一区| 亚洲精品乱码久久久久久久久| 色婷婷综合久色| 午夜精品福利视频网站| 在线中文字幕不卡| 一区二区三区欧美日| 91啪亚洲精品| 亚洲色图在线看| 日本丰满少妇一区二区三区| 亚洲狠狠爱一区二区三区| 91精品视频网| 国产毛片一区二区| 亚洲欧美日韩国产另类专区| 在线亚洲精品福利网址导航| 天天操天天综合网| 亚洲精品一区二区三区精华液| 国产精品996| 亚洲精品免费看| 日韩精品专区在线| 中文字幕一区在线| 在线精品国精品国产尤物884a| 天天做天天摸天天爽国产一区| 欧美成va人片在线观看| 九九视频精品免费| 国产日本欧洲亚洲| 欧美性猛片aaaaaaa做受| 精品影视av免费| 1024国产精品| 宅男噜噜噜66一区二区66| 国产原创一区二区| 国产精品天美传媒沈樵|