|
发表于 2010-8-22 13:39:19
|
显示全部楼层
回 14楼(希瓦) 的帖子
回复生命这么奇怪?
我是用扣血 再补回去这么做的
大体上就是这样了  根据那个啥白盾改的  
[trigger]
shield
    事件
        单位 - 任意单位 开始施放技能
    条件
        (施放技能) 等于 牧_真言术·盾 (power word: shielD)
    动作
        游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (转换 (获取 (技能施放目标) 的整数地址) 为字符串)
        YD的存储<YDWE> - 存储目录-> Ainf,标签-> (转换 (获取 (技能施放目标) 的整数地址) 为字符串),存储实数-> (200.00 x (转换 ((施法单位) 的 牧_真言术·盾 (power word: shielD) 技能等级) 为实数))
        游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: 吸收1000点伤害...
[/trigger]
[trigger]
shield2
    事件
        YD的事件<YDWE> -  任意单位 接受伤害
    条件
        ((触发单位) 拥有 真言术·盾) 等于 TRUE
    动作
        设置 PSindex = (开启中心计时器一个新的运行索引,时间间隔为 0.01 秒,是否循环 FALSE,运行触发器 shield3 <预设>)
        -------- PSindex永远都是1 --------
        游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (转换 PSindex 为字符串)
        设置 PSsufferUnit[PSindex] = (触发单位)
        单位 - 为 (触发单位) 添加 增加生命值 (99999)
        设置 PS_shieldHP[PSindex] = (从存储目录-> Ainf,标签-> (转换 (获取 (触发单位) 的整数地址) 为字符串) 上获取实数)
        设置 PS_damage[PSindex] = (单位所受伤害)
[/trigger]
[trigger]
shield3
    事件
    条件
    动作
        设置 PSindex = (获取当前到期计时器运行索引)
        游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (转换 PSindex 为字符串)
        单位 - 为 PSsufferUnit[PSindex] 删除 增加生命值 (99999)
        -------- 直接增加生命值会被超过最大生命值的伤害所秒杀,不能和增加生命值的物品一同使用。 --------
        单位 - 设置 PSsufferUnit[PSindex] 的 生命值 为 ((PSsufferUnit[PSindex] 的 生命值) + PS_damage[PSindex])
        游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (盾回复生命:  + ((转换 PS_damage[PSindex] 为字符串) +  点生命))
        游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: 删除辅助技能l...
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                PS_damage[PSindex] 大于或等于 PS_shieldHP[PSindex]
            Then - 动作
                单位 - 删除 PSsufferUnit[PSindex] 的 真言术·盾
                单位 - 命令 PSsufferUnit[PSindex] 对 PSsufferUnit[PSindex] 造成 (PS_damage[PSindex] - PS_shieldHP[PSindex]) 点伤害(是 攻击伤害, 不是远程攻击) 攻击类型: 混乱 伤害类型: 普通 武器类型: 无
                -------- bug --------
                漂浮文字 - 创建漂浮文字: (最后吸收  + (转换 (转换 PS_shieldHP[PSindex] 为整数) 为字符串)) 在 PSsufferUnit[PSindex]的头顶, Z轴偏移 0.00,字体大小: 10.00 ,颜色值:(50.00%, 0.00%, 100.00%) ,透明度: 0.00%
                漂浮文字 - 设置 (最后创建的漂浮文字) : 禁用 永久显示.
                漂浮文字 - 设置 (最后创建的漂浮文字) 的移动速率为 90.00 ,方向为 90.00 度
                漂浮文字 - 设置 (最后创建的漂浮文字) 的显示时间为 1.20 秒
                漂浮文字 - 设置 (最后创建的漂浮文字) 的消逝时间点为 1.00 秒
                游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (吸收:  + ((转换 (PS_damage[PSindex] - PS_shieldHP[PSindex]) 为字符串) +  点伤害))
                游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: 盾失去了效果
            Else - 动作
                YD的存储<YDWE> - 存储目录-> Ainf,标签-> (转换 (获取 PSsufferUnit[PSindex] 的整数地址) 为字符串),存储实数-> (PS_shieldHP[PSindex] - PS_damage[PSindex])
                漂浮文字 - 创建漂浮文字: (吸收  + (转换 (转换 PS_damage[PSindex] 为整数) 为字符串)) 在 PSsufferUnit[PSindex]的头顶, Z轴偏移 0.00,字体大小: 10.00 ,颜色值:(50.00%, 0.00%, 100.00%) ,透明度: 0.00%
                漂浮文字 - 设置 (最后创建的漂浮文字) : 禁用 永久显示.
                漂浮文字 - 设置 (最后创建的漂浮文字) 的移动速率为 90.00 ,方向为 90.00 度
                漂浮文字 - 设置 (最后创建的漂浮文字) 的显示时间为 1.20 秒
                漂浮文字 - 设置 (最后创建的漂浮文字) 的消逝时间点为 1.00 秒
                游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (吸收:  + ((转换 PS_damage[PSindex] 为字符串) +  点伤害))
                游戏 - 对 (所有玩家) 发送显示 2.00 秒的文本信息: (剩余:  + (转换 (从存储目录-> Ainf,标签-> (转换 (获取 PSsufferUnit[PSindex] 的整数地址) 为字符串) 上获取实数) 为字符串))
[/trigger] |
|