资源简介
此为博主的windows编程课程作业,游戏模式和是“男人就下一百层”相似。代码简洁易懂,非常适合学习使用,ui设计美观可爱(贱萌的提莫)。各种资源完备,可以直接调试。并且由博主调试完成后上传,可直接运行。
代码片段和文件信息
//疯狂的提百万
#include
#pragma comment(lib“winmm.lib“)
#include
//常量
//窗口大小
#define WINDOW_WIDTH GetSystemMetrics(SM_CXSCREEN)
#define WINDOW_HEIGHT GetSystemMetrics(SM_CYSCREEN)
//计时器ID
#define TIMER 1
//板块类型
//石板
#define BOARD_STONE 0
//木板
#define BOARD_WOOD 1
//钉板
#define BOARD_DOG 2
//弹簧
#define BOARD_SPRING 3
//板块元素数
#define BOARD_COUNT 10
//角色高度
#define ROLE_HEIGHT 83
#define ROLE_WIDTH 83
//角色状态
//向左
#define ROLE_LEFT 0
//向右
#define ROLE_RIGHT 1
//发呆
#define ROLE_LOGY 2
//全局变量
HDC g_hDrawDC;//绘制设备上下文
HBITMAP g_hDrawBmp;//绘制位图
bool g_bStart=false;//指示是否开始游戏
HWND g_hMainWnd;//主窗口句柄
HINSTANCE g_hInstance;//程序实例句柄
bool bMoved=false;//角色是否移动过
int num=0;
int nKey;
struct Board//板块描述
{
int nType;//板块类型
int nState;//板块状态
int nStep;//计数
int xy;//板块位置
};
Board g_Board[BOARD_COUNT];
struct Role//角色信息
{
int nState;//角色状态用于绘制图片0向左1向右2发呆
int nStep;//向左向右的步数0~2
int nFloorCount;//当前层数
int xy;//角色位置
int Count;//角色生命数
} g_Role;
char g_strInfo[10];//提示信息
//子程式声明
LRESULT CALLBACK WndProc(HWND hWndUINT uMsgWPARAM wParamLPARAM lParam);
void Draw();//绘制游戏画面
void GameInit();//游戏初始化
void BoardDeal();//板块上升处理
int WINAPI WinMain(HINSTANCE hInstanceHINSTANCE hPrevInstanceLPSTR lpCmdLineint nShowCmd)
{
HWND hWnd;
WNDCLASS wc;
MSG Msg;
//注册窗口类
wc.lpszClassName=“TheMan“;
wc.lpszMenuName=NULL;
wc.lpfnWndProc=WndProc;
wc.style=CS_OWNDC;
wc.hCursor=LoadCursor(NULLIDC_ARROW);
wc.hIcon=LoadIcon(hInstance“ICON“);
wc.hbrBackground=(HBRUSH)COLOR_WINDOW;
wc.hInstance=hInstance;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
RegisterClass(&wc);
//将窗口显示到屏幕中央
int xy;//用于计算窗口显示位置
int x2y2;
x=(GetSystemMetrics(SM_CXSCREEN)-393)/2;
y=(GetSystemMetrics(SM_CYSCREEN)-330)/6;
x2=(GetSystemMetrics(SM_CXSCREEN)-407)/2;
y2=(GetSystemMetrics(SM_CYSCREEN)-495)/4;
hWnd=CreateWindow(“TheMan““疯狂的提百万--MADE BY Gatsbyla Q2450569529“WS_VISIBLE|WS_SYSMENU|WS_MINIMIZEBOX
CW_USEDEFAULT
CW_USEDEFAULT
GetSystemMetrics(SM_CXSCREEN) GetSystemMetrics(SM_CYSCREEN)
NULLNULL
hInstanceNULL);
if(!hWnd)
{
MessageBox(NULL“创建窗口失败!““Error“MB_OK);
return 0;//退出程序
}
g_hMainWnd=hWnd;
g_hInstance=hInstance;
//创建绘制设备上下文
g_hDrawDC=CreateCompatibleDC(GetDC(hWnd));
//必须用GetDC(hWnd)作为下面函数的参数,若用g_hDrawDC绘制出的为黑白图,不是彩色的
g_hDrawBmp=CreateCompatibleBitmap(GetDC(hWnd)WINDOW_WIDTHWINDOW_HEIGHT);//创建与窗口大小相同的位图用于刷新窗口
//绑定位图到DC
Selectobject(g_hDrawDCg_hDrawBmp);
//绘制底色
RECT rt;
rt.left=0;
rt.top=0;
rt.right=WINDOW_WIDTH;
rt.bottom=WINDOW_HEIGHT;
FillRect(g_hDrawDC&rtNULL);
//绘制Logo
HBITMAP hBmp;
HDC hDC;
hDC=CreateCompatibleDC(GetDC(hWnd));
hBmp=LoadBitmap(hInstance“LOGO“);
Selectobject(hDChBmp);
TransparentBlt(g_hDrawDCx-150y393330hDC003933300xFFFFFF);//0xFFFFFF为要屏蔽的白色
hBmp=LoadBitmap(hInstance“背景1“);
相关资源
- 巴巴运动网最新完整源码
- vs2010 ffmpeg实时解码h264码流
- 图片-视频互换程序
- 微信小程序 录音机源码
- 微信打飞机IOS版源代码
- 大灰狼远程管理V8.96小马源码.zip
- unity3d_见缝插针源码及报告.zip
- 小程序小游戏你画我,猜亲测可用
- DSO138源码
- 老毛子aria2满速百度云工具Aria2电脑版
- 史上最全的档案管理系统源码合集
- 黑客免杀攻防源码随书光盘
- zlc源码众利模式.zip
- 微信小程序源码-合集1.rar
- 深度学习算法实践源码-吴岸城
- 微信小程序源码-合集3
- STL.源码剖析(完全版).pdf中文完整版
- 数字信号处理的FPGA实现Verilog源码
- 外卖小程序源码带后台和数据库
- 校园导游咨询系统源码及论文.zip
- 游戏找CALL练习ONE-易语言
- 百度OCR-身份证图片识别源码-更新
- 基于决策树和朴素贝叶斯算法对Adul
- linux系统的二级文件系统(QT实现了简
- 设计一个用于人事管理的“人员”类
- 40款微信H5小程序合集+源码
- 节奏大师源码
- 24个scratch游戏源码
- 搭建vip影视网站全套源码+自动采集
- 基于ffmpeg将avi视频转换为mp4视频
评论
共有 条评论