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

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

?? laoshu.java

?? 走迷宮的程序
?? JAVA
字號:
//<meta http-equiv="Content-Type" content="text/html; charset=big5"><style type="text/css"><!--body {overflow:hidden; clip:rect(   )}--></style><textarea style='width:550pt; height:300pt' wrap="OFF">

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

public class app
{
	public static void main(String args[])
	{
		GameFrame f=new GameFrame();
		f.setBounds(150,50,500,500);
		f.setVisible(true);
		
	}
}

class GameFrame extends JFrame implements KeyListener,ActionListener,Runnable
{
	int maze[][];						//儲存迷宮
	Point mouse=new Point();			//老鼠的位置
	
	jpMainPanel mp=new jpMainPanel();	//主要畫面(迷宮)
	//操作按鈕
	JButton jbOnCtrl=new JButton("手動操作");
	JButton jbAuto=new JButton("自動操作");
	
	public GameFrame()
	{
		super("老鼠走迷宮");
		
		/*設定GUI	*****	*/
		JPanel jpCtrlBar=new JPanel();
		jpCtrlBar.setLayout(new FlowLayout());
		jpCtrlBar.add(jbOnCtrl);
		jpCtrlBar.add(jbAuto);
		getContentPane().setLayout(new BorderLayout());
		getContentPane().add(mp, BorderLayout.CENTER);
		getContentPane().add(jpCtrlBar, BorderLayout.SOUTH);
		//設定字型
		Font f=new Font("細明體",Font.PLAIN,24);
		mp.setFont(f);
		jbOnCtrl.setFont(f);
		jbAuto.setFont(f);
		/*	*****	*****	*/
		
		
		//設定事件
		this.addWindowListener(
			new WindowAdapter(){
				public void windowClosing(WindowEvent evt) {
					mp=null;
                	System.exit(0);
            	}
			}
		);
		jbOnCtrl.addKeyListener(this);
		jbAuto.addActionListener(this);
		
		
		//初始化
		initGame();
	}
	
	//初始化
	public void initGame()
	{
		//取得迷宮
		getMaze();
		
		//設定主畫面
		mp.setMaze(maze);
		mp.setMouse(mouse);
		//繪製畫面
		mp.repaint();
	}
	
	//取得迷宮
	public void getMaze()
	{
		String s[]=new String[20];
		int line_num=0;
		
		//自硬碟中讀取迷宮檔
		try{
			BufferedReader br=new BufferedReader(new FileReader("maze.txt"));
			for (int i=0;i<s.length;i++){
				s[i]=br.readLine();
				if (s[i] !=null) line_num++;
				else break;
			}
		}catch (Exception e){}
		
		//取得迷宮尺寸		
		maze=new int[line_num+2][s[0].length()+2];
		
		//設定迷宮
		for (int i=0; i<maze.length; i++)
			for (int j=0; j<maze[0].length; j++)
			{
				if (i==0 || i==line_num+1) maze[i][j]=1;			//上&下邊界
				else if (j==0 || j==s[0].length()+1) maze[i][j]=1;	//左&右邊界
				else if (s[i-1].charAt(j-1)=='*') maze[i][j]=1;	//牆壁
				else if (s[i-1].charAt(j-1)=='S'){					//起點
					mouse.setLocation(j,i);
					maze[i][j]=10;
				}
				else if (s[i-1].charAt(j-1)=='E') maze[i][j]=11;	//終點
				else maze[i][j]=0;									//道路
			}
	}
	
	//Interface ActionListener
	public void actionPerformed(ActionEvent e)
	{
		//自動走迷宮囉	^^
		if (e.getSource()==jbAuto){
			jbOnCtrl.setEnabled(false);
			jbAuto.setEnabled(false);
			
			Thread th=new Thread(this);
			th.start();
		}
	}
	
	//Interface Runnable
	public void run()
	{
		findExit();
	}
	
	public boolean findExit()
	{
		//走到終點
		if (maze[mouse.y][mouse.x]==11){
			JOptionPane.showMessageDialog((Component)null," ^-^ 這樣就可以走到啦!","遊戲終了",JOptionPane.DEFAULT_OPTION);
			return true;
		}
		
		maze[mouse.y][mouse.x]=50;		//標示為已走過
		
		//延遲
		try{
			Thread.sleep(200);
		}
		catch (Exception e){}
		
		//上
		if (step(0,-1))
			if (findExit()==true)
				return true;
			else mouse.y++;
		
		//下
		if (step(0,1))
			if (findExit()==true)
				return true;
			else mouse.y--;
		
		//左
		if (step(-1,0))
			if (findExit()==true)
				return true;
			else mouse.x++;
		
		
		//右
		if (step(1,0))
			if (findExit()==true)
				return true;
			else mouse.x--;
		
		
		//找不到出口
		maze[mouse.y][mouse.x]=51;			//標示為此路不通
		return false;
	}
	
	public boolean step(int x,int y)
	{
		int target=maze[mouse.y+y][mouse.x+x];
		if (target ==0 || target ==11 || target ==10){
			mouse.x+=x;
			mouse.y+=y;
			repaint();
			
			return true;
		}
		else
			return false;	
	}

	//Interface KeyListener
	public void keyPressed(KeyEvent e)
	{
		if (e.getKeyCode()==e.VK_LEFT)
			step(-1,0);
		else if (e.getKeyCode()==e.VK_RIGHT)
			step(1,0);
		else if (e.getKeyCode()==e.VK_DOWN)
			step(0,1);
		else if (e.getKeyCode()==e.VK_UP)
			step(0,-1);
		
		//走到終點啦
		if (maze[mouse.y][mouse.x]==11){
			jbOnCtrl.setEnabled(false);
			jbAuto.setEnabled(false);
			JOptionPane.showMessageDialog((Component)null," *^^* 走到終點囉!","遊戲終了",JOptionPane.DEFAULT_OPTION);
		}
	}
	public void keyReleased(KeyEvent e){}
	public void keyTyped(KeyEvent e){}
}

class jpMainPanel extends JPanel
{
	int maze[][];
	Point mouse;
	
	//讓主畫面繪圖程式取得迷宮配置
	public void setMaze(int arry[][])
	{
		this.maze=arry;
	}
	
	//讓主畫面繪圖程式取得老鼠位置
	public void setMouse(Point arg)
	{
		mouse=arg;
	}
	
	//主畫面繪圖程式
	public void paintComponent(Graphics g)
	{
		super.paintComponent(g);
		
		int stuff=100;
		//畫出迷宮
		for (int i=1;i<maze.length-1;i++)
			for (int j=1;j<maze[i].length-1;j++){
				if (maze[i][j]==1){
					//牆壁
					g.drawString("*",j*20+stuff,i*20+stuff);
				}
				else if (maze[i][j]==0){
					//道路
				}
				else if (maze[i][j]==10){
					//起點
				}
				else if (maze[i][j]==11){
					//終點
					g.setColor(new Color(255,0,0));
					g.drawString("終",j*20+stuff,i*20+stuff);
					g.setColor(new Color(0,0,0));
				}
				else{}
			}
		
		//畫出老鼠位置
		g.drawString("@",mouse.x*20+stuff,mouse.y*20+stuff);
	}
}

//</textarea>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产麻豆国产自产在线| 久久激情五月婷婷| 欧美大片国产精品| 7777精品伊人久久久大香线蕉经典版下载 | 国产人成一区二区三区影院| 欧美一卡二卡三卡| 日韩一区二区不卡| 国产色婷婷亚洲99精品小说| 2014亚洲片线观看视频免费| 久久综合一区二区| 欧美韩国日本综合| 国产精品第一页第二页第三页| 日韩一区在线看| 亚洲综合激情网| 偷拍与自拍一区| 免费在线欧美视频| 国产精品一区二区久久不卡| www.亚洲色图| 在线观看日韩精品| 日韩区在线观看| 亚洲国产精品精华液ab| 亚洲人成精品久久久久久| 亚洲成人你懂的| 久久99久久精品欧美| caoporn国产精品| 欧美色综合网站| 精品sm捆绑视频| 午夜久久久久久久久久一区二区| 国产伦理精品不卡| av高清久久久| 欧美肥胖老妇做爰| 国产欧美va欧美不卡在线| 一区二区激情视频| 日本在线观看不卡视频| 国产成人一区在线| 欧美色区777第一页| 久久婷婷国产综合精品青草| 中文字幕中文乱码欧美一区二区| 亚洲成av人影院| 国产精品综合一区二区三区| 欧美三级日韩三级| 国产视频一区二区三区在线观看| 亚洲综合激情另类小说区| 国产一区二区不卡| 精品视频123区在线观看| 久久精品日产第一区二区三区高清版| 亚洲精品福利视频网站| 国产成人精品影视| 在线电影欧美成精品| 国产精品传媒视频| 一本到三区不卡视频| 日韩一级二级三级精品视频| 亚洲男人的天堂av| 国产成a人无v码亚洲福利| 欧美一区二区大片| 一区二区三区欧美亚洲| 不卡的av在线| 久久久久久久久99精品| 日本免费在线视频不卡一不卡二| 在线视频综合导航| 中文字幕制服丝袜一区二区三区 | 亚洲男人的天堂在线aⅴ视频 | 成人久久久精品乱码一区二区三区| 欧美日韩成人一区| 亚洲欧美日韩在线| av在线不卡电影| 久久精品亚洲乱码伦伦中文| 麻豆视频观看网址久久| 日韩欧美二区三区| 丝袜脚交一区二区| 欧美日韩dvd在线观看| 亚洲一区二区三区在线看| 91丨九色porny丨蝌蚪| 成人黄色综合网站| 国产目拍亚洲精品99久久精品| 国产在线乱码一区二区三区| 日韩三级在线免费观看| 麻豆一区二区在线| 精品成人在线观看| 国产一区二区在线观看免费| 久久人人超碰精品| 国产精品一二二区| 国产精品美女久久久久久久久| 丁香婷婷综合色啪| 国产精品护士白丝一区av| 99视频在线精品| 一区二区三区**美女毛片| 精品视频在线免费| 日韩精品91亚洲二区在线观看| 欧美一区二区三区四区久久| 久国产精品韩国三级视频| 欧美精品一区二区三区四区 | 亚洲444eee在线观看| 欧美精品在线视频| 玖玖九九国产精品| 中文字幕欧美区| 色婷婷久久久亚洲一区二区三区 | 91精品国产综合久久小美女| 免费看欧美女人艹b| 久久久久久久久久美女| 成人自拍视频在线| 亚洲综合在线免费观看| 日韩色在线观看| 成人av综合一区| 亚洲电影在线免费观看| www国产亚洲精品久久麻豆| 国产不卡免费视频| 亚洲最大成人网4388xx| 精品国产伦理网| 91视频在线观看免费| 蜜桃视频在线观看一区二区| 亚洲国产精品精华液ab| 欧美偷拍一区二区| 99这里都是精品| 日一区二区三区| 国产欧美一二三区| 欧美男女性生活在线直播观看 | 国产欧美精品一区二区三区四区| 色94色欧美sute亚洲线路一久| 青草av.久久免费一区| 最新国产精品久久精品| 日韩精品资源二区在线| 在线免费亚洲电影| 国产在线播放一区二区三区| 亚洲午夜av在线| 国产精品久久一卡二卡| 日韩欧美一二区| 欧美图区在线视频| 99re热这里只有精品免费视频| 久久精品国产**网站演员| 亚洲精品老司机| 国产亚洲自拍一区| 欧美大片日本大片免费观看| 欧美三级在线播放| 97精品电影院| 成人小视频在线| 国产乱码精品一品二品| 蜜桃视频在线观看一区二区| 美脚の诱脚舐め脚责91| 五月天激情小说综合| 亚洲综合网站在线观看| 国产精品九色蝌蚪自拍| 国产人伦精品一区二区| 久久蜜桃一区二区| xf在线a精品一区二区视频网站| 欧美一区二区视频在线观看2020| 在线精品亚洲一区二区不卡| 色婷婷综合久久久久中文 | 一区二区三区精密机械公司| 国产精品丝袜一区| 久久久久国产精品免费免费搜索| 欧美一区二区国产| 91精品国产一区二区三区蜜臀| 欧美视频你懂的| 欧美在线小视频| 欧美色图免费看| 91精品国产综合久久久久久漫画 | 中文字幕一区二区三区四区不卡 | 色综合夜色一区| 亚洲一区在线观看免费| 亚洲欧美另类综合偷拍| 日韩理论在线观看| 日韩激情在线观看| 亚洲电影一级黄| 日韩一区精品视频| 久久激情五月激情| 国产成人综合在线观看| 成人午夜视频网站| 97精品国产露脸对白| 欧美日韩国产精选| 日韩午夜av电影| 国产日韩欧美亚洲| 亚洲三级电影网站| 三级影片在线观看欧美日韩一区二区 | 欧美videos中文字幕| 久久久久9999亚洲精品| 亚洲欧美综合在线精品| 亚洲国产人成综合网站| 久久se这里有精品| 成人激情视频网站| 欧美性色综合网| 亚洲精品一区二区三区香蕉| 国产精品国产三级国产普通话蜜臀 | 18成人在线视频| 亚洲第一激情av| 在线观看一区日韩| 欧美三级午夜理伦三级中视频| 欧美一区二区三区日韩| 国产精品萝li| 性欧美疯狂xxxxbbbb| 国产成人午夜精品影院观看视频 | 欧美日韩综合在线免费观看| 日韩精品专区在线影院观看 | 欧美人动与zoxxxx乱| 久久久久国产精品免费免费搜索| 亚洲一区二区美女| 国产乱淫av一区二区三区| 精品视频1区2区3区| 国产精品高清亚洲| 免费观看30秒视频久久|