日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

俄罗斯方块c语言教程codeblocks,C语言俄罗斯方块修改结尾

發布時間:2023/12/10 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 俄罗斯方块c语言教程codeblocks,C语言俄罗斯方块修改结尾 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

該樓層疑似違規已被系統折疊?隱藏此樓查看此樓

}//獲取游戲速度

void Get_GameSpeed(void)

{

//速度最慢 0.8s,之后每35個方塊減0.05

if(Pool.Speed > 0.1f)

{

Pool.Speed = 0.8f - (Pool.BlockCount/35)*0.05f;

}

}//顯示本次方塊和上次方塊的形狀

void Show_BlockInfo(void)

{

uint8 i,j;

uint16 Code_now;

uint16 Code_next;

Code_now = ShapeCode[Block.Shape][0];

Code_next = ShapeCode[Block.Next_Shape][0];

//先清空

for(i = 0;i < 4;i++)

{

GotoCursor(1+i,63);

printf(" ");

}

for(i = 0;i < 4;i++)

{

GotoCursor(9+i,63);

printf(" ");

}

//再顯示

for(i = 0;i < 4;i++)

{

for(j = 0;j < 4;j++)

{

if((Code_now&0x8000))

{

GotoCursor(1+i,63+j*2);

printf("■");

}

Code_now <<= 1;

}

}

for(i = 0;i < 4;i++)

{

for(j = 0;j < 4;j++)

{

if((Code_next&0x8000))

{

GotoCursor(9+i,63+j*2);

printf("□");

}

Code_next <<= 1;

}

}

}//顯示游戲工作空間

void Show_GameWorkSpace(void)

{

GotoCursor(2,1);

printf("-------------------");

GotoCursor(3,7);

printf("分數");

GotoCursor(5,1);

printf("-------------------");

GotoCursor(8,1);

printf("-------------------");

GotoCursor(12,1);

printf("-------------------");

GotoCursor(15,1);

printf("------------------");

GotoCursor(16,1);

printf("當前窗口大小:%d*%d",POOL_ROW_WIDE,POOL_RANK_WIDE);

GotoCursor(17,1);

printf("------------------");

GotoCursor(20,1);

printf("游戲名:俄羅斯方塊");

GotoCursor(22,1);

printf("By:路帥、殷呈祥、于雪穎");

GotoCursor(24,1);

printf("日期:2018-07-02");

GotoCursor(0,61);

printf("------------");

GotoCursor(5,61);

printf("------------");

GotoCursor(8,61);

printf("------------");

GotoCursor(13,61);

printf("------------");

GotoCursor(2,74);

printf("當");

GotoCursor(3,74);

printf("前");

GotoCursor(10,74);

printf("下");

GotoCursor(11,74);

printf("一");

GotoCursor(12,74);

printf("個"); GotoCursor(15,61);

printf("→ :右移,長按加速");

GotoCursor(17,61);

printf("← :左移,長按加速");

GotoCursor(19,61);

printf("↑ :旋轉,長按加速");

GotoCursor(21,61);

printf("↓ :加速落地");

}//顯示游戲信息

void Show_GameInfo(void)

{

GotoCursor(4,7);

printf("%d",Pool.Score);

GotoCursor(10,1);

switch(Pool.BlockCount/125)

{

case 0:printf("當前游戲速度:最慢");break;

case 1:printf("當前游戲速度: 慢");break;

case 2:printf("當前游戲速度: 中");break;

case 3:printf("當前游戲速度: 快");break;

case 4:printf("當前游戲速度:最快");break;

default:break;

}

}//顯示需要顯示的游戲池邊界,非擴充后的邊界

void Show_PoolBorder(void)

{

uint8 i = 0;

//顯示左右邊界

for(i = 0;i < POOL_ROW_WIDE;i++)

{

GotoCursor(i+POOL_ROW+SCALING,POOL_RANK-2+SCALING*2);

printf("■");

GotoCursor(i+POOL_ROW+SCALING,POOL_RANK+(POOL_RANK_WIDE+SCALING)*2);

printf("■");

}

//顯示底部

GotoCursor(POOL_ROW+SCALING+POOL_ROW_WIDE,POOL_RANK-2+SCALING*2);

for(i = 0;i < POOL_RANK_WIDE+2;i++)

{

printf("■");

}

}//游戲初始化

void Game_Init(void)

{

uint8 i = 0;

memset((uint32 *)&Pool.DisBuf,0,sizeof(Pool.DisBuf));//初始化數組

srand((unsigned) time(NULL));//獲取時間種子

Get_Block();// 獲取當前和下一個方塊

Get_Block();

Show_PoolBorder();//顯示游戲池顯示邊界

Show_GameWorkSpace();//顯示游戲工作區

Show_GameInfo();//顯示游戲信息

Show_BlockInfo();//顯示方塊信息

Hidden_Cursor();//隱藏光標

}int main(void)

{

clock_t time_now, time_last = clock();

Game_Init();//初始化游戲

Display_Pool();//顯示游戲池

while(1)

{

KeyScan();//檢測按鍵

time_now = clock();

if (time_now - time_last > Pool.Speed * CLOCKS_PER_SEC)//定時自動下移

{

Move_Down();

time_last = time_now;

}

EliminateRow_Check();//消行檢測

Show_GameInfo();//顯示游戲信息

Get_GameSpeed();//獲取游戲速度

}

}

總結

以上是生活随笔為你收集整理的俄罗斯方块c语言教程codeblocks,C语言俄罗斯方块修改结尾的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。