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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? unit1.pas

?? delphi編寫的掃雷小游戲源碼
?? PAS
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, ImgList, Menus, StdCtrls, ComCtrls;

type
  TSaoLei = class(TForm)
    Panel1: TPanel;
    ImageList1: TImageList;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N14: TMenuItem;
    N15: TMenuItem;
    N16: TMenuItem;
    N17: TMenuItem;
    ImageList2: TImageList;
    Label1: TLabel;
    Timer1: TTimer;
    Label2: TLabel;
    StatusBar1: TStatusBar;
    N18: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    N9: TMenuItem;
    N10: TMenuItem;
    N11: TMenuItem;
    N12: TMenuItem;
    N5: TMenuItem;
    procedure ChuShiHua;
    procedure N3Click(Sender: TObject);
    function juadge(LeiYesNo:integer):integer;
    procedure ClickDraw(i,j:integer);
    procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Timer1Timer(Sender: TObject);
    Procedure GameEnd(FalseI,FalseJ:integer);
    procedure N6Click(Sender: TObject);
    procedure N7Click(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure N9Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
    procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure N14Click(Sender: TObject);
    procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure N15Click(Sender: TObject);
    procedure FormPaint(Sender: TObject);
    procedure HuiHua;
    procedure N17Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  SaoLei: TSaoLei;
  M:integer=9;
  N:integer=9;//默認(rèn)游戲網(wǎng)格數(shù)
  L:integer=10;//默認(rèn)雷數(shù)
  leftI:integer=2;
  topI:integer=32;
implementation
uses
  unit2;
var
  BombFlag:array of array of integer;//雷標(biāo),-1雷,0-8周圍雷數(shù)
  CurrentFlag:array of array of integer;//狀態(tài),0初始,1雷2問3點(diǎn)開
  CurrentI,CurrentJ:integer;//當(dāng)前鼠標(biāo)位置
  MyTime:integer; //記時(shí)
  CurrentL:integer; //和當(dāng)前雷數(shù)
  GameOver:integer=0;
{$R *.dfm}

procedure TSaoLei.ChuShiHua;
var
  i,j,b:integer;
begin
  Timer1.Enabled:=true;
  GameOver:=0;
  SaoLei.Width :=M*30+leftI+9;
  SaoLei.Height :=N*30 +Panel1.Height +Statusbar1.Height+topI+25 ;
  SaoLei.Left :=(Screen.Width -SaoLei.Width)div 2;
  SaoLei.Top  :=(Screen.Height -SaoLei.Height)div 2;
  CurrentL:=L;
  label1.Caption :='還有'+inttostr(CurrentL)+'個(gè)雷';
  MyTime:=0;
  huihua;
//**********下面隨機(jī)布雷***************************
  b:=0;
  Randomize;
  While b<>L do
  Begin
    i:=random(M); //產(chǎn)生兩個(gè)隨機(jī)數(shù)
    j:=random(N);
    If BombFlag[i][j]<>-1 then //如果該位置不是雷,則定為雷
    Begin
      BombFlag[i][j]:=-1;
      b:=b+1;
    End;
  End;
//**********下面計(jì)算雷周圍雷數(shù)***************************
  for i:=0 to M-1 do
    for j:=0 to N-1 do
      if BombFlag[i][j]<>-1 then
      begin
        if (i=0) and (j=0) then
          BombFlag[i][j]:=juadge(BombFlag[i+1][j])+ juadge(BombFlag[i][j+1])+juadge(BombFlag[i+1][j+1]);
        if (i=0) and (j=N-1) then
          BombFlag[i][j]:=juadge(BombFlag[i][j-1])+ juadge(BombFlag[i+1][j-1])+juadge(BombFlag[i+1][j]);
        if (i=M-1) and (j=0) then
          BombFlag[i][j]:=juadge(BombFlag[i-1][j])+ juadge(BombFlag[i-1][j+1])+juadge(BombFlag[i][j+1]);
        if (i=M-1) and (j=N-1) then
          BombFlag[i][j]:=juadge(BombFlag[i-1][j-1])+ juadge(BombFlag[i-1][j])+juadge(BombFlag[i][j-1]);
        if (i=0) and (j<>0)and (j<>N-1) then
          BombFlag[i][j]:=juadge(BombFlag[i][j-1])+ juadge(BombFlag[i+1][j-1])+juadge(BombFlag[i+1][j])+ juadge(BombFlag[i+1][j+1])+juadge(BombFlag[i][j+1]);
        if (j=0) and (i<>0)and (i<>M-1) then
          BombFlag[i][j]:=juadge(BombFlag[i-1][j])+ juadge(BombFlag[i-1][j+1])+juadge(BombFlag[i][j+1])+ juadge(BombFlag[i+1][j+1])+juadge(BombFlag[i+1][j]);
        if (j=N-1) and (i<>0)and (i<>M-1) then
          BombFlag[i][j]:=juadge(BombFlag[i-1][j])+ juadge(BombFlag[i-1][j-1])+juadge(BombFlag[i][j-1])+ juadge(BombFlag[i+1][j-1])+juadge(BombFlag[i+1][j]);
        if (i=M-1) and (j<>0)and (j<>N-1) then
          BombFlag[i][j]:=juadge(BombFlag[i][j-1])+ juadge(BombFlag[i-1][j-1])+juadge(BombFlag[i-1][j])+ juadge(BombFlag[i-1][j+1])+juadge(BombFlag[i][j+1]);
        if (i<>0)and (i<>M-1) and (j<>0) and (j<>N-1)then
        begin
          BombFlag[i][j]:=juadge(BombFlag[i-1][j-1])+ juadge(BombFlag[i-1][j])+juadge(BombFlag[i-1][j+1])+ juadge(BombFlag[i][j-1])+juadge(BombFlag[i][j+1]);
          BombFlag[i][j]:=BombFlag[i][j]+juadge(BombFlag[i+1][j-1])+ juadge(BombFlag[i+1][j])+juadge(BombFlag[i+1][j+1]);
        end;
     end;
  
end;

procedure TSaoLei.ClickDraw(i,j:integer);
begin
  If CurrentFlag[i][j]=0 then //當(dāng)前標(biāo)志為原狀
    begin
       if BombFlag[i][j]<>0 then // 雷數(shù)不為零
           begin
            CurrentFlag[i][j]:=3; //標(biāo)志當(dāng)前位置已被點(diǎn)開
            inc(GameOver);
            imagelist1.Draw(SaoLei.Canvas,I*30+leftI,j*30+topI,BombFlag[i][j],true);
           end
         else   //雷數(shù)為零
           begin
              imagelist1.Draw(SaoLei.Canvas,I*30+leftI,j*30+topI,0,true);
              CurrentFlag[i][j]:=3;
              inc(GameOver);
              if (i=0) and (j=0) then
                 begin
                   ClickDraw(i+1,j);
                   ClickDraw(i,j+1);
                   ClickDraw(i+1,j+1);
                 end;
              if (i=0) and (j=N-1) then
                  begin
                   ClickDraw(i+1,j-1);
                   ClickDraw(i,j-1);
                   ClickDraw(i+1,j);
                 end;
              if (i=M-1) and (j=0) then
                  begin
                   ClickDraw(i-1,j);
                   ClickDraw(i-1,j+1);
                   ClickDraw(i,j+1);
                 end;
              if (i=M-1) and (j=N-1) then
                  begin
                   ClickDraw(i-1,j-1);
                   ClickDraw(i-1,j);
                   ClickDraw(i,j-1);
                 end;
              if (i=0) and (j<>0)and (j<>N-1) then
                 begin
                   ClickDraw(i,j-1);
                   ClickDraw(i+1,j-1);
                   ClickDraw(i+1,j);
                   ClickDraw(i+1,j+1);
                   ClickDraw(i,j+1);
                 end;
              if (j=0) and (i<>0)and (i<>M-1) then
                  begin
                   ClickDraw(i-1,j);
                   ClickDraw(i-1,j+1);
                   ClickDraw(i,j+1);
                   ClickDraw(i+1,j+1);
                   ClickDraw(i+1,j);
                 end;
              if (j=N-1) and (i<>0)and (i<>M-1) then
                 begin
                   ClickDraw(i-1,j);
                   ClickDraw(i-1,j-1);
                   ClickDraw(i,j-1);
                   ClickDraw(i+1,j-1);
                   ClickDraw(i+1,j);
                 end;
              if (i=M-1) and (j<>0)and (j<>N-1) then
                 begin
                   ClickDraw(i,j-1);
                   ClickDraw(i-1,j-1);
                   ClickDraw(i-1,j);
                   ClickDraw(i-1,j+1);
                   ClickDraw(i,j+1);
                 end;
               if (i<>0)and (i<>M-1) and (j<>0) and (j<>N-1)then
                  begin
                   ClickDraw(i-1,j-1);
                   ClickDraw(i-1,j);
                   ClickDraw(i-1,j+1);
                   ClickDraw(i,j-1);
                   ClickDraw(i,j+1);
                   ClickDraw(i+1,j-1);
                   ClickDraw(i+1,j);
                   ClickDraw(i+1,j+1);
                  end;
           end;
    end;//if

end;

procedure TSaoLei.GameEnd(FalseI,FalseJ:integer);
var i,j:integer;
begin
  for i:=0 to M-1 do
    for j:=0 to N-1 do
      begin
        if  BombFlag[i][j]=-1 then //YesBomb
            imagelist1.Draw(SaoLei.Canvas,i*30+leftI,j*30+topI,9)
        else     //NoBobm
          begin
            if CurrentFlag[i][j]=1 then
               imagelist1.Draw(SaoLei.Canvas,i*30+leftI,j*30+topI,12);
          end;
          imagelist1.Draw(SaoLei.Canvas,FalseI*30+leftI,FalseJ*30+topI,13);
          CurrentFlag[i][j]:=3;
      end;
end;

procedure TSaoLei.N3Click(Sender: TObject);
begin
  ChuShiHua;
  Saolei.Repaint;
  N3.Enabled :=false;
  N5.Enabled :=true;
  N6.Enabled :=false;
  N7.Enabled :=false;
  N8.Enabled :=false;
  N9.Enabled :=false;
end;

function TSaoLei.juadge(LeiYesNo:integer):integer;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产手机| 99re这里只有精品首页| 欧美日韩亚洲综合一区| 亚洲欧美日韩国产成人精品影院| av不卡在线观看| 亚洲欧美日韩国产成人精品影院| 一本在线高清不卡dvd| 亚洲精品视频免费观看| 欧美亚洲免费在线一区| 午夜精品一区二区三区免费视频| 7777精品伊人久久久大香线蕉超级流畅| 亚洲成av人影院在线观看网| 91精品国产91久久综合桃花 | 国产亚洲一区二区三区| 国产永久精品大片wwwapp| 国产午夜精品美女毛片视频| 成年人网站91| 亚洲成在线观看| 久久综合中文字幕| 99久久精品国产麻豆演员表| 午夜不卡av在线| 国产日韩欧美精品一区| 91首页免费视频| 日本亚洲三级在线| 久久精品亚洲一区二区三区浴池 | 99久久久国产精品免费蜜臀| 亚洲午夜久久久久久久久电影院| 日韩三级中文字幕| 成人一级视频在线观看| 亚洲一区二区av在线| 欧美成人官网二区| 91视频国产资源| 免费成人在线观看视频| 免费观看成人av| 一色屋精品亚洲香蕉网站| 91精品久久久久久久91蜜桃| 国产99久久久久| 日韩激情av在线| 国产精品国产三级国产普通话三级| 欧美美女一区二区在线观看| 国产99久久精品| 奇米777欧美一区二区| 国产精品国产a| 精品久久人人做人人爰| 91官网在线免费观看| 国产精品白丝av| 五月天激情综合| 最好看的中文字幕久久| 2021国产精品久久精品| 欧美日韩亚洲不卡| 成人深夜视频在线观看| 精品一区二区三区视频 | 久久精品视频免费观看| 欧美日本一道本| 97久久超碰国产精品| 国产一区二区在线视频| 日产国产高清一区二区三区| 亚洲另类春色校园小说| 中文一区一区三区高中清不卡| 欧美一级高清片| 欧美日韩日日夜夜| 99久久精品国产观看| 成人性生交大合| 精品一区二区三区视频在线观看| 五月激情丁香一区二区三区| 一区二区三区日韩精品| 国产精品对白交换视频| 蜜臂av日日欢夜夜爽一区| 一区二区三区在线视频观看| 国产精品网站在线观看| 国产色产综合色产在线视频| 欧美成人一区二区| 日韩欧美资源站| 欧美一区二区播放| 91精品国产入口| 在线综合+亚洲+欧美中文字幕| 欧美日韩在线免费视频| 欧美色图一区二区三区| 欧美系列亚洲系列| 欧美午夜一区二区三区| 欧美日韩在线三区| 欧美日产国产精品| 56国语精品自产拍在线观看| 欧美精品v国产精品v日韩精品 | 粉嫩av亚洲一区二区图片| 国产一区二区看久久| 国产精品综合一区二区| 国产99精品国产| 不卡区在线中文字幕| 91一区二区三区在线观看| 色哟哟一区二区在线观看| 亚洲欧美中日韩| 亚洲视频中文字幕| 亚洲最大的成人av| 日韩精品三区四区| 久久国产精品无码网站| 韩国精品在线观看| 国产激情精品久久久第一区二区 | 夜夜精品视频一区二区| 图片区小说区国产精品视频| 日韩精品高清不卡| 国产精品系列在线观看| 91污片在线观看| 欧美日韩免费在线视频| 欧美va亚洲va香蕉在线| 国产欧美中文在线| 一区二区三区在线视频免费观看| 日韩极品在线观看| 国产成人精品综合在线观看 | 精品国产一区二区国模嫣然| 国产视频一区在线观看| 亚洲美女在线国产| 强制捆绑调教一区二区| 国产成人免费视频| 欧美性受xxxx黑人xyx| 日韩亚洲欧美在线| 国产精品理论在线观看| 性欧美疯狂xxxxbbbb| 国产一区二区三区美女| 欧洲精品一区二区三区在线观看| 日韩欧美成人激情| 日韩毛片视频在线看| 免费成人在线影院| 91同城在线观看| 2019国产精品| 五月综合激情日本mⅴ| 成人av免费在线观看| 678五月天丁香亚洲综合网| 国产精品午夜电影| 日本不卡一二三| 色偷偷久久一区二区三区| 精品少妇一区二区| 亚洲黄色小说网站| 国产成人日日夜夜| 欧美一级二级在线观看| 亚洲精品视频自拍| 国产99一区视频免费| 日韩无一区二区| 亚洲精品福利视频网站| 国产一区不卡视频| 欧美日韩国产高清一区二区三区 | 国产精品久久久久久久久久久免费看 | 成人深夜在线观看| 日韩欧美美女一区二区三区| 亚洲午夜激情网站| 99久久精品免费看国产免费软件| 精品国产亚洲一区二区三区在线观看| 亚洲影院理伦片| 91在线看国产| 国产精品久久久久影院| 国产东北露脸精品视频| 日韩欧美国产一区二区三区 | 91精品国产色综合久久久蜜香臀| 亚洲精品欧美二区三区中文字幕| 国产成人免费av在线| 久久综合色天天久久综合图片| 日本一区中文字幕| 综合婷婷亚洲小说| av在线不卡网| 国产精品美女www爽爽爽| 国产精品一卡二| 久久久久久久久99精品| 激情五月婷婷综合网| 精品久久久久久综合日本欧美| 日韩精品一二三四| 欧美精品亚洲一区二区在线播放| 亚洲午夜久久久久久久久久久 | 午夜电影久久久| 欧美精品在线观看一区二区| 亚洲国产va精品久久久不卡综合| 欧洲色大大久久| 亚洲国产日韩a在线播放| 欧美调教femdomvk| 亚洲成精国产精品女| 欧美老肥妇做.爰bbww| 丝袜脚交一区二区| 3d动漫精品啪啪一区二区竹菊| 日本va欧美va精品发布| 日韩免费成人网| 国产精品一卡二卡在线观看| 日本一区二区三级电影在线观看 | 欧美国产亚洲另类动漫| 国产麻豆91精品| 国产精品久久毛片| 99riav久久精品riav| 亚洲综合丝袜美腿| 欧美美女黄视频| 狠狠色丁香婷综合久久| 国产日韩欧美制服另类| av一区二区三区在线| 亚洲一区自拍偷拍| 日韩一区二区视频| 国产宾馆实践打屁股91| 亚洲视频狠狠干| 欧美喷潮久久久xxxxx| 国内精品视频一区二区三区八戒| 国产精品少妇自拍| 欧美午夜理伦三级在线观看| 免费观看在线综合色| 中文子幕无线码一区tr|