「自制卡牌游戏DIY」主线选关界面(3)
昨天 23:0510 浏览主题教程
我正在尝试使用『星火编辑器』制作一款卡牌游戏。
上一期我们完成了触发器批量实现关卡按钮点击响应的功能(P2),今天让我们继续完善主线选关界面功能。
当玩家点击特定关卡的按钮时,要让程序知道玩家点的是第几个关卡的按钮,根据当前玩家所在章节计算出玩家点击按钮所对应的关卡,从而为玩家更新该关卡的图片和描述信息。这里需要有一个小标记来提示玩家当前已经选中的关卡:当玩家点击尚未选中的关卡时,将清除前面选中的标记并显示当前选中关卡的标记,而当玩家点击已经选中的关卡时,则取消选中并取消显示当前选中关卡的标记。此外,程序还要根据玩家已到达的关卡和当前选中关卡的关系,来更新进入关卡按钮的可选与否及其显示——对于玩家已经通过或到达的关卡,进入关卡按钮置绿,可进入;相反则置灰不可进入(P3)
而对于各个关卡对应的按钮,也要根据对应关卡是已通过、刚到达还是尚未解锁的状态,用不同颜色进行显示区分。所以我直接添加一个更新关卡按钮颜色显示的新方法,循环遍历8个按钮,从客户端变量中获取到当前已到达关卡和章节。若已到达关卡(数值)大于当前按钮对应关卡,说明该关卡已通过,按钮置绿;若等于,说明该关卡到达但未通过,置红;若小于,说明该关卡尚未解锁,置为蓝灰。这里颜色可以用字符串四位rgba表示,也可以直接用色号赋值(P4)
而对于章节切换,同样也要用触发器方法来实现对玩家点击作出的响应。获取到章节后翻和前翻的按钮(右按钮和左按钮),对玩家点击的按钮进行判断:1)若为右按钮,则判断当前章节是否最后一章——若不是最后一章,则执行翻页逻辑,当前章节+1,更新关卡按钮颜色、图片、描述,并更新章节关卡信息;2)若为左按钮,则判断当前章节是否第一章——若不是第一章,则执行翻页逻辑,当前章节-1,同样更新关卡按钮颜色、图片、描述,以及章节关卡信息(P5)
这里有个细节,要处理翻页后章节左右按钮的显示:若翻页后到达最后一章,则不显示往后翻的按钮;若翻页后到达第一章,则不显示往前翻的按钮。翻页后还要重置关卡选中的情况——如果不重置的话,玩家翻页前选中了某个按钮,翻页后还选中该按钮,但该按钮对应的关卡已经是另一章节的那一关了(P6)
这样一来,能选关、翻页、预览的主线选关界面就做好啦(P7),希望看到这里的你有所收获!那么我们下一期再见!