ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:22.42KB ,
资源ID:1625980      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-1625980.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整版安卓游戏毕业设计论文1464349.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

完整版安卓游戏毕业设计论文1464349.docx

1、完整版安卓游戏毕业设计论文1464349知识不仅是指课本的内容,还包括社会经验、文明文化、时代精神等整体要素,才有竞争力,知识是新时代的资本,五六十年代人靠勤劳可以成事;今天的香港要抢知识,要以知识取胜大 连 民 族 学 院 本 科 毕 业 设 计(论 文)基于安卓的经营冷饮店游戏设计 摘 要随着社会与科技的发展人们越来越注重移动、便携与方便而随着这股潮流的发展手机应用游戏应运而生安卓系统作为一个市场占有超过50%的手机平台其应用游戏的发展非常迅猛本论文提出一款基于安卓系统的经营冷饮店游戏设计并对其具体开发与实现进行了剖析在游戏制作过程中实现了用户与手机之间的良好的人机交互使用户更好的参与到游

2、戏中去此款游戏为模拟经营类游戏其内容主要包含游戏开始选择游戏难度玩家进货、定价游戏主画面游戏结束这5个模块主要介绍了每个模块的功能设计方法模块和模块之间的逻辑结构和数据处理本论文主要对此款游戏的总体设计需求分析和内部数据的具体处理和计算进行了详细的阐述并对游戏的具体设计与实现进行了简要的说明在一定安卓理论的基础上介绍了部分关键代码与关键函数的应用对游戏中应用到的相关计算机图形学实现应用动画的过程做了具体介绍最后展示成果截图并对其进行简单介绍然后论文进行整体总结与归纳关键词:游戏;安卓;人机交互 The Subject of Undergraduate Graduation Project (T

3、hesis) of DLNUAbstractWith the development of society and technology growing emphasis as a market share over 50% of the mobile phone systemthe application of Android (1)现在第几天NowdateNum1总资金sum_money1000甜甜圈售价donut_money0糖(库存)sugar_num0面粉(库存)flour_num0配料(库存)other_num0糖(食谱)sugar_cook_num1面粉(食谱)flour_coo

4、k_num1配料(食谱)other_cook_num1天气weather(2)声誉reputation0饮料数量drinking_num0饮料定价drinking_value0当前已售甜甜圈sold_donut0当前已售饮料sold_drink0表4.1中(1)处玩家选择天数初值需要在玩家选择时赋值;(2)中天气的初值是游戏每次随机产生的4.2.2玩家进货价格生成在玩家进货、定价管理界面系统会随机产生不同商品的当前进货物价每种商品物价范围基本一致其前三天价格初始化都是1到6之间但随着时间的推移物价的波动会略微上调 其计算方法如下:首先生成一个1-6的随机价格money判断天数如果是3天后那么m

5、oney = money + money * ( nowDays Days ) (4.1)其中nowDays为当前天数Days为玩家选择的总天数4.2.3商品腐败值计算方法商品的腐败值每隔一天计算一次封装在donuts类和soft_drink类里每过一天商品腐败值会根据前一天天气状况来进行计算如果前一天天气是晴天则腐败值donut_decay或者drink_decay增加100如果前一天天气下雨或者阴天则腐败值donut_decay或者drink_decay增加50如果前一天天气为雪天则腐败值donut_decay或者drink_decay增加30而当腐败值大于等于100的商品则从库存里面删除

6、4.2.4商店声誉计算方法影响商店声誉的主要是商品价格当商品为甜甜圈的时候商品配料也同样影响商品的声誉在生成顾客Person类的初始化中每个顾客类都会根据当天天气状况随机生成需要购买的商品之后随机生成最优商品价格和可以忍受的最贵商品价格如果商品时甜甜圈则还需要随机生成最优配料数和可以忍受的最低配料数在这里配料数是指玩家在开始售货之前设定的食谱中糖、面粉和配料数的总和随机生成的商品最优价格和可以忍受的最贵商品价格是在一定范围内生成的而这个范围是根据当前第几天来设定的各种数据生成的计算公式如下:首先随机生成数n数n的范围在8-15之间其次计算商品配料数m: m = sugar + flour +

7、other (4.2)公式(4.2)中sugar代表食谱中的糖flour代表食谱中的面粉other代表食谱中的配料(1)饮料的最优价格计算公式: drinkminMoney = n + n * ( nowDays Days ) (4.3)(2)饮料的可以忍受最贵价格计算公式:drinkmaxMoney = drinkminMoney * 1.5 (4.4)(3)甜甜圈最优价格计算公式: donutminMoney = n * m + n * ( nowDays Days ) (4.5) 公式(4.5)中因为甜甜圈是3种材料综合生成所以计算价格需要n*m(4)甜甜圈可以忍受最贵价格计算公式:do

8、nutmaxMoney = donutminMoney * 1.5 (4.6)规定生成甜甜圈最佳配料数为13-25生成甜甜圈最低配料数为5-12之间则当此顾客准备购买饮料时需要先判断用户定价是否低于顾客预期可忍受的最贵价格如果价格不能忍受则商店声誉度reputation = reputation - 1并且顾客放弃购买此商品若低于顾客预期可忍受的最贵价格则判断是否低于或等于顾客预期的最优价格如果低于或等于最优价格则reputation = reputation + 1若顾客购买甜甜圈则分5中情况讨论:1) 难吃:商品价格在顾客预期最优价格之内但是甜甜圈配料数低于最低配料数此时声誉减12) 生气

9、:商品价格在顾客可以忍受价格之间并且甜甜圈配料数低于最低配料数此时声誉减23) 太贵:顾客购买前判断商品在其预期价格可以忍受价格之上则顾客放弃购买声誉减14) 高兴:商品价格在顾客预期最优价格之内并且商品配料在顾客预期最佳配料之上则商店声誉加15) 普通:不属于以上情况的即普通商店声誉不改变4.2.5顾客购买率计算方法顾客购买率主要根据商店声誉来计算的每天生成的顾客数量基本一致约为360人左右声誉最大值为100最小值为0当声誉小于10时10%的顾客会购买商品当声誉大于等于10小于20时20%的顾客会购买商品当声誉大于等于20小于40时30%的顾客会购买商品当声誉大于等于40小于60时40%的顾

10、客会购买商品当声誉大于等于60小于80时50%的顾客会购买商品当声誉大于等于80时60%的顾客会购买商品5游戏具体设计与实现5.1游戏各Activity功能Android应用最重要、最常见的组成单元为ActivityActivity对于Android相当于Servlet对于Web应用的作用Activity可以看做一个画面当建立一个新的Activity的时候其实相当于建立一个全新的画面这个画面有自己的生存周期统一由ActivityManager进行管理Activity的管理方式类似于栈最先启动的Activity最后关闭最后启动的Activity最先关闭5.1.1开始Activity开始Activ

11、ity类名为Start_Activity其布局在布局文件中加载有一个按钮点击进入新Activity-选择Activity在开始Activity中背景音乐开启一直持续到游戏结束音乐大小用户可以用手机自带的音量调节键调节5.1.2选择Activity选择Activity类名为Choose_Activity由布局文件夹Layout下布局的xml文件进行布局主要功能为用户选择开店游戏天数 SharedPreferences也在此Activity中进行初始化并存储在其中数据也在此处进行初始化5.1.3准备Activity准备Activity的类名为preActivity此类主要是用户进货、定价操作界面本

12、类中也使用布局文件夹Layout下布局的xml文件进行布局在类里添加监听器和处理此类运用Android中TabHost进行分页设置把一个Activity分成两部分一部分为甜甜圈一部分为冷饮在甜甜圈和冷饮部分上方都可看到当前资本与游戏当天天数和开业后天气情况用户可以选择需要进货的商品选择完毕之后选择开业按钮即可如果选择错误想要重新选择则可以点击重置按钮则游戏会重置到之前没有选择时的状态甜甜圈和冷饮部分数据分别为甜甜圈类Donuts和冷饮类Soft_drink分类暂存数据当用户选择开业按钮时则之前用户选择的数据会提交到SharedPreferences的存储文件中去使得数据不会丢失5.1.4游戏进

13、行Activity游戏进行Activity的类名为GamingActivity此类可以说是整个游戏的最重要部分此Activity主要加载了一个SurfaceView的类整个绘画背景天气顾客购买的动画和部分用户操作都封装在继承了SurfaceView的GamingSurfaceView中SurfaceView是Android中View类的子类View是一个超类几乎包含了所有屏幕类型每个View类都有一个绘画的画布SurfaceView主要用于刷新较频繁的动画、游戏绘图它是一个新起的单独线程而View则必须在UI主线程中更新画面在GamingSurfaceView中首先建立一个线程以定时刷新画面在

14、刷新过程中每次调用Draw方法和logic方法在Draw方法中处理画图从背景开、建筑物、商店到顾客购买时间等顾客和背景的画图是把画笔和画笔当做参数传到Person类和Background类中在这两个类中分别都设置draw方法和logic方法这样使得画图的分工更加明确逻辑性更强在这个类中用户主要会观察顾客购买情况为了增加用户的互动性用户可以随时调整甜甜圈和饮料的出售价格同时用户可以点击调整速度按钮控制游戏速度的快慢以便于观察游戏中顾客的购买情况或者免于浪费更多的时间5.2游戏中动画原理实现5.2.1图片的加载Android中位图的渲染和操作主要是基于Bitmap的图形类来进行Android支持的

15、图片格式有png、jpg、bmp等其中尤以png格式 的图片更加方便可以通过修改图片调整图片的透明度Android的图片加载主要通过画布类Canvas来进行的Canvas有一系列的方法可以进行绘制图片本游戏中图片都是通过Canvas.drawBitmap()方法进行绘制的当图片过大或者过小时Canvas提供了一个缩放位图的函数对指定大小的矩形在画布指定位置上进行缩放但在操作前后需要加入save()和restore()两个方法分别用于保存当前画布状态和恢复上次保存画布的状态5.2.2顾客的走动和购买的实现顾客走动图片是一张包含顾客向右走动的所有动作帧每帧的大小相同顾客不同动作之间间距相同且除了顾

16、客本身以外其他部分都为透明的png格式图片该图片如图5.1所示:图5.1首先参数m_walkCurrentFrame记录顾客当前走路是哪一帧顺序应该为0、1、2、1、0、2、1、0、2.然后获得图片的宽width则小人其中一帧的宽即为framew = width 3再用Canvas方法scale()函数修改顾客的大小并用Canvas方法clipRect()设置一个宽高跟小人相同大小的可视区域画图的时候按照设置的可视区域画则顾客的另外2帧的图片部分就被屏蔽了然后用drawBitmap方法进行绘制其中注意要根据当前m_walkCurrentFrame是多少来绘制例如当m_walkCurrentFr

17、ame为1的时候即要显示中间那帧不能直接使用需要显示图片的xy坐标要使中间的图片的左上角坐标为xy则要从x- framewy处开始绘制这样由于之前已经剪切了一个可视区域则图片横坐标x- framew到x处图片是看不到的x+framew到x+framew*2是看不到的同理顾客购买物品的时候也是使用了一个包含顾客购买动作的5帧动作帧图片在此不再介绍5.2.3下雨、下雪的背景实现下雨背景的实现相当于滚动背景的实现模拟雨水的图片为一张png的用白色画笔画出长短不一线段其他地方都是透明的图片然后生成2个Bitmap对象图片都加载雨水的图片第一张图片随着时间推移向下移动5个单位第二张图片在屏幕正上方紧接着

18、第一张每次也移动5个单位当任意一张图片移动到屏幕之外把该张图片位置放到屏幕正上方继续向下移动5个单位下雪背景的与下雨背景的实现基本相同仅仅是图片不同在此不作具体描述6游戏实现及效果如图6.1为游戏开始界面点击图中开始游戏按钮进入选择游戏天数界面 图6.1如图6.2所示为用户选择天气界面其中有5个选项可供选择用户可按照自己意愿选择游戏天数点击按钮后进入游戏准备界面 图6.2如图6.3与图6.4所示在游戏准备界面中用户可以选择冷饮或者甜甜圈选项卡在甜甜圈和冷饮选项卡中用户可以根据第二天天气情况决定进货数量和食谱想要增加数量点击+按钮即可如果用户想要重新选择则选择重置按钮则可恢复当前界面中的选择到原

19、始状态最后点击开业按钮进入游戏主逻辑画面图6.3图6.4如图6.5所示为游戏主逻辑画面图6.5结 论经过几个月时间终于完成了Android系统的经营冷饮店游戏的设计与实现经过多次测试运行效果良好基本能满足用户聊天和休闲娱乐的需求在设计与实现此款游戏过程中设计游戏内容熟悉Android平台开发令我话费较多时间和精力在开始编码程序前期设计整体游戏框架结构给每个模块明确分工以面向对象的思想分析和解决问题的过程令我的编程思想有了较大的提升在编码程序中期根据所准备的需求进行具体编写代码和功能实现遇到了较多的问题例如Dialog的监听包和view的监听包不能同时导入只能导入其中一个那么在这个Activit

20、y里面需要同时监听这两种不同组件的解决方法;由于Activity是栈式管理先打开的Activity最后关闭那么如果在任意一个Activity中随意的关闭整个程序等等手机内存空间有限这就要求程序员进行优化处理自身程序在构建顾客对象过程中每天一般需要刷新360个顾客对象如果在初期直接创建360个对象用户等待时间会相当长并且非常耗费内存资源一般手机负荷不了因此在创建顾客对象时分别创建了2组对象每组10人当第一组最后一个顾客从左侧走入屏幕后第二组紧接着第一组最后一名顾客向右走当第一组最后一名从屏幕右侧走出屏幕重新初始化第一组对象数据等待第二组最后一名对象从左走入屏幕第一组第一名紧跟着第二组最后一名走入

21、屏幕在编码后期主要工作为测试修改简单的bug和调整游戏中数据的不平衡使游戏不会太简单又或者太难在游戏设计过程中用户的交互体验视觉效果都是游戏中的重中之重游戏中数据逻辑的设计难易程度也是一款游戏的关键之处经过多次测试本款Android平台下的经营冷饮店游戏基本能够满足用户的休闲娱乐需求参 考 文 献1 李华明.Android游戏编程之从零开始.北京:清华大学出版社2011.2 李刚.疯狂Android讲义.北京:电子工业出版社20113 杨丰盛.Android技术内幕:系统卷.北京:机械工业出版社2011 4 梅尔(Reto Meier)、 王超. Android 2高级编程(第2版).北京:清

22、华大学出版社5 王克宏 著Java 技术教程(基础篇) 北京:高等教育出版社2002.046 邓凡平. 深入理解Android(卷1).北京:机械工业出版社7 李佐彬等. Android开发入门与实战体验.北京:机械工业出版社8 韩超、梁泉. Android系统原理及开发要点详解.北京:电子工业出版社9 Eric J.Braucle.软件设计-从程序设计到体系结构.李仁发等译.北京:电子工业出版社200710 赵毅主编.跨平台程序设计语言-Java.西安:西安电子科技大学出版社2006?大连理工大学毕业设计(论文)格式规范大连民族学院本科毕业设计(论文)题目- II - I -基于安卓的经营冷饮店游戏设计- IV -大连理工大学毕业设计(论文)格式规范基于安卓的经营冷饮店游戏设计2-17-

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2