事件类型
| 说明
|
播放动作
| 让Timeline的宿主开始做一个动作1次,需要的参数:
l 动作名:播放什么动作。
l 保持:保持某一段的动作(用于死亡动作等)。
|
场景特效
| 在场景中指定位置播放一个视觉特效,需要的参数:
l 特效名:播放什么特效。
l 位置:在什么位置播放。
l 循环:1次还是始终。
l 时间:如果不是1次的,那么播放多久结束。
|
角色特效
| 在宿主身上播放一个视觉特效,需要的参数。
l 特效名:播放什么特效。
l 绑点:角色身上某个播放这个特效的点。
l 循环:1次还是始终。
l 时间:如果不是1次的,那么播放多久结束。
|
产生AoE
| 产生出AoEObj,即非锁定类子弹,需要的参数:
l AoEId:要产生的AoEObj,他的Model的Id。这个会由Timeline产生的时候决策,是从某个WeaponObj的子弹Hash表中获得,还是直接走读取的值,这是一个有点Magic的用法。
l 位置:AoEObj初始坐标。
l 生命周期:AoEObj存在时长。
l Tween:AoEObj的运动轨迹和变化方式,不仅仅是坐标的变化,还可以设置如范围等的变化。
|
产生Bullet
| 产生出bulletObj,即锁定类子弹,需要的参数:
l bulletId:创建这个bulletObj所用的Model的id,和AoEId一样有个Magic用法(我都不好意思再写了)。
l 位置:bulletObj产生时候的位置。
l 生命周期:bulletObj最多存在多久。
l 速度:这发bulletObj的速度。
l 目标:选择目标的规则,返回一个Character*。
|
开始僵直
| 从这个时间点开始,角色将进入僵直,所谓僵直就是不再接受操作指令,直到做其他动作(进入另一个Timeline了,比如受伤、死亡)。无参数。
|
结束僵直
| 从这个时间点开始,角色将离开僵直。无参数。
|
其他
| 以上只是一些举例,根据实际需要,可以在Timeline中加入更多的动作类型,比如给宿主添加buff等,这个看项目的需要决定,而针对本文中的上述范例,是没有这个需求的。
|
属性
| 说明
|
Id
| String,AoE模板的id,每一个模板都是唯一的。
|
视觉效果
| String,位于AoEObj位置上要播放的特效,可以没有即不播放。
|
循环播放
| Boolean,是否要反复循环的播放这个特效,如果没有特效这个就没意义。
|
范围
| Int,AoE的初始有效范围,实际有效范围以AoEObj为准,由于这个游戏的设定,因此范围都是圆形的,这里的数据是圆形的半径。
|
碰角色结束
| Enum,这个AoEObj在碰撞到任何角色时是否会结束?有几个风格:
1, 任何碰撞角色都不会结束。
2, 碰撞到Caster同阵营角色结束。
3, 碰撞到非Caster同阵营角色结束。
4, 碰撞任何角色结束。
|
碰障碍结束
| Boolean,这个AoEObj在碰撞任何地形的时候是否会结束。
|
OnEnter
| String,当有角色进入AoEObj的瞬间触发的回调,一个角色在一个AoEObj的生命周期内,只能触发一次这个回调。需要的参数:
l AoEObj:AoEObj*,这个AoEObj。
l EnterCharacter:Character*,进入AoE范围内的这个角色。
l CharacterInRange:Array<Character*>,所有当前已经在AoEObj范围内的角色(不包含EnterCharacter)。
l DesignParam:Array<Int>,策划配置的一些int值。
|
OnDestory
| String,当AoE结束时执行的函数回调。需要的参数:
l AoEObj:AoEObj*,这个AoEObj。
l CharacterInRange:Array<Character*>,所有此时在AoEObj范围内的角色。
l DesignParam:Array<Int>,策划配置的一些int值。
|