怎样用scratch制作跳一跳
    跳一跳是的一个小游戏,依靠操作小人蓄力跳跃进行游玩。按照小人跳跃盒子的数量,以及特别盒子加分项计算得分。今天给大家分享了怎样用scratch制作跳一跳,赶紧来看看吧!
   
 
  怎样用scratch制作跳一跳
  分解目标:
  第一阶段:实现当鼠标按下的时候"小人'能够发生形变蓄力,同时有声音特效。
  第二阶段:松开鼠标声音停止,"小人'跳出去,依据蓄力的时间长短控制"小人'跳的远近。 音乐盒子
  第三阶段:"小人'跳跃成功的推断
  第四阶段:盒子的处理,"小人'在成功跳跃到下一个盒子上时,盒子与"小人'能够同时向左侧移动,然后再出现下一个盒子,然后这样一直重复下去。
  第五阶段:计分,跳跃成功+1分,如果落在盒子中心+2分。
  制作中的那些坑:
  第一阶段的目标相对比较简单,"小人'有多个造型,在鼠标按下的时候,让"小人'的造型按顺序切换,即实现了形变的效果。那么这个过程中有一个小坑,不是所有时间只要按下鼠标就要让"小人'变形,比如我们开始运行时就要点击绿旗,此时肯定不能去执行形变;"小人'在空中跳跃时点击鼠标也是不被同意的。同时执行的另一个工作就是在"小人'发生形变的同时要播放音乐,鼠标松开要停止这一切。因此这里我使用了一个"music'变量,通过对这个变量的改变来控制音乐。
  下来进入第二阶段,相对没有什么难度,跳跃分为两个步骤,起跳:同时改变x,y坐标,实现向上向右的移动,下落同理。跳的远近可以在第一步依据鼠标按下的时间长短(music变量有个变化)来作为一个参照值。
  第三阶段:跳跃成功推断,首先我们要有第二个落脚点,思路很简单,在开始的时候克隆一个盒子,随机放在同一水平位置。如果克隆体碰到"小人',成功;否则失败。这里又碰到一个问题,一开始就提示失败,因为此时"小人'还没跳,自然不会碰到克隆体。因此又必须要一个变量"status',来推断"小人'是起跳前还是起跳后。只有在起跳下落后再进行推断成功失败。貌似问题这么容易就解决了,但是忽略了一个问题,如果"小人'起跳下落后还在起始的那个盒子上,这样既不能说成功,不能得分,也不能算失败。于是乎我又增加了一个推断条件,推断"小人'与盒子(非克隆体)是否接触。新建变量"接触到本身推断'在下落后先推断与母体的接触,如果接触到母体,不再进行与克隆体的推断。
  第四阶段:"小人'终于完成了第一步的大跳跃,下来我们要把克隆体的盒子和"小人'一起向左侧移动,再克隆一个新盒子,如此一直重复下去。克隆体移动很简单,直接移动到母体盒子的初识位置即可,"小人'必须要同步移动,这里首先要使用一个变量"克隆体x坐标'用它来记录克隆体位置的x坐标,便于计算出"小人'要往左移动的距离,得到终点坐标,让"小人'移动过去;母体在在克隆体移动的同时也左移,如果碰到边缘就隐藏。
  目前看似一切都比较顺利,但是不知不觉又入了另一个坑,当成功完成第一次跳跃后,进
行第二次跳跃推断时问题来了,此时"小人'就在一个克隆体盒子上,如何推断跳跃到下一个克隆体上,还是落在了自身克隆体上?怎么区分两个克隆体?此处尝试了很多种办法,最终都不理想,那么是时候改变思路了,既然无法区分两个克隆体,那就只留一个克隆体,至少区别克隆体和母体还是可以做到的。于是乎,我修改了左移盒子的思路,左移开始的时候把母体盒子隐藏,克隆体移动到左侧,此时删除掉克隆体,将母体切换到克隆体同一个造型(新建变量"克隆体造型'记录克隆体的造型)显示,这样母体盒子就替代了之前的那个克隆体,肉眼是看不出来的,此时问题就解决了。
  最后一步:增加计分变量,这里就比较简单了,跳跃成功呢+1分,如果跳跃落点与克隆体盒子的中心点距离小于5我们就+2分。至此这个游戏基本上就完成了,后来我还增加了落到盒子边缘的推断,原理就是推断落点与盒子中心的距离,也没有什么难度。
   
 
  用scratch制作跳一跳的步骤
  准备工作:
  选择角及背景,主要包括跳一跳的主角,以及整个游戏的背景,以及成功或失败时的音乐。
  制作步骤:
  1. 我们首先要学会如何使角移动。
  通过三个积木控制移动方向:连续按下上,左,右键后角可移动10步。
  2. 游戏开始,必须要一个变量"status',来推断"小人'是起跳前还是起跳后。只有在起跳下落后再进行推断成功失败。新建变量"接触到本身推断'在下落后先推断与母体的接触,如果接触到母体,不再进行与克隆体的推断。
  3. 移动到起步位置,要使用一个变量"克隆体x坐标'用它来记录克隆体位置的x坐标,便于计算出"小人'要往左移动的距离,得到终点坐标。
  4. 重复执行;角object碰到了piayer发出声音,并通过移动x轴坐标来改变角位置。
  5.改变造型,增加计分变量,跳跃成功+1分,如果落在盒子中心+2分。
  制定完成后必须要先进行测试,只必须要达到跳一跳的游戏效果即可,例如角通过上、下、左、右键移动,碰到object后object自动切换为角或背景。
  用scratch制作跳一跳的思路
  1.玩家通过按空格键的继续时间来控制跳跃者的蓄力时间;
  2.通过克隆及随机数使盒子不断出现在舞台上;
  3.蓄力时间越长,跳跃者跳的越高,盒子移动的距离越大;
  4.建立变量来计算分数;
  5.如果跳跃者成功落在盒子上,分数加一。