我是supersb 我是supersb
关注数: 155 粉丝数: 312 发帖数: 11,995 关注贴吧数: 11
【YDWE】呼叫果神!中心计时器运行触发器的问题!! 触发一: 事件: 任意单位 被攻击 条件: 被攻击单位 是 英雄 等于 True 被攻击单位 是 (攻击单位 的所有者) 的敌对单位 等于 True XX技能 的等级对 攻击单位 大于 0 动作: 触发器 - 开启 触发二 触发二: 事件: 任意单位 接受伤害 条件: 触发单位 是 英雄 等于 True XX技能 的等级对 伤害来源 大于 0 动作: 英雄 - 修改 力量 对 (触发单位):减去 1 点 英雄 - 修改 敏捷 对 (伤害来源):添加 XX技能对伤害来源的等级 点 存储 存储目录:0,标签XLoop1,存储单位(触发单位) 存储 存储目录:7,标签XLoop2,存储单位(伤害来源) 存储 存储目录:8,标签XLoop2,存储整数(XX技能对伤害来源的等级) XLoop1=XLoop1+1 XLoop2=XLoop2+1 触发器 - 计时器系统 15秒后运行 触发三 触发器 - 关闭 当前触发 触发三: 事件:空 条件:空 动作: 英雄 - 修改 力量 对 (从存储目录0,标签XLoop3上获取单位):添加 1 点 英雄 - 修改 敏捷 对 (从存储目录7,标签XLoop4上获取单位):减少 (从存储目录8,标签XLoop4上获取整数) 点 XLoop3=XLoop3+1 XLoop4=XLoop4+1 注:XLoop1、2、3、4的初值都是0. 测试结果:在某个时间点之前,一切正常;在某个时间点以后,转换的所有属性会被一次性的转回来,但是少转换了1点,然后触发三就不再被运行了。。这个时间点大概是第一次运行触发一以后的45秒——1分钟左右。。 具体说明一下就是,拥有这个技能的英雄攻击敌方英雄一下,然后15秒后,敏捷值由20还原为19;再攻击一下,15秒后,敏捷值仍然还原为19;第三次攻击以后,敏捷值就保持20不动了,往后转换来的敏捷值就统统永久保留了。。 求解这是为什么。。。
【求助】关于用触发器向其他触发器添加条件的问题 我想做出类似折射伤害的效果,上回问了一个问题,如何添加接受伤害的条件,得到的回答是用其他触发器向该触发器添加条件。现在接受伤害事件已经能响应了,但是还有些问题。 这是写的触发: 触发器Reflection 事件:单位—单位 被攻击的 环境:((触发单位)的魔法特效 折射)等于 TRUE 动作:设置ReflectionCreep=(触发单位)       触发器—Reflection Trigger<情报> 添加事件为(单位—ReflectionCreep 接受伤害) 触发器Reflection Trigger 事件:(空) 环境:(ReflectionCreep的魔法特效 折射)等于 TRUE 动作:设置ReflectionArea=(半径为800.00 圆心为(单位ReflectionCreep的位置)范围内匹配。。。。。。。。。(匹配这里触发时没有问题)       单位组—选取所有单位在ReflectionArea做(动作)            Loop—动作               单位—命令ReflectionCreep对(选取的单位)造成(0.05*((实数(ReflectionLevel))*(被伤害的生命值),伤害:攻击类型 普通 伤害类型 神圣               特效—对overhead的部位创造效果,在(选取的单位)的身上,效果为/DeathandDecayDamage.mdl 那个折射的等级是由另一个触发器获取的,然后实际测试时出现的情况是:一开始只受一点点折射伤害,可是折射的伤害越来越多,好像在叠加一样,就是以前的攻击伤害值也在被叠加,虽然乘数只有0.05,但是到最后哪怕只受10多点伤害周围都会溅死一片。。而且游戏越来越卡,到后面都快卡得动不了了。。 我不明白的一点是,用其他触发器向该触发器添加条件时,这个条件只被执行一次吗?也就是说下次再想触发的时候是不是还要再添呢?为了测试这个,我把添加触发条件的语句放在了地图初始化触发里,结果是折射完全不被触发了,看来这个条件还是需要持续添加进去的。。但是如此做的后果就像前面叙述的那样,好像前面所受的所有伤害都叠加起来了一样,我不知道哪里写错了,请高手们帮忙看看,写了哈~
1 下一页