找回密码
 点一下
查看: 1174|回复: 11

做的一个特殊移动效果,有些BUG~希望高手帮忙解决下

[复制链接]
发表于 2011-6-30 15:32:51 | 显示全部楼层 |阅读模式
英雄:吸血鬼
移动特效:英雄每隔3秒会获得一次传送效果。
          当英雄发布的移动命令在350码内时,此技能不发动;当英雄点击位置在350~800内时会消散自己的身体并瞬移至点击的地点;当超过800时,就只瞬移800距离。
上图~ 1.gif

目前比较严重的BUG问题是:我在新建的地图里做的可以正常使用,但是放到我做的整体地图里时(包括很多其他英雄的),第一次移动会瞬移到一个莫名奇妙的位置,而且每次测试都是那个位置,之后触发好像就不能再启动一样,不再生效了。
另外还有些小问题~希望GA的高手们帮忙优化下
 楼主| 发表于 2011-6-30 15:40:05 | 显示全部楼层
[trigger]walk 1
    事件
        时间 - 当游戏逝去 3.00 秒
    条件
    动作
        设置 int[31] = 0
        触发器 - 开启 walk 2 <预设>
[/trigger]

[trigger]walk 2
    事件
        单位 - 31吸血鬼 0073 <预设> 发布指定点目标指令
    条件
    动作
        设置 int[31] = (int[31] + 1)
        设置 hero[31] = (触发单位)
        设置 point[31] = ((触发单位) 的位置)
        设置 point[311] = ((命令发布目标) 的位置)
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                (((point[31] 和 point[311] 之间的距离) 大于或等于 400.00) 且 ((point[31] 和 point[311] 之间的距离) 小于或等于 800.00)) 且 (int[31] 小于或等于 1)
            Then - 动作
                设置 n[31] = 255
                触发器 - 开启 walk 3 <预设>
                等待 1.50 秒(游戏时间)
                触发器 - 关闭 walk 3 <预设>
                单位 - 立即移动 (触发单位) 到 point[311]
                设置 n[31] = 0
                触发器 - 开启 walk 4 <预设>
                等待 1.50 秒(游戏时间)
                触发器 - 关闭 walk 4 <预设>
            Else - 动作
                如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
                    If - 条件
                        (int[31] 小于或等于 1) 且 ((point[31] 和 point[311] 之间的距离) 大于 800.00)
                    Then - 动作
                        设置 n[31] = 255
                        触发器 - 开启 walk 3 <预设>
                        等待 1.50 秒(游戏时间)
                        触发器 - 关闭 walk 3 <预设>
                        单位 - 立即移动 (触发单位) 到 (从 ((触发单位) 的位置) 开始,距离 800.00 ,方向为 (point[31] 到 point[311] 的角度) 度的位移处)
                        设置 n[31] = 0
                        触发器 - 开启 walk 4 <预设>
                        等待 1.50 秒(游戏时间)
                        触发器 - 关闭 walk 4 <预设>
                    Else - 动作
                        触发器 - 关闭 (当前触发)
        触发器 - 关闭 (当前触发)
[/trigger]

[trigger]walk 3
    事件
        时间 - 每当游戏逝去 0.10 秒
    条件
    动作
        设置 n[31] = (n[31] - 20)
        动画 - 改变 hero[31] 的颜色值: (255,255,255), 透明值: n[31]
[/trigger]

[trigger]walk 4
    事件
        时间 - 每当游戏逝去 0.10 秒
    条件
    动作
        设置 n[31] = (n[31] + 25)
        动画 - 改变 hero[31] 的颜色值: (255,255,255), 透明值: n[31]
[/trigger]
回复

使用道具 举报

 楼主| 发表于 2011-6-30 15:43:05 | 显示全部楼层
技能说明 图 触发都帖了~坐等大家解答。。
本人T很烂,只是想到什么就用最笨的方法去做。。望高手指点更好方法
回复

使用道具 举报

发表于 2011-6-30 15:54:36 | 显示全部楼层
   大概是点捕捉失败了。。。

  如果是往地图中心位移的话  那就可以肯定了。

解决的话  检查一下你设置点的触发就可以了
回复

使用道具 举报

 楼主| 发表于 2011-6-30 16:01:55 | 显示全部楼层
但是单独地图里一点问题没有,放到别的一起就出现BUG了
还有就是说用闪现方法的~和用移动有什么区别
回复

使用道具 举报

 楼主| 发表于 2011-6-30 16:03:29 | 显示全部楼层
效果希望就是我图里做的那种效果,具体方法还请大家细说 拜托~
回复

使用道具 举报

 楼主| 发表于 2011-6-30 16:21:22 | 显示全部楼层
谢谢LS~我去实验下
回复

使用道具 举报

 楼主| 发表于 2011-6-30 16:56:36 | 显示全部楼层
噢。。最主要的问题是我第一个触发写的是游戏逝去3秒后。。不是循环的。。
回复

使用道具 举报

发表于 2011-6-30 19:09:25 | 显示全部楼层
有bug呢……你的触发没有条件……不知道放技能是不是也会触发……
移动命令是move,鼠标右击是smart,攻击是attack
回复

使用道具 举报

 楼主| 发表于 2011-7-1 17:00:52 | 显示全部楼层
期待大家给个比较完善和优化的T~真心求教,我自己已经很努力做了= =应该不算伸手党了吧。。
回复

使用道具 举报

发表于 2011-7-1 19:22:07 | 显示全部楼层
使用计时器比起等待来说,可以在一定程度上优化触发结构。
[trigger]S
&#160;&#160;&#160;&#160;事件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;单位 - 任意单位 发布指定点目标指令
&#160;&#160;&#160;&#160;条件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;任一条件成立
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;条件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(发布的命令ID) 等于 (转换 smart 为命令ID)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(发布的命令ID) 等于 (转换 move 为命令ID)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(吸血光环 的等级对 (触发单位)) 大于 0
&#160;&#160;&#160;&#160;动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;设置 PA = ((触发单位) 的位置)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;设置 PB = (命令发布点)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;如果所有条件成立则做动作1,否则做动作2
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;If - 条件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(PA 和 PB 之间的距离) 大于或等于 350.00
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Then - 动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;设置 I = 0
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;设置 U = (触发单位)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;设置 PC = (从 PA 开始,距离 (取(800.00, (PA 和 PB 之间的距离))中较小值) ,方向为 (PA 到 PB 的角度) 度的位移处)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;触发器 - 关闭 (当前触发)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;触发器 - 开启 E <预设>
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;计时器 - 开启 T ,计时方式: 一次性 时间设置: 3.00 秒
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Else - 动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;点 - 清除 PA
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;点 - 清除 PB
[/trigger]
[trigger]T
&#160;&#160;&#160;&#160;事件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;时间 - T 到期
&#160;&#160;&#160;&#160;条件
&#160;&#160;&#160;&#160;动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;触发器 - 开启 S <预设>
[/trigger]
[trigger]E
&#160;&#160;&#160;&#160;事件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;时间 - 每 0.01 秒触发事件
&#160;&#160;&#160;&#160;条件
&#160;&#160;&#160;&#160;动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;设置 I = (I + 1)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;如果所有条件成立则做动作1,否则做动作2
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;If - 条件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;I 等于 50
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Then - 动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;单位 - 设置 U 的X坐标为 (PC 的X轴坐标)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;单位 - 设置 U 的Y坐标为 (PC 的Y轴坐标)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;点 - 清除 PC
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Else - 动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;如果所有条件成立则做动作1,否则做动作2
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;If - 条件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;I 等于 100
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Then - 动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;动画 - 改变 U 的颜色值为:(255,255,255), Alpha通道值: 255
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;触发器 - 关闭 (当前触发)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Else - 动作
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;动画 - 改变 U 的颜色值为:(255,255,255), Alpha通道值: (((I - 50) 的绝对值) x 5)
[/trigger]
Skill.w3x (11 KB, 下载次数: 5)
回复

使用道具 举报

 楼主| 发表于 2011-7-1 22:22:33 | 显示全部楼层
十分感谢
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-28 05:02 , Processed in 0.079185 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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