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

📄 maze.java

📁 Position.java :辅助类 SerpentGameCanvas.java :游戏主控类 Maze.java :迷宫 SerpentGame.java :应用主控类 Serpent.java
💻 JAVA
字号:
import java.io.*;

class Maze
{
	// Maze : 0,0 - 15,20
	final static int HEIGHT=11;	//16
	final static int WIDTH=11;	//21
	
	int horizontalWalls[][]=new int[11][11];
	int verticalWalls[][]=new int[11][11];
//	int horizontalWalls[][]=new int[HEIGHT-1][WIDTH];
//	int verticalWalls[][]=new int[HEIGHT][WIDTH-1];
	
	int maps[][][][]={	//	map x hori/vert x row|col x byte
			{	//	map1
				{	//	hori
					{0xff,200,255},{25,87,109},{47,70,81},{52,30,69},{88,92,42},
					{47,78,81},{52,34,32},{88,92,43},{100,145,22},{32,145,10},
					{52,34,66},{47,78,89},{5,18,89},{47,7,89},{255,200,255},
				},
				{	//	vert
					{55,20,25},{52,34,66},{88,92,43},{11,110,11},{232,145,100},
					{202,56,131},{100,145,232},{52,34,66},{47,7,89},{2,134,61},
					{47,78,89},{111,32,78},{22,20,43},{205,200,255},
				}
			}
		};
	
	int bitHorizontalWalls[][]=new int[11][2];
	int bitVerticalWalls[][]=new int[11][2];
//	int bitHorizontalWalls[][]=maps[0][0];
//	int bitVerticalWalls[][]=maps[0][1];

	public void loadMaze(int id)
	{
		int i, j, data;
		try {
			String fname="/sep"+id+".map";
			InputStream inputstream=getClass().getResourceAsStream(fname);
			DataInputStream datainputstream=new DataInputStream(inputstream);
			for( i=0;i<11;i++ ) {
				for( j=0;j<2;j++ ) {
					data=datainputstream.readByte();
//					System.err.println(data);
					bitHorizontalWalls[i][j]=data;
				}
			}
			for( i=0;i<11;i++ ) {
				for( j=0;j<2;j++ ) {
					data=datainputstream.readByte();
//					System.err.println(data);
					bitVerticalWalls[i][j]=data;
				}
			}
		}
		catch(Exception e) {
			System.err.println(e);
		}
		
		for( i=0;i<horizontalWalls.length-1;i++ ) {
			for( j=0;j<horizontalWalls[i].length;j++ ) {
				horizontalWalls[i][j]=( bitHorizontalWalls[i+1][j/8] >> (7-j%8) ) & 1;
			}
		}
			
		for( i=0;i<verticalWalls.length-1;i++ )
			for( j=0;j<verticalWalls[i].length;j++ ) {
				verticalWalls[i][j]=( bitVerticalWalls[i][(j+1)/8] >> (7-(j+1)%8) ) & 1;
			}

	}
	
}

⌨️ 快捷键说明

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