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

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

?? main.lst

?? 用單片機(jī)實(shí)現(xiàn)推箱子游戲
?? LST
?? 第 1 頁 / 共 3 頁
字號:
 269   1      }
 270          /**********************************************************
 271          *函數(shù)名:MapCreate() 
 272          *功  能:地圖生成程序
 273          **********************************************************/
 274          void MapCreate()
 275          {
 276   1         uchar i;
 277   1         for (i=0;i<64;i++) //生成8X8的地圖
 278   1         {
 279   2                      switch (Map[i])//獲得地圖上的圖形數(shù)據(jù)
 280   2                      {       //將圖形編號對應(yīng)的數(shù)據(jù)寫入顯存
 281   3                              case 0: 
 282   3                                      WriteMemorizer(i,kong);//空
 283   3                                      break;
 284   3                              case 1:
 285   3                                      WriteMemorizer(i,qiang);//墻
 286   3                                      break;
 287   3                              case 2:
 288   3                                      WriteMemorizer(i,yuan);//圓
 289   3                                      break;
 290   3                              case 3:
 291   3                                      WriteMemorizer(i,xiangzi);//箱子
 292   3                                      break;
 293   3                              case 4:
 294   3                                      WriteMemorizer(i,lian);//臉
 295   3                                      break;
 296   3                              case 5:
 297   3                                      WriteMemorizer(i,shizi);//十字
 298   3                                      break;
 299   3                      }
 300   2         }
 301   1      }
 302          /**********************************************************
 303          *函數(shù)名:GameDisplay() 
C51 COMPILER V8.08   MAIN                                                                  06/15/2007 17:28:51 PAGE 6   

 304          *功  能:游戲圖形顯示程序(從左到右,從上到下)
 305          *  *point指向外部RAM存儲(chǔ)的128X64的圖片數(shù)據(jù)
 306          **********************************************************/
 307          void GameDisplay(uchar xdata *point)
 308          {
 309   1        uchar i,j;
 310   1        LCDWriteCommand(0x34);//擴(kuò)充指令集
 311   1        LCDWriteCommand(0x36);//繪圖顯示開
 312   1        for (i=0;i<32;i++)    //寫上半屏(32行)
 313   1        {
 314   2          LCDWriteCommand(0x80+i);//Y地址寄存器
 315   2              LCDWriteCommand(0x80);  //X地址(LCM自動(dòng)加1)
 316   2              for (j=0;j<16;j++)//16x8列
 317   2              {                                                 //獲得GamePic的首地址
 318   3                      LCDWriteData(*point);//寫入一個(gè)字節(jié)圖形數(shù)據(jù)
 319   3                      point++; //指向下一個(gè)圖形字節(jié)
 320   3              }
 321   2        }
 322   1        for (i=0;i<32;i++) //寫下半屏
 323   1        {
 324   2          LCDWriteCommand(0x80+i);//Y地址寄存器
 325   2              LCDWriteCommand(0x88);  //X地址(LCM自動(dòng)加1)
 326   2              for (j=0;j<16;j++)//
 327   2              {
 328   3                      LCDWriteData(*point);//寫入一個(gè)字節(jié)圖形數(shù)據(jù)
 329   3                      point++;
 330   3              }
 331   2        }
 332   1      }
 333          /**********************************************************
 334          *函數(shù)名:ReadPosition()
 335          *功  能:讀得娃娃臉的當(dāng)前坐標(biāo)位置
 336          *返  回:ReadPos
 337          **********************************************************/
 338          uchar ReadPosition()
 339          {
 340   1              uchar i;
 341   1              uchar ReadPos;    //定義變量存放娃娃臉的位置.
 342   1              for (i=0;i<64;i++)//地圖數(shù)據(jù)是64個(gè)字節(jié)
 343   1              {                                 //逐個(gè)比較找出娃娃臉
 344   2                      if(Map[i]==4) //娃娃臉的編號是4
 345   2                      { 
 346   3                              ReadPos = i;//記錄娃娃臉的坐標(biāo)
 347   3                              break;      //找到娃娃臉就跳出循環(huán)
 348   3                      }
 349   2              }
 350   1              return (ReadPos); //返回娃娃臉當(dāng)前位置
 351   1      }
 352          /**********************************************************
 353          *函數(shù)名:Readyuan()
 354          *功  能:讀得圓形的坐標(biāo)位置(箱子移動(dòng)目的地)
 355          *在初次讀入當(dāng)前地圖數(shù)據(jù)是,5(十字)也認(rèn)為是圓,不然就出錯(cuò),
 356          *推動(dòng)十字形后就少一個(gè)圓了.
 357          **********************************************************/
 358          void Readyuan()
 359          {
 360   1         uchar i,j=0;
 361   1         for (i=0;i<64;i++)//地圖數(shù)據(jù)是64個(gè)字節(jié)
 362   1         {                             //圓形的編號是2
 363   2                if (Map[i]==2||Map[i]==5) //找出圓形的位置
 364   2                {//在編地圖的時(shí)候也用十字形.
 365   3                      yuanPos[j] = i;//存放圓形的位置
C51 COMPILER V8.08   MAIN                                                                  06/15/2007 17:28:51 PAGE 7   

 366   3                      j++;           //計(jì)數(shù)圓形的個(gè)數(shù)
 367   3                      yuanPos[6] = j;//存放圓形的個(gè)數(shù)
 368   3                }
 369   2         }
 370   1      }
 371          /**********************************************************
 372          *函數(shù)名:Refyuan()
 373          *功  能:刷新顯示圓形(箱子移動(dòng)目的地)
 374          **********************************************************/
 375          void Refyuan()
 376          {
 377   1         uchar i;      //yuanPos[6] 存放著圓形的個(gè)數(shù)(3--5個(gè))
 378   1         for (i=0;i<yuanPos[6];i++)//根據(jù)圓的個(gè)數(shù)來判斷
 379   1         {   //判斷圓形的坐標(biāo)位置是否為0(空),是就顯示圓形
 380   2                 if(Map[yuanPos[i]]==0) Map[yuanPos[i]]=2;
 381   2         }
 382   1      }
 383          /**********************************************************
 384          *函數(shù)名:Next()
 385          *功  能:進(jìn)入下一關(guān)
 386          **********************************************************/
 387          void Next()
 388          {  //圓形位置全變?yōu)槭中?5),說明推完了,過關(guān)
 389   1         if (Map[yuanPos[0]]==5&&Map[yuanPos[1]]==5&&Map[yuanPos[2]]==5)
 390   1         {//過關(guān)
 391   2                              guanka++; //進(jìn)入下一關(guān)
 392   2                              if (guanka==20) guanka=0;//這里設(shè)置為20關(guān)
 393   2                              CopyMap(guanka);//復(fù)制地圖數(shù)據(jù)
 394   2                              MapCreate();    //地圖生成程序
 395   2                              GameDisplay(GamePic);  //游戲界面顯示程序
 396   2                              Readyuan();     //復(fù)制當(dāng)前關(guān)卡圓形坐標(biāo)和個(gè)數(shù)
 397   2         }
 398   1      }
 399          /**********************************************************
 400          *函數(shù)名:UpMove()
 401          *功  能:娃娃臉向上移動(dòng)
 402          *說  明:向上移動(dòng)是-8 (8X8的數(shù)據(jù)間隔是8)
 403          *空(什么都不顯示)=0,墻=1,圓=2,箱子=3,臉=4,十字=5
 404          **********************************************************/
 405          void UpMove()
 406          {
 407   1         uchar pos;
 408   1         pos = ReadPosition(); //獲得娃娃臉的位置
 409   1         if (Map[pos-8]!=1)    //判斷移動(dòng)方向前面是否是墻
 410   1         {
 411   2               switch (Map[pos-8]) 
 412   2                {
 413   3                         case 0: //移動(dòng)方向前面是空的執(zhí)行這里
 414   3                                      Map[pos-8] = 4;//娃娃臉的新位置
 415   3                                      Map[pos] =0;   //清空娃娃臉位置
 416   3                                      break;
 417   3                         case 2: //是圓形執(zhí)行這里
 418   3                                      Map[pos-8] = 4;//娃娃臉的新位置
 419   3                                      Map[pos] =0;   //清空娃娃臉位置
 420   3                                      break;
 421   3                         case 3: //移動(dòng)方向前面是箱子執(zhí)行這里
 422   3                                      //箱子的前面不是墻或箱子或十字就可以移動(dòng)
 423   3                                      if (Map[pos-16]==0)
 424   3                                      {
 425   4                                              Map[pos-16]= 3;//顯示箱子
 426   4                                              Map[pos-8] = 4;//娃娃臉的新位置
 427   4                                              Map[pos] = 0;  //清空娃娃臉位置
C51 COMPILER V8.08   MAIN                                                                  06/15/2007 17:28:51 PAGE 8   

 428   4                                      }
 429   3                                      else if (Map[pos-16]==2)
 430   3                                      {
 431   4                                              Map[pos-16]= 5;//顯示十字形
 432   4                                              Map[pos-8] = 4;//娃娃臉的新位置
 433   4                                              Map[pos] = 0;  //清空娃娃臉位置
 434   4                                      }
 435   3                                      break;
 436   3                         case 5: //移動(dòng)方向前面是十字執(zhí)行這里
 437   3                                      //十字的前面不是墻或箱子或十字就可以移動(dòng)
 438   3                                      if (Map[pos-16]==0)
 439   3                                      {
 440   4                                              Map[pos-16]= 3;//顯示箱子
 441   4                                              Map[pos-8] = 4;//娃娃臉的新位置
 442   4                                              Map[pos] = 0;  //清空娃娃臉位置
 443   4                                      }
 444   3                                      else if (Map[pos-16]==2)
 445   3                                      {
 446   4                                              Map[pos-16]= 5;//顯示十字形
 447   4                                              Map[pos-8] = 4;//娃娃臉的新位置
 448   4                                              Map[pos] = 0;  //清空娃娃臉位置
 449   4                                      }
 450   3                                      break;
 451   3                }
 452   2                Refyuan();    //刷新圓形
 453   2                MapCreate();  //刷新地圖
 454   2            GameDisplay(GamePic);//顯示游戲界面
 455   2                Next();       //判斷是否滿足進(jìn)入下一關(guān)
 456   2         }
 457   1      }
 458          /**********************************************************
 459          *函數(shù)名:DownMove() 
 460          *功  能:娃娃臉向下移動(dòng) +8
 461          **********************************************************/
 462          void DownMove()
 463          {
 464   1         uchar pos;
 465   1         pos = ReadPosition(); //獲得娃娃臉的位置
 466   1         if (Map[pos+8]!=1)    //判斷移動(dòng)方向前面是否是墻
 467   1         {
 468   2               switch (Map[pos+8]) //得到娃娃臉前面的圖形
 469   2                {
 470   3                         case 0: //移動(dòng)方向前面是空的執(zhí)行這里
 471   3                                      Map[pos+8] = 4;//娃娃臉的新位置
 472   3                                      Map[pos] = 0;  //清空娃娃臉位置
 473   3                                      break;
 474   3                         case 2: //是圓形執(zhí)行這里
 475   3                                      Map[pos+8] = 4;//娃娃臉的新位置
 476   3                                      Map[pos] = 0;  //清空娃娃臉位置
 477   3                                      break;
 478   3                         case 3: //移動(dòng)方向前面是箱子執(zhí)行這里
 479   3                         //箱子的前面不是墻或箱子或十字就可以移動(dòng)
 480   3                                      if (Map[pos+16]==0)
 481   3                                      {
 482   4                                              Map[pos+16]= 3;//顯示箱子
 483   4                                              Map[pos+8] = 4;//娃娃臉的新位置
 484   4                                              Map[pos] = 0;  //清空娃娃臉位置
 485   4                                      }
 486   3                                      else if(Map[pos+16]==2)
 487   3                                      {
 488   4                                              Map[pos+16]= 5;//顯示十字形
 489   4                                              Map[pos+8] = 4;//娃娃臉的新位置
C51 COMPILER V8.08   MAIN                                                                  06/15/2007 17:28:51 PAGE 9   

 490   4                                              Map[pos] = 0;  //清空娃娃臉位置
 491   4                                      }
 492   3                                      break;
 493   3                         case 5: //移動(dòng)方向前面是十字執(zhí)行這里
 494   3                                      //十字的前面不是墻或箱子或十字就可以移動(dòng)
 495   3                                      if (Map[pos+16]==0)
 496   3                                      {
 497   4                                              Map[pos+16]= 3;//顯示箱子
 498   4                                              Map[pos+8] = 4;//娃娃臉的新位置
 499   4                                              Map[pos] = 0;  //清空娃娃臉位置
 500   4                                      }
 501   3                                      else if(Map[pos+16]==2)
 502   3                                      {
 503   4                                              Map[pos+16]= 5;//顯示十字形
 504   4                                              Map[pos+8] = 4;//娃娃臉的新位置
 505   4                                              Map[pos] = 0;  //清空娃娃臉位置
 506   4                                      }
 507   3                                      break;
 508   3                }
 509   2                Refyuan();    //刷新圓形
 510   2                MapCreate();  //刷新地圖
 511   2            GameDisplay(GamePic);//顯示游戲界面
 512   2                Next();       //判斷是否滿足進(jìn)入下一關(guān)
 513   2         }
 514   1      }
 515          /**********************************************************
 516          *函數(shù)名:LeftMove() 
 517          *功  能:娃娃臉向左移動(dòng) -1
 518          **********************************************************/
 519          void LeftMove()
 520          {
 521   1         uchar pos;
 522   1         pos = ReadPosition(); //獲得娃娃臉的位置
 523   1         if (Map[pos-1]!=1)    //判斷移動(dòng)方向前面是否是墻
 524   1         {
 525   2                switch (Map[pos-1]) 
 526   2                {
 527   3                         case 0: //移動(dòng)方向前面是空的執(zhí)行這里
 528   3                                      Map[pos-1] = 4;//娃娃臉的新位置
 529   3                                      Map[pos] =0;   //清空娃娃臉位置
 530   3                                      break;
 531   3                         case 2: //是圓形執(zhí)行這里
 532   3                                      Map[pos-1] = 4;//娃娃臉的新位置
 533   3                                      Map[pos] =0;   //清空娃娃臉位置
 534   3                                      break;
 535   3                         case 3: //移動(dòng)方向前面是箱子執(zhí)行這里
 536   3                                      //箱子的前面不是墻或箱子或十字就可以移動(dòng)
 537   3                                      if (Map[pos-2]==0)
 538   3                                      {
 539   4                                              Map[pos-2]= 3;//顯示箱子
 540   4                                              Map[pos-1]= 4;//娃娃臉的新位置
 541   4                                              Map[pos] = 0; //清空娃娃臉位置
 542   4                                      }
 543   3                                      else if (Map[pos-2]==2)
 544   3                                      {
 545   4                                          Map[pos-2]= 5; //顯示十字形

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美性猛交xxxx黑人交| 日韩理论片一区二区| 日韩和的一区二区| 欧美日韩高清一区| 免费视频最近日韩| wwwwxxxxx欧美| 国产成人av自拍| 自拍av一区二区三区| 欧美日韩黄色影视| 国内精品免费在线观看| 国产精品国产自产拍高清av王其| 972aa.com艺术欧美| 五月天中文字幕一区二区| 日韩一区二区视频| 岛国精品在线播放| 亚洲综合丁香婷婷六月香| 91精品啪在线观看国产60岁| 国产一区二区电影| 亚洲欧美电影院| 911精品国产一区二区在线| 国内精品在线播放| 亚洲观看高清完整版在线观看 | 色综合天天综合网天天看片| 亚洲最新在线观看| 亚洲精品在线免费观看视频| 成人午夜大片免费观看| 亚洲高清中文字幕| 欧美日韩性生活| www.欧美日韩| 国产无人区一区二区三区| 蜜臀av一区二区| 国产精品的网站| 欧美日韩国产综合草草| 精品一区二区三区免费观看| 国产精品进线69影院| 日韩丝袜美女视频| 91色.com| 国产精品一二一区| 午夜不卡av在线| |精品福利一区二区三区| 5月丁香婷婷综合| www.性欧美| 激情久久五月天| 午夜精品一区二区三区电影天堂| 国产精品午夜在线观看| 日韩午夜电影av| 欧美日韩一区二区三区高清| 国产精品一区免费在线观看| 五月婷婷激情综合网| 亚洲色图一区二区| 日本一区二区三区四区在线视频| 欧美军同video69gay| 91丝袜国产在线播放| 国产麻豆日韩欧美久久| 日本 国产 欧美色综合| 亚洲永久免费av| 亚洲人123区| 中文久久乱码一区二区| 亚洲精品在线免费观看视频| 在线成人小视频| 欧美视频一区二区| 91麻豆精品秘密| 99久久国产综合精品色伊| 国产乱国产乱300精品| 日韩高清不卡一区二区三区| 亚洲成人免费看| 亚洲午夜在线观看视频在线| 国产精品国产三级国产有无不卡 | 久久se精品一区精品二区| 一区二区三区美女视频| 亚洲日本成人在线观看| 成人免费在线视频观看| 国产精品系列在线| 成人欧美一区二区三区白人| 国产精品久久久久久久久快鸭 | 亚洲va国产天堂va久久en| 亚洲影视资源网| 亚洲午夜一二三区视频| 一级日本不卡的影视| 亚洲一二三区在线观看| 亚洲综合色自拍一区| 亚洲国产精品久久人人爱| 一区二区三区成人| 香蕉久久夜色精品国产使用方法| 亚洲与欧洲av电影| 日韩成人免费电影| 蓝色福利精品导航| 国产乱码精品一区二区三区忘忧草| 狠狠v欧美v日韩v亚洲ⅴ| 精品在线免费观看| 国产麻豆欧美日韩一区| 成人国产精品免费观看| 国产suv精品一区二区6| 不卡av在线免费观看| 91看片淫黄大片一级在线观看| 色婷婷av一区二区三区之一色屋| 在线观看免费视频综合| 欧美一区二区三区不卡| 久久亚区不卡日本| 亚洲欧美视频在线观看| 亚洲6080在线| 国产在线播放一区三区四| 国产大陆a不卡| 色吧成人激情小说| 欧美高清你懂得| 国产三级一区二区| 一区二区三区精品在线| 三级欧美在线一区| 国产一区在线观看视频| 99久久精品99国产精品 | 91在线视频18| 欧美精品三级日韩久久| 国产情人综合久久777777| 亚洲免费在线视频| 久久91精品国产91久久小草| 成人av免费在线播放| 69久久99精品久久久久婷婷| 国产亚洲精品aa午夜观看| 亚洲一级二级三级| 国产一区二区精品久久99| 在线视频综合导航| 亚洲精品一区二区三区影院| 亚洲色图欧洲色图| 激情欧美一区二区| 欧美精品久久天天躁| 国产精品网站在线观看| 日本不卡中文字幕| 91视频国产观看| 国产三级欧美三级| 首页欧美精品中文字幕| av电影一区二区| 精品久久久久久无| 亚洲国产另类av| 成人av免费在线观看| 精品精品欲导航| 亚洲成va人在线观看| 不卡一区在线观看| 久久女同性恋中文字幕| 人人精品人人爱| 欧美三级午夜理伦三级中视频| 国产精品免费aⅴ片在线观看| 日韩电影网1区2区| 在线观看三级视频欧美| 亚洲三级在线看| 成人免费视频一区| 2020国产精品自拍| 另类小说色综合网站| 欧美军同video69gay| 一区二区三区免费| 色婷婷久久综合| 中文字幕中文字幕在线一区| 国产精品一区二区在线播放| 日韩欧美在线观看一区二区三区| 亚洲国产成人av网| 欧美丝袜自拍制服另类| 一区二区在线观看视频| 97精品国产露脸对白| 国产精品污www在线观看| 国产ts人妖一区二区| 久久嫩草精品久久久久| 麻豆精品蜜桃视频网站| 欧美一区二区三区喷汁尤物| 日韩国产精品久久久久久亚洲| 欧美性受xxxx| 午夜精品福利一区二区三区蜜桃| 欧美性生活一区| 日韩黄色免费电影| 在线综合视频播放| 麻豆精品一区二区三区| 日韩欧美亚洲一区二区| 国内成人免费视频| 国产日韩综合av| 成人精品一区二区三区中文字幕| 国产精品久久久久久久午夜片| 国产91精品露脸国语对白| 亚洲国产高清在线观看视频| eeuss鲁片一区二区三区| 亚洲视频免费看| 欧美综合视频在线观看| 丝袜a∨在线一区二区三区不卡| 欧美一区二区三级| 精品一区二区免费在线观看| 久久蜜桃av一区二区天堂| 成人中文字幕合集| 亚洲欧美日韩小说| 3d动漫精品啪啪1区2区免费| 麻豆精品精品国产自在97香蕉| 国产亚洲女人久久久久毛片| 成人高清视频免费观看| 一区二区三区国产| 日韩一区二区三区高清免费看看| 国产真实乱偷精品视频免| 欧美高清在线精品一区| 欧美在线视频你懂得| 久久99最新地址| 一色屋精品亚洲香蕉网站| 欧美日韩国产一二三| 国产一区二区影院| 国产精品夫妻自拍| 7777精品伊人久久久大香线蕉经典版下载 |