魔兽触发器定义变量变量

魔兽争霸3的地图编辑,怎么设置变量?
本回答由提问者推荐
var sogou_ad_id=731547;
var sogou_ad_height=160;
var sogou_ad_width=690;当前位置:
& 谁有魔兽触发编辑器的详细教程啊 详细!
谁有魔兽触发编辑器的详细教程啊 详细!冥ing0 18:33
采纳答案郑汉ok
把伤害改为0:单位-添加技能楼主永久的霜冻护甲需要用到马甲,比如你的霜冻护甲可以用战争践踏来改,这里的触发单位指的是施法单位,为最后创建的单位添加魔兽里的霜冻护甲吧;可见。由于马甲必须运用到触发器:对最后创建的单位发布霜冻护甲命令到触发单位,动作3,就是把刚才的马甲单位隐藏掉:发布目标命令,所以打开f5触发事件编辑器,就是像水元素那样的存活时间,眩晕持续时间改为0:单位-设置生命周期。动作5,再改下数据(由你决定)就可以啦,设置最后创建的单位生命周期为1秒。至于疾风步你就可以直接把隐身术的图标复制在疾风步技能上,动作2为单位-设置隐藏&#47,把图标改过去,条件施放技能为你刚才设置的“战争践踏”,新建一个类别和触发器:建议用小精灵,动作为单位-创建一个随便的马甲单位,事件为任意单位释放技能,这个技能就做完了,马甲就是在释放技能时释放另一个技能以达到效果,设置最后创建的单位为隐藏的.01,动作4
追问: 谢谢
回答: 待会试试
追问: 附图:图1:LZ你要的技能的制作图2:马甲单位为施法单位释放的冰甲图3:f5触发器的制作,触发器的意思连起来就是:当任意一个单位施放技能→若施放技能等于无目标冰甲时→创建一个小精灵(马甲)给触发单位(指触发此事件的单位,也可以用施法单位代替)在触发单位的位置上→使最后创建的单位(马甲)隐藏→设置最后创建的单位的生命周期为1秒,生命周期结束则死亡→为最后创建的单位添加技能原版有目标的冰甲→对最后创建的单位发布命令霜冻护甲到原施法者上。LZ你以后如果还有什么别的技能想做的话可以找我
追问: 这弄完后技能是自动释放的吗,为啥我改后不行
回答: 你看看,应该没问题啊
追问: 有以下几种可能:1、技能释放所消耗的魔法值有问题,而小精灵没有足够的魔法值。2、该技能为英雄技能,小精灵的类型为单位不能释放,应在英雄技能判定栏内选择F。
回答: 我把技能消耗魔法调成0,也是普通单位技能,还是不行
追问: 。。。。。是改魔兽自带的霜冻护甲,改魔法值和单位技能、技能施放距离(改成)
回答: 改巫妖的那个
追问: 好吧,你把小精灵模型改成没有,增加一个触发器,把隐藏和生命周期移到,事件为施放技能结束,条件为施放技能为原霜冻护甲,然后就是动作刚才拉过来的隐藏和生命周期,可能是霜冻护甲的持续时间还不足1秒或者单位隐藏后部分技能失去效果引起的。
回答: 怎么改成没有,是把那整个动作删了
追问: 删掉隐藏和这是生命周期(动作的第二第三),在新建的一个触发器里事件-施放技能结束,条件-施放技能=原版霜冻护甲,动作1、设置触发单位为隐藏;2、为触发单位设置生命周期1秒。整个技能合起来就是一个单位释放了寒冰盾就创建一个小精灵并给他添加原版冰甲技能,对他发布命令对施法的单位使用冰甲(就是发动技能),这时施法单位会获得冰甲的效果,那么小精灵释放了原版冰甲就会启动另一个触发器,将其设置为隐藏并且在1秒内死亡。
回答: 这样对吗
追问: 这改完之后是被动的吗
回答: 第二个触发器,事件应该是单位-任意单位事件-任意单位施放技能结束才对,还有第二个触发器应该是设置触发单位为隐藏,就是施放技能的小精灵,其他都正确。
追问: 我没找到那个为触发单位的
回答: 隐藏
追问: 做成了谢谢你
回答: o(∩_∩)o ~
追问: 如果我要改成像永久祭献那样自动释放的,是不是得用 永久祭献做马甲
回答: 永久献祭不是马甲,是一个被动技能,自动释放技能是无目标技能,魔兽里没有同时拥有:无目标技能和自动释放的条件的技能。所以要么有目标自动释放,要么无目标非自动释放(上面那个就是),有目标自动释放:复制两个原版冰甲,1做马甲,如上编写,2做技能,持续时间改成0.01,非英雄技能,等级为1即可。你在游戏中右击一下这个技能,就可以自动释放,释放条件是查找到周围有友军单位被攻击就给他个冰甲。当然你也可以使这个技能只能对自己释放,就把马甲里的可释放技能目标对象改成自己+地面+可攻击+有机生物就可以了。
追问: 就想弄个无目标自动释放的
回答: 如果真像这样就要用到触发器,事件:YDWE事件-任意单位受到伤害事件,条件-布尔表达式-触发单位拥有寒冰盾=T,动作则把第一个触发器复制一下,条件和事件改成如上就可以了,如果你想让他有个CD(技能施放间隔),就添几个动作-计时器-建立个计时器变量,如计时器a,计时周期一次性,也就是CD。然后动作-关闭触发。然后再弄一个激活触发器,事件为事件-a计时器到期,动作开启3触发器就行了。
追问: 如果不弄CD的话“如果你想让他有个CD(技能施放间隔),就添几个动作-计时器-建立个计时器变量,如计时器a,计时周期一次性,也就是CD。然后动作-关闭触发。然后再弄一个激活触发器,事件为事件-a计时器到期,动作开启3触发器就行了。” 这段就不用了吧
回答: 你不弄CD的话呗攻击就会一直添冰甲,容易卡。如果你真的要弄一直冰甲的,你就把CD设成冰甲的持续时间吧,这样冰甲一没掉就可以再放。
追问: 怎么把CD设成冰甲的持续时间
回答: 就是你的马甲冰甲的物体编辑器里下面有个持续时间(英雄和单位),你把他改成24.99秒的话,你的计时器a的计时周期就是25秒,冰甲一消失便可以再次触发。
最爱杞子 18:36:00
不是很难得东西,看你怎么学了,有问题可以问我!
追问: 可我是零基础,一点也不知道咋弄
回答: 很简单的东西,如果不知道怎么学那就想你学这个的目的是什么
追问: 打个比方
回答: 我想弄个永久的霜冻护甲,还有技能自动释放在自己身上,不需选择对象
追问: 那就拆分霜冻护甲
回答: 分技能特效和施法效果
追问: 模拟可以解决自动释放问题
回答: 就比如说我想把女巫的隐形术改成像疾风步那样的隐形,不需选择单位,自动释放在自己身上
追问: 用马甲释放
回答: 你加群问吧,这里我不太注意
追问: 群号私聊里魔兽世界冰封王座地图编辑器,触发器的变量是什么,怎么做,做来可以怎么用?_百度知道
魔兽世界冰封王座地图编辑器,触发器的变量是什么,怎么做,做来可以怎么用?
我有更好的答案
变量分两种:全局变量和局部变量全局是全触发可用局部是只在当前触发可用变量可以用来捕捉一些值,什么整数单位实数什么的,用来作用于衔接特殊效果
采纳率:68%
用来在事情发生并达成条件的情况下完成动作
为您推荐:
其他类似问题
地图编辑器的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。wtf - 魔兽世界控制台变量命令_百度文库
赠送免券下载特权
10W篇文档免费专享
部分付费文档8折起
每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
wtf - 魔兽世界控制台变量命令
&&wtf - 魔兽世界控制台变量命令
你可能喜欢|  
|  
|  
|  
|  
只需一步,快速开始
查看: 3696|回复: 0
【魔兽地图编辑器】【VJass教程】全局变量自由定义
主题帖子积分
大家叫我奶茶0.0
在Jass中,全局变量随处可见,包括暴雪自己写的扩展函数(BJ类函数)中也大量应用了全局变量。虽然在其他一些程序设计语言中,全局变量是一个饱受争议的内容,但在功能相对薄弱的Jass语言中,它的重要性是毋庸置疑的。没有全局变量,许多功能便无法实现。&&一方面,全局变量是如此重要;另一方面,WE却总是为我们自由使用全局变量制造障碍。众所周知,Jass具有全局变量定义语法,如下所示globals
& & 变量类型 全局变量名&&
& & 变量类型 全局变量名&&
& & ...
endglobals复制代码然而,这种语法是我们这些WEer所无法享受的,因为在WE的触发中,是不能使用这种语法定义全局变量的,这种定义语法只有在最终生成的war3map.j里面才能找到,而且必须放在整个脚本的最顶端。直接导致的后果就是:每当我们想定义一个全局变量时,只有按下CTRL+B调出变量设置窗口,在变量设置里面把这个变量加上,速度慢,效率低不说,WE竟然还自作主张地在每个变量名前面都加上了udg_前缀!实在令人难以忍受。&&一个对大量程序的研究显示,全局变量尽管被称为“全局”的变量,但是实际上使用的时候,一个全局变量的使用范围往往局限在一小段程序中,除了这段程序外,其他地方几乎见不到对这个变量的访问,这种情况被称为全局变量的局部性,在一些设计比较好的程序中,这种现象非常明显(再好的程序就不用全局变量了^_^)。我们在设计制作魔兽地图的时候,一般来说一个全局变量都只会在一个或者少数几个触发中被使用,很少见到超过10个,20个触发都要使用这个变量的(如果真这样,这个全局变量的定义一旦被修改,比如说重命名,整个地图的触发几乎都要改,恐怖。当然,BJ中一些公共变量除外)。所以,WE中把所有全局变量都定义到一起(变量编辑器)的做法,会导致变量一多查看和编辑非常困难,既不方便也不符合全局变量使用的规律(局部性)。&&黑客总是追寻自由的,为了克服WE中对全局变量的种种限制,vJass允许全局变量自由定义,这样一方面使得全局变量的定义和使用变得简单,另一方面我们可以根据全局变量的局部性,把少数几个触发专用的变量定义到一起,方便日后的管理和查看,同时也使得系统的移植变得方便。
vJass中,全局变量定义的语法和Jass完全相同,但是全局变量在触发的任意地方均可定义(包括函数内部)。变量的作用域为全局(任意触发均可用),而且不需要定义在前,使用在后。&&在vJass编译器处理的时候,所有分散定义的全局变量会被统一整理到war3map.j顶端的全局变量定义区,这也是自由定义的全局变量可以定义在使用之后的原因。
下面是一个简单的例子// 在一个触发中可以定义全局变量
globals
& && &real someReal
& && &integer array someArray
endglobals
& &
function Lesson2 takes nothing returns nothing
& &&&local integer i& && & // 可以直接使用变量名
& &&&set someReal = 10.0
& &&&set i = 0
& &&&loop
& && && & exitwhen (i &= 10)& &&&
& && && & set someArray[i] = i
& && && & set i = i + 1
& &&&endloop
endfunction 复制代码从例子中我们可以看到,例子定义了两个全局变量,实数型的someReal和整数数组someArray,然后在触发的函数中使用了两个变量。
Powered by}

我要回帖

更多关于 oracle 触发器变量 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信