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

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

?? nutty.java

?? 一個推箱子游戲
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
		g.setColor(0x000000);
		g.setFont(font[1]);
		g.drawString("Loading...",(scrW-font[1].stringWidth("Loading...")) >> 1,scrH >> 1 , 0) ;
	}
	private void drawTitle(Graphics g)
	{
		clearScreen(g);
		g.drawImage(title,0,0,0);
		g.setColor(0xffffff);
		g.drawString("菜單",2,114,0);
		g.drawString("退出",110,114,0);

	}
	 
	
	private void drawMenu(Graphics g)
	{
		 int mY = 2 ; 
	 	 int offset = 1 ;
		
		
		for(int i=0;i<menuTxt.length;i++)
		{	
			
				if(mSelect == i){
					g.setColor(RED);
					g.setFont(font[0]);
				}else{
					g.setColor(BLACK);
					g.setFont(font[2]);
				}		
				if((!pause)&&(i==0)) i++; 				
				g.drawString(menuTxt[i],( scrW - font[2].stringWidth(menuTxt[i]) ) >> 1 ,mY ,0) ;
				mY += font[2].getHeight() + offset  ; 
		}

		

	}
	private void drawHelpScreen(Graphics g)
	{ 
	}
	private void drawAboutScreen(Graphics g)
	{
	}
	private void drawSettingScreen(Graphics g)
	{
	}
	private void drawWinScreen(Graphics g)
	{
		g.setColor(0xffffff);
		g.drawString("過關",50,30,0);
	}
	/*Draw Background*/
	private void drawMap(Graphics g)
	{
		

		for(int m = 0 ; m < map_data.length ; m ++ )	//// y coordinates
		{
			for(int n = 0 ; n < map_data[m].length; n++)	// x coordinates
			{
				
				
					if(map_data[n][m][2] == 1)
					{
						g.drawImage(map[0],map_data[n][m][0],map_data[n][m][1],0);
						

					}else if(map_data[n][m][2] == 0)
					{
						g.drawImage(map[1],map_data[n][m][0],map_data[n][m][1],0);						
						
					}

			
			}
			
		}

	}
	/*Draw squirrel*/
	private void drawSqu(Graphics g)
	{
		g.drawImage(squirrel[sdir],map_data[( splace[1] )][( splace[0] )][0],map_data[( splace[1] )][( splace[0] )][1],0);
	}

	/*Draw nuts*/
	private void drawNuts(Graphics g)
	{
		for(int i = 0; i < nplace.length; i++)
		{
			g.drawImage(nut[(nplace[i][2]-1)],map_data[(nplace[i][1])][(nplace[i][0])][0],map_data[(nplace[i][1])][(nplace[i][0])][1],0);
		}
	}

	/*Draw nut's destination*/
	private void drawNutDest(Graphics g)
	{
		for(int i = 0; i < ndplace.length; i++)
		{
			g.drawImage(nut[(ndplace[i][2]+1)],map_data[(ndplace[i][1])][(ndplace[i][0])][0],map_data[(ndplace[i][1])][(ndplace[i][0])][1],0);
		}
	}

	//-----------------------------------------move and hit-------------------------------------------//
	
	/*Move squirrel*/
	private static final void moveSqu()
	{	
		/*a temporary variable save which nut beside squirrel*/
		//int p = 0 ;

		/*a flag indication a nut on the direction of squirrel move*/
		boolean hit = false ; 
		
		/*a flag indication the nut can move too*/
		boolean mf = false ; 
		
		/*the move direction is up*/
		if( moveS[0] )
		{	
			//debug("up");
			/*set the direction is up(2),squirrel will show 2sd image*/
			sdir = 2 ;		
			
			/*set the squirrel move flag of the direction  false*/
			moveS[0] = false;
			
			
			/*find whether a nut beside squirrel*/
			for(int r=0; r < nplace.length; r++)	
			{
				/*if have*/
				if( ((splace[1] - 1) == nplace[r][1]) && (splace[0]  == nplace[r][0] )){
					
					/*move nut return flag*/
					mf = moveNuts(0,r);
					//p = r ; 
					
					/*set hit true*/
					hit = true ; 
				}
				
			}
			//debug("p:::::"+p);
			/*if didn't finded nuts,but hava space*/
			if(  (map_data[(splace[1] - 1)][(splace[0])][2] == 0 ) && (!hit ) )  //no nut but have space
			{		
					/*move squirrel*/
					splace[1] -= 1 ;
					
			}
			/*if finded nut*/
			if(hit) 
			{
				/*the nut has moved*/
				if(mf){
					/*move squirrel*/
					splace[1] -= 1 ;
					/*set hit false*/
					hit = false ;
				}
			}
			
		}
		if( moveS[1] )
		{
			//debug("down");
			sdir = 3;
			moveS[1] = false;
			 
			for(int r=0; r < nplace.length; r++)
			{
				if( ((splace[1] + 1) == nplace[r][1] ) && ( splace[0]  == nplace[r][0] )){
					mf = moveNuts(1,r);
					hit = true ; 					
				}
				
			}
			if( (map_data[(splace[1] + 1)][(splace[0])][2] == 0 ) && (!hit))
			{
				splace[1] += 1 ;	
				
			}
			if(hit)
			{
				if(mf)
				{
					splace[1]+=1;
					hit = false ; 
				}
			}
			
			
			
			
		}
		if( moveS[2] )
		{
			//debug("left");
			sdir = 0;
			moveS[2] = false;
			
			for(int r=0; r < nplace.length; r++)
			{
				if( ((splace[0] - 1) == nplace[r][0]) && ( splace[1] == nplace[r][1] )){
					mf = moveNuts(2,r);
					hit = true ; 					
				}				
				
			}
			if( (map_data[(splace[1])][(splace[0] - 1)][2] == 0 ) && (!hit)){
				splace[0] -= 1 ;
				
			}
			if(hit)
			{
				if(mf)
				{
					splace[0] -= 1 ;
					hit = false;
				}
			}
			
			
		}

		if( moveS[3] )
		{
			//debug("right");
			sdir = 1 ;
			moveS[3] = false;
			for(int r=0; r < nplace.length; r++)
			{
				if( ((splace[0] + 1) == nplace[r][0] ) && ( splace[1] == nplace[r][1] )){
					mf = moveNuts(3,r);
					hit = true ; 
				}
				
			}
			if( (map_data[(splace[1])][(splace[0] + 1)][2] == 0) && (!hit)) {
				splace[0] += 1 ;
				
			}
			if(hit)
			{
				if(mf)
				{
					splace[0] += 1 ;
					hit = false ; 
				}
			}
		
			
		}

		

	}

	/*
	*
	*Funcation:Move nuts
	*
	*Parameter: dir:the direction of  move to . nm: which nut should be move.
	*
	*return: whether the nut can moved.
	*/
	private static final boolean moveNuts(int dir,int nm)
	{
		/*flag indication another nut beside current nut*/
		boolean hit = false;
		
		/*temporary flag*/
		boolean mf = false ; 
		switch(dir)
		{
			case 0: //'up'

					/*find another nut*/
					for(int i = 0 ; i < nplace.length ; i++)
					{
						/*use x ,y to coordinate*/
						if( ((nplace[nm][1] - 1) == nplace[i][1] ) && ( nplace[nm][0] == nplace[i][0]))
							hit = true ; 

					}
					/*if have space and not have another nut*/
					if( (map_data[(nplace[nm][1] - 1)][(nplace[nm][0])][2] == 0 ) && (!hit) )
					{
						/*move current nut*/
						nplace[nm][1] -= 1 ;
						mf = true ; 
					}
					
			break;
			case 1:	//'down'
					for(int i = 0 ; i < nplace.length ; i++)
					{
						if( ((nplace[nm][1] + 1) == nplace[i][1] ) && ( nplace[nm][0] == nplace[i][0]))
							hit = true ; 

					}
					if( (map_data[(nplace[nm][1] + 1)][(nplace[nm][0])][2] == 0) && (!hit) )
					{
						nplace[nm][1] += 1 ;						
						mf = true ;
					}
			break;
			case 2: //'left'
					for(int i = 0 ; i < nplace.length ; i++)
					{
						if( ((nplace[nm][1]) == nplace[i][1] ) && ( (nplace[nm][0] - 1) == nplace[i][0]))
							hit = true ; 

					}
					if( (map_data[(nplace[nm][1])][(nplace[nm][0] - 1)][2] == 0) && (!hit))
					{
							nplace[nm][0] -= 1 ;
							mf = true ;
					}
			break;
			case 3: //'right'
					for(int i = 0 ; i < nplace.length ; i++)
					{
						if( ((nplace[nm][1]) == nplace[i][1] ) && ( (nplace[nm][0] + 1) == nplace[i][0]))
							hit = true ; 

					}
					
					if( (map_data[(nplace[nm][1])][(nplace[nm][0] + 1)][2] == 0) && (!hit) )
					{
						nplace[nm][0] += 1 ;						
						mf = true ;
					}
			break;
		}

		return mf ; 
	}


	private static final boolean isWin()
	{
		boolean temp = false;
		int nn = 0;
		for(int r = 0 ; r < nplace.length ; r++)
		{
			for(int m = 0 ; m < ndplace.length ; m++)
			{
				if( (nplace[r][0] == ndplace[m][0] ) && (nplace[r][1] == ndplace[m][1]))
					nn++;
			}
		}

		if(nn == nplace.length)
			temp = true;
		else
			temp = false;

		return temp;
	}

	//------------------------------------------------------------------------------------------------//



	//-----------------------------------------Logic Data--------------------------------------------//
	private void loadMap_data()
	{
		map_data = initMapData(level);
	}

	/*
	*
	*Function: initialization Map 's  data
	*
	*Parameter: level - which map should be used!
	*
	*/
	private int[][][] initMapData(int le)
	{
		int[][][] t = new int[8][8][5]; 
		int[][][] xy = {
					 
					 {  {0,0} , {16,0} ,{32,0}, {48,0},{64,0},{80,0}, {96,0}, {112,0}},
					 {  {0,16}, {16,16},  {32,16},{48,16},{64,16}, {80,16},{96,16},{112,16}  } ,
					 {  {0,32},{16,32},{32,32}, {48,32},{64,32},{80,32},{96,32},{112,32} },
					 {  {0,48}, {16,48}, {32,48}, {48,48},{64,48}, {80,48}, {96,48}, {112,48}  },
					 {  {0,64},{16,64},{32,64},{48,64}, {64,64},{80,64},{96,64},{112,64} },
					 {  {0,80},{16,80},{32,80}, {48,80}, {64,80},{80,80},{96,80},{112,80}},
					 {  {0,96},{16,96}, {32,96},{48,96},{64,96},{80,96},{96,96},{112,96}},
					 {  {0,112},{16,112},{32,112},{48,112},{64,112},{80,112},{96,112},{112,112} }				
			
					 } ; 

		switch(le)
		{
			case 1:
			int[][][] temp = {
					 
					 {  {xy[0][0][0],xy[0][0][1],1,0,0} , /*wall*/ {xy[0][1][0],xy[0][1][1],1,0,0} , /*wall*/ {xy[0][2][0],xy[0][2][1],1,0,0}, /*wall*/ {xy[0][3][0],xy[0][3][1],1,0,0},/*wall*/  {xy[0][4][0],xy[0][4][1],1,0,0},/*wall*/    {xy[0][5][0],xy[0][5][1],1,0,0},/*wall*/      {xy[0][6][0],xy[0][6][1],1,0,0},/*wall*/    {xy[0][7][0],xy[0][7][1],1,0,0} /*wall*/	 },	//[0][0]~[0][7]	 tiers	
					 {  {xy[1][0][0],xy[1][0][1],1,0,0}, /*wall*/  {xy[1][1][0],xy[1][1][1],0,0,0},         {xy[1][2][0],xy[1][2][1],0,0,0},          {xy[1][3][0],xy[1][3][1],0,0,0},         {xy[1][4][0],xy[1][4][1],0,0,0},           {xy[1][5][0],xy[1][5][1],0,0,0},             {xy[1][6][0],xy[1][6][1],0,0,0},           {xy[1][7][0],xy[1][7][1],1,0,0} /*wall*/    } ,
					 {  {xy[2][0][0],xy[2][0][1],1,0,0}, /*wall*/  {xy[2][1][0],xy[2][1][1],0,0,0},         {xy[2][2][0],xy[2][2][1],0,0,0},          {xy[2][3][0],xy[2][3][1],0,0,0},          {xy[2][4][0],xy[2][4][1],0,0,0},           {xy[2][5][0],xy[2][5][1],0,0,1},/*nut org*/ {xy[2][6][0],xy[2][6][1],1,0,0},/*walll*/    {xy[2][7][0],xy[2][7][1],1,0,0}/*wall*/   },
					 {  {xy[3][0][0],xy[3][0][1],1,0,0}, /*wall*/  {xy[3][1][0],xy[3][1][1],0,0,0},         {xy[3][2][0],xy[3][2][1],1,0,0},/*wall*/  {xy[3][3][0],xy[3][3][1],0,0,0},          {xy[3][4][0],xy[3][4][1],1,0,0}, /*wall*/  {xy[3][5][0],xy[3][5][1],0,0,0},             {xy[3][6][0],xy[3][6][1],0,1,0},/*nut des*/ {xy[3][7][0],xy[3][7][1],1,0,0}  /*wall*/ },
					 {  {xy[4][0][0],xy[4][0][1],1,0,0}, /*wall*/  {xy[4][1][0],xy[4][1][1],0,0,0},         {xy[4][2][0],xy[4][2][1],1,0,0},/*wall*/  {xy[4][3][0],xy[4][3][1],0,0,0},          {xy[4][4][0],xy[4][4][1],0,0,1},/*nut org*/ {xy[4][5][0],xy[4][5][1],0,0,0},            {xy[4][6][0],xy[4][6][1],0,1,0},/*nutdes*/ {xy[4][7][0],xy[4][7][1],1,0,0} /*wall*/   },
					 {  {xy[5][0][0],xy[5][0][1],1,0,0}, /*wall*/  {xy[5][1][0],xy[5][1][1],0,0,0},         {xy[5][2][0],xy[5][2][1],1,0,0},/*wall*/  {xy[5][3][0],xy[5][3][1],0,0,0},           {xy[5][4][0],xy[5][4][1],0,0,0},           {xy[5][5][0],xy[5][5][1],0,0,1},/*nut org*/ {xy[5][6][0],xy[5][6][1],0,1,0}, /*nutdes*/{xy[5][7][0],xy[5][7][1],1,0,0} /*wall*/   },
					 {  {xy[6][0][0],xy[6][0][1],1,0,0}, /*wall*/  {xy[6][1][0],xy[6][1][1],0,0,0},         {xy[6][2][0],xy[6][2][1],0,0,0},          {xy[6][3][0],xy[6][3][1],0,0,0},           {xy[6][4][0],xy[6][4][1],0,0,0},           {xy[6][5][0],xy[6][5][1],0,0,0},             {xy[6][6][0],xy[6][6][1],0,0,0},           {xy[6][7][0],xy[6][7][1],1,0,0} /*wall*/  },
					 {  {xy[7][0][0],xy[7][0][1],1,0,0},/*wall*/   {xy[7][1][0],xy[7][1][1],1,0,0},/*wall*/ {xy[7][2][0],xy[7][2][1],1,0,0},/*wall*/ {xy[7][3][0],xy[7][3][1],1,0,0}, /*wall*/{xy[7][4][0],xy[7][4][1],1,0,0},/*wall*/  {xy[7][5][0],xy[7][5][1],1,0,0},/*wall*/    {xy[7][6][0],xy[7][6][1],1,0,0},/*wall*/ {xy[7][7][0],xy[7][7][1],1,0,0}/*wall*/   }				
			
					 } ; 

			 t = temp ;
			 splace[0] = 2;		//squirrel's coordinates   array index in temp
			 splace[1] = 6;

				break ; 
			case 2:
				break ; 
			case 3:
				break ; 
			case 4:
				break ; 
			case 5:
				break ; 
			case 6:
				break ; 
			case 7:
				break ;

		}

		return t;

		
		
	}


	//---------------------------load resource--------------------------//

	private int loadImages()
	{
		try{
		
		for(int i = 0 ; i < squirrel.length ; i ++)
		{
			squirrel[i] = Image.createImage("/img/s_"+i+".png");
			
		}

		nut[0] = Image.createImage("/img/n_0.png");
		nut[1] = Image.createImage("/img/n_1.png");
		nut[2] = Image.createImage("/img/n_2.png");
		map[0] = Image.createImage("/img/m_0.png");
		map[1] = Image.createImage("/img/m_1.png");

		title = Image.createImage("/img/tit.png");

		}catch(Exception ex){ ex.printStackTrace() ; }

		return 0 ;
	}


	//---------------------------tool methods--------------------------//

	public void clearScreen(Graphics g)
	{
		g.setColor(WHITE);
		g.fillRect(0,0,scrW,scrH);
	}


	void debug(String s)
	{
		System.out.println(s);
	}
	

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97se亚洲国产综合自在线| 国产精品久久久久久久蜜臀| 国产欧美久久久精品影院| 亚洲色图在线看| 国产成人在线视频播放| 在线不卡免费欧美| 亚洲少妇30p| 国产在线精品免费| 在线成人av影院| 亚洲综合999| 99久久免费视频.com| 久久亚洲捆绑美女| 日韩二区三区四区| 欧美中文字幕一区| 亚洲欧洲制服丝袜| 成+人+亚洲+综合天堂| 精品久久人人做人人爰| 日韩av一区二区在线影视| 日本韩国欧美一区| 亚洲人成人一区二区在线观看 | 亚洲国产精品欧美一二99| 国产成a人亚洲精| 久久先锋资源网| 精品午夜久久福利影院| 欧美一级电影网站| 久久国产精品色婷婷| 欧美一区二区日韩一区二区| 视频一区在线播放| 欧美一区二区二区| 美腿丝袜亚洲一区| 精品人在线二区三区| 毛片不卡一区二区| 精品久久久久久久久久久久久久久久久 | 久久综合网色—综合色88| 免费在线一区观看| 精品国产乱码久久久久久影片| 日本强好片久久久久久aaa| 欧美一区二区在线观看| 蜜桃av一区二区三区电影| 日韩欧美成人激情| 国产伦精品一区二区三区视频青涩| 精品电影一区二区| 国产成人精品亚洲日本在线桃色| 国产亚洲欧洲997久久综合 | 日本网站在线观看一区二区三区| 337p亚洲精品色噜噜噜| 免费视频一区二区| 国产欧美一区二区精品忘忧草 | 大胆欧美人体老妇| 亚洲天堂中文字幕| 欧美猛男gaygay网站| 精品一区二区三区在线观看国产 | 亚洲综合久久av| 欧美精品久久久久久久久老牛影院| 免费人成精品欧美精品| 日本一区二区成人| 欧美日韩一区二区三区四区| 久久激情五月激情| 亚洲欧美日韩久久| 欧美成人bangbros| 成人美女视频在线观看18| 亚洲小少妇裸体bbw| 久久青草欧美一区二区三区| 色欧美日韩亚洲| 狠狠色综合日日| 亚洲最新视频在线观看| www国产亚洲精品久久麻豆| 日本大香伊一区二区三区| 久久超级碰视频| 夜夜操天天操亚洲| 国产欧美一区二区在线观看| 欧美日本视频在线| 成人一级片网址| 蜜桃一区二区三区在线| 亚洲精品欧美在线| 国产片一区二区三区| 在线播放视频一区| 色综合久久中文字幕综合网| 精久久久久久久久久久| 亚洲成人精品影院| 国产精品进线69影院| 欧美videos大乳护士334| 欧美色偷偷大香| 成人网页在线观看| 国产又粗又猛又爽又黄91精品| 亚洲一区二区三区激情| 中文字幕亚洲欧美在线不卡| 日韩欧美国产一二三区| 欧美少妇性性性| 在线免费观看视频一区| 99久久久精品| 成人自拍视频在线| 国产精品538一区二区在线| 日韩av二区在线播放| 视频精品一区二区| 亚洲第一狼人社区| 洋洋av久久久久久久一区| 自拍偷拍亚洲激情| 国产精品全国免费观看高清 | 91在线视频播放地址| 成人激情免费视频| 粉嫩aⅴ一区二区三区四区| 久久国产精品色| 久久精工是国产品牌吗| 捆绑变态av一区二区三区| 首页综合国产亚洲丝袜| 午夜精品久久久久| 亚洲成人在线网站| 亚洲午夜在线视频| 爽爽淫人综合网网站| 日韩av一二三| 免费成人av在线| 理论电影国产精品| 国产综合久久久久久鬼色| 成人免费福利片| www.在线欧美| 91视频免费播放| 在线观看精品一区| 欧美日韩国产三级| 日韩欧美aaaaaa| 久久久国产精品午夜一区ai换脸| 久久久精品国产免大香伊| 欧美国产一区视频在线观看| 欧美国产成人在线| 尤物视频一区二区| 丝袜诱惑制服诱惑色一区在线观看 | 久久综合九色欧美综合狠狠| 久久久精品综合| 中文字幕人成不卡一区| 亚洲精品国产品国语在线app| 亚洲一区二区三区四区不卡| 日韩精品视频网站| 国产精品白丝jk黑袜喷水| 成人小视频在线| 精品视频1区2区3区| 日韩一区二区影院| 国产精品视频观看| 五月天网站亚洲| 国产精品一卡二| 色综合久久中文综合久久97| 日韩一区和二区| 国产精品―色哟哟| 日韩在线一区二区三区| 国产精品一区在线| 欧美三级视频在线| 久久免费视频一区| 亚洲综合色自拍一区| 久草中文综合在线| 91啪亚洲精品| 欧美大度的电影原声| 亚洲欧洲一区二区在线播放| 日韩精品电影在线| 91天堂素人约啪| 26uuu国产在线精品一区二区| 亚洲欧美偷拍三级| 国产一区二区三区视频在线播放| 99精品久久只有精品| 日韩精品中文字幕一区二区三区 | 国产清纯美女被跳蛋高潮一区二区久久w| 国产精品麻豆欧美日韩ww| 日韩精品久久理论片| 欧美一区2区视频在线观看| 欧美激情综合在线| 日本美女视频一区二区| 91小视频免费观看| 亚洲精品在线三区| 婷婷久久综合九色综合绿巨人| 成人国产免费视频| 久久亚洲综合av| 欧美aaa在线| 欧美日韩一区不卡| 综合中文字幕亚洲| 国产成人精品午夜视频免费| 日韩美女视频一区二区在线观看| 亚洲黄色免费电影| 成人av午夜影院| 久久精品人人爽人人爽| 毛片av中文字幕一区二区| 欧美三级三级三级爽爽爽| 亚洲色图清纯唯美| 91网上在线视频| 亚洲视频一区二区免费在线观看| 国产成人精品免费视频网站| 欧美成人午夜电影| 蜜桃av噜噜一区| 日韩欧美精品在线视频| 免费观看30秒视频久久| 51精品久久久久久久蜜臀| 亚洲成人777| 欧美性猛片aaaaaaa做受| 亚洲丝袜制服诱惑| 91亚洲精品一区二区乱码| 亚洲天堂免费在线观看视频| 99久久免费国产| 一区二区三区资源| 精品视频1区2区3区| 亚洲国产sm捆绑调教视频 | 丁香啪啪综合成人亚洲小说| 久久精品夜夜夜夜久久| 国产成人精品亚洲午夜麻豆|