用户:教练喵查看:0 回复:5 评论:0 创建时间:2018-07-20T17:27:50
又见面啦
本喵又来给大家发干货喽~
上一期的《猿马世界杯》教程
告诉大家如何制作所有球员的
排列、名称及翻页
(传送门:https://www.codemao.cn/community/163077)
大家的作业都完成的很出色
本喵很欣慰~

接下来
我们要学习的是
如何实现队型展开和队型变换效果?
在正式制作之前
我们先来学习一下如何使用“广播”变量
当我们需要在当前脚本处理一些其他角色时,可以选择【控制】积木模块,使用“告诉?执行”积木来实现我们想要的效果,如下图↓
但当我们需要处理的角色太多时,就会堆积大量的积木,处理积木过程中容易发生遗漏或错误。这时,就可以使用【事件】积木模块的“广播”类积木,当其他角色收到广播时,便会运行对应的积木。
使用“广播”变量有什么好处呢?
1. 把积木分到对应的角色上,可直观地测试、修改当前角色脚本的积木和参数;
2. 积木可复制粘贴到有类似功能的角色上,减少工作量;
3. 可以适当降低作品中某个功能的耦合性,当要修改添加时,不用涉及和考虑到其他功能的修改。
在作品《猿马世界杯》中
变换队型效果就是通过广播来实现的
如果想添加一个新的阵型时
只要添加一个阵型按钮
并修改各球员中收到阵型广播的积木即可
是不是so easy~
![]()
下面我们来看看
制作出《猿马世界杯》中的队型按钮
需要哪几个步骤吧~
第一步 队型展开效果
当作品中的角色具有接收相应广播的积木时,便会执行广播事件后的积木。
从下图积木中,我们也能看到,当“阵型”按钮被点击时,根据阵型的展示状态发送不同的广播。“阵型展开”广播控制显示全部队型按钮的广播,“阵型收回”则是控制隐藏全部队型按钮的广播。
不同的阵型按钮在接收到“阵型收回”,便会执行“在0.2秒内逐渐隐藏”;在接收到“阵型展开”,便会执行“在0.2秒内逐渐显示”,角色显示便可以被点击(隐藏时无法点击)。
这样队型展开的效果便实现了~
第二步 使用阵形变量
当不同的阵型按钮被点击时,给“阵型”变量赋值为代表该阵型状态的值,如图中的“2”代表的是442阵型,然后发送“阵型”广播。
当阵型中的各个位置角色接受“’阵型”广播时,先对“阵型”变量的值进行判断,然后进行对应移动,如442阵型,后卫1会移动到(-480,-160);352阵型时,后卫1会移动到(-173,47)等。
把球场上代表各个位置的角色都添加相同的积木,并修改其中的参数,便可实现队型变换的效果了~
相信训练师们雪亮的的小眼睛
已经发现,除了阵型变换的积木
还有一个写着“重置”的积木
聪明的你们思考一下
“重置”积木在在角色中有什么样的用途呢?
![]()
相信你们已经猜到啦
没错!
当角色收到“重置”广播
便会把角色设置为初始时的状态
状态的类型有角色的位置、大小、方向等
合理地为角色添加初始化的功能
可提高作品整体的合理性和稳定性~

好啦,
本期的《猿马世界杯》教程就到这里
是不是又get了很多新技能呢
老规矩
做个作业展示一下你的学习成果啦↓
1.关注编程猫社区服务号,回复“广播素材”即可领取本期教程的素材文件
2.根据本期所学,用广播积木制作一个具有初始化和实现功能效果的UI
3.发布后请将作品链接发给喵队长微信求点评(dianmaoshequ-kefu)
赶快打开“源码编辑器”试试吧!
教练喵还会更新更多教程帖.......
让你轻松学会制作同款游戏~
遇到任何问题
都可以在文章的下方留言
或添加喵队长微信(dianmaoshequ-kefu)
让队长助你一臂之力!