宣告:該遊戲由香蕉地-老張原創。
有幾個bug:
1、有時候按鍵按下確小球沒有消失
2、一直按住不放手,會自動消失等,主要是由於巨集定義產生的。
原始碼及截圖如下:
幾個注意點:
1、我使用的是vs2017開發,easyx中outextxy()函式的使用參考:
2、後續再詳細介紹,bug的解決和一些遊戲新的特效玩法。
#include // 引用圖形庫標頭檔案
#include #include #include #define _stprintf _swprintf
#define key_down(vk_c) (getasynckeystate(vk_c)&0x8000?1:0)
typedef struct position
postype;
postype p;
postype cur = ;
postype ballsarr[180];
int index;
void initgame(void);
void gamebegin();
void playgame();
void closegame(void);
void drawcircle(postype,int);
void drawcursor(postype , colorref );
void drawtime(int);
void drawscore(int);
int isvalid(postype , colorref );
void getsameballs(postype , colorref );
void ballsfall();
void rank();
colorref color = ;
int main()
void initgame(void)
void gamebegin()
void drawtime(int sec)
void drawscore(int sc)
void closegame(void)
void drawcircle(postype p,int radius) }}
void drawcursor(postype pos, colorref cl)
void playgame()
if (key_down(vk_up) && cur.y > 70)
else if (key_down(vk_down) && cur.y < 630)
else if (key_down(vk_right) && cur.x < 720)
else if (key_down(vk_left) && cur.x > 280)
else if (key_down(vk_return) || key_down(vk_space))
sleep(500);//睡0.5s小球再下落~
ballsfall();//上方小球下落
score += index;
drawscore(score);
}index = 0;
}sleep(100);
} cleardevice();
settextcolor(rgb(255, 0, 0));
settextstyle(80, 0, _t("黑體"));
tchar s = _t("game over");
outtextxy(300, 300, s);
drawscore(score);
sleep(5000);
}void getsameballs(postype cur,colorref cl)
if (isvalid(tempos, cl)) }}
int isvalid(postype cur, colorref cl)//判斷座標位置(當前位置周圍)的小球是否合法(既要顏色與游標位置相同,同時檢查是否已經加入過陣列了)
else
}return 1; }}
void rank()
} }}void ballsfall()
colorref cl = color[rand() % 6];
setlinecolor(cl);
setfillcolor(cl);
fillcircle(ballsarr[i].x, 70, 18);
}}
2張遊戲截圖:
2048小遊戲(C語言版)
1 include 2 include 3 include 4 include 5 include 6 include 7 include 8 include 9 1011 12 玩法說明 編譯執行後,輸入乙個整數n,表示自己想玩的遊戲中是n n的 現在手機上或者電腦上一般都是4 4的,所以我們可以...
消除類遊戲201512 C語言版
問題描述 消除類遊戲是深受大眾歡迎的一種遊戲,遊戲在乙個包含有n行m列的遊戲棋盤上進行,棋盤的每一行每一列的方格上放著乙個有顏色的棋子,當一行或一列上有連續三個或更多的相同顏色的棋子時,這些棋子都被消除。當有多處可以被消除時,這些地方的棋子將同時被消除。現在給你乙個n行m列的棋盤,棋盤中的每乙個方格...
CCF2015122消除類遊戲(C語言版)
問題描述 消除類遊戲是深受大眾歡迎的一種遊戲,遊戲在乙個包含有n行m列的遊戲棋盤上進行,棋盤的每一行每一列的方格上放著乙個有顏色的棋子,當一行或一列上有連續三個或更多的相同顏色的棋子時,這些棋子都被消除。當有多處可以被消除時,這些地方的棋子將同時被消除。現在給你乙個n行m列的棋盤,棋盤中的每乙個方格...