• 大小: 22.71MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-08
  • 语言: 其他
  • 标签: 推箱子  C++  

资源简介

这个是近期心血来潮就看书研究了下“推箱子”这个游戏。之所以会打算做一下推箱子,主要是测试下用文件来载入和保存地图的想法。 还有一些地方没有完善的,因为已经达到了我想要的效果,所以没有继续做下去了。不过应该算是比较完整了的,有兴趣的可以自行完善下。 另外,里面有个文档罗列了一些需要注意的东西,主要是针对没有完善的却使用了会碰到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.embed.manifest

     文件        732  2014-04-20 00:13  BoxMan\BoxMan\Debug\BoxMan.exe.embed.manifest.res

     文件        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\link-cvtres.read.1.tlog

     文件          2  2014-04-20 00:13  BoxMan\BoxMan\Debug\link-cvtres.write.1.tlog

............此处省略106个文件信息

评论

共有 条评论