1、前言

这是本人在CSDN社区发布的第一篇文章,主要有两个目的:

一是方便我后期回忆一些知识点。

二是将本身所掌握的东西(代码也好,思路也罢)分享给须要的人。

本章不写任何逻辑代码,

只对本项目作一个介绍、需求分析、原理分析

本文其余的能够不看,可是我我的建议看一下后面的原理分析,有助于理解逻辑java

本人并不是什么大神,文章有什么不正确的地方,还望各位大神不吝赐教,不胜感激!web

2、项目介绍

开发语言:java

开发环境:Android Studio

推箱子 一款很是经典的小游戏,玩法简单,却考验人的逻辑思惟。

咱们接下来要作的就是从无到有的开发出一款属于本身的推箱子游戏数组

项目需求分析

三个基础界面

一、开始游戏界面

二、游戏关卡选择界面

三、开始游戏界面svg

三种主要逻辑代码

一、地图加载

二、人物上下左右

三、通关监听xml

3、原理分析

看完了基本的项目介绍,接下来对推箱子的实现原理分析一下。

我我的认为最关键的点在于:要清楚地图并不是是一张的、总体的图。地图上的全部东西都是由一个个独立的块组成的,例如:墙、箱子、人物等,都是一个个独立的存在,它们按必定的位置放置,组成了一张看似完整的地图。

再准确的说,地图界面其实是一个以单位正方形组成的表格,而后表格上的每一个正方形都放了一张图片,因此就造成了咱们眼睛所看到的一整张地图。

这就是咱们所说的二维数组,地图实际上就是一组二维数组数据,地图上的每个物体都具备一个二维坐标。

说完画地图的原理后,再想一想移动人物、推进箱子的本质原理。咱们点击移动按钮的时候真的是人物在移动吗?

事实上并非的,上面讲到了地图的原理,很容易就能知道,其实人物并无移动,只是地图(二维数组)上加载的图片数据变了,例如,假设当前加载人物图片的数组下标为(5,6),其中5为列数,6为行数,当咱们想要人物左移的时候,只须要把(5,6)的图片数据改成“路”的图片,把(5,5)的图片数据改成人物的图片,而后刷新,从新渲染就OK了。

因为程序执行的速度很是快,因此人眼看起来是人物在移动,但其实是那个位置的数据改变了而已。

因为本人水平有限,讲得也许并非那么得简明清楚,但状况大概就这么回事儿。但愿看了以后能对你有所帮助,触类旁通。blog

4、最后

下一篇才是真正的推箱子实现文章,但愿本章的肺腑之言(简称:肺话)能让你对与这个游戏的代码实现有必定的了解,特别是原理那一块。

图片资源文件若是须要的话,能够在评论留下你的邮箱,后期若是人多的话,我再上传百度云吧。下面贴张成品图,有助于理解原理。

游戏

android推箱子实验报告,android开发——推箱子小游戏(前序)相关推荐

  1. android消息响应实验报告,android实验一实验报告-20210401011015.docx-原创力文档

    Last revision on 21 December 2020 Last revision on 21 December 2020 Android实验一实验报告 Android实验报告一 姓名:丁 ...

  2. android对象识别实验报告,Android 3相册实验报告.doc

    Android 3相册实验报告 中原工学院计算机学院 软件平台开发技术大作业 班 级: 软件121 作品名称: 3D相册 姓 名: 辛俊闪 学 号: 201200834101 指导教师: 刘凤华 20 ...

  3. 游戏自审自查报告_开发的射箭小游戏上线了,分享一下我在开发过程中遇到的问题...

    利用业余时间开发的微信小游戏-射箭救人质上线了,主要玩法就是操作弓箭射断绳子把人救下来就可以了.图片资源是我找一个朋友做的.开发过程不算太顺利.磕磕绊绊做了12关.希望大家支持下.谢谢. 分享一下我在 ...

  4. android博学谷实验报告,Android项目实战系列—基于博学谷(四)我的模块(上)...

    image 由于这个模块内容较多,篇幅较长,请耐心阅读. "我"的模块分为四个部分 一."我"的界面 1.底部导航栏 (1).导入界面图片 将底部导航栏所需图片 ...

  5. Android录音器实验报告,Android实现录音(MediaRecorder)

    Android提供了两个API用于录音的实现:MediaRecorder 和 AudioRecord,各有优劣. 1.MediaRecorder 已经集成了录音.编码.压缩等,支持少量的录音音频格式, ...

  6. android新闻客户端实验报告,Android 新闻客户端学习笔记

    学习了新闻客户端开发后,有很多是通用的,就把客户端用到的一些做个笔记,已备以后使用,主要用到的知识点有: 1.  Android网络编程 2.  Android中BaseAdapter的使用 3.   ...

  7. 射击小游戏c语言实验报告,C++实现简单射击小游戏

    使用c++制作简单的横板射击小游戏,供大家参考,具体内容如下 #include #include #include class Bullet; class Tank; class E_Bullet; ...

  8. python 推箱子实验开发报告_推箱子实验报告.doc

    推箱子实验报告 青岛大学软件技术学院 游戏制作实践实训 题目名称 推箱子游戏 姓 名 丁帅帅 专 业 数字媒体艺术 班 级 3班 指导教师 解新峰 2014 年 1 月 16 日 目 录 1 引言3 ...

  9. android实现电话功能实验报告,安卓开发实验报告-20210407005833.docx-原创力文档

    文档编制序号:[KKIDT-LLE0828-LLETD298-POI08] 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08] 安卓开发实验报告 安卓开发实验报告 目录 页面跳 ...

  10. 20175333曹雅坤实验四《Android程序设计》实验报告

    20175333实验四<Android程序设计>实验报告 一.实验内容及步骤 - Android程序设计-1 Android Stuidio的安装测试: 参考<Java和Androi ...

最新文章

  1. 计算机绘图 招聘,计算机绘图-网课答案.pdf
  2. 50 年人类登月史:那些不为人知的故事
  3. 在Debian 7/Ubuntu 13.10 上使用隧道封装SSH连接
  4. word 2010 从第三页开始设置页码
  5. VS2017一次性运行多个项目的方法
  6. Java解析HTML
  7. 2020-10-25(极客pyc题目)
  8. [转载] 计算机网络——OSI模型究竟忽悠了多少人
  9. 怎么用PHP修改文字大小,如何利用PHP和CSS改变网页文字大小
  10. 软件项目管理的质量保证
  11. Linux C高级编程——网络编程之包裹函数
  12. 安卓应用安全指南 4.6.3 处理文件 高级话题
  13. Python全栈开发之11、进程和线程
  14. mysql 创建十万测试表_用MYSQL的存储过程创建百万级测试数据表
  15. 数据发现:凭什么登顶富豪榜?
  16. 织梦dede转换数据到人人站rrzcms免费插件
  17. 【清除office待激活密钥】
  18. win10taskkill强行结束进程_win10强制关闭进程快捷键
  19. 视频剪辑软件调研分析-iMovie、Final Cut Pro、视频剪辑大师
  20. 骁龙888发布,小米11首发,有14家厂商首批搭载!

热门文章

  1. 21天Python进阶学习挑战赛
  2. 前端成长之路之打好根基
  3. 柳州铁一中机器人_柳州铁路第一中学的办学成果
  4. VMware 中Fedora系统连接网络问题!
  5. Web.config配置文件详解(转载)
  6. centos7上装qt5.15.2
  7. 中段尾段全段什么意思_排气管中段 尾段 全段 和芭蕉 是什么意思
  8. 美国儿科学会育儿百科
  9. Python 之下划线
  10. pytorch 语⾔模型数据集(周杰伦专辑歌词)数据集 免费