资源简介
这个是近期心血来潮就看书研究了下“推箱子”这个游戏。之所以会打算做一下推箱子,主要是测试下用文件来载入和保存地图的想法。
还有一些地方没有完善的,因为已经达到了我想要的效果,所以没有继续做下去了。不过应该算是比较完整了的,有兴趣的可以自行完善下。
另外,里面有个文档罗列了一些需要注意的东西,主要是针对没有完善的却使用了会碰到bug,虽然不是必要,但我觉得还是有必要写一下的。
最后,就这样了。
代码片段和文件信息
// BoxMan.cpp : 定义应用程序的类行为。
//
#include “stdafx.h“
#include “afxwinappex.h“
#include “afxdialogex.h“
#include “BoxMan.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CBoxManApp
BEGIN_MESSAGE_MAP(CBoxManApp CWinAppEx)
ON_COMMAND(ID_APP_ABOUT &CBoxManApp::OnAppAbout)
// 基于文件的标准文档命令
ON_COMMAND(ID_FILE_NEW &CWinAppEx::OnFileNew)
ON_COMMAND(ID_FILE_OPEN &CWinAppEx::OnFileOpen)
// 标准打印设置命令
ON_COMMAND(ID_FILE_PRINT_SETUP &CWinAppEx::OnFilePrintSetup)
END_MESSAGE_MAP()
// CBoxManApp 构造
CBoxManApp::CBoxManApp()
{
m_bHiColorIcons = TRUE;
// 支持重新启动管理器
m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_ALL_ASPECTS;
#ifdef _MANAGED
// 如果应用程序是利用公共语言运行时支持(/clr)构建的,则:
// 1) 必须有此附加设置,“重新启动管理器”支持才能正常工作。
// 2) 在您的项目中,您必须按照生成顺序向 System.Windows.Forms 添加引用。
System::Windows::Forms::Application::SetUnhandledExceptionMode(System::Windows::Forms::UnhandledExceptionMode::ThrowException);
#endif
// TODO: 将以下应用程序 ID 字符串替换为唯一的 ID 字符串;建议的字符串格式
//为 CompanyName.ProductName.SubProduct.VersionInformation
SetAppID(_T(“BoxMan.AppID.NoVersion“));
// TODO: 在此处添加构造代码,
// 将所有重要的初始化放置在 InitInstance 中
}
// 唯一的一个 CBoxManApp 对象
CBoxManApp theApp;
// CBoxManApp 初始化
/*BOOL CBoxManApp::InitInstance()
{
// 如果一个运行在 Windows XP 上的应用程序清单指定要
// 使用 ComCtl32.dll 版本 6 或更高版本来启用可视化方式,
//则需要 InitCommonControlsEx()。否则,将无法创建窗口。
INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
// 将它设置为包括所有要在应用程序中使用的
// 公共控件类。
InitCtrls.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
CWinAppEx::InitInstance();
// 初始化 OLE 库
if (!AfxOleInit())
{
AfxMessageBox(IDP_OLE_INIT_FAILED);
return FALSE;
}
AfxEnableControlContainer();
EnableTaskbarInteraction(FALSE);
// 使用 RichEdit 控件需要 AfxInitRichEdit2()
// AfxInitRichEdit2();
// 标准初始化
// 如果未使用这些功能并希望减小
// 最终可执行文件的大小,则应移除下列
// 不需要的特定初始化例程
// 更改用于存储设置的注册表项
// TODO: 应适当修改该字符串,
// 例如修改为公司或组织名
SetRegistryKey(_T(“应用程序向导生成的本地应用程序“));
LoadStdProfileSettings(4); // 加载标准 INI 文件选项(包括 MRU)
InitContextMenuManager();
InitKeyboardManager();
InitTooltipManager();
CMFCToolTipInfo ttParams;
ttParams.m_bVislManagerTheme = TRUE;
theApp.GetTooltipManager()->SetTooltipParams(AFX_TOOLTIP_TYPE_ALL
RUNTIME_CLASS(CMFCToolTipCtrl) &ttParams);
// 注册应用程序的文档模板。文档模板
// 将用作文档、框架窗口和视图之间的连接
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINframe
RUNTIME_CLASS(CBoxManDoc)
RUNTIME_CLASS(CMainframe) // 主 SDI 框架窗口
RUNTIME_CLASS(CBoxManView));
if (!pDocTemplate)
return FALSE;
AddDocTemplate(pDocTemplate);
// 分析标准 shell 命令、DDE、打开文件操作的命令行
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
// 调度在命令行中指定的命令。如果
// 用 /RegServer、/Register、/Unregserver 或 /Unregister 启动应用程序,则返回 FALSE。
if (!ProcessShellCommand(cmdInfo))
return FALSE;
// 唯一的一个窗口已初始化,因此显示它并对其进行更新
m_pMainWnd->ShowWindow(SW_
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 27136 2014-04-19 22:23 ReadMe.doc
文件 109172 2014-04-15 19:58 BoxMan\BoxMan\BoxMan.aps
文件 5371 2014-04-16 20:35 BoxMan\BoxMan\BoxMan.cpp
文件 712 2014-04-14 23:40 BoxMan\BoxMan\BoxMan.h
文件 22322 2014-04-15 00:20 BoxMan\BoxMan\BoxMan.rc
文件 6294 2014-04-16 17:07 BoxMan\BoxMan\BoxMan.vcxproj
文件 2805 2014-04-16 17:07 BoxMan\BoxMan\BoxMan.vcxproj.filters
文件 143 2014-04-14 01:38 BoxMan\BoxMan\BoxMan.vcxproj.user
文件 12310 2014-04-16 20:49 BoxMan\BoxMan\BoxManAll.cpp
文件 1253 2014-04-16 18:45 BoxMan\BoxMan\BoxManAll.h
文件 2436 2014-04-16 19:10 BoxMan\BoxMan\BoxManWnd.cpp
文件 625 2014-04-16 19:05 BoxMan\BoxMan\BoxManWnd.h
文件 10364 2014-04-11 17:41 BoxMan\BoxMan\ColorDef.h
文件 2132 2014-04-16 20:14 BoxMan\BoxMan\Debug\BoxMan.Build.CppClean.log
文件 667 2014-04-16 20:15 BoxMan\BoxMan\Debug\BoxMan.exe.em
文件 732 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxMan.exe.em
文件 381 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxMan.exe.intermediate.manifest
文件 62 2014-04-20 00:14 BoxMan\BoxMan\Debug\BoxMan.lastbuildstate
文件 1182 2014-04-20 00:14 BoxMan\BoxMan\Debug\BoxMan.log
文件 37657 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxMan.obj
文件 36765696 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxMan.pch
文件 84088 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxMan.res
文件 35782 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxManAll.obj
文件 31462 2014-04-20 00:13 BoxMan\BoxMan\Debug\BoxManWnd.obj
文件 202 2014-04-16 20:15 BoxMan\BoxMan\Debug\BoxMan_manifest.rc
文件 7214 2014-04-20 00:13 BoxMan\BoxMan\Debug\cl.command.1.tlog
文件 109086 2014-04-20 00:13 BoxMan\BoxMan\Debug\CL.read.1.tlog
文件 4664 2014-04-20 00:13 BoxMan\BoxMan\Debug\CL.write.1.tlog
文件 2 2014-04-20 00:13 BoxMan\BoxMan\Debug\li
文件 2 2014-04-20 00:13 BoxMan\BoxMan\Debug\li
............此处省略106个文件信息
相关资源
- 精通Windows API-函数、接口、编程(源
- 获取屏幕上任意一点的RGB值
- 李建忠_设计模式源码和课件.rar
- Linux窗口程序设计-Qt4精彩分析 part02
- 蓝桥杯历年试题附完整测试数据和题
- 双目标定后的三维重建
- 泛型编程与STL中文版 -----侯捷
- Make: Getting Started with Arduino 3rd
- QT推箱子小游戏(QT课程设计)
- cmake-3.16.0-rc1-win64-x64.msi
- 编译好的cryptlib.lib,包含32位,64位,
- 奔腾绿色浏览器
- OpenCV与OpenGL实现增强现实
- 算法竞赛入门经典-训练指南
- ACM超级模板
- 算法竞赛宝典第二部资源包
- 八思量打标卡sdk,积分改为0试试看
- 基于机器视觉的自动分拣系统
- STL源码剖析中文完整版pdf
- List Control动态修改编辑Demo
- 分布式实时处理系统 原理、架构与实
- 最新手机号段归属地数据库(2019年
- 点集压缩算法douglas-peucker等
- COM原理与应用.pdf
- Qt 5开发及第4版陆文周.zip
- QT Css设计器
- 类似qq的交流工具
- OpenGL编程指南 第九版英文版 OpenGL P
- IP包捕获与解析
- cmake-3.16.0-rc1-win64-x64.zip
评论
共有 条评论