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

触发问题

[复制链接]
发表于 2008-8-29 13:01:18 | 显示全部楼层 |阅读模式
[trigger]
xingxi
事件
单位 - 任意单位 死亡
条件
动作
如果所有条件成立则做动作1,否则做动作2
If - 条件
(((触发单位) 是 英雄) 等于 TRUE) and (((凶手单位) 是 地面单位) 等于 ((凶手单位) 是 ((触发单位) 的所有者) 的敌对单位))
Then - 动作
设置 spring = (|cffff0000 + (((((触发玩家) 的名字) + 的) + ((触发单位) 的名字)) + |r 死掉拉,凶手是: |cff00ff00))
设置 spring = (spring + ((((凶手单位) 的所有者) 的名字) + (的 + ((凶手单位) 的名字))))
设置 spring = (spring + |r)
游戏 - 对 (所有玩家) 发送显示 30.00 秒的文本信息: spring
玩家组 - 选取 (所有玩家) 内所有玩家 (玩家组 - 选取 (所有 ((凶手单位) 的所有者) 的联盟玩家) 内所有玩家 (玩家 - 增加 300 (选取玩家) 的 现有黄金))
玩家 - 增加 200 ((凶手单位) 的所有者) 的 现有黄金
玩家 - 增加 -200 ((触发单位) 的所有者) 的 现有黄金
游戏 - 对 (所有玩家) 发送显示 30.00 秒的文本信息: ((((凶手单位) 的所有者) 的名字) + |r 得到 200奖金.他的同盟玩家得到 300奖金)
Else - 动作
无动作
[/trigger]
我不知道上面哪里出错了 按照计算 一个英雄杀死另一方的英雄时 他会得到200+300=500的黄金 他的盟友会得到300的黄金
可我测试的时候 发现杀死一个英雄会得到800的黄金 不知道那多出来的300的黄金从哪里冒出来的
希望哪位大仙能指点迷津...
发表于 2008-8-29 13:13:23 | 显示全部楼层
目前没有we
而且 t的语句忘记了不少
不过这个很奇怪

玩家组 - 选取 (所有玩家) 内所有玩家 (玩家组 - 选取 (所有 ((凶手单位) 的所有者) 的联盟玩家) 内所有玩家 (玩家 - 增加 300 (选取玩家) 的 现有黄金))

你这个似乎是动作后再动作 就是选取了2次 作动作
我想不光是 你那个英雄得到了800
其实所有玩家都回得到300
你的友军会额外再获得300 就是600
而你自 也会获得600
加上之后的200 就是800

其实你这语句是
先选取 所有玩家
然后执行 选取 友军玩家 然后 你用选取的玩家
此时选取的玩家 应该是 所有玩家 再加上 你的友军玩家 这里就有重复
所以才会这样
不过其实 t 的语句很让人费解

你这里直接 不要选取所有玩家直接选取友军玩家就是了

然后就是一点意见
第一 你这里这多凶手单位 触发单位
你用变量 效率会高不少
第二单位组有泄漏
回复

使用道具 举报

 楼主| 发表于 2008-8-29 13:23:44 | 显示全部楼层

Re:触发问题

懂了 非常感谢..
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-7-21 04:22 , Processed in 0.075788 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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