找回密码
 点一下
查看: 1170|回复: 2

本人的刷怪触发出现未知问题

[复制链接]
发表于 2012-6-9 21:01:02 | 显示全部楼层 |阅读模式
现象,单位只能复活4次,英雄不能复活。测试,单位设置正确,位置正确。编辑器YDWE1.22.8

已经解决,因为初始化单位设置为单位,只有当单位死亡后尸体腐化前能够取到单位类型刷怪,之后就不可以,需要重新设置新单位代替变量中已死亡的旧单位。将变量类型改为单位类型不会出现这种问题,下面我列出解决方案给大家参考一下。


初始化:


[trigger]单位组 - 选取 ((完整地图区域) 内的所有单位) 内所有单位做动作
    Loop - 动作
        设置 fg_x = (fg_x + 1)
        设置 shuaguai_unitlx[fg_x] = ((选取单位) 的类型)
        单位 - 设置 (选取单位) 的自定义值为 fg_x
        设置 shuaguai_dian[fg_x] = ((选取单位) 的位置)
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                ((选取单位) 是 英雄) 等于 TRUE
            Then - 动作
                设置 shuaguai_leixing[fg_x] = 1
            Else - 动作
        触发器 - 为 f <预设> 添加事件: (单位 - (选取单位) 接受伤害)
        单位 - 为 (选取单位) 添加 00魔法伤害减少
        单位 - 设置 (选取单位) 打开 00魔法伤害减少 永久性
        单位组 - 添加 (选取单位) 到 fg_r
[/trigger]


添加新事件:
[trigger]如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
    If - 条件
        ((进入的单位) 的自定义值) 等于 0
        ((进入的单位) 是 英雄) 等于 TRUE
    Then - 动作
        设置 fg_x = (fg_x + 1)
        设置 shuaguai_leixing[fg_x] = 1
        设置 shuaguai_unitlx[fg_x] = ((进入的单位) 的类型)
        单位 - 设置 (进入的单位) 的自定义值为 fg_x
    Else - 动作
[/trigger]


刷怪:
[trigger]如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
    If - 条件
        ((死亡单位) 的类型) 等于 刷野 - 计时单位
    Then - 动作
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                shuaguai_leixing[((死亡单位) 的自定义值)] 等于 0
            Then - 动作
                单位 - 创建 1 个 shuaguai_unitlx[((死亡单位) 的自定义值)] 给 中立敌对 在 shuaguai_dian[((死亡单位) 的自定义值)] ,面向角度为 (随机角度) 度
                单位 - 设置 (最后创建的单位) 的自定义值为 ((死亡单位) 的自定义值)
            Else - 动作
                设置 shuaguai_zu = (属于 中立敌对 的所有 shuaguai_unitlx[((死亡单位) 的自定义值)])
                单位组 - 选取 shuaguai_zu 内所有单位做动作
                    Loop - 动作
                        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
                            If - 条件
                                ((选取单位) 的自定义值) 等于 ((死亡单位) 的自定义值)
                            Then - 动作
                                英雄 - 立即复活 (选取单位) 在 shuaguai_dian[((死亡单位) 的自定义值)] , 隐藏 复活动画
                            Else - 动作
                自定义代码:   call DestroyGroup( udg_shuaguai_zu )
    Else - 动作
        单位 - 创建 1 个 刷野 - 计时单位 给 中立敌对 在 shuaguai_dian[((死亡单位) 的自定义值)] ,面向角度为 0.00 度
        单位 - 为 (最后创建的单位) 设置 类 类型的生命周期,持续时间为 ((转换 ((死亡单位) 的附加值) 为实数) x 0.05) 秒
        单位 - 设置 (最后创建的单位) 的自定义值为 ((死亡单位) 的自定义值)
[/trigger]
未命名.jpg
未命名1.jpg
未命名2.jpg
未命名3.jpg
未命名4.jpg
发表于 2012-6-9 22:31:08 | 显示全部楼层
用0和1区分英雄和单位?地一个触发添加的是单位?
  第二个是英雄?
  最后一个触发中的复活英雄在shuaguai_dian[],这个shuaguai_dian东西没有赋值!
  导致无法复活
回复

使用道具 举报

 楼主| 发表于 2012-6-9 23:19:46 | 显示全部楼层
谢谢lia77593,我去重新测试看看。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 19:31 , Processed in 0.090683 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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