日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

游戲代碼編程入門編寫 編程一個(gè)最簡(jiǎn)單游戲代碼

這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)俄羅斯方塊小游戲,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

游戲代碼編程入門編寫 編程一個(gè)最簡(jiǎn)單游戲代碼


1.要先下載一個(gè) graphics.h 的頭文件來(lái)繪圖 。
2.初始化窗口:initgraph(x, y);這是先創(chuàng)建一個(gè)窗口的函數(shù),以左上角為(0,0),向右為x軸,向下為y軸,其中x表示長(zhǎng)x個(gè)單位,y表示寬y個(gè)單位 。
3.關(guān)閉圖像窗口:closegraph();結(jié)束時(shí)用來(lái)關(guān)閉用的 。
4.按任意鍵繼續(xù):getch();這個(gè)就和getchar();差不多,為了防止以運(yùn)行完就關(guān)了,這樣能停頓一下,他的頭文件是:conio.h。
5.畫線:line(x1, y1, x2, y2);在你創(chuàng)建的那么窗口里以(x1,y1)和(x2,y2)為兩個(gè)端點(diǎn)畫線 。
6.畫矩形:rectangle(x1,y1,x2,y2);以(x1,y1)和(x2,y2)為對(duì)角畫一個(gè)矩形 。
7.畫圓:circle(x,y,r);以(x,y)為圓點(diǎn),r為半徑畫圓 。
8.顏色:setcolor(x);用來(lái)設(shè)置顏色的,其中x是你要設(shè)置的顏色,可以填這16種:黑 BLACK、藍(lán) BLUE、綠 GREEN、青 CYAN、紅 RED、紫 MAGENTA、棕 BROWN、淺灰 LIGHTGRAY、深灰 DARKGRAY、亮藍(lán) LIGHTBLUE、亮綠 LIGHTGREEN、亮青 LIGHTCYAN、亮紅 LIGHTRED、亮紫 LIGHTMAGENTA、黃 YELLOW、白 WHITE;當(dāng)然,你也可以根據(jù)光的三原色來(lái)調(diào)自己喜歡的顏色,方法是:setcolor(RGB(x,y,z));其中RGB分別代表紅綠藍(lán),對(duì)應(yīng)的x,y,z是你選的該顏色的多少,范圍是[0,255] 。

游戲代碼編程入門編寫 編程一個(gè)最簡(jiǎn)單游戲代碼


#include <stdio.h>
#include <windows.h>
#include <conio.h>
#include <time.h>
//游戲窗口
#define FrameX 4 //游戲窗口左上角的X軸坐標(biāo)
#define FrameY 4 //游戲窗口左上角的Y軸坐標(biāo)
#define Frame_height 20 //游戲窗口的高度
#define Frame_width 18 //游戲窗口的寬度
//定義全局變量
int i,j,temp,temp1,temp2; //temp,temp1,temp2用于記住和轉(zhuǎn)換方塊變量的值
int a[80][80]={0}; //標(biāo)記游戲屏幕的圖案:2,1,0分別表示該位置為游戲邊框、方塊、無(wú)圖案;初始化為無(wú)圖案
int b[4]; //標(biāo)記4個(gè)”口”方塊:1表示有方塊,0表示無(wú)方塊
//聲明俄羅斯方塊的結(jié)構(gòu)體
struct Tetris
{
int x; //中心方塊的x軸坐標(biāo)
int y; //中心方塊的y軸坐標(biāo)
int flag; //標(biāo)記方塊類型的序號(hào)
int next; //下一個(gè)俄羅斯方塊類型的序號(hào)
int speed; //俄羅斯方塊移動(dòng)的速度
int count; //產(chǎn)生俄羅斯方塊的個(gè)數(shù)
int score; //游戲的分?jǐn)?shù)
int level; //游戲的等級(jí)
};
//函數(shù)原型聲明
//光標(biāo)移到指定位置
void gotoxy(HANDLE hOut, int x, int y);
//制作游戲窗口
void make_frame();
//隨機(jī)產(chǎn)生方塊類型的序號(hào)
void get_flag(struct Tetris *);
//制作俄羅斯方塊
void make_tetris(struct Tetris *);
//打印俄羅斯方塊
void print_tetris(HANDLE hOut,struct Tetris *);
//清除俄羅斯方塊的痕跡
void clear_tetris(HANDLE hOut,struct Tetris *);
//判斷是否能移動(dòng),返回值為1,能移動(dòng),否則,不動(dòng)
int if_moveable(struct Tetris *);
//判斷是否滿行,并刪除滿行的俄羅斯方塊
void del_full(HANDLE hOut,struct Tetris *);
//開始游戲
void start_game();
void main()
{
//制作游戲窗口
make_frame();
//開始游戲
start_game();
}
/******光標(biāo)移到指定位置**************************************************************/
void gotoxy(HANDLE hOut, int x, int y)
{
COORD pos;
pos.X = x; //橫坐標(biāo)
pos.Y = y; //縱坐標(biāo)
SetConsoleCursorPosition(hOut, pos);
}
/******制作游戲窗口******************************************************************/

推薦閱讀