资源简介
学习课程资源,不是很好的资源,为学生们提供一点小参考
代码片段和文件信息
// GamePlay.cpp : 实现文件
//
#include “stdafx.h“
#include “TankWard.h“
#include “GamePlay.h“
#include “afxdialogex.h“
#include “math.h“
#include
#include “Select.h“
#pragma comment( lib “Winmm.lib“ )
#include
// CGamePlay 对话框
IMPLEMENT_DYNAMIC(CGamePlay CDialogEx)
CGamePlay::CGamePlay(CWnd* pParent /*=NULL*/)
: CDialogEx(CGamePlay::IDD pParent)
m_score(0)
{
}
CGamePlay::~CGamePlay()
{
}
void CGamePlay::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Text(pDX IDC_EDIT_SCORE m_score);
DDV_MinMaxInt(pDX m_score 0 10000);
}
BEGIN_MESSAGE_MAP(CGamePlay CDialogEx)
ON_WM_MOUSEWHEEL()
ON_WM_LBUTTONDOWN()
ON_WM_ERASEBKGND()
ON_BN_CLICKED(IDC_BUTTON_LOADGAME &CGamePlay::OnBnClickedButtonloadgame)
ON_BN_CLICKED(IDC_BUTTON_GAMESTART &CGamePlay::OnBnClickedButtonGamestart)
ON_WM_TIMER()
END_MESSAGE_MAP()
// CGamePlay 消息处理程序
BOOL CGamePlay::OnInitDialog()
{
CDialogEx::OnInitDialog();
// TODO: 在此添加额外的初始化
int i;
gamePause=false;
gamePauseNum=0;
TankLive = 3;
bNum = 50;
ready=false;
pw=this->GetDlgItem(IDC_STA_TANKM);
pdc=pw->GetDC();
CRect rect1rect2;
pw->GetClientRect(rect1);
wh=rect1.Height();
ww=rect1.Width();
this->ClientToScreen(rect1);
pw->GetWindowRect(rect2);
xz=rect2.left-rect1.left;
yz=rect2.top-rect1.top;
np=0;
jd2=0;
mode=-1;
cp.x=0;
cp.y=0;
ca=0;
rnum=0;
save_point=false;
SPEED = 10;
m_score = 0;
FighterSpeed=100; BombSpeed = 50; bombNumAll=3;
//设定各个模型的比例缩放系数
sx[1][0]=0.2;//飞机比例因子
sx[1][1]=0.2;
sx[2][0]=0.5;//炮比例因子
sx[2][1]=0.5;
sx[3][0]=0.5;//战车比例因子
sx[3][1]=0.5;
sx[4][0]=0.3;//炮弹比例因子
sx[4][1]=0.3;
sx[5][0]=0.3;//爆炸比例因子
sx[5][1]=0.3;
sx[100][0]=0.3;//炸弹比例因子
sx[100][1]=0.3;
//sx[7][0]=0.3;//爆炸比例因子
//sx[7][1]=0.3;
bmp[0].LoadBitmapA(IDB_BMP_BG);
bmp[1].LoadBitmapA(IDB_BMP_PLANE);
bmp[2].LoadBitmapA(IDB_BMP_GUN);
bmp[3].LoadBitmapA(IDB_BMP_TANK);
bmp[4].LoadBitmapA(IDB_BMP_SHELL);
bmp[5].LoadBitmapA(IDB_BMP_EXP);
bmp[6].LoadBitmapA(IDB_BMP_BOMB);
//bkmap.LoadBitmapA(IDB_BITMAP3);
for(i=0;i<10;i++){
Rnum[i]=0;
dn[i] = 0;
dx[i][0]=0;
dx[i][1]=0;
Sdata[i][0]=0;
Sdata[i][1]=0;
Sdata[i][2]=0;
timer_fighter[i]=3;
timer_shell[i]=false;
setUp = false; //判断向上移动是否停止
setDown = false;
setLeft = false;
setRight = false;
}
for (i = 0; i < 300; i++) {
timer_bomb[i] = false;
db[i] = 0;
Bdata[i][0] = 0;
Bdata[i][1] = 0;
}
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
BOOL CGamePlay::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
if (pMsg->message == WM_KEYDOWN && pMsg->wParam == ‘W‘)
{
setUp = true;
TankCenter.y = TankCenter.y - SPEED;
GunCenter.y = GunCenter.y - SPEED;
ShellCenter.y = ShellCenter.y - SPEED;
if ((TankCenter.y - 100) < 0) {
TankCenter.y = TankCenter.y + SP
相关资源
- VS2013 / MFC + OpenCV 2.4.9实现视频的播放
- VC++中实现复选下拉框CCheckComboBox
- vs2013登录界面mfc
- 粒子滤波器+目标跟踪的C++实现,VS2
- EAN13条码生成(C语言+VS2010)[包含EA
- MFC基于对话框的气体浓度检测系统
- C语言c++游戏源代码大全
- Vassistx for VS2008
- C++ log4cplus Demo
- VS2010 C++ 操作Excel表格的编程实现
- 网络调试助手C++源码(VS 2008开发)
- VS打开VC6.0所需libcd.lib
- 图书信息管理系统 vs 图形界面
- vs2010编写的图书馆管理系统MFC_Librar
- OpenSSL RSA 非对称加密(VS2013,C++实现
- 如何在Visual StudioVS里使用libsvm工具箱
- VC++ VS2010实现的简单的学生管理系统
- VS2010_MFC完全版全五十四章从入门到精
- 用MFC实现的简单qq聊天
- QQ可用 Directshow实现的虚拟摄像头win
- VS2008 MFC简易计算器
- vs2010 MFC基础教程
- VS2013安装.zip
- VS平台 图像边缘检测
- VS90SP1-KB976656-x86.exe
- C语言 vs2013+easyX 实现推箱子小游戏
- 穿线法识别数码管数字c++
- 训练SVM分类器 VS2013 C++
- php-cpp项目移值到windows的vs2017解决方案
- MultiThread(VS2013 MFC多线程-含源码-含个
评论
共有 条评论