scratch案例——大雨吃小鱼

scratch案例——大雨吃小鱼_第1张图片
游戏完成界面如上图,其中蓝色的小鱼受我们方向键的控制左右上下移动,食物链顺序是大鲨鱼 -> 主角(蓝色小鲨鱼)-> 其他小鱼。其他小鱼每隔10秒在屏幕随机位置生成,然后一直横向移动,碰到边界就反弹。大鲨鱼每30秒随机产生在屏幕左侧,游到右侧消失。

蓝色鲨鱼吃到小鱼时,小鱼消失,同时自己切换到一个张开嘴的动作上,然后切换回来,同时身体变大一点,碰到大鲨鱼则游戏结束。

在完成复杂项目的时候,最重要的是将事情分解成小目标,比如先完成小鱼的随机生成,再赋予其游动的逻辑,如法炮制大鲨鱼,然后再加上碰撞逻辑的处理。

首先看小鱼的生成
scratch案例——大雨吃小鱼_第2张图片
这里重复100次,每隔10秒就生成一条小鱼。而新生成的小鱼,拥有这样的逻辑。
scratch案例——大雨吃小鱼_第3张图片
这里面的代码,在1-4间取随机数,然后切换到相应造型,是因为切换不同样子的小鱼。

然后调整大小到50%,设置水平运动方式,并且设置如果碰到主角,则发送消息 hit.

同理大鲨鱼的逻辑也是类似。
scratch案例——大雨吃小鱼_第4张图片
只不过运动方式是从屏幕左侧开始移动,并且如果碰到主角,则发送“gameover”消息。

而主角的逻辑处理中就不一样了,首先要接收处理前面两种碰撞事件。
scratch案例——大雨吃小鱼_第5张图片
scratch案例——大雨吃小鱼_第6张图片

你可能感兴趣的:(scratch)