資料介紹
描述
您好,它非常簡單,因此無需解釋,只需獲取零件并使用接線圖復(fù)制代碼即可!
怎么玩!
PITF-ARD 點擊開始。向右走找到門鑰匙以完成關(guān)卡。向上移動操縱桿跳躍。
#include
#include
#include
LiquidCrystal_I2C lcd(0x27,16,2);
// VARIABLES DECLARATION
int game = 0;
int gameover = 0;
int le = 0;
float ll = 0;
int key = LOW;
int mov=0;
int cc=1;
int screen1[202];
int screen2[202];
int ind = 0;
int randomNumber=0;
int ax=0;
int ay=0;
int timegame=2000;
int clef = 0;
int jump = 0;
int path = 42;
int ck = 2;
// CHARS DECLARATION
byte man1[] = {0x04, 0x0E, 0x0E, 0x0E, 0x04, 0x04, 0x1F, 0x1F} ;
byte man2[] = {0x04, 0x1E, 0x05, 0x04, 0x0B, 0x10, 0x1F, 0x1F} ;
byte man3[] = {0x04, 0x0F, 0x14, 0x04, 0x1A, 0x01, 0x1F, 0x1F} ;
byte man4[] = {0x15, 0x0E, 0x04, 0x0E, 0x11, 0x00, 0x00, 0x00} ;
byte man5[] = {0x15, 0x0E, 0x04, 0x0E, 0x11, 0x00, 0x1F, 0x1F} ;
byte man6[] = {0x00, 0x00, 0x04, 0x0E, 0x04, 0x04, 0x1F, 0x1F} ;
byte flat[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F};
byte hole[] = {0x0E, 0x1F, 0x15, 0x1B, 0x0E, 0x04, 0x1F, 0x1F} ;
byte m1[] = {0x1F, 0x1F, 0x1F, 0x19, 0x10, 0x00, 0x00, 0x00} ;
byte m2[] = {0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x0F, 0x06, 0x00} ;
byte m3[] = {0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x0C, 0x00, 0x00} ;
byte m4[] = {0x1F, 0x1F, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A} ;
byte m5[] = {0x1F, 0x1F, 0x1F, 0x00, 0x0A, 0x00, 0x0A, 0x00} ;
byte m6[] = {0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00, 0x0A, 0x00} ;
byte keys[8] = {0x00, 0x03, 0x1F, 0x13, 0x00, 0x00, 0x1F, 0x1F} ;
byte dooro[8] = {0x1F, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1F, 0x1F} ;
byte door[8] = {0x1F, 0x1F, 0x1D, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F} ;
void setup(){
lcd.init();
lcd.backlight();
lcd.home();
lcd.clear();
// CHARACTER ASSOCIATION
lcd.createChar(1, man1);
lcd.createChar(2, flat);
lcd.createChar(3, hole);
lcd.createChar(8, keys);
lcd.createChar(7, door);
}
void loop(){
if (game == 0)
{
if (gameover == 0)
{
// TITLE SCREEN SCREEN
lcd.home();
lcd.setCursor(0, 0);
lcd.print(" Key game");
lcd.setCursor(0, 1);
lcd.print(" 2020");
key = digitalRead(7);
if (key == LOW)
{
// INIT GAME
lcd.clear();
lcd.home();
le = 0;
ll = 0;
gameover = 1;
cc=2;
jump = 0;
path = 16;
}
}
else
{
// NEW SCREEN - START
randomSeed(analogRead(0));
game = 1;
key = LOW;
le = le + 1;
ll = ll + 1;
path = path + 10;
if (path>202)
{
path = 202;
}
ind = 0;
for(int s=0;s<(path + 10);s++)
{
screen1[s] = 2;
}
for(int s=11;s<(path -2 );s=s+3)
{
randomNumber = int(random(2, 4));
//randomNumber = 3;
screen1[s] = randomNumber;
}
screen1[6]=7;
screen1[path + 1]=8;
for(int s=0;s<(path+10);s++)
{
randomNumber = int(random(4, 7));
screen2[s] = randomNumber;
}
if ((ll/2) == int(ll/2))
{
lcd.createChar(4, m4);
lcd.createChar(5, m5);
lcd.createChar(6, m6);
}
else
{
lcd.createChar(4, m1);
lcd.createChar(5, m2);
lcd.createChar(6, m3);
}
timegame = 2000;
clef = 0;
lcd.createChar(7, door);
cc = 2;
ck = 2;
}
}
else
{
// GAME LOOP
if (jump == 3)
{
jump = 0;
}
lcd.home();
timegame = timegame - le;
for(int s=ind;s<(ind+16);s++)
{
lcd.setCursor(s-ind, 0);
lcd.write(byte(screen2[s]));
lcd.setCursor(s-ind, 1);
lcd.write(byte(screen1[s]));
}
if (timegame < 0)
{
timegame = 0;
}
lcd.setCursor(16-String(timegame).length(), 0);
lcd.print(timegame);
if (jump == 0)
{
lcd.setCursor(7, 1);
lcd.write(byte(1));
ck = screen1[ind+7];
if (mov == 1)
{
if (cc==1)
{
lcd.createChar(1, man1);
}
else
{
lcd.createChar(1, man1);
}
mov = 0;
}
else
{
lcd.createChar(1, man1);
mov = 1;
}
}
if (jump > 0)
{
lcd.setCursor(7, 0);
lcd.write(byte(1));
lcd.createChar(1, man4);
if (cc == 2)
{
ind = ind + 1;
}
else
{
ind = ind - 1;
}
if (jump == 1)
{
jump = 2;
}
else
{
jump = 3;
}
}
// CHECK LIVE OR DIE - LOOP GAME OR GAME OVER
if ((ck == 2)&&(timegame>0)) // SET THE VARIABLE TO CHECK
{
ay = analogRead(1);
ax = analogRead(0);
if ((ax > 600) && (jump == 0))
{
if (ind<(path-7))
{
ind = ind + 1;
cc = 2;
}
else
{
screen1[path + 1]=2;
clef = 1;
lcd.createChar(7, dooro);
}
}
if ((ax < 200) && (jump == 0))
{
if (ind>0)
{
ind = ind - 1;
cc = 1;
}
else
{
if (clef==1)
{
// CHECK LEVEL CLEAR - START
lcd.setCursor(0, 1);
lcd.print(" ");
lcd.setCursor((int(10-String(le).length())/2),1);
lcd.print("LEVEL ");
lcd.print(le+1);
delay(4000);
lcd.clear();
game = 0;
gameover = 1;
// CHECK LEVEL CLEAR - END
}
}
}
if ((ay < 200) && (ind >1) && (ind <(path - 8)) && (jump == 0))
{
jump = 1;
}
delay(200);
// GAME LOOP - END
}
else
{
// GAME OVER - START
if (timegame>0)
{
lcd.setCursor(0, 0);
lcd.print(" GAME OVER :( ");
lcd.setCursor(7, 1);
lcd.write(byte(1));
lcd.createChar(1, man6);
}
else
{
lcd.setCursor(0, 1);
lcd.print(" TIME OVER ");
}
delay(4000);
lcd.clear();
game = 0;
gameover =0;
// GAME OVER - END
}
}
}
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- KOKO游戲機開源分享
- Arduino游戲機
- PALPi游戲機電池板開源
- 液晶記憶游戲開源分享
- PALPi復(fù)古游戲機開源分享
- Arduino掌上游戲機開源分享
- 使用Arduino(Arduboy)DIY手持游戲機
- 液晶弓箭游戲開源分享
- 液晶游戲開源分享
- 基于51單片機的簡易游戲機
- 拔河游戲機2 0次下載
- 電子拔河游戲機 0次下載
- 51單片機的貪吃蛇游戲機 15次下載
- PS游戲機的原理圖紙及PCB端口的設(shè)計 8次下載
- 飛標(biāo)游戲機
- 如何用小安派玩小霸王游戲 706次閱讀
- MicroByte:基于ESP32 DIY復(fù)古游戲機 806次閱讀
- 使用ESP32微控制器制作游戲機 2967次閱讀
- 單片機液晶漢字顯示的C語言程序 5130次閱讀
- 微雪電子micro:bit游戲手柄擴展板簡介 2219次閱讀
- 微雪電子樹莓派游戲機套餐|GamePi20 4.3寸屏介紹 2286次閱讀
- 微雪電子樹莓派迷你游戲機擴展板|GamePi15 1.54寸屏介紹 2721次閱讀
- 微雪電子樹莓派游戲機配件包|GamePi20配件包 4.3寸屏介紹 2134次閱讀
- 微雪電子 樹莓派游戲機擴展板|GamePi43 4.3寸屏介紹 2946次閱讀
- 微雪電子樹莓派游戲機配件包|GamePi43介紹 2233次閱讀
- 微雪電子樹莓派配件包G 游戲機配件包介紹 1645次閱讀
- 基于Raspberry Pi 3 Model B+的掌上游戲機介紹 5153次閱讀
- 液晶觸摸屏中的可編程控邏輯 1261次閱讀
- 便攜式吉他游戲機diy圖解 3859次閱讀
- 用FPGA使當(dāng)年風(fēng)靡的Atari 2600 VCS游戲機和Apple II個人電腦再次重生 6446次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論