竹石 http://blianchen.blog.163.com/
自身
级别
要求职业
五行属性等(加成、相克等)
cd时间
目标对象要求(敌方、友方、地面、npc等)
目标数量
有效距离
影响范围,区域大小(行、列、圆形区域、矩形区域、自身周围一定大小的区域等)
技能速度(按n像素/秒移动,直到根目标碰撞;也有可能技能一发出就算击到目标)
+-属性,瞬发(血、魔法、速度、攻、防、闪避、角色动作:移动/站立/倒下等)
+-状态,持续一定持续时间/回合
****使用条件判断函数
****伤害计算函数 (连击、反击、附加中毒等效果也在此计算)
-------------------------------------------------
角色改变状态(无敌、+-攻、+-防、+-速度等),发出技能者和被击者都有可能改变状态
状态可拆分为:
+-属性(对属性的影响,如无敌可以理解为闪避100%)
对属性的影响时间(持续时间/回合)
动画播放控制
分2种形式:
叠加动画:如中毒后的绿烟效果等
人物动作改变:如虚弱后人物变弓腰等
滤镜效果(如人物失血发红光等)
-------------------------------------------------
角色改变行为(聚气/吟唱/施法、冲撞等)
行为可拆分为两部分:
状态改变
人物动画(人物动作改变)
滤镜效果(如人物施法时泛金光等效果)
-------------------------------------------------
==============================================================================
触发一个技能的动画播放全过程
1. 技能发动者动画(发动时播放的动画和技能发出后的后续动画)
分为两种:
技能发出者改变行为
分为3阶段:
技能准备(战士发动攻击时的跑动、牧师的吟唱等)
技能发出(砍击动作等)
技能发出后的后续动作(收招、回跃等)
技能发动特效(如光环等),应该很少用到
2. 技能自身特效动画
动画分为3段(不是所有动画都有):
起始(时间固定)
运动中(时间不固定,根据到目标的距离计算)
击中(时间固定)
3. 被击中者动画(可能多个被击中者)
分为两种:
被击中者的改变行为(受伤、格挡、闪避、被冲撞倒退等)
技能击中特效(如刀光、血光)
4. 环境动画,如地面震动、天空变暗等(这个在1到3的过程中均有可能发生)
==============================================================================
动画特效处理:
色彩饱和特效
R1、G1、B1 : 图象像素点的源色值;
R2、G2、B2 : 底图像素点的源色值;
R = R1 + R2;( IF R > 255 THEN R = 255 )
G = G1 + G2;( IF G > 255 THEN G = 255 )
B = B1 + B2;( IF B > 255 THEN B = 255 )
Alpha混合特效(美工注意特效周围黑影处理)
==============================================================================
初步分析:
技能的属性有:
1. 自身属性:
级别、cd时间/回合、速度等
技能本身的动画编码(3段动画,注意第3段动画只有在击中目标后才开始播放)
技能动画的特效类型
2. 对角色的影响,一个技能可能伴随多种效果:
对施放者+-属性值:瞬间产生,且不可恢复
对被击者+-属性值:瞬间产生,且不可恢复
对施放者+-状态:一定时间内+-属性值,并有可能有改变角色的动画播放和滤镜效果
对被击者+-状态:一定时间内+-属性值,并有可能有改变角色的动画播放和滤镜效果
施放者行为改变的各阶段动作:
技能触发全过程中(上面的1至3项)角色的动作编码,最多5个
注意:技能发出动画只有在到达攻击距离内才开始播放
被击中者行为改变动作:
被击中后角色的动作码
施法者施法过程中特效
击中被击中者后的技能特效(如刀光、血光)
3. 对场景的影响:
环境动画,如地面震动、天空变暗等(这个在技能的1到3过程中均有可能发生)
技能的方法:
构造函数(技能配置)
触发技能(目标/地图位置)
**使用条件判断函数
**伤害计算函数(连击、反击、附加中毒等效果也在此计算)
private:
技能动画播放
技能配置管理:
载入技能配置(技能基本数据和升级数据)
取得技能配置
相关的操作:
角色:
增加属性(属性编号, +-属性值)
改变动作(动作编码)
增加动画(动画编号, 叠加类型, 循环次数)
删除动画(动画编号)
增加滤镜(滤镜接口)
删除滤镜(滤镜接口)
增加状态(状态)
删除状态(状态id)
目标
+-属性(血、魔法等)
-------------------------------------------------
改变状态(无敌、+-攻、+-防、+-速度等)
改变行为(麻痹、击退、混乱等)
评论