|
楼主 |
发表于 2009-12-8 04:48:05
|
显示全部楼层
重新拟定了伤害公式,希望有人给点意见
布尔udg_b[0/1/2]分别判断伤害是物理/法术、暴击/未暴击、招架/未招架
用于伤害显示
Hurt common
事件
条件
(单位所受伤害) 等于 0.00
动作
★ 普通外功伤害 ★
设置 b[0] = TRUE
★ ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ★
如果所有条件成立则做动作1,否则做动作2
If - 条件
(伤害来源) 等于 hero[(((伤害来源) 的所有者) 的玩家索引号)]
Then - 动作
★ 玩家索引 ★
设置 i[0] = (((伤害来源) 的所有者) 的玩家索引号)
★ 单位等级 ★
设置 i[1] = ((伤害来源) 的等级)
★ 武力 ★
设置 r[1] = (随机实数,最小值: hurt_wuli[i[0]] 最大值: hurt_wuli[(i[0] + 10)])
★ 命中 ★
设置 r[2] = (hurt_mingzhong[i[0]] / (15.00 + (0.20 x (转换 i[1] 为实数))))
★ 会心 ★
设置 r[3] = (hurt_huixin[i[0]] / (12.00 + (0.20 x (转换 i[1] 为实数))))
★ 爆发 ★
设置 r[4] = (hurt_baofa[i[0]] / 10.00)
Else - 动作
★ ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ★
如果所有条件成立则做动作1,否则做动作2
If - 条件
(触发单位) 等于 hero[(((触发单位) 的所有者) 的玩家索引号)]
Then - 动作
★ 玩家索引 ★
设置 i[2] = (((触发单位) 的所有者) 的玩家索引号)
★ 单位等级 ★
设置 i[3] = ((触发单位) 的等级)
★ 防御 ★
设置 r[5] = (随机实数,最小值: hurt_fangyu[i[2]] 最大值: hurt_fangyu[(i[2] + 10)])
★ 闪避 ★
设置 r[6] = (hurt_shanbi[i[2]] / (15.00 + (0.20 x (转换 i[3] 为实数))))
★ 招架 ★
设置 r[7] = (hurt_zhaojia[i[2]] / (10.00 + (0.10 x (转换 i[3] 为实数))))
★ 拆招 ★
设置 r[8] = hurt_chaizhao[i[2]]
Else - 动作
★ 命中率初始值90%,最大值95%,最小值25% ★
如果所有条件成立则做动作1,否则做动作2
If - 条件
(随机实数,最小值: 0.00 最大值: 100.00) 小于或等于 (取((取((90.00 + (r[2] - r[6])), 25.00)中较大值), 95.00)中较小值)
Then - 动作
★ 此次伤害命中 ★
★ ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ★
如果所有条件成立则做动作1,否则做动作2
If - 条件
(随机实数,最小值: 0.00 最大值: 100.00) 小于或等于 r[3]
Then - 动作
★ 此次伤害会心一击 ★
设置 b[1] = TRUE
★ 会心伤害 - 破防后的防御 ★
设置 r[0] = ((r[1] x (1.50 + (r[4] / 1000.00))) - (r[5] x (1.00 + ((hurt_bili[i[0]] / (12.00 + (0.10 x (转换 i[2] 为实数)))) / 100.00))))
Else - 动作
★ 此次伤害未会心一击 ★
设置 b[1] = FALSE
★ 普通伤害 - 破防后的防御 ★
设置 r[0] = (r[1] - (r[5] x (1.00 + ((hurt_bili[i[0]] / (12.00 + (0.10 x (转换 i[2] 为实数)))) / 100.00))))
★ ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ★
如果所有条件成立则做动作1,否则做动作2
If - 条件
(随机实数,最小值: 0.00 最大值: 100.00) 小于或等于 (取(r[7], 85.00)中较小值)
Then - 动作
★ 此次伤害被招架 ★
设置 b[2] = TRUE
★ 招架抵消伤害,最多抵消80%伤害 ★
设置 r[9] = r[0]
设置 r[0] = (取((r[0] - r[8]), (r[0] x 0.20))中较大值)
★ 被抵消的伤害记录(伤害显示) ★
设置 r[9] = (r[9] - r[0])
Else - 动作
★ 此次伤害未招架 ★
设置 b[2] = FALSE
★ 伤害不稳定因素 ★
设置 r[0] = (r[0] x (随机实数,最小值: 0.90 最大值: 1.10))
★ 造成伤害 ★
单位 - 命令 (伤害来源) 对 (触发单位) 造成 r[0] 点伤害(是 攻击伤害, 不是远程攻击) 攻击类型: 混乱 伤害类型: 未知 装甲类型: 无
Else - 动作
★ 此次伤害闪避 ★
★ ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ★
设置 p[0] = ((触发单位) 的位置)
漂浮文字 - 创建漂浮文字: 闪避 在 p[0] ,Z轴高度: 0.00 ,字体大小: 10.00 ,颜色值:(100.00%, 100.00%, 100.00%) ,透明度: 25.00%
漂浮文字 - 设置 (最后创建的漂浮文字) : 禁用 永久显示.
漂浮文字 - 设置 (最后创建的漂浮文字) 的移动速率为 240.00 ,方向为 (随机实数,最小值: 75.00 最大值: 105.00) 度
漂浮文字 - 设置 (最后创建的漂浮文字) 的生命周期为 2.00 秒
漂浮文字 - 设置 (最后创建的漂浮文字) 的消逝时间点为 0.50 秒
点 - 清除 p[0] |
|