栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > 学术 > 人文期刊 > 电脑报

Blockly 游戏“池塘”关卡攻略

电脑报 更新时间: 发布时间: 学术归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Blockly 游戏“池塘”关卡攻略

通过Blockly Games 的一系列小游戏,我们对Blockly语言有了基础的了解并掌握了一些技巧。掌握好Blockly语言可以帮助我们更好地使用APP Invertor编写手机程序。本期我们开始Blockly Games的最后一关池塘和它的前置关卡池塘导师,学习如何控制自己的小鸭子打败池塘里的其他对手(如图1)。

搜索“少兒编程教程网”找到“Blockly游戏”(https://blockly-games.kidscoding8.com/blockly-games

/zh-hans/index.html?lang=zh-hans),可以开始Blockly Games之旅。

池塘导师这一关与以前的迷宫、乌龟相比,在使用积木编程后还添加了必须使用Javascript编程完成相似任务,这样我们在学习图形化编程的同时还接触到了Javascript。

在前几关中我们学会使用“cannon(大炮)”命令控制小鸭发射炮弹,第一个参数是角度,第二个参数是射程;使用while(true)开始循环,直到消灭敌人;使用scan(角度),让黄色小鸭扫描该角度上目标的距离并自动调整射程;使用swim(角度),设定小鸭的运动方向。

第8关

编写一行代码就可以过关:

swim(275)

第9关

游戏提示不能用撞击的方式过关。需要小鸭游一段距离后再停下射击敌人。Loc_x()代表小鸭的水平位置,我们让小鸭位置x小于23之前向0度方向移动。停下后正常发射炮弹直到击败敌人为止(如图2)。

第10关

当目标被攻击时它会逃跑直到右上角为止,且炮弹最大射程是70。所以我们必须让小鸭一遍游泳一边攻击。

我们用while(true)开始循环,当Y坐标(X坐标也可)小于50的时候(30~99都可以,都在射程范围内),向45°方向跟随敌人一起游动,游动到设定位置后停下。朝向45°方向射击并且用扫描scan(45)控制射程,直到消灭敌人为止(如图3)。

池塘关卡

在池塘中你将同时面对3个不同策略的对手(如图1),虽然敌人强大但你也拥有最大的自由,设计自己的搜寻和攻击策略,消灭所有敌人吧。下面的代码只是我自己的搜寻和攻击策略,无法完美地通关,仅供参考。为了完成搜寻周围360度的敌人,使用了Math.random()产生随机数,当然也可以用循环完成360度的扫描。

建立变量r0为搜索角度,r1为移动方向,s1为射程。

让r0在360度范围内随机搜索,发现敌人就可以展开进攻。也可改为0到360度循环扫描搜索。

当s1小于70,即射程内有敌人时开火,无敌人时继续向r1方向运动。

自定义的搜索积木达到的效果是小鸭移动到池塘边缘时转90度方向继续前进。

具体程序如图4。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/xueshu/251082.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号