找回密码
 点一下
查看: 1872|回复: 17

我弄得技能出问题了

[复制链接]
发表于 2011-7-16 18:45:41 | 显示全部楼层 |阅读模式
这!!我弄的技能出问题了,
技能效果:
         被攻击时有6\1的几率发动“摆尾”技能
         死亡之翼转身180°,然后摆尾,也就是播放SPELL TWO 动作
         把背面的±75°的敌人甩开,也就是位移
问题:
    1被打,也就是触发该技能的时候,有几率重复触发,死亡之翼就不动。保持2秒后才动
    2转头后,动作也放了,就是没有位移效果。
触发在此:
[trigger]shuaiwei
    事件
        单位 - 任意单位 被攻击
    条件
        (被攻击单位) 等于 死亡之翼 0176 <预设>
    动作
        设置 jilv[6] = (随机整数,最小值: 1 最大值: 6)
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                jilv[6] 等于 1
            Then - 动作
                逆天<YDWE> - 设置 [单位] loc_U = (被攻击单位)
                单位 - 设置 (loc_U) 的面向角度为 (((loc_U) 的面向角度) - 180.00) 度,使用时间 1.00 秒
                等待 1.00 秒(局部变量专用)
                动画 - 播放 (loc_U) 的 Spell Two 动作
                单位 - 暂停 (loc_U)
                等待 1.00 秒(游戏时间)
                逆天<YDWE> - 设置 [单位组] loc_G = (半径为 1000.00 圆心为 ((loc_U) 的位置) 且满足 ((((匹配单位) 是 建筑) 等于 FALSE) 且 ((((匹配单位) 处于死亡状态) 等于 FALSE) 且 (((匹配单位) 是 ((loc_U) 的所有者) 的同盟单位) 等于 FALSE))) 的所有单位)
                逆天<YDWE> - 设置 [单位组] loc_G2 = (新建的空单位组)
                单位组 - 选取 (loc_G) 内所有单位做动作
                    Loop - 动作
                        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
                            If - 条件
                                ((((loc_U) 的面向角度) - ((选取单位) 的面向角度)) 的绝对值) 小于或等于 75.00
                            Then - 动作
                                单位组 - 添加 (选取单位) 到 (loc_G2)
                            Else - 动作
                                不做任何动作
                单位组 - 清空 (loc_G) 内所有单位
                逆天<YDWE> - 立即运行 (新建的计时器) 时间设置: 0.02 秒,是否循环: 循环
                    Timer - 参数
                        逆天<YDWE> - 设置 [点] loc_YIDONGDIAN = (从 ((选取单位) 的位置) 开始,距离 50.00 ,方向为 (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度) 度的位移处)
                        逆天<YDWE> - 设置 [整数] loc_I = 0
                    Timer - 动作
                        逆天<YDWE> - 设置 [整数] loc_I = ((loc_I) + 1)
                        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
                            If - 条件
                                (loc_I) 大于或等于 10
                            Then - 动作
                                点 - 清除 (loc_YIDONGDIAN)
                                逆天<YDWE> - 清除当前逆天计时器
                            Else - 动作
                                特殊效果 - 删除 (新建特效 Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl 在 ((选取单位) 的位置) 处)
                                单位 - 立即移动 (选取单位) 到 (loc_YIDONGDIAN)
                                点 - 清除 ((选取单位) 的位置)
                单位组 - 清空 (loc_G2) 内所有单位
                等待 1.00 秒(游戏时间)
                单位 - 恢复 (loc_U)
                点 - 清除 ((loc_U) 的位置)
            Else - 动作
                不做任何动作
[/trigger]
求各位大人端磨~~
发表于 2011-7-16 18:54:36 | 显示全部楼层
有两个等待游戏时间,也许那个是2秒不动的来源(待验证)
没有位移是因为“逆天 - 设置 [点] loc_YIDONGDIAN = (从 ((选取单位) 的位置) 开始,距离 50.00 ,方向为 (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度) 度的位移处)”这个动作没有在任何选取单位或单位组的动作之下,所以选取单位无效
有图么?看触发好累……

看来不止那一个选取单位……好几个都是啊……

为loc_G2添加单位的触发也不对,取面向角度会有bug的……
应该在触发开始时记录死亡之翼到的面向角度ang1
角度取值为(ang1-死亡之翼到单位的角度)的绝对值大于285或者小于75
回复

使用道具 举报

发表于 2011-7-16 21:28:15 | 显示全部楼层
哥哥啊你 还用
shuaiwei
事件
单位 - 任意单位 被攻击
打头......... 如果攻击者狂按SSSSSSSS会出现神马效果?! [s:195]
回复

使用道具 举报

发表于 2011-7-16 21:30:00 | 显示全部楼层
哇,那个居然没注意到……失误了……总觉得这个技能要加冷却时间……不然太容易bug……
回复

使用道具 举报

发表于 2011-7-16 21:32:12 | 显示全部楼层
沙发辛苦了~沙发差不多就是正解了~
基本上有问题的地方沙发都讲了~

然后。。我补充下,多次触发有可能是那个事件的关系,被攻击的话只要有出手动作就算是A了,至于A没A到那就是另一回事了。
也就是说,如果单位攻击了,但是S掉了,那么也算是攻击了,回启动这个触发,如果你站在死亡之翼旁边狂S的话。。。。。汗||||
所以要换成“受到伤害”,本来J里是没有“任意单位受到伤害”事件的,不过YD好像有来着。。。

另外还有个原因是多个单位进攻时就会多次触发,如果是这个问题,解决办法是在动作的一开始加“关闭当前触发”,在动作的最后加“开启当前触发”~


打完字后发现已经从板凳掉到地下室了……
回复

使用道具 举报

 楼主| 发表于 2011-7-16 21:35:32 | 显示全部楼层
- -额,我的地图大概有5MB
回复

使用道具 举报

发表于 2011-7-16 21:37:57 | 显示全部楼层
lss辛苦了……猫咪一般先占楼再修改……喵~
话说boss这样一个大的动作能连续释放出来……太没天理了……
是不是可以考虑换成被攻击时施放魔法呢?那样就能用冷却时间了……(依旧没测试过)
回复

使用道具 举报

 楼主| 发表于 2011-7-17 15:39:54 | 显示全部楼层
好,我把它改成这样,算是成功了,但是,如果背对着死亡之翼就不会被打飞,怎么办啊~
[trigger]shuaiwei2
    事件
        单位 - 任意单位 发动技能效果
    条件
        (施放技能) 等于 甩尾
    动作
        逆天<YDWE> - 设置 [单位] loc_U = (触发单位)
        单位 - 暂停 (loc_U)
        单位 - 设置 (loc_U) 的面向角度为 (((loc_U) 的面向角度) - 180.00) 度,使用时间 1.00 秒
        等待 1.00 秒(游戏时间)
        动画 - 播放 (loc_U) 的 Spell Two 动作
        等待 1.00 秒(游戏时间)
        单位 - 恢复 (loc_U)
        逆天<YDWE> - 设置 [单位组] loc_G = (半径为 1000.00 圆心为 ((loc_U) 的位置) 且满足 ((((匹配单位) 是 建筑) 等于 FALSE) 且 ((((匹配单位) 处于死亡状态) 等于 FALSE) 且 (((匹配单位) 是 ((loc_U) 的所有者) 的同盟单位) 等于 FALSE))) 的所有单位)
        逆天<YDWE> - 设置 [单位组] loc_G2 = (新建的空单位组)
        单位组 - 选取 (loc_G) 内所有单位做动作
            Loop - 动作
                如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
                    If - 条件
                        ((((loc_U) 的面向角度) - ((选取单位) 的面向角度)) 的绝对值) 小于或等于 75.00
                    Then - 动作
                        单位组 - 添加 (选取单位) 到 (loc_G2)
                    Else - 动作
                        不做任何动作
        单位组 - 清空 (loc_G) 内所有单位
        单位组 - 选取 (loc_G2) 内所有单位做动作
            Loop - 动作
                单位 - 命令 (loc_U) 对 (选取单位) 造成 300.00 点伤害,攻击类型: 法术 伤害类型: 普通
                技能<YDWE> - 命令 (选取单位) 向 (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度) 方向冲锋,射程为 500.00,持续 1.00秒,刷新周期 0.03,对途经敌人伤害值 0.00,摧毁树木 FALSE,无视碰撞 FALSE,无视地形 FALSE ,在目标的 origin 附加 Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl(地面),附加 <空字符串>(水中)
        单位组 - 清空 (loc_G2) 内所有单位
        等待 1.00 秒(游戏时间)
        点 - 清除 ((loc_U) 的位置)
[/trigger]
回复

使用道具 举报

发表于 2011-7-17 17:46:35 | 显示全部楼层

回 7楼(lucifer之怒) 的帖子

不是给了你角度的公式么,都说了直接用面向角度会有bug的……
仔细阅读沙发最后几行……
回复

使用道具 举报

 楼主| 发表于 2011-7-17 20:58:37 | 显示全部楼层
ANG1是虾米啊??我下个学期才上初二,NOW,完全不懂....
回复

使用道具 举报

发表于 2011-7-17 21:00:04 | 显示全部楼层
只是一个变量而已,angle的意思是角度,所以缩写成ang了……
取单位面向角度的问题,就是单位只要是面向那个角度的,不管站在哪都会被选中,不是面向那个角度的就不会被选中,所以出bug了
取两个单位的间角度的,就是说单位站在死亡之翼的某一侧的都会被选中,和圆结合起来就是一个扇形了,大于285是因为从——死亡之翼面向角度为258°,单位站在3°的方向……于是75就无法捕捉了……
回复

使用道具 举报

 楼主| 发表于 2011-7-17 21:05:23 | 显示全部楼层
记录死亡之翼到的面向角度ang1


死亡之翼到的面向角度是不是死亡之翼转身后的面向角度啊
回复

使用道具 举报

发表于 2011-7-17 21:09:00 | 显示全部楼层
引用第11楼lucifer之怒于2011-07-17 21:05发表的  :
死亡之翼到的面向角度是不是死亡之翼转身后的面向角度啊
所以我在沙发写的是触发开始时的面向角度,就是在转身之前……而不是计算的时候捕捉……
回复

使用道具 举报

 楼主| 发表于 2011-7-17 21:14:56 | 显示全部楼层
好,我改成了这样,发现没有效果,也就是尾巴甩后单位没有后退,没有选取到单位...
[trigger]shuaiwei2
    事件
        单位 - 任意单位 发动技能效果
    条件
        (施放技能) 等于 甩尾
    动作
        逆天<YDWE> - 设置 [单位] loc_U = (触发单位)
        逆天<YDWE> - 设置 [实数] loc_R = ((loc_U) 的面向角度)
        单位 - 暂停 (loc_U)
        单位 - 设置 (loc_U) 的面向角度为 (((loc_U) 的面向角度) - 180.00) 度,使用时间 1.00 秒
        等待 1.00 秒(游戏时间)
        动画 - 播放 (loc_U) 的 Spell Two 动作
        等待 1.00 秒(游戏时间)
        单位 - 恢复 (loc_U)
        逆天<YDWE> - 设置 [单位组] loc_G = (半径为 1000.00 圆心为 ((loc_U) 的位置) 且满足 ((((匹配单位) 是 建筑) 等于 FALSE) 且 ((((匹配单位) 处于死亡状态) 等于 FALSE) 且 (((匹配单位) 是 ((loc_U) 的所有者) 的同盟单位) 等于 FALSE))) 的所有单位)
        逆天<YDWE> - 设置 [单位组] loc_G2 = (新建的空单位组)
        单位组 - 选取 (loc_G) 内所有单位做动作
            Loop - 动作
                如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
                    If - 条件
                        (((loc_R) - (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度)) 的绝对值) 小于或等于 75.00
                        (((loc_R) - (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度)) 的绝对值) 大于或等于 285.00
                    Then - 动作
                        单位组 - 添加 (选取单位) 到 (loc_G2)
                    Else - 动作
                        不做任何动作
        单位组 - 清空 (loc_G) 内所有单位
        单位组 - 选取 (loc_G2) 内所有单位做动作
            Loop - 动作
                单位 - 命令 (loc_U) 对 (选取单位) 造成 300.00 点伤害,攻击类型: 法术 伤害类型: 普通
                技能<YDWE> - 命令 (选取单位) 向 (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度) 方向冲锋,射程为 500.00,持续 1.00秒,刷新周期 0.03,对途经敌人伤害值 0.00,摧毁树木 FALSE,无视碰撞 FALSE,无视地形 FALSE ,在目标的 origin 附加 Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl(地面),附加 <空字符串>(水中)
        单位组 - 清空 (loc_G2) 内所有单位
        等待 1.00 秒(游戏时间)
        点 - 清除 ((loc_U) 的位置)
[/trigger]
回复

使用道具 举报

发表于 2011-7-17 21:18:48 | 显示全部楼层
引用第13楼lucifer之怒于2011-07-17 21:14发表的  :
If - 条件
(((loc_R) - (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度)) 的绝对值) 小于或等于 75.00
(((loc_R) - (((loc_U) 的位置) 到 ((选取单位) 的位置) 的角度)) 的绝对值) 大于或等于 285.00
条件错了,在条件下放入两个条件,默认关系是“且”,我们需要的是“或”,也就是“条件1成立or条件2成立”触发的名字大概是这个了,自己找找……
回复

使用道具 举报

 楼主| 发表于 2011-7-17 21:24:01 | 显示全部楼层
哦- -,!! 哎呀呀呀终于成功了~~
回复

使用道具 举报

发表于 2011-7-17 21:25:10 | 显示全部楼层
恭喜啊
@xiokingsing 问题解决了,过来水着玩吧……
回复

使用道具 举报

发表于 2011-7-21 14:30:22 | 显示全部楼层
哎.....最近家里出了点事....  哎.....       嗯....有好几天没到GA逛逛了   真有点.....嗯?!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-24 01:15 , Processed in 0.041877 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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