大家好,我是苏小糖苏老师。我们继续从零开始用scratch做潜艇大挑战。下面我们进行第10节,爆改潜艇大挑战。障碍物实在太烦人了,我们想办法给它炸掉吧。好的,安排。
1给潜艇安排一个导弹吧
这一点倒不是很难,但是也要把握一个度,不要做成飞机大战样式的无限发射子弹。当子弹成排发出去的时候,这个程序就会变得没有趣味。
只给潜艇一枚导弹,当这一枚导弹任务结束以后,才能再次发射。这样去设定对整个游戏的进程不会有太大影响。
2障碍物如何做到一半被炸掉
直接使用隐藏障碍物或者删除克隆体,会让整个障碍物都消失。而我们更希望它仅仅消失上半部分或者下半部分。这个怎么去做呢。
可以让障碍物多几个角色。通过角色切换,来达到上部或者下部消失的目的。但是这样又回引入新的问题。如何判断导弹碰到的是上部分还是下部分呢?
这个问题可以通过上部和下部的位置边界以及导弹的Y坐标来一起解决。首先我们让障碍物上部只能出现在Y大于0的上部分,让障碍物下部只能出现在Y小于0的下部分。然后去判断碰撞时刻导弹的Y坐标是正数还是负数。这样就能知道那个部分应该消失了
3最后的总结
其实,一个潜艇大挑战完全可以精简录制30分钟的视频就能讲的明白。而我们为什么偏偏打散到10节课里面,做的这么拖沓呢?最主要的目的还是希望能给大家提供一个思路,然后大家自己去做出属于自己的潜艇大挑战。直接把视频讲解看完,虽然会做程序了。但是那种去探索未知的兴趣会消失的无影无踪。
除去特定环境,比如参加竞赛。一般情况下我们最好让scratch编程定位到使用它来实现自己的想法,通过它去创造。
希望scratch可以给大家带来更多的快乐。
前情回顾:
从零开始用scratch做潜艇大挑战-9.scratch版视频侦测
从零开始用scratch做潜艇大挑战-8.codelab版面部识别
从零开始用scratch做潜艇大挑战-7.完成按键版潜艇大挑战
从零开始用scratch做潜艇大挑战-6.障碍物克隆体不消失