资源简介
我赌十包辣条,超详细的代码注释你值得拥有,包括图片和背景音乐全部资源。使用VS完成,利用了EasyX图形库,超适合C语言初学者初探游戏设计的大门(或课设)。有问题欢迎咨询^-^
代码片段和文件信息
//作者是湘潭市的一名在读大学生,初学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 res\power2.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
- 上一篇:vc6++安装包
- 下一篇:VS2017实现Tcp socket多线程通信C++
相关资源
- C语言实现建议的虚拟文件系统
- c语言实现俄罗斯方块
- VS2013写的简单小游戏俄罗斯方块
- 扫雷小游戏 完整源码
- 不用MFC写的小游戏
- vs c++写的贪吃蛇
- c++写的泡泡堂的小游戏,可以单机或
- 基于SIFT特征全景图像拼接C语言实现
- c++基于Windows编程的打飞机小游戏源代
- 自己用c++做的一个弹球小游戏
- 用C语言实现的基于adaboost算法的人脸
- MFC小游戏代码
- 俄罗斯方块(C语言实现,有注释
- 算法:C语言实现(第5部分)图算法
- 用C语言实现Socket模拟TCP协议
- C语言实现贪吃蛇大量注释+用到的库文
- VC++经典小游戏设计
- 基于目标距离的S型速度曲线规划
- Linux下C语言实现的图书管理系统
- 基于QT的C语言实现连连看游戏源码
- 算法c语言实现
- C++游戏-雷霆战机
- tcp ip sockets编程 c语言实现 第2版 中文
- c语言实现的,基于深搜和广搜,有界
- 基于MFC实现的数独小游戏,可在vc6.
- SoAndChan心电图ECG的R波侦测算法的C语言
- C语言开发FlyBird小游戏,飞翔小鸟小游
- 五子棋在linux命令行模式下C语言实现
- 典型密码算法及其C语言实现——
- c++ 贪食蛇小游戏代码
评论
共有 条评论