找回密码
 点一下
查看: 1218|回复: 10

如何选取范围内的一个单位

[复制链接]
发表于 2012-7-21 20:19:40 | 显示全部楼层 |阅读模式
怎么样才能让
单位组 - 选取 (半径为 500.00 圆心为 dian[0] 且满足 (((匹配单位) 是 (danwei[0] 的所有者) 的同盟单位) 等于 FALSE) 的所有单位) 内所有单位做动作
            只随机选取一个单位?
发表于 2012-7-21 20:29:32 | 显示全部楼层
不懂。。。
回复

使用道具 举报

发表于 2012-7-21 20:38:05 | 显示全部楼层
未命名.jpg
回复

使用道具 举报

 楼主| 发表于 2012-7-21 20:52:27 | 显示全部楼层
还有个问题............
回复

使用道具 举报

 楼主| 发表于 2012-7-21 21:15:19 | 显示全部楼层
还有个问题:
[trigger]
未命名触发器 002
    事件
        时间 - 每当游戏逝去 0.01 秒
    条件
    动作
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                (danwei[1] 拥有 烈焰飞弹 ) 等于 TRUE
            Then - 动作
                单位 - 命令 danwei[0] 对 danwei[1] 造成 ((30.00 x (转换 (danwei[0] 的 烈焰飞弹  技能等级) 为实数)) + ((转换 (danwei[0] 的智力值(包括 加成)) 为实数) x (0.50 x (转换 (danwei[0] 的 烈焰飞弹  技能等级) 为实数)))) 点伤害(不是 攻击伤害, 不是远程攻击) 攻击类型: 法术 伤害类型: 普通 武器类型: 无
                触发器 - 运行 未命名触发器 003 <预设> (无视条件)
                触发器 - 关闭 (当前触发)
            Else - 动作
[/trigger]
[trigger]
未命名触发器 003
    事件
    条件
    动作
        单位组 - 选取 (随机获取 1 个单位从 (半径为 500.00 圆心为 dian[0] 且满足 (((匹配单位) 是 (danwei[0] 的所有者) 的同盟单位) 等于 FALSE) 的所有单位)) 内所有单位做动作
            Loop - 动作
                设置 danwei[1] = 没有单位
                设置 danwei[1] = (选取单位)
                单位 - 创建 1 个 小精灵 给 (danwei[0] 的所有者) 在 dian[0] ,面向角度为 默认建筑朝向 度
                单位 - 对 最后创建的单位 <New> 发布 中立炼金术士 - 酸性炸弹 命令到目标: danwei[1]
                点 - 清除 dian[0]
                设置 dian[0] = ((选取单位) 的位置)
                触发器 - 开启 未命名触发器 002 <预设>
[/trigger]
为什么这2个触发不能循环呢?
回复

使用道具 举报

 楼主| 发表于 2012-7-21 21:32:37 | 显示全部楼层
有人吗?
回复

使用道具 举报

发表于 2012-7-21 21:41:19 | 显示全部楼层
002的IF条件需要003来满足,003没有事件.这样就永远无法打到002中IF的条件...无限死循环.
回复

使用道具 举报

 楼主| 发表于 2012-7-21 21:45:00 | 显示全部楼层
有个001没复制过来,我把它们都复制来好了
[trigger]
未命名触发器 001
    事件
        单位 - 任意单位 发动技能效果
    条件
        (施放技能) 等于 烈焰飞弹
    动作
        设置 danwei[0] = (触发单位)
        设置 danwei[1] = (技能施放目标)
        设置 dian[0] = (danwei[1] 的位置)
        触发器 - 开启 未命名触发器 002 <预设>[/trigger]
[trigger]
未命名触发器 002
    事件
        时间 - 每当游戏逝去 0.01 秒
    条件
    动作
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                (danwei[1] 拥有 烈焰飞弹 ) 等于 TRUE
            Then - 动作
                单位 - 命令 danwei[0] 对 danwei[1] 造成 ((30.00 x (转换 (danwei[0] 的 烈焰飞弹  技能等级) 为实数)) + ((转换 (danwei[0] 的智力值(包括 加成)) 为实数) x (0.50 x (转换 (danwei[0] 的 烈焰飞弹  技能等级) 为实数)))) 点伤害(不是 攻击伤害, 不是远程攻击) 攻击类型: 法术 伤害类型: 普通 武器类型: 无
                触发器 - 运行 未命名触发器 003 <预设> (无视条件)
                触发器 - 关闭 (当前触发)
            Else - 动作[/trigger]
[trigger]
未命名触发器 003
    事件
    条件
    动作
        单位组 - 选取 (随机获取 1 个单位从 (半径为 500.00 圆心为 dian[0] 且满足 (((匹配单位) 是 (danwei[0] 的所有者) 的同盟单位) 等于 FALSE) 的所有单位)) 内所有单位做动作
            Loop - 动作
                设置 danwei[1] = 没有单位
                设置 danwei[1] = (选取单位)
                单位 - 创建 1 个 小精灵 给 (danwei[0] 的所有者) 在 dian[0] ,面向角度为 默认建筑朝向 度
                单位 - 对 最后创建的单位 <New> 发布 中立炼金术士 - 酸性炸弹 命令到目标: danwei[1]
                点 - 清除 dian[0]
                设置 dian[0] = ((选取单位) 的位置)
                触发器 - 开启 未命名触发器 002 <预设>[/trigger]
我是想让它多弹几下的,可是他就弹了一下就不循环了啊
回复

使用道具 举报

发表于 2012-7-21 21:50:41 | 显示全部楼层
如果是想连续弹的话,建议用单位模拟投射物.

0.01秒太快了,投射物还没到呢.当然检测不到buff if条件不成立
回复

使用道具 举报

 楼主| 发表于 2012-7-21 22:08:03 | 显示全部楼层
那我要怎么改?不清楚啊
321354561321.rar (202 KB, 下载次数: 0)
要不你帮我看看吧
回复

使用道具 举报

发表于 2012-7-21 22:26:41 | 显示全部楼层
用模拟投射物的方法
搜索: 弹射
http://bbs.islga.org/read-htm-tid-37654.html 给你地址好了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-7-5 15:05 , Processed in 0.037272 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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