加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

游戏开发之躲避陨石1

(2017-05-06 18:45:43)
标签:

教育

分类: AppInventor校本课程
学习目标:
    1、了解画布组件中的坐标系及其属性;
    2、巩固使用随机数代码块 
学习重点:
    画布组件中的坐标系及其属性
学习难点:
   随机数代码块的巩固

学习过程:[http://app.gzjkw.net/login/?locale=zh_CN]
一、分析需求
      大家玩过“贪吃蛇”和“接金币”这两款经典小游戏吗?游戏的操作都不复杂,玩家只需要控制角色左右移动,在有限的时间内尽可能多地吃到食物或接到上方掉落的金币即可。看似简单,但游戏却富有挑战性。例如,当贪吃蛇越变越长的时候,每一次改变方向都需要小心谨慎,把握贪吃蛇的转向时间成为关键。
      这两款游戏都有一个共性:玩家需要有敏捷的反应和操作,因此这类游戏被称为敏捷类游戏
      今天开始,我们将尝试制作一款敏捷类游戏---“躲避陨石”。

      在设置的游戏场景中,预先在屏幕中放置若干颗陨石,游戏开始后陨石飞向飞船,遇到屏幕边界则反弹,对飞船形成持续的威胁。同时,游戏画面在美观,飞船、陨石、游戏背景的风格都需要统一。
任务一:参考以上需求分析,提出自己的想法。写在记事本中并上传。

二、设计界面
1、三个屏幕
   参考如下,可以不同于范例。
2、组件设计
     这次的App较之前我们开发的App有一个明显不同,那就是屏幕上的陨石和飞船对象都是运动的,这类运动的对象必须使用绘图动画类组件创建。
画布:所有的运动对象只能添加在画布上。
精灵:运动的对象称为精灵,有两种精灵,分别是:图像精灵和球形精灵。球形精灵顾名思义呈球状,而图像精灵可以由用户通过设置“图片”属性来改变其外观。
(1)添加画布组件
      画布组件最重要的属性是“宽度”和“高度”,这两个属性确定了画布的大小,也确定了精灵的运动范围。在画布上,除了精灵可以运动之外,用户也可以在上面绘画,因此,“画笔颜色”和“线宽”这两个属性也是画面组件所特有的。其他属性与之前接触未被拦阻组件属性类似。
参考数据:高度(370像素)宽度(315像素)
(2)添加图像精灵组件
       图像精灵组件只能被放置在画布上,它的外观由其“图片”属性所设定的图像决定。对于运动着的精灵来说,一般还要设置“速度”和“方向”等转属性。图像精灵组件的属性及其作用如下表所示:

属性

作用

方向

设置精灵运动方向的角度数。

间隔

这两个属性通常一起设置,如果想让图像精灵在每1000毫秒(1秒钟)内移动10个像素,则需将精灵的“速度”属性设置为“10像素”“间隔”属性设为“1000毫秒。”

速度

旋转

若勾选,则在精灵的方向发生变化时,精灵也将随之旋转。

显示状

设置对象是否可见,勾选为可见,否则为隐藏状态。

x坐标

精灵对象在画布中水平方向的位置,表示精灵对象最左侧离开y轴的距离,越往右数值越大。

y坐标

精灵对象在画布中垂直方向的位置,表示精灵对象最上端离开x轴的距离,越往下数值越大。

z坐标

精灵对象相对于其他对象的层次,数值越大越居于上层。

(3)添加计时器组件
       这个游戏的目标是让飞船尽可能久地存在。因此,游戏中应有计时功能,这就需要用到计时器组件,它可以在传感器”类组件中找到。计时器组件的属性及其作用如下表所示:

属性

作用

启用计时

只有勾选,计时器才会发生作用。

一直计时

如果勾选则代表计时一直在发生作用,用户可以根据需要在进行逻辑设计时让计时停止。

计时间隔

也称作计时周期,单位为毫秒,如果设置为“1000”,意味着每经过1秒,计时器会给出一个反馈。必须结合计时触发事件一起使用。

这三个属性也可以在逻辑设计界面中进行设置。
(4)标签组件显示多行文本
http://s6/mw690/0027PqY6zy7aSGsUFFzf5&690
任务二:完成游戏的界面设计。

三、确定规则

对象

……的时候(触发事件)

……(动作)

图像精灵_黄陨石

游戏开始

出现在屏幕的随机位置,并朝飞船方向移动

触碰屏幕边界

反弹

图像精灵_飞船

被拖动

移动到手指位置

计时器1

计时满1

飞船存在时间增加1秒显示


四、定位飞船和陨石
1、定位
     所谓定位,就是确定对象的位置,也就是确定对象的“x坐标”属性和“y坐标”属性。 这既可以在组件设计界面中设置,也可以在逻辑设计界面中设置。
       要注意的是,画布组件的坐标系大小是有限的。
2、随机定位
     所谓“随机”,是指对象的x坐标”和“y坐标”属性值不是预先设定的,而是由计算机产生的。产生的值每次都有可能不同,即为随机数。在逻辑设计界面中,可以在内置块的”数学“中找到”随机整数“代码块,通过设置上限和下限来随机产生范围内的整数值。
http://s1/mw690/0027PqY6zy7aSIWW4la00&690
任务三:完成飞船和两颗陨石的定位。

小结:
       画布组件、精灵组件

作业:
      完善这节课要求实现的功能,并复习。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有