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

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

?? min.java

?? a little game,I wish you like it
?? JAVA
字號:
import java.awt.*;
import javax.swing.*;
import java.util.Random;
import java.awt.event.*;
class Min extends JPanel{ 
	 //備注:鼠標的左鍵 = 1;右鍵 = 3;中鍵 = 2
	 private int flag = 0,statu = 0; //定義雷的屬性 0:沒有打開 1:打開 2:標示為雷 3:不確定
	         //flag = 0 不是雷  ; flag = 1是雷
	 private int but,count = 0; //but:哪一個鼠標鍵被按下去了   count:這個區域周圍有多少個雷
	 private int mx = 0,my = 0,mw = 10; //定義雷的坐標和寬度
	 
	 public Min()  //構造函數
	 {
	  statu = 0;
	 }
	 public Min(int f,int x,int y,int w)
	 //構造函數
	 {
	  flag = f;
	  mx  = x;
	  my  = y;
	  mw  = w;
	 }
	 public int getFlag(){return flag;}
	 public int getStatu(){return statu;}
	 public int getMx(){return mx;}
	 public int getMy(){return my;}
	 public int getMw(){return mw;}
	 public int getCount(){return count;}
	 public void setFlag(int f){flag = f;}
	 public void setCount(int c){count = c;}
	 public void setData(int f,int x,int y,int w,int s)
	 //傳遞值
	 {
	  flag = f;
	  mx  = (x-1)*w;
	  my  = (y-1)*w;
	  mw  = w-1;
	  statu = s;
	 }
	 //根據你點擊鼠標的不同來改變雷的屬性
	 public int sendKey(int key)
	 {
	 //返回值,如果游戲結束則返回-1 
	  int rtn = 1;
	  if(key == 3)
	  {
	   switch(statu)
	   {
	    case 1:
	     break;
	    case 2:
	     statu = 3;
	     break;
	    case 3:
	     statu = 0;
	     break;
	    case 0:
	     statu = 2;
	     break;
	   }
	   rtn = 1;
	  }
	  if(key == 1 && statu == 0)
	  {
	   switch(flag)
	   {
	    case 0:
	     statu = 1;
	     rtn = 2;
	     break;
	    case 1:
	     statu = 1;
	     rtn = -1;
	     break;
	   }
	  }
	  return rtn;
	 }
	}

	class DrawPanel extends JPanel
	{
	 private int i,j;
	 private int f = 0;    //if f = 1 then game over ,if f =2 then win
	 private int chx = 0,chy = 0; //專門記錄坐標x,y的值
	 private int msum = 6,ksum = 0; //msum:雷的個數,ksum:標示雷的個數
	 private int bx = 10,by = 10,bw = 40; //bx,by:棋盤的大小,bw:棋子的大小
	 public Min board[][] = {
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   {new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min(),new Min()},
	   };
	 //畫坐標為ax,ay區域的雷的狀態
	 public void draw(Graphics g,int ax,int ay)
	 {
	  int x,y,w; //坐標x,y;和寬度:w
	  int s,c,flag; //狀態;雷的個數;
	  int cx = bw/2 - 4;
	  int cy = bw/2 + 4;
	  x = board[ax][ay].getMx();
	  y = board[ax][ay].getMy();
	  w = board[ax][ay].getMw();
	  s = board[ax][ay].getStatu();
	  c = board[ax][ay].getCount();
	  flag= board[ax][ay].getFlag();
	  
	  switch(s)
	  {
	   case 0: //沒有打開狀態
	   {
	    g.setColor(Color.black);
	    g.fillRect(x,y,w,w);
	    break;
	   }
	   case 1: //打開狀態
	   {
	    g.setColor(Color.blue);
	    g.fillRect(x,y,w,w);
	    if(c != 0 && flag == 0) //此處沒有雷
	    {
	     g.setColor(Color.red);
	     g.drawString(String.valueOf(c),x + cx,y + cy);
	    }
	    if(flag == 1) //此處有雷
	    {
	     g.setColor(Color.red);
	     g.fillRect(x,y,w,w);
	     g.setColor(Color.blue);
	     g.drawString("雷",x + cx,y + cy);
	    }
	    break;
	   }
	   case 2: //標雷狀態
	   {
	    g.setColor(Color.green);
	    g.fillRect(x,y,w,w);
	    g.setColor(Color.blue);
	    g.drawString("旗",x + cx,y + cy);
	    break;
	   }
	   case 3: //不確定狀態
	   {
	    g.setColor(Color.black);
	    g.fillRect(x,y,w,w);
	    g.setColor(Color.red);
	    g.drawString("?",x + cx,y + cy);
	    break;
	   }
	   default:
	    break;
	  }
	 }
	 //沒有圖形器的繪圖函數:畫出坐標ax,ay的雷的狀態和圖形
	 public void draw(int ax,int ay)
	 {
	  Graphics g;
	  g = this.getGraphics();
	  draw(g,ax,ay);
	 }

	 //打開周圍沒有雷的地方,并且繪畫所在區域點擊左鍵觸發
	 public int openNoMin(int ax,int ay)
	 {
	  int i,j;
	 
	  if(ax<1||ay<1||ax>bx||ay>by) return 0;  //鼠標點擊的區域出界了
	  if(board[ax][ay].getStatu() != 0) return 0;  //如果此區域打開了,返回
	  board[ax][ay].sendKey(1); //如果返回值等于-1,就說明游戲結束
	  draw(ax,ay);
	  if(board[ax][ay].getFlag() == 1)
	  //如果游戲結束,把所有的雷都顯示出來
	  {
	   for(i = 1;i<=bx;i++)
	   {
	    for(j = 1;j <= by;j++)
	    {
	     if(board[i][j].getFlag() == 1)
	     {
	      board[i][j].sendKey(1);
	      draw(i,j);
	     }
	    }
	   }
	   return -1;
	  }
	  //如果游戲沒有結束
	  if(board[ax][ay].getCount() > 0) 
	  {
	   ksum ++;
	   return 1; //周圍有雷,就不用打開周圍地區
	  }
	  if(board[ax][ay].getCount() == 0 && board[ax][ay].getFlag() == 0)
	  //周圍沒有雷,打開周圍地區,直到有雷的地區
	  {
	   openNoMin(ax-1,ay-1);openNoMin(ax,ay-1);openNoMin(ax+1,ay-1);
	   openNoMin(ax-1,ay  );     openNoMin(ax+1,ay  );
	   openNoMin(ax-1,ay+1);openNoMin(ax,ay+1);openNoMin(ax+1,ay+1);
	  }
	  ksum ++;
	  return 1;
	 }
	 
	 //計算坐標x,y的周圍雷的個數
	 public int getCount(int ai,int aj)
	 {
	  int sum = 0;
	  if(board[ai][aj].getFlag() == 1)
	  {
	   return sum;
	  }
	  
	  if(ai>1&&aj>1&&ai<bx&&aj<by)
	  {
	   sum =  board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+
	     board[ai-1][aj  ].getFlag()+        board[ai+1][aj  ].getFlag()+
	     board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag();
	  }
	  if(ai==1&&aj==1)
	  {
	   sum =         board[ai+1][aj  ].getFlag()+
	     board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag();
	  }
	  if(ai==1&&aj==by)
	  {
	   sum =  board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+
	            board[ai+1][aj  ].getFlag();
	  }
	  if(ai==bx&&aj==1)
	  {
	   sum =  board[ai-1][aj  ].getFlag()+       
	     board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag();
	  }
	  if(ai==bx&&aj==by)
	  {
	   sum =  board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ 
	     board[ai-1][aj  ].getFlag();
	  }
	  if(ai==1&&aj>1&&aj<by)
	  {
	   sum =  board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+
	           board[ai+1][aj  ].getFlag()+
	     board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag();
	  }
	  if(ai==bx&&aj>1&&aj<by)
	  {
	   sum =  board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+
	     board[ai-1][aj  ].getFlag()+      
	     board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag();
	  }
	  if(ai>1&&ai<bx&&aj==1)
	  {
	   sum =  board[ai-1][aj  ].getFlag()+       board[ai+1][aj  ].getFlag()+
	     board[ai-1][aj+1].getFlag()+ board[ai][aj+1].getFlag()+ board[ai+1][aj+1].getFlag();
	  }
	  if(ai>1&&ai<bx&&aj==by)
	  {
	   sum =  board[ai-1][aj-1].getFlag()+ board[ai][aj-1].getFlag()+ board[ai+1][aj-1].getFlag()+
	     board[ai-1][aj  ].getFlag()+       board[ai+1][aj  ].getFlag();
	  }
	  return sum;
	 }
	 
	 //傳入參數:幾列,幾行,寬度,雷數
	 public void initMin(int ax,int ay,int aw,int as)
	 {
	  int k = 1;  //表明產生的第幾個雷
	  Random r;  //隨機數

	  f = 0;   //f=0表示游戲還沒有結束
	  ksum = 0;
	  bx = ax;
	  by = ay;
	  bw = aw;
	  msum = as;
	  r = new Random();
	  //初始化底盤的值
	  for(i = 1;i <= bx;i++)
	  {
	   for(j=1;j<=by;j++)
	   {
	    board[i][j].setData(0,i,j,bw,0);
	   }
	  }
	  //隨機產生雷
	  while(k <= msum)
	  {
	   i = r.nextInt(bx)+1;
	   j = r.nextInt(by)+1;
	   if(board[i][j].getFlag() != 1)
	   {
	    board[i][j].setFlag(1);
	    k++;
	   }
	  }
	  //非雷區的周圍有幾個雷,初始化其值
	  for(i = 1;i <= bx;i++)
	  {
	   for(j=1;j<=by;j++)
	   {
	    board[i][j].setCount(getCount(i,j));
	   }
	  }
	  
	  setBackground(Color.white);
	  repaint();
	 }
	 //構造函數
	 public DrawPanel(int ax,int ay,int aw,int as)
	 {
	  initMin(ax,ay,aw,as);
	  addMouseListener(new MouseAdapter()
	  {
	   public void mousePressed(MouseEvent me)
	   {
	    int r;
	    if(f != 0) return;  //如果游戲結束,返回
	    chx  = me.getX();
	    chy  = me.getY();
	    if(me.getButton() != 1)
	    {
	     board[chx/bw+1][chy/bw+1].sendKey(me.getButton());
	     draw(chx/bw+1,chy/bw+1);
	    }
	    else if(me.getButton() == 1)
	    {
	     if(openNoMin(chx/bw+1,chy/bw+1) == -1)
	     {
	      f = 1;
	      repaint();
	     }
	     else if ( ksum + msum == bx*by )
	     {
	      f = 2;
	      repaint();
	     }
	    }
	   }
	  }
	  );
	 }
	 //重畫所有的圖形,包括一些修飾的圖形
	 public void paint(Graphics g)
	 {
	  int x,y,w;
	  int s;
	  int cx = bw/2 - 4;
	  int cy = bw/2 + 4;
	  
	  g.clearRect(0,0,600,600);
	  for(i=1;i<=bx;i++)
	  {
	   for(j=1;j<=by;j++)
	   {
	    draw(g,i,j);
	   }
	  }
	  if(f == 1)
	  {
	   Font f = new Font("11",1,70);
	   Font fo = g.getFont();
	   g.setColor(Color.white);
	   g.setFont(f);
	   //g.setSize();
	   g.drawString("Game Over",0,200);
	   g.setFont(fo);
	  }
	  if( f == 2 )
	  {
	   Font f = new Font("11",1,70);
	   Font fo = g.getFont();
	   g.setColor(Color.white);
	   g.setFont(f);
	   //g.setSize();
	   g.drawString("You win!",0,200);
	   g.setFont(fo);
	  }
	 }

	};

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粉嫩av一区二区三区| 亚洲成国产人片在线观看| 精品一区二区在线看| 4hu四虎永久在线影院成人| 亚洲r级在线视频| 3d动漫精品啪啪一区二区竹菊| 亚洲黄色av一区| 欧美在线综合视频| 亚洲成人av电影在线| 6080国产精品一区二区| 蜜桃av噜噜一区二区三区小说| 91精品国产手机| 精品一区二区三区影院在线午夜| 精品国产亚洲在线| 本田岬高潮一区二区三区| 《视频一区视频二区| 欧美性受极品xxxx喷水| 天天操天天干天天综合网| 欧美一区二区三区播放老司机| 美女一区二区视频| 久久久久久久久99精品| 91在线高清观看| 亚洲chinese男男1069| 精品sm在线观看| 成人av网址在线| 午夜精品国产更新| 久久久久久久一区| 色婷婷av一区二区三区之一色屋| 午夜精品福利视频网站| 久久久欧美精品sm网站| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 国产人成一区二区三区影院| 不卡一区二区在线| 日韩和欧美一区二区| 亚洲精品一区二区三区蜜桃下载| 成人性色生活片| 亚洲一二三专区| 久久久亚洲精品一区二区三区| 91在线精品一区二区| 日韩精品乱码免费| 国产精品久久久久婷婷二区次| 色欧美片视频在线观看| 日韩av中文在线观看| 中文字幕在线免费不卡| 欧美猛男gaygay网站| 国产制服丝袜一区| 亚洲欧美日韩国产一区二区三区 | 另类小说一区二区三区| 国产精品视频第一区| 欧美日韩一区中文字幕| 国产iv一区二区三区| 亚洲aaa精品| 综合电影一区二区三区| 久久这里只有精品6| 欧美性受xxxx黑人xyx性爽| 国产成a人亚洲| 日韩不卡一区二区三区| 亚洲激情校园春色| 国产亚洲精品aa| 91精品国产综合久久久久| 波多野结衣在线一区| 久久国产欧美日韩精品| 亚洲国产精品精华液网站| 亚洲国产精品黑人久久久| 日韩一级成人av| 欧美人妇做爰xxxⅹ性高电影| 丁香网亚洲国际| 激情文学综合丁香| 亚洲欧美aⅴ...| 久久久久久久久久久电影| 欧美在线观看你懂的| 国产精品18久久久久久久网站| 亚洲国产日产av| 亚洲免费电影在线| 国产日产欧产精品推荐色| 91精品国产91久久久久久一区二区| 99久久精品国产麻豆演员表| 国产一区二区91| 免费成人你懂的| 日本在线观看不卡视频| 五月天欧美精品| 五月天丁香久久| 午夜av一区二区| 性做久久久久久免费观看欧美| 亚洲欧美日韩中文字幕一区二区三区 | 日韩中文字幕av电影| 亚洲精品国产第一综合99久久 | 国产精品久久久久久久久快鸭| wwww国产精品欧美| 久久精品视频一区| xnxx国产精品| 久久久久久久久久久电影| 久久综合九色综合97_久久久| 欧美r级在线观看| 色婷婷一区二区| 色狠狠av一区二区三区| 91久久精品网| 色爱区综合激月婷婷| zzijzzij亚洲日本少妇熟睡| 99精品国产视频| 91香蕉视频污| 91久久久免费一区二区| 色哟哟国产精品| 欧美日韩成人一区| 日韩欧美视频一区| 欧美精品一区二区三区一线天视频| 欧美电影免费观看高清完整版在线| 日韩一区二区高清| 久久在线观看免费| 国产欧美日韩在线观看| 国产精品福利影院| 亚洲综合一二三区| 青青国产91久久久久久| 国产一区二区三区久久久| 成人高清视频免费观看| 91丨porny丨中文| 欧美人妖巨大在线| 精品美女一区二区| 国产精品美女久久久久高潮| 亚洲一区电影777| 男男视频亚洲欧美| 高清不卡一区二区在线| 色狠狠一区二区| 日韩欧美精品在线| 国产精品精品国产色婷婷| 亚洲香蕉伊在人在线观| 美腿丝袜亚洲色图| www.一区二区| 91精品国产福利在线观看| 日本一区二区三区在线观看| 亚洲一区二区三区不卡国产欧美| 麻豆精品久久精品色综合| 成人网页在线观看| 91精品欧美久久久久久动漫| 国产三级欧美三级日产三级99| 亚洲少妇最新在线视频| 91在线视频网址| 欧美精品在线观看播放| 久久久综合精品| 亚洲一区二区三区中文字幕在线| 久久国产精品99久久久久久老狼 | 日韩一区二区电影网| 亚洲欧洲精品成人久久奇米网| 五月天视频一区| av网站免费线看精品| 欧美一区二区三区思思人| 国产精品久久99| 激情文学综合网| 欧美日韩久久一区| 国产精品视频一区二区三区不卡| 五月天亚洲精品| 色妞www精品视频| 国产亚洲综合色| 日韩高清一级片| 91论坛在线播放| 日本一区二区三级电影在线观看 | 欧美怡红院视频| 国产女人aaa级久久久级| 日韩在线卡一卡二| 色哟哟精品一区| 国产精品卡一卡二卡三| 激情综合色综合久久| 欧美理论电影在线| 亚洲伊人色欲综合网| 懂色av一区二区在线播放| 日韩美女在线视频| 午夜电影网亚洲视频| 在线观看亚洲精品| 亚洲同性gay激情无套| 成熟亚洲日本毛茸茸凸凹| 精品电影一区二区三区| 日本不卡在线视频| 欧美日韩高清一区二区不卡| 亚洲激情av在线| 色综合一区二区| 中文字幕av一区二区三区高| 国产乱子伦视频一区二区三区 | 中文字幕一区av| 成人午夜电影网站| 国产精品无圣光一区二区| 久久se精品一区精品二区| 欧美一区二区三区四区久久| 日日欢夜夜爽一区| 91精品国产综合久久小美女| 亚洲福中文字幕伊人影院| 欧美日韩的一区二区| 性欧美疯狂xxxxbbbb| 欧美精品久久久久久久多人混战 | 国产九色sp调教91| 久久一二三国产| 国产精品一线二线三线精华| 26uuu精品一区二区在线观看| 六月丁香婷婷久久| 久久蜜臀中文字幕| 国产成人精品亚洲日本在线桃色 | caoporen国产精品视频| 中文字幕亚洲不卡| 91精品91久久久中77777| 亚洲国产精品一区二区久久 | 欧美一区二区三区白人|