销毁和删除逻辑 技能轨道基类,有包含删除逻辑的虚函数

也就是在对应的动画数据集合,删除即可

对应属性面板的,删除逻辑

技能基类,还有一个销毁函数,分别是动画、音效、特效轨道类,都有重写的

其中,样式基类中,也新增了,对应的销毁函数,从对应的,显示要素根节点,和父节点

技能编辑器面板,有一个轨道汇总的,销毁逻辑调用

如果没有对应的技能配置文件,调用各个轨道的销毁函数

动画、音效、特效,三者的重写销毁函数,分别是: 样式的销毁、特效列表的销毁

遍历,然后销毁对应的,游戏实体

新增了特效和音效轨道之后,表现:

其中,这俩轨道的,左边样式,都是用的这俩; SkillMultilineTrackStyle类,也继承自轨道样式基类

表现

子规道类

对应表现

回到技能编辑器相关类,也会新增,两个初始化:音频、特效

回到配置文件,相关逻辑,也是新增了,两个资源集合:音效,特效

对应结构体

测试的技能配置文件:

这是音效轨道的逻辑类

分别是创建,对应的右侧AudioTrackItem类,同步配置,添加子轨道,相关逻辑

添加子轨道:

对应的触发逻辑调用

然后,就是检测和删除,子轨道、子轨道之间,交换逻辑,还有销毁自身逻辑的重写

表现

删除按钮,对应删除逻辑的调用

左侧列表,对应的ui表现,是一个显示要素

对应的交互函数注册:鼠标点击、拖曳、抬起、移出

点击逻辑,就是消选旧的子轨道,然后根据鼠标位置,换算得到,点击的轨道索引

换算逻辑,也就是根据子轨道列表,去换算即可

选中的颜色

鼠标移动,注册的逻辑,就是调用了,音轨轨道逻辑类的,交换逻辑

鼠标抬起和移出,就相对简单,光标不在ui上,就把拖曳的布尔判断,设为false即可

子轨道的样式类,和混合轨道类,是同一个文件的

添加子轨道的逻辑入口

调用,也是音频轨道类的创建逻辑

删除子轨道数据和显示的相关逻辑

调用子轨道的位置更新逻辑

这是可输入文本

ui控件

对应逻辑,和键入键出的逻辑,对应注册

也就是变更子轨道名字,触发修改,修改和保存,相关配置文件