找回密码
 点一下
查看: 1041|回复: 7

麻烦帮我看看这个技能有没有排泄错误

[复制链接]
发表于 2012-11-18 07:10:39 | 显示全部楼层 |阅读模式
本帖最后由 chyj4747 于 2012-12-1 06:22 编辑

[trigger]
Set
    事件
        单位 - 任意单位 发动技能效果
    条件
        (施放技能) 等于 通魔
    动作
        设置 Count_01 = (Count_01 + 1)
        设置 Hero_01[Count_01] = (触发单位)
        设置 Location[0] = (技能施放点)
        设置 Unit_01[Count_01] = (新建 (Hero_01[Count_01] 的所有者) 的 步兵 在 Location[0] 面向角度:默认建筑朝向 度)
        单位 - 为 Unit_01[Count_01] 设置 水元素 类型的生命周期,持续时间为 3.00 秒
        点 - 清除 Location[0]
        如果 ((Damage <预设> 处于开启状态) 不等于 TRUE) 成立则 (触发器 - 开启 Damage <预设>) 否则 (--------   --------)
[/trigger]
[trigger]
Damage
    事件
        时间 - 每 0.01 秒触发事件
    条件
    动作
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                Count_01 不等于 0
            Then - 动作
                For Index_01 从 1 到 Count_01, 做动作
                    Loop - 动作
                        如果所有条件成立则做动作1,否则做动作2
                            If - 条件
                                (Unit_01[Index_01] 是存活的) 等于 TRUE
                            Then - 动作
                                设置 Location[0] = (Unit_01[Index_01] 的位置)
                                设置 Group[0] = (半径为 1000.00 圆心为 Location[0] 且满足 ((((匹配单位) 是存活的) 等于 TRUE) and (((匹配单位) 是 (Hero_01[Index_01] 的所有者) 的敌对单位) 等于 TRUE)) 的所有单位)
                                单位组 - 选取 Group[0] 内所有单位做动作
                                    Loop - 动作
                                        For Index_02 从 1 到 Count_02, 做动作
                                            Loop - 动作
                                                如果所有条件成立则做动作1,否则做动作2
                                                    If - 条件
                                                        Unit_01[Index_01] 等于 Unit_02[Index_02]
                                                        (选取单位) 等于 Unit_03[Index_02]
                                                    Then - 动作
                                                        跳过剩余动作
                                                    Else - 动作
                                        设置 Count_02 = (Count_02 + 1)
                                        设置 Unit_02[Count_02] = Unit_01[Index_01]
                                        设置 Unit_03[Count_02] = (选取单位)
                                        设置 Integer[Count_02] = 100
                                        单位 - 命令 Hero_01[Index_01] 对 Unit_03[Count_02] 造成 30.00 点伤害,攻击类型: 法术 伤害类型: 魔法
                                        特殊效果 - 创建并绑定特效到 chest 对 Unit_03[Count_02] ,使用模型: Abilities\Spells\Undead\DeathandDecay\DeathandDecayDamage.mdl
                                        特殊效果 - 删除 (最后创建的特效)
                                单位组 - 删除 Group[0]
                                点 - 清除 Location[0]
                            Else - 动作
                                设置 Hero_01[Index_01] = Hero_01[Count_01]
                                设置 Hero_01[Count_01] = 没有单位
                                设置 Unit_01[Index_01] = Unit_01[Count_01]
                                设置 Unit_01[Count_01] = 没有单位
                For Index_02 从 1 到 Count_02, 做动作
                    Loop - 动作
                        如果所有条件成立则做动作1,否则做动作2
                            If - 条件
                                Integer[Index_02] 不等于 0
                            Then - 动作
                                设置 Integer[Index_02] = (Integer[Index_02] - 1)
                                游戏 - 对 玩家1(红色) 在屏幕位移(0.00,0.00)处显示文本: (转换 Integer[Index_02] 为字符串)
                            Else - 动作
                                设置 Unit_02[Index_02] = Unit_02[Count_02]
                                设置 Unit_02[Count_02] = 没有单位
                                设置 Unit_03[Index_02] = Unit_03[Count_02]
                                设置 Unit_03[Count_02] = 没有单位
                                设置 Integer[Index_02] = Integer[Count_02]
                                设置 Integer[Count_02] = 0
                                设置 Count_02 = (Count_02 - 1)
                如果 (Count_02 等于 0) 成立则 (设置 Count_01 = 0) 否则 (--------   --------)
            Else - 动作
                触发器 - 关闭 (当前触发)
                游戏 - 对 玩家1(红色) 在屏幕位移(0.00,0.00)处显示文本: 关闭持续时间...
[/trigger]




总感觉有错,但是自己就是看不出有没有排泄错误,麻烦哪位高人帮忙看看。

模拟献祭2.w3x

21.38 KB, 下载次数: 64

 楼主| 发表于 2012-11-18 07:11:07 | 显示全部楼层
嗯?T触发格式怎么不行?
回复

使用道具 举报

发表于 2012-11-18 07:21:49 | 显示全部楼层
如果用的是YDWE的话可以显示泄漏的个数
回复

使用道具 举报

发表于 2012-11-19 12:06:36 | 显示全部楼层
应该没了。
如果是YDWE的话可以用自带的泄露检测。
或者自己手动写一个泄露检测,无非就是每次涉及创建handle的时候显示一下handle的数字,看是不是循环利用的。

点评

没有YDWE,实在用不习惯 handle的话……不懂…… 如果四裤大说没的话就算了。  详情 回复 发表于 2012-11-20 08:31
回复

使用道具 举报

 楼主| 发表于 2012-11-20 08:31:49 | 显示全部楼层
『四裤全输』 发表于 2012-11-19 12:06
应该没了。
如果是YDWE的话可以用自带的泄露检测。
或者自己手动写一个泄露检测,无非就是每次涉及创建ha ...

没有YDWE,实在用不习惯

handle的话……不懂……

如果四裤大说没的话就算了。
回复

使用道具 举报

发表于 2012-11-20 18:12:01 | 显示全部楼层
我用的YDWE   显示特效泄露
特殊效果 - 创建并绑定特效到 chest 对 Unit_03[Count_02] ,使用模型: Abilities\Spells\Undead\DeathandDecay\DeathandDecayDamage.mdl
特殊效果 - 删除 (最后创建的特效)

这样特效不会被排泄掉

直接 删除新建特绑定单位  就行

点评

喔?!! 就是其他没有任何问题只是特效泄露?? 我晕,原来那样是会泄露的,受教了。 就是需要这样写才行是吧:  详情 回复 发表于 2012-11-21 11:55
回复

使用道具 举报

 楼主| 发表于 2012-11-21 11:55:27 | 显示全部楼层
huashao100 发表于 2012-11-20 18:12
我用的YDWE   显示特效泄露
特殊效果 - 创建并绑定特效到 chest 对 Unit_03[Count_02] ,使用模型: Abiliti ...


喔?!!

就是其他没有任何问题只是特效泄露??

我晕,原来那样是会泄露的,受教了。

就是需要这样写才行是吧:

特殊效果 - 删除 (新建特效 Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl 在 L_03[12] 处)
回复

使用道具 举报

发表于 2012-11-21 14:48:31 | 显示全部楼层
是的 这样就OK了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-23 10:45 , Processed in 0.074746 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表