游戏“黄金矿工”设计思路

上传人:m**** 文档编号:496253291 上传时间:2023-01-10 格式:DOCX 页数:22 大小:1.03MB
返回 下载 相关 举报
游戏“黄金矿工”设计思路_第1页
第1页 / 共22页
游戏“黄金矿工”设计思路_第2页
第2页 / 共22页
游戏“黄金矿工”设计思路_第3页
第3页 / 共22页
游戏“黄金矿工”设计思路_第4页
第4页 / 共22页
游戏“黄金矿工”设计思路_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《游戏“黄金矿工”设计思路》由会员分享,可在线阅读,更多相关《游戏“黄金矿工”设计思路(22页珍藏版)》请在金锄头文库上搜索。

1、word实验:黄金矿工完本钱实验后,可以实现矿工抓金子并计分的效果,如下所示:复制金块学习目标学习应用dGetScreenLeft,dGetScreenRight,dGetScreenTop,dGetScreenBottom学习应用srand函数。这节我们实现黄金矿工的金块随机分布,并设置不同金块的大小,为后续的抓取金块做好准备。Stepl:图片资源导入新建一个新的项目,取名为GoldenManDemo。添加如下列图资源到环境中:口美的窗口时秆放国片费函玷用低配置叽GunRcotlniageMapBeginfriiageMspminiufoal(liiiagellap1miniufoaltli

2、nagEhyiap?GunFcot2lrnageMapGunSody2lmageMapGolderB时邮mag邮叶GokleiManlmagef.lapGakJerTocIlmsgeMapPictureDlYlairiplelmageMa|PicrureDIYIImageMapPicrureDIYSImageMap口iciuieDtY31m3geMapPicturftDl4lmageMepPiclureDiP5tmagel.lapPidureDlVfilniageldapPicrureDiY7lmageMapPicrureDIYSInisg期叩PictureDiYSimageWBpPiclur

3、eDIY1OlmageMaD并按如下所示布置图片位置:并为金子取名为goldTemplateStep2:本实验用到的API/*dGetScreenLeft:获取世界边界之左边X坐标* 返回值:左边界X坐标* /externfloatdGetScreenLeft();/*dGetScreenTop:获取世界边界之上边Y坐标* 返回值:上边界Y坐标* /externfloatdGetScreenTop();/*dGetScreenRight:获取世界边界之右边X坐标* 返回值:右边界X坐标* /externfloatdGetScreenRight();/*dGetScreenBottom:获取世界

4、边界之下边Y坐标* 返回值:下边界Y坐标* /externfloatdGetScreenBottom();/*dSetSpriteWidth:设置精灵外形宽度* 参数szName:精灵名字* 参数fWidth:宽度值,大于0* /externvoiddSetSpriteWidth(constchar*szName,constfloatfWidth);/*dGetSpriteWidth:获取精灵外形宽度* 参数szName:精灵名字* 返回值:精灵宽度值* /externfloatdGetSpriteWidth(constchar*szName);* *dRandomRange:获取一个位于参数

5、1到参数2之间的随机数* 返回值:int,X围iMin-iMax* 参数iMin:小于iMax的整数* 参数iMax:大于iMin的整数* /externintdRandomRange(constintiMin,constintiMax);Step3:思路阐述要实现金块的随机分布,首先需要利用模板复制一定数量的金块,然后将他们随机布置在窗口中,可以通过dSetSpritePosition来设置金块的横纵坐标。接下来要面临的问题就是,如何获取窗口中不同位置的坐标。禾1J用dGetScreenLeft,dGetScreenRight,dGetScreenBottom,dGetScreenTop来获

6、取窗口的X围,然后使用dRandomRange在tX围中随机一个新的坐标。对于金块的大小设置,可以利用dSetSpriteHeight和dSetSpriteWidth来实现。Step4:代码详解首先定义全局变量,定义如下全局变量:intgfGoldBornMinX=0;intgfGoldBornMaxX=0;intgfGoldBornMinY=0;intgfGoldBornMaxY=0;intgiGoldCount=0;金块布置属于初始化工作,在WinMain的初始化局部添加如下代码:dSetWindowTitle(黄金矿工);giGoldCount=20;/金子数量gfGoldBornMin

7、X=dGetScreenLeft()+5;/金子左边界gfGoldBornMaxX=dGetScreenRight()-5;/金子右边界gfGoldBornMinY=dGetScreenTop()+20;/金子上边界gfGoldBornMaxY=dGetScreenBottom()5;/金子下边界利用循环生成20个金子,以goldTemplate为模板intiLoop=0;/循环变量控制intiSize=4,iPosX=0,iPosY=0;/iSize表示金块大小的变量for(iLoop=0;iLoopg_iGoldCount;iLoop+)if(iLoop=10&iLoop=180.f)/大

8、于180,置为向右转,即0gfHookRotation=180.f;iHookRotToLeft=0;Else/向右转,度数不断变小gfHookRotation-=fThisRotate;/小于0,置为向左转,即1if(gfHookRotation=0.f)gfHookRotation=0.f;iHookRotToLeft=1;dSetSpriteRotation(GoldHook,gfHookRotation);/设置钩子的当前角度编译运行,可得到如下所示的效果:练习:1.使钩子从左往右进展旋转释放绳索学习目标学习应用dSetSpriteLinearVelocityPolar,dAnimat

9、eSpritePlayAnimation函数学会利用全局变量来控制游戏的运行状态。这节我们实现黄金矿工在某一角度放下绳索的操作,为之后的真正抓取金子做好准备Stepl:图片资源编辑打开funcode,单击地图上的矿工精灵图像,在显示框的上面五个选择左数第二个编辑此精灵的点,如下列图按如下列图依次单击这位置显示0,保存即可。同上,点击地图上的钩子精灵,选择“编辑此精灵的点,依次单击这个位置显示0,最后保存即可。Step2:本实验用到的API/*dSetSpriteLinearVelocityPolar:按角度朝向设置精灵移动速度* 参数szName:精灵名字* 参数fSpeed:移动速度* 参数fPolar:角度朝向* /externvoiddSetSpriteLinearVelocityPolar(constchar*szName,constfloatfSpeed,constfloatfPolar);/*dAnimateSpritePlayAnimation:动画精灵播放动画* 参数szName:精灵名字* 参数szAnim:动画名字* 参数iRestore:播放完毕后是否恢复当前动画.1恢复0不恢复* 返回值:是否播放成功,1:成功0:不成功* /externintdAnimateSpritePlayA

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号