From da1ef7efc1f51e3c626955ce1abf4bc942001e71 Mon Sep 17 00:00:00 2001 From: LinYongPei <1226945912@qq.com> Date: Wed, 10 Jun 2020 10:23:15 +0800 Subject: [PATCH] add shuziyu.cpp. --- shuziyu.cpp | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 shuziyu.cpp diff --git a/shuziyu.cpp b/shuziyu.cpp new file mode 100644 index 0000000..2675803 --- /dev/null +++ b/shuziyu.cpp @@ -0,0 +1,94 @@ +#include +#include +#include + +#define WIDTH 960 +#define HEIGTH 640 +#define STR_SIZE 20 +#define STR_NUM 128 +#define STR_WIDTH 15 + +struct Rain { + int x; + int y; + int speed; + char str[STR_SIZE]; +} rain[STR_NUM]; + +char CreateChar() { + char temp = 0; + int flag = rand() % 3; + if(flag == 0) { + temp = rand() % 26 + 'a'; +// temp = 'a'; + } else if(flag == 1) { + temp = rand() % 26 + 'A'; +// temp ='A'; + } else { + temp = rand() % 10+'0'; +// temp = '0'; + } + + return temp; +} + +void GameInit(){ + for (int i= 0; i < STR_NUM; i++) { + rain[i].x = i * STR_WIDTH; + rain[i].y = rand() % HEIGTH; + rain[i].speed = rand() % 5 + 5; + } + for (int i = 0; i < STR_NUM; i++) { + for (int j = 0; j < STR_SIZE; j++) { + rain[i].str[j] = CreateChar(); + } + + } +} + +void GameDraw(){ + cleardevice(); + for (int i = 0; i < STR_NUM; i++) { + for (int j = 0; j < STR_SIZE; j++) { + outtextxy(rain[i].x, rain[i].y - STR_WIDTH * j, rain[i].str[j]); + SetTextColor(RGB(0, 255 - 13 * j, 0)); + } + } +} +void GamePlay(){ + for (int i = 0; i < STR_NUM; i++) { + rain[i].y += rain[i].speed; + if (rain[i].y - STR_SIZE * STR_WIDTH > HEIGTH) { + rain[i] = 0; + } + } +} +void ChangeCh(){ + for(int i=0;i 20){ + GamePlay(); + t1 = t2; + } + t2 = GetTickCount(); + EndBatchDraw(); + // Sleep(20); + } + + getchar(); + closegraph(); + return 0; + +} -- Gitee