代码雨源代码

4223 3
[H.UC]-蓝桉 2022-12-10 10:08:25 来自手机 | 显示全部楼层 |阅读模式
本帖最后由 [H.UC]-蓝桉 于 2022-12-10 10:10 编辑

a#include<iostream)
#include<graphics.h>
#include <Windows.h>
#include<vector>
#include<string)
#include<map>
#include <cmath>
#include<conio.h>
#include<ctime>
using namespace std;
#pragma region program config
bool useNoBorderWindow = true;
是否使用无边框窗口(true 为去除边框)
int xScreen = GetSystemMetrics(SM_CXSCREEN);
屏幕宽度(像素)
int yScreen = GetSystemMetrics(SM_CYSCREEN);//屏幕高度(像素)
const int rainMaxNum = 100;
//屏幕上随机生成的雨滴的最大数量(太大会影响性能)const int rainMinNum = 50;
//屏幕上随机生成的雨滴的最小数量
const int characterMaxNum= 25;
每个雨滴中的字符最大数量(太大会影响性能)const int characterMinNum =5;
//每个雨滴中的字符最小数量
const float randomUp =-20.0f;
// 随机生成节点的上边界
constfloat randomLeft = 0;
//随机生成节点的左边界
const float randomBottom = 0;
//随机生成节点的下边界
const float randomRight =(float)xScreen;
/ 随机生成节点的右边界
constfloat rainMaxSize = 55;
/ 字体最大大小
constfloat rainMinSize =25;
// 字体最小大小
constfloat rainMaxSpeed = yScreen / 1.2f;
// 像素/(秒)
constfloat rainMinSpeed = yScreen / 8.0f;
constfloat ratioWH = 0.5f;
//字符得宽高比
#pragma endregion
#pragma region Graph Function
HWND hWnd;
inline void syOuttextxy(float x, float y, TCHAR ch); void CreateCnivts
voidDestoryCanvas)
#pragma endregion
estruct Rect
曰 union
struct float x1, y1, x2, y2; ];
struct float left, up, right, bottom; ];];
estruct Point
float x, y;
Point(float _x=0.0f,float_y =0.Of):x(_x),y(_y)
Point(const Point& pos) :x(pos.x), y(pos.y) 仆];
//每一个可绘制对象都要继承自该类
Eclass DrawAble
protected:
Point m_position;
public:
void SetPesition(const Point& pos)
1m_position pos;
Point GetPosition() (return m_position; public:
DrawAble():m_position(f0.Of, 0.Of1)
virtual void Draw() = 0;
virtual void Update()=0;
virtual ~DrawAble() ;
struct CompareRainNode; // 超前声明
/* 字符结构 */
class RainNode : public DrawAble
friendstruct CompareRainNode;
private:
vector<TCHAR> m_characters; //所有的字符
COLORREF m_color; //字符颜色
float m_size; // 字符大小
float m_speed; //字符下落速度
boo1 m_isActive;
/ 当前字符是否还在屏幕显示范围内
public:
void Draw() override;
public: Update () override;
void
RainNode();
void SetAttributes (const vector<TCHAR>& characters,
COLORT手022floaty size, float speed,
Pointpos 0.Of,0.Of);
小铭 2022-12-25 12:43:07 来自手机 | 显示全部楼层
我抢个沙发
爱国者黑客 2022-12-25 14:43:59 来自手机 | 显示全部楼层
写的不错啊
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2026 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行