用c语言编写动态烟花的方法:首先绘制菜单界面显示文字;然后设置烟花有上升阶段和爆炸阶段,定义烟花和烟花弹结构体;最后初始化数据,加载资源贴图,随机发射数目随机。
用c语言编写动态烟花的方法:
效果展示
动态图
总体框架/*****************************************
* 项目名称:浪漫烟花
* 项目描述:贴图
* 项目环境:vs2019
* 生成日期:2020-9-7
* 作者所属:追梦
*****************************************/#include#include#include#include#define NUM 10//烟花弹个数,烟花//烟花弹struct jet{
int x, y;//烟花弹坐标
int hx, hy;//烟花弹最高点坐标
bool shoot;//烟花弹是否处于发射状态
DWORD t1, t2, dt;//发射时间 引爆时间 间隔时间
IMAGE img[2];//2张图片 一明一暗 01下标
byte n : 1;//C结构体 位段//n 变量 1个位0,1 n++ 0,1,0,1}jet[NUM];//烟花弹个数//烟花struct Fire{
int x, y;//烟花的坐标
int r;//烟花的半径
int max_r;//烟花的最大半径
int cen_x, cen_y;//中心距左上角的距离
int width, height;//长宽
int xy[240][240];//重要,像素,矩阵
bool draw;//画出
bool show;//显示
DWORD t1, t2, dt;//发射时间 引爆时间 间隔时间}fire[NUM];//初始化函数void FireInit(){}//加载资源void Load(){}//选择烟花弹void ChoiceJet(){}//判断发射void Shoot(){}//显示烟花void ShowFire(){}//菜单界面void welcome(){}//主函数int main(){
//初始界面(1000,600)
initgraph(1000, 600);
welcome();
Load();
while (1)
{
ChoiceJet();
Shoot();
ShowFire();
}
system("pause");
return 0;}
逻辑关系
首先绘制菜单界面显示文字。烟花有上升阶段和爆炸阶段,定义烟花和烟花弹结构体。
烟花:坐标位置,爆炸的半径大小,最大半径,中心距左上角的距离,长宽,像素,时间等。
烟花弹:坐标位置,最高