怎样做小游戏挖金子(VC,源码3)
说明:整个工程文件已经上传至“下载频道”, 名字是“挖金子VC版源码”。不仅包括源代码,还有图形资源。最方便的是能直接编译、运行。
昨天讲解了游戏开始菜单的相关程序。今天开始讲游戏主逻辑。当用户点击了“开始”按钮后,进入游戏。需要做的工作是:加载地图,游戏上方的叉子开始摆动,同时检测用户按键,判断是否抓到物品等等。待俺一一道来。
地图信息包括:第几关,物品及其坐标,以前两关的地图数据为例:
*0
600
1 50 110
2 100 270
3 200 370
2 380 370
3 480 340
1 550 150
4 190 190
5 390 260
#
*1
1000
2 50 110
5 100 270
3 200 370
4 380 370
5 480 340
1 550 150
2 190 190
3 390 260
#
文件结构为:每一关以*和#作为起始/结束标志。*后面跟得是“第几关”(从0开始)。之后,是过关的金钱数量。再之后,每行表示一个物品,物品ID,横坐标,纵坐标。
物品ID从1开始,1至5表示5种物品,对应着大小不同的。这是一个设计的失误,不应该从1开始,应该从0开始。因为数组的下标要从0开始计算,有时候忘了减一,很久才能发现。这就是“代码的可维护性”。
{
int id;
int x;
int y;
};
class GAMEMAP
{
public:
//物品的ID,坐标
struct GAMEOBJECT objectarray[30];
如上所示,读取地图文件后,将所有物品的ID,坐标放到这个数组中。
整个游戏的画面就是,遍历这个数组,按照物品ID,坐标,显示对应的图片。代码如下:
{
if(gmap.objectarray[i].id<=0)
{
continue;
}
bObject.ShowNoBack(gmap.objectarray[i].x,
gmap.objectarray[i].y,
gmap.objectarray[i].id-1);
}
在游戏过程中,只要修改这个数组中的坐标即可移动物品,只要清除一个元素的ID,即可消除一个物品。
还要绘制画面上方的图案,土壤的图案。上方的图案是一个简单的图片,土壤的图片是一个64*64的位图,循环排列而成。游戏中根据“第几关”选择不同的背景图案来显示。
bMap.ShowCenter(0);//游戏上方的图案
bEarth.ShowLoop(0,80,GAMEWIDTH,GAMEHEIGHT,gmap.GetMatchNow());//土壤背景
画面上方有三个文字信息:当前金钱,目的金钱,剩余时间。都是简单的一个文本显示TextOut。
以上介绍了地图加载,物品的存储数组。
游戏的主过程中,还有叉子的绘制、摆动、伸缩,检测是否抓到物品(包括物品移动),检测用户按键,这些下回分解。大家可以直接在“CSDN下载频道”下载源工程“挖金子VC版源码”,其实,了无秘密。
怎样做小游戏挖金子(VC,源码3)相关推荐
- 怎样做小游戏挖金子(VC,源码1)
<挖金子>这个游戏,以前就玩过,网上见到是FLASH做的.FLASH做的游戏,很棒,足以让人对脚本语言刮目相看.最近我用vc做了一个,基本实现了功能.但代码写得粗糙,有几处很笨拙.我还是想 ...
- 怎样做小游戏挖金子(VC,源码2)
先别急着看源码,首先要解决的问题是程序框架. VC只是一个开发环境,支持的是C++.Windows下的程序,当然是用Windows API(Application Programming Interf ...
- java做小游戏扫雷(附源码)
下载解压即可玩:扫雷 项目代码下载:java代码 目录 图片 怎么自己也能做 代码细节 感受 全部代码 GameWin.java类 : MapBottom.java类: GameUtil.java类: ...
- 编程语言用 Java 开发一个打飞机小游戏(附完整源码)
编程语言用 Java 开发一个打飞机小游戏(附完整源码) 上图 写在前面 技术源于分享,所以今天抽空把自己之前用java做过的小游戏整理贴出来给大家参考学习.java确实不适合写桌面应用,这里只是通过 ...
- “限时分享“ 本地80个小游戏 HTML+CSS+JS源码分享
开源项目集合 1. "限时分享" 本地80个小游戏 HTML+CSS+JS源码分享 2. "限时分享" 别错过了,最全的微信小程序源码收集分享 里面有80款小游 ...
- c++编写手机小游戏代码_经典小游戏大集合(C++ 源码)
[实例简介] 五子棋 贪吃蛇 俄罗斯方块 黑白棋 连连看 推箱子 扫雷等7个小游戏 C++源码 VC6.0 下编译运行. [实例截图] [核心代码] 经典小游戏大集合(C源码) └── 经典小游戏大集 ...
- 打砖块小游戏php程序,javascript实现打砖块小游戏(附完整源码)
小时候玩一天的打砖块小游戏,附完整源码 在?给个赞? 实现如图 需求分析 1.小球在触碰到大盒子上.左.右边框,以及滑块后沿另一方向反弹,在碰到底边框后游戏结束: 2.小球在触碰到方块之后,方块消失: ...
- 用Python做雷霆战机小游戏【附素材+源码】
前言 嗨嗨,我是小圆 最近很多朋友都在问我要一些游戏的代码 所以这篇文章就出来了 [想一键获取素材和源码的,点击文章末尾名片] 模块准备 import pygame, os import time i ...
- 用Python做雷霆战机小游戏【赠素材+源码】
前言 嗨嗨,我是小圆 最近很多朋友都在问我要一些游戏的代码 所以这篇文章就出来了 [想一键获取素材和源码的,点击文章末尾名片] 模块准备 import pygame, os import time i ...
- H5——连连看小游戏实现思路及源码
部门要求推广新产品用连连看小游戏的方式, 设计那边UI还没有排期,先撸个功能demo,正好记录一下: 连连看都玩过,程序的关键在于判断连续点击的两张图片是否能够消除,两个图片消除的条件有两个: 图片相 ...
最新文章
- 第四节、逆矩阵与转置矩阵
- STL之list学习(2)(list代码实现)(只剩最后一步,迭代器升级!!)
- 全网最详系列教程-nacos配置中心详解-NameSpace、Group、DataID
- 9012年大厂面试题合集:Java技术栈为什么竞争越来越激烈?
- WinJS实用开发技巧(4):Appbar中使用自定义图片
- shell之a+b求和l脚本的三种写法
- linux加密框架 crypto 通用算法注册接口__crypto_register_alg注册流程
- 实现机器学习的循序渐进指南VII——Blending Stacking
- geth+remix+metamask 实现私有链智能合约部署
- Python强化训练笔记(二)——元组元素的命名
- Linux 平台下 Tomcat 的安装与优化
- java2实用教程 第四版 上机实践4代码_Java2实用教程实验指导模版代码
- VS2013 产品密钥 – 所有版本-亲试,好使!!
- QQ空间相册批量下载qq相册批量下载专家比骨头小林还厉害
- 数字图像处理第五次作业:描述FFT的平移、缩放、旋转的性质。
- input标签的type属性汇总
- 你怎么保存微博中喜欢的视频
- HTML5期末大作业:游戏设计网站设计——游戏介绍(5页) 大学生游戏网页设计作业模板下载 网游网页设计作业成品 静态HTML手游网页制作下载_网页设计代码
- python设置word背景色_Java 给Word不同页面设置不同背景
- 2.3 OSI参考模型