基于C语言的台球小游戏超详细注释.zip
我赌十包辣条,超详细的代码注释你值得拥有,包括图片和背景音乐全部资源。使用VS完成,利用了EasyX图形库,超适合C语言初学者初探游戏设计的大门(或课设)。有问题欢迎咨询^-^
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 23363 2020-02-13 21:21 main.cpp
文件 3570 2020-02-15 17:05 RCa06972
目录 0 2020-02-15 18:25 res
文件 7234 2020-02-08 20:14 respower2.bmp
文件 1802137 2020-02-11 18:45 res主菜单.png
文件 1587764 2020-02-09 15:24 res关于页面.png
文件 12204 2017-07-06 02:44 res击杆.wav
文件 129436 2020-02-09 11:22 res嘘声.wav
文件 396334 2017-07-06 02:44 res掌声.wav
文件 743967 2020-02-11 19:32 res游戏背景0.png
文件 744484 2020-02-11 19:31 res游戏背景1.png
文件 743218 2020-02-11 19:33 res游戏背景2.png
文件 747819 2020-02-11 19:30 res游戏背景3.png
文件 1275822 2020-02-09 15:01 res球杆设置.png
文件 1279466 2020-02-09 15:00 res球桌设置.png
文件 5303932 2020-02-09 09:55 res背景音乐.wav
文件 5659392 2020-02-09 10:00 res背景音乐2.wav
文件 1276935 2020-02-09 15:08 res设置页面.png
文件 32664 2020-02-09 13:34 res进袋.wav
文件 1629686 2020-02-11 19:01 res退出页面.png
文件 2339283 2020-02-11 19:19 res选择页面.png
文件 444 2020-02-13 14:45 resource.h
文件 1649 2020-02-13 15:05 Resource.rc
文件 1324 2020-02-02 16:41 台球小游戏.aps
文件 649216 2020-02-13 21:21 台球小游戏.exe
文件 1449 2020-02-13 15:32 台球小游戏.sln
文件 7665 2020-02-13 15:05 台球小游戏.vcxproj
文件 1323 2020-02-13 15:05 台球小游戏.vcxproj.filters
文件 168 2020-02-02 15:24 台球小游戏.vcxproj.user
文件 67646 2020-02-13 14:45 图标.ico
//作者是湘潭市的一名在读大学生,初学C语言
//第一次做游戏代码多有缺陷,请多指正
//使用了EasyX图形库,计算单位为像素
//作者邮箱:3167881811@qq.com
//欢迎来邮交流
#include
#include
#include
#include
#include
#include
#include
#include
#pragma comment(lib “winmm.lib“)
#define pi 3.141592653589
#define min 0.5
#define r 15
//定义球的结构体
struct balltype
{
double x = 0 y = 0; //坐标
double dx = 0 dy = 0; //坐标变化量
int flag = 0; //桌内存在标志
int drawflag = 0; //桌外存在标志
int runflag = 1; //运动标志
}ball[16];
//定义球洞位置数组
long hole[6][2] = { {280122}{282 579}{731112}{729592}{1178122}{1180579} };
//定义打进球的位置
long holex = 1170;
long holey = 50;
//初始化力度
long power = 10;
//定义颜色标志
int ca = 0 cb = 0 cc = 0; //球杆颜色
int ta = 0; //球桌颜色
//定义游戏模式标志
int count = 0;
//必要的函数声明
void startgame();
void gamesetting();
void setbar();
void settable();
void aboutgame();
void exitgame();
void ball_3();
void ball_8();
void ball_9();
void shot(int count);
//初始界面
void firstpage()
{
//初始化窗口
initgraph(1280 700);
//主菜单页面
loadimage(NULL _T(“res/主菜单.png“));
//定义鼠标消息
MOUSEMSG msg = { 0 };
int m = 1;//m为 “是否检测鼠标信息” 的标志变量
while (m)
{
//获取鼠标信息
msg = GetMouseMsg();
//进入模式选择页面
if ((50 <= msg.x && msg.x <= 250) && (290 <= msg.y && msg.y <= 350) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0;
startgame();
}
//进入设置页面
if ((50 <= msg.x && msg.x <= 250) && (390 <= msg.y && msg.y <= 450) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0;
gamesetting();
}
//进入关于页面
if ((50 <= msg.x && msg.x <= 250) && (480 <= msg.y && msg.y <= 540) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0;
aboutgame();
}
//进入退出页面
if ((50 <= msg.x && msg.x <= 250) && (570 <= msg.y && msg.y <= 630) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0;
exitgame();
}
}
closegraph();
}
//开始游戏
void startgame()
{
//选择游戏模式页面
loadimage(NULL _T(“res/选择页面.png“));
MOUSEMSG msg = { 0 };
int m = 1;
while (m)
{
msg = GetMouseMsg();
//进入游戏模式选择页面
if ((50 <= msg.x && msg.x <= 200) && (320 <= msg.y && msg.y <= 370) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0; count = 4;
ball_3();
}
if ((50 <= msg.x && msg.x <= 200) && (420 <= msg.y && msg.y <= 470) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0; count = 16;
ball_8();
}
if ((50 <= msg.x && msg.x <= 200) && (520 <= msg.y && msg.y <= 570) && (msg.uMsg == WM_LBUTTONDOWN))
{
m = 0; count = 10;
ball_9();
}
//单击右键返回主菜单
if (msg.uMsg == WM_RBUTTONDOWN)
{
m = 0;
firstpage();
}
}
}
//游戏设置
void gamesetting()
{
//设置页面
loadimage(NULL _T(“res/设置页面.png“));
MOUSEMSG msg = { 0 };
int m = 1;
while (m)
{
msg = GetMouseMsg();
//单击左键球杆设置
if ((msg.uMsg == WM_LBUTTONDOWN) && (60 <= msg.x && msg.x <= 280) && (240 <= msg.y && msg.y <= 290))
{
m = 0;
setbar();
}
//单击左键
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 23363 2020-02-13 21:21 main.cpp
文件 3570 2020-02-15 17:05 RCa06972
目录 0 2020-02-15 18:25 res
文件 7234 2020-02-08 20:14 respower2.bmp
文件 1802137 2020-02-11 18:45 res主菜单.png
文件 1587764 2020-02-09 15:24 res关于页面.png
文件 12204 2017-07-06 02:44 res击杆.wav
文件 129436 2020-02-09 11:22 res嘘声.wav
文件 396334 2017-07-06 02:44 res掌声.wav
文件 743967 2020-02-11 19:32 res游戏背景0.png
文件 744484 2020-02-11 19:31 res游戏背景1.png
文件 743218 2020-02-11 19:33 res游戏背景2.png
文件 747819 2020-02-11 19:30 res游戏背景3.png
文件 1275822 2020-02-09 15:01 res球杆设置.png
文件 1279466 2020-02-09 15:00 res球桌设置.png
文件 5303932 2020-02-09 09:55 res背景音乐.wav
文件 5659392 2020-02-09 10:00 res背景音乐2.wav
文件 1276935 2020-02-09 15:08 res设置页面.png
文件 32664 2020-02-09 13:34 res进袋.wav
文件 1629686 2020-02-11 19:01 res退出页面.png
文件 2339283 2020-02-11 19:19 res选择页面.png
文件 444 2020-02-13 14:45 resource.h
文件 1649 2020-02-13 15:05 Resource.rc
文件 1324 2020-02-02 16:41 台球小游戏.aps
文件 649216 2020-02-13 21:21 台球小游戏.exe
文件 1449 2020-02-13 15:32 台球小游戏.sln
文件 7665 2020-02-13 15:05 台球小游戏.vcxproj
文件 1323 2020-02-13 15:05 台球小游戏.vcxproj.filters
文件 168 2020-02-02 15:24 台球小游戏.vcxproj.user
文件 67646 2020-02-13 14:45 图标.ico
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)