貪吃蛇遊戲是經典的計算機遊戲。
遊戲描述:
1. 貪吃蛇可以自動直線前進,或者玩家可以通過方向鍵操縱貪吃蛇上下左右前進,每次前進一格。
2. 貪吃蛇在規定的區域內活動,當
①貪吃蛇觸碰到牆壁時;
②貪吃蛇的蛇頭觸碰到蛇身或者蛇尾時;
③玩家的鍵盤輸入不是方向鍵時;
命令列顯示「game over!」並且退出遊戲。
3. 貪吃蛇活動的區域內每次隨機產生一顆「豆豆」,當貪吃蛇吃到「豆豆」後蛇身增長一格,自動前進時間縮
短100ms(預設是1000ms,且不能少於100ms)。貪吃蛇長度每為8的倍數improve a level。
c++**:
#include
#include
#include
#include
using namespace std;
inline void display(char gsdomain[22], int level, int movespeed)
else if (i == 3)
else if (i == 5)
cout << endl;}}
int main()
//初始化貪吃蛇活動區域的上下牆壁
for (int i = 0; i < 22; i++)
gsdomain[0][i] = gsdomain[21][i] = '-';
//初始化貪吃蛇活動區域的左右牆壁
for (int i = 1; i < 21; i++)
gsdomain[i][0] = gsdomain[i][21] = '|';
//初始化蛇身
for (int i = 1; i <= 3; i++)
gsdomain[1][i] = '*';
//初始化蛇頭
gsdomain[1][4] = '#';
int snake[2][100];
//記錄貪吃蛇每次出現的位置的座標
for (int i = 0; i < 4; i++)
int head = 3, tail = 0, length = 4;
int beanx, beany;
//豆豆出現的位置
srand(time(0));
do while (gsdomain[beanx][beany] != ' ');
gsdomain[beanx][beany] = '*';
//豆豆
cout << "\n\n\t\t貪吃蛇遊戲即將開始!\n";
long start;
int level = 1, movespeed = 1000;
for (int i = 3; i >= 0; i--)
system("cls");
if (i)
else
display(gsdomain, level, movespeed);
}char direction = 77;
//貪吃蛇預設自動向右直線前進
while (true)
if (timeflag)
switch (direction)
if (x == 0 || x == 21 || y == 0 || y == 21)
if (gsdomain[x][y] != ' ' && !(x == beanx && y == beany))
if (x == beanx && y == beany)
gsdomain[snake[0][head]][snake[1][head]] = '*';
gsdomain[x][y] = '#';
head = (head + 1) % 100;
snake[0][head] = x;
snake[1][head] = y;
do while (gsdomain[beanx][beany] != ' ');
gsdomain[beanx][beany] = '*';
display(gsdomain, level, movespeed);
//螢幕上顯示
}else
}return 0;
}
VC版貪吃蛇
此處,我感受到復用性的好處,將與顯示或平台無關的東西分裝在一起,如果能進一步抽象的盡量抽象,就可以充分發揮其復用性。具體的關於snake的設計,請參見我的部落格 c 版貪吃蛇遊戲 下面是vc下的遊戲介面截圖 在這裡說一下vc下與c 不同的及新家的東西。cpp view plain copy 引入庫 ...
pygame Python 版貪吃蛇
貪吃蛇是個非常簡單的遊戲,適合練手。先來看一下我的遊戲截圖 玩法介紹 回車鍵 開始遊戲 空格鍵 暫停 繼續 方向鍵 或 wsad 鍵 控制移動方向。食物分紅 綠 藍三種,分別對應 10 分 20 分 30 分,每吃乙個食物增加對應分值,每增加 100 分速度加快一級,沒有設定關卡,我玩到 1100 ...
C《貪吃蛇》簡易字元版
哇咔咔,這是我步入遊戲製作界的第一步。忙活了乙個國慶,雖說bug略多,但是成就感滿滿的。for i 0 i h i 畫地圖 printf n void play int speed,int hard if kbhit 0 有鍵盤輸入則變換key的值,否則保持原方向 key getch directi...