scratch推箱子

今天来写一个scratch的小游戏,推箱子。

需要准备的素材,就是一个自己喜欢的背景,然后从角色库里找到一个角色作为主角来推箱子,再就是自己画两个正方形当做箱子来用,当然,也可以自己去网上找好看的素材。

下面就是我设计的页面,其中红色的是要被推动的箱子,黑色的是它的目的地,我们就是要把这个红箱子推到黑箱子的位置,然后两个箱子会出现在随机位置,需要重新开始推动,每推过去一个,就可以得一分。

推箱子页面展示重新开始

首先要写我们人物的程序,人物的程序比较简单,就是按下上下左右的按键,让角色往对应的方向移动,比如说按下上移键,就面向上方,然后移动20步。

角色移动程序

要注意,用这种方式移动角色,会出现一个问题,那就是角色会任意旋转,显得很滑稽,所以设置旋转方式为左右翻转,然后角色一开始要移到一个起点位置,我设置的是画面中心店,也就是坐标(0,0)的位置。

人物设置初始位置及翻转方向

接下来就是目的地的任务,目的地要在点击小绿旗的时候出现在一个随机的位置,显示出来,然后去判断碰没碰到红箱子,如果碰到了,那么就藏起来,换一个位置重新出现。

当点击小绿旗的时候,要把他移动到最后面,避免挡住红箱子,然后建立一个变量,叫做得分或者分数都行,因为刚开始游戏,还没有得分,所以需要把得分设为0,然后移到初始位置,为了避免他出现在舞台边缘,一半漏出来,一半藏起来的情况,我们需要看一下这个角色的x坐标在什么范围内,y坐标在什么范围内,然后根据这个范围随机生成坐标,然后设置完这些就可以让他显示出来了。

目的地设置

设置完以后,就是做一个判断,如果碰到红箱子,那么就隐藏,将得分增加,同时要发送一个消息给红箱子,让他也隐藏重新换位置,过一秒以后,让目的地移到随机位置,然后重新显示出来。

箱子到达目的地

再然后就是我们要推动的红箱子的任务,红箱子要实现人物朝哪个方向推,就朝哪个方向走,那就是做一个判断,如果碰到了人物,那么就面向人物的方向,移动20步,还有一个就是点击小绿旗的时候,箱子要显示出来,并且设置一个初始的坐标,作为游戏开始的箱子位置。

红箱子移动程序

红箱子还有一个任务,就是接收到目的地发来的消息,需要隐藏起来,然后换到一个随机的坐标位置,重新进行显示。

红箱子换位置显示

写到这,基本的程序就完成了,当然还可以添加一些程序让他更加有趣一些,比如箱子可以设置多个造型,每推完一个就变一次造型,或者加上背景音乐,或者随着得分的变化,加上时间限制,得分越高,给的时间就越少,然后超时没推到目的地算游戏失败等等,都可以去创意设计。

以下是完整程序:


人物程序


红箱子程序


目的地程序
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 很早就想过做点小游戏了,但是一直没有机会动手。今天闲来无事,动起手来。过程还是蛮顺利的,代码也不是非常难。今天给大...
    ZackSock阅读 302评论 0 1
  • 今天的作品是浇花游戏,是在上一个作品人工降雨的基础上,增加了新的玩法。 可以在随机位置出现花草树木,然后我们移动乌...
    发哈维飞阅读 1,080评论 0 8
  • 今天的scratch作品是人工降雨。 我们要完成移动乌云,让雨水在我们指定的地方落下。 我们按左右键让云进行移动,...
    发哈维飞阅读 1,070评论 0 2
  • 写在前面:现为scratch少儿编程老师,有什么疑问可以私信我哦~~~~如果你觉得这篇文章不错的话,请点个赞或者关...
    愿一切似sky阅读 987评论 1 2
  • 上一篇文章我们实现了飞机大战基础版里,自己飞机的移动,子弹的发射,以及游戏结束的判定这几部分的程序。 今天来完成s...
    发哈维飞阅读 1,816评论 0 4