「自制卡牌游戏DIY」战斗抽卡系统(3)

修改于09/2159 浏览主题教程
#星火编辑器 #星火编辑器入门 #星火编辑器案例 我正在用『星火编辑器』将一张游戏卡牌变成一款卡牌游戏。
在上一期,我们成功把玩家刷新刷出卡的信息经服务端处理后,转化为客户端中可用于显示给玩家的面板控件。这期让我们继续完善战斗抽卡系统及相关功能的触发器逻辑。
还是在触发器客户端,我们已经完成了修改牌面UI的方法,接下来要做两件事:一个是将场上每张刷出来的卡的UI进行生成和保存,另一个是要为卡牌创建点击事件,尤其是点击法术卡时要在卡牌上方创建供玩家施放对应技能的摇杆让玩家进行施法。顺理成章的,建立一个生成卡牌UI的方法,从遍历取到每张卡牌的各个UI控件开始(P2)
接着添加点击事件。玩家点击卡牌后要让服务端知道玩家选中的卡牌,所以需要添加自定义事件告诉服务端玩家选中了哪一张卡,即卡牌索引。这里还是用任意字符串的老技巧。接着我们还要将这些UI的信息进行保存,建立一个全局变量数组用于存储客户端“标准卡牌”UI信息,然后在这个循环遍历中将场上4张卡的UI信息都存入其中,方便后续处理(P3)
现在用一个新方法“更新卡牌UI”来更新被抽到场上卡牌的UI。在这个方法中,被系统抽取的4张卡牌构成的数组是传入的必要参数,用以在这个方法中遍历并对牌面UI进行更新,同时将抽出法术卡的绑定技能提前绑定给玩家主控(即之前提到的隐形空气小精灵),因为主控无法施放自己没绑定的技能。因为前面在类内写好了修改牌面UI的方法,这里直接调用并从遍历数组中的元素(这个数组的每个元素都是一个简单表),并从每个对应元素中取key作为该方法的参数,即可将场上全部刷出卡的全部信息在使用此方法时同步给玩家。而所需要的技能摇杆前面已经在前面创建好(详见【战斗界面设计(2)】),这里只需要在局部变量中根据摇杆名称依次取到即可。当抽到卡牌类型为法术卡时,将卡牌信息简单表中的法术绑定到对应技能摇杆,即可让玩家在选中法术卡时方便地施放相应技能(P4)
下面处理玩家选中卡牌的事件,当卡牌选中时,播放选中特效;若选中法术卡,还将显示技能摇杆。最后更新并显示卡牌相应描述(P5)
卡牌取消选中也是类似的逻辑(P6)
这样一来,抽卡系统的客户端部分也告一段落了。当玩家选中部队卡时,可以在场上放怪;当玩家选中法术卡时,会在卡牌上方生成一个相应法术的摇杆,供玩家拖动摇杆施放技能,很方便吧!希望我的分享能让你有所收获!下期见!
TapTap
TapTap
TapTap
TapTap
TapTap
TapTap
TapTap
1