找回密码
 点一下
查看: 1230|回复: 8

关于排泄

[复制链接]
发表于 2008-8-16 23:19:35 | 显示全部楼层 |阅读模式
帮忙看看这个触发的排泄有没有干净。。谢谢。
[trigger]
动作
    设置 skill_LV[2] = ((触发单位) 的 A  技能等级)
    如果所有条件成立则做动作1,否则做动作2
        If - 条件
            skill_LV[2] 大于或等于 1
        Then - 动作
            单位 - 创建 1 个 岗哨守卫 给 ((触发单位) 的所有者) 在 ((触发单位) 的位置) ,面向角度为 默认建筑朝向 度
            单位 - 为 最后创建的单位 [R] 设置 普通 类型的生命周期,持续时间为 7.00 秒
            设置 position[1] = (最后创建的单位 [R] 的位置)
            点 - 清除 (最后创建的单位 [R] 的位置)
            点 - 清除 ((触发单位) 的位置)
            等待 7.00 秒
            单位组 - 选取 (半径为 (300.00 + (200.00 x (转换 skill_LV[2] 为实数))) 圆心为 position[1] 且满足 ((((匹配单位) 是 建筑) 等于 FALSE) and (((匹配单位) 是 ((触发单位) 的所有者) 的敌对单位) 等于 TRUE)) 的所有单位) 内所有单位做动作
                Loop - 动作
                    单位 - 创建 1 个 A 给 ((触发单位) 的所有者) 在 position[1] ,面向角度为 默认建筑朝向 度
                    单位 - 为 最后创建的单位 [R] 设置 普通 类型的生命周期,持续时间为 1.00 秒
                    单位 - 命令 最后创建的单位 [R] 对 (选取单位) 造成 (100.00 + (200.00 x (转换 skill_LV[2] 为实数))) 点伤害(是 攻击伤害, 不是远程攻击) 攻击类型: 魔法 伤害类型: 火焰 装甲类型: 无
                    特殊效果 - 创建并绑定特效到 origin 对 (选取单位) ,使用模型: Abilities\Spells\Human\MarkOfChaos\MarkOfChaosTarget.mdl
                    等待 1.00 秒
                    特殊效果 - 删除 (最后创建的特效)
            点 - 清除 position[1]
        Else - 动作
            无动作
[/trigger]
发表于 2008-8-16 23:41:37 | 显示全部楼层
有你这样写会出BUG的
首先 : 点 - 清除 (最后创建的单位 [R] 的位置)
            点 - 清除 ((触发单位) 的位置)
  貌似没有这样清除的,这两个不用清除吧。是两个常数啊(本人认为 )


其次:
特殊效果 - 创建并绑定特效到 origin 对 (选取单位) ,使用模型: AbilitiesSpellsHumanMarkOfChaosMarkOfChaosTarget.mdl
等待 1.00 秒
特殊效果 - 删除 (最后创建的特效)

这一句有BUG等待1秒后,“最后创建的特效”有可能已经指代另一个特效了,所以最好用变量给这个特效赋值,然后删这个变量。
用了等待后,最好不要在后面用“最后XXX”这类函数。



排泄应该排完了
回复

使用道具 举报

发表于 2008-8-17 00:49:01 | 显示全部楼层
这些点要清除的,但lz点的清除方式错误,要用变量保存再清除变量,你这样是再次创建一个点,然后清除,原来那个仍然存在

特效最好也是,因为1秒内如果由其他触发也创建特效的话,最后创建特效就不是你这个了
回复

使用道具 举报

发表于 2008-8-17 07:47:30 | 显示全部楼层
用变量清除
回复

使用道具 举报

发表于 2008-8-17 08:35:42 | 显示全部楼层
完全没有排泄干净。。除了特效可能会出bug和position[1]以外其他完全没有排泄!
回复

使用道具 举报

发表于 2008-8-17 09:03:58 | 显示全部楼层
(最后创建的单位 [R] 的位置)
  ((触发单位) 的位置)

啊?  这样的东西还用清除啊,不会吧。

((触发单位) 的所有者)  ((触发单位) 的位置)那 这类东西清除不

要清除的东西太多了吧
回复

使用道具 举报

发表于 2008-8-17 09:41:55 | 显示全部楼层
[codes=jass]function GetLastCreatedUnit takes nothing returns unit
    return bj_lastCreatedUnit
endfunction[/codes]
[codes=jass]constant native GetUnitLoc  takes unit whichUnit returns location
//这里边的内容没查出来
[/codes]
[codes=jass]call GetUnitLoc(GetLastCreatedUnit())[/codes]


这里不是把 GetLastCreatedUnit() 里的返回值传递给 GetUnitLoc
然后 GetUnitLoc 再算出返回值position[1](我是这样认为的)
这期间,没有出现变量啊,只是数据传递,怎么删啊。

这一点还不太理解
回复

使用道具 举报

发表于 2008-8-17 09:42:31 | 显示全部楼层
如果用老狼的UI,一般有「会创建点」之类的提示注释,这类触发用变量保存后删除.
回复

使用道具 举报

发表于 2008-8-17 09:49:23 | 显示全部楼层
红狼的有没有,我去看看。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 21:32 , Processed in 0.054413 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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