一 制作计分板
创建一个RankPanel的UI蓝图
在蓝图里拖入如下物体
覆层(layout):让子物体跟随自己缩放,子物体需要设置为拉伸模式,有点类似于的panel,本身只是一个容器
调整各个物体
覆层:
锚点到中间
背景图片
垂直框
榜单文本框
水平框,也就是每一栏的标题
水平框里的文字,三个是一样的,名字文本框的填充比例是2
装配完效果
二 把根据队伍选择颜色提升为公共方法
原来我们在显示击杀信息里,根据角色是否和玩家是同一个队伍,为文本框设置了不同的颜色,现在计分板里也需要这个功能,但是Fpp_ui和RankPanel是两个不同的蓝图类,要复用方法,我们需要将其提升为公共方法
在Utility蓝图类添加新方法,GetsSideColor,设置为纯方法
需要注意的是 get player pawn前,需要获取一个世界上下文,这个是系统自带 的公共变量
修改一下whoKillwho蓝图里的判断颜色部分
三 计分板的一行数据
新建UI对象
新建一个RankRow的UI蓝图,添加一个水平框和三个文本框,水平框的大小不需要调整,因为他会作为子项插入RankPanel里,到时候大小由内容控制
三个文本框设置为变量
填充模式,名字的填充比例为2,其他两个是1
水平拉伸,垂直对齐,文本内容居中
编写变量和函数
三个text是UI
添加队伍,杀敌数,死亡数和名字,将他们设置为构造参数,构造参数只能一个一个设置
在事件构造事件里编辑节点
四 按Tab键开关计分板
在FppShooter的事件图表里
五 打开计分板时,显示数据
由于我们没有记录杀敌数,角色也是随机生成的,这里只模拟一下打开后显示数据
此时按下tab键,可以打开计分板