Kratos:说明书/叠层检测
基础特性
此AE附着在物体上后,每帧判定本AE附着的物体身上指定名称AE(可以是几个判定对象)的层数。
层数达成要求时,添加或删除指定的AE。可以指定增删发生在检测器的附着对象上,或检测器的来源上。这样添加的AE默认其来源为检测器的附着对象。
但是你不要以为这东西只能做条件判定用
众所周知,AE的Next语句只能填写1个对象。当你需要在一个AE结束,目标获得一串AE时,应当Next为一个检测自己存在1层的检测器,于是就可以增加一串AE了。
如果假设A单位和B单位之间需要互相产生来自对方的AE建立绑定关系,A可以用弹头、礼物盒、广播等手段给B贴AE,那么费劲的做法是A同时给B贴个自动武器标记,让B发射个武器打A,给A贴AE。需要做一套武器还得注册,实在是烦死了。简单的做法是A同时给B贴个叠层检测,检测器检测自己,给检测器来源贴AE。
已知bug
Stack.RemoveEffectsSkipNext在某些情况下会把Next整个语句都干爆掉。谨慎使用这一机制,如无必要,不要使用。
如果单位身上自带检测器,通过武器开火反馈来触发,则反馈的信号必须不得为1帧的,否则无法触发
[AttachEffectTypes]
Stack.Watch=(AttachEffectType),(AttachEffectType)
待监视的AE,默认none
Stack.Level=(Ingeter),(Ingeter)
监视的AE叠加到多少层时触发,-1等于无条件触发,默认0,0
Stack.Condition=(Special),(Special)
条件,默认EQ,EQ
EQ:等于
NE:不等于
GT:大于
LT:小于
GE:大于等于
LE:小于等于
Stack.ActionMode=(Special)
监视多条AE时触发条件,AND时AE1和AE2必须同时满足,才会触发,默认OR
AND:与
OR:或
Stack.AttachEffects=(List of AttachEffectType)
触发后赋予的新AE,默认none
Stack.AttachChances=(List of Integer - Precent)
附加效果的成功率,默认100%,100%
Stack.AttachToSource=(Boolean)
触发后向Stack的来源附加AE,而不是附着对象,默认no
Stack.RemoveEffects=(List of AttachEffectType)
触发后移除的AE,默认none
Stack.RemoveEffectsLevel=(List of Integer)
触发后移除的AE对应的层数,默认0,0
Stack.RemoveEffectsWithMarks=(List of MarkType)
触发后移除带这些标记的AE,默认none
Stack.RemoveEffectsSkipNext=(Boolean)
触发后移除的AE将跳过Next,默认no
Stack.RemoveToSource=(Boolean)
触发后向Stack的来源移除AE,而不是附着对象,默认no
Stack.TriggeredTimes=(Integer)
触发多少次后移除自身,默认-1
Stack.RemoveLevel=(List of Integer)
触发后移除指定层数监视的AE,从先赋予的开始按赋予顺序关闭,设置>0时优先级高于RemoveAll,默认0,0
Stack.RemoveAll=(Boolean)
触发后移除监视的所有监视的AE,默认yes
Stack.RemoveSkipNext=(Boolean)
触发后移除监视的AE,并且跳过Next,默认no
简单样例
[120mm]
Feedback.AttachEffects=Firesig
[Firesig]
Animation=INVISO
Duration=2
[AP]
AttachEffectTypes=Trigger
AttachToSource=yes
CellSpread=2
[Trigger]
Stack.Watch=Firesig
Stack.Level=1
Stack.Condition=GE
Stack.AttachEffects=WEAPON
Stack.AttachToSource=yes
Duration=400
Cumulative=attacker
Stack.TriggeredTimes=3
MaxStack=3
[WEAPON]
AutoWeapon.Types=MissileLauncher
AutoWeapon.IsAttackerMark=yes
AutoWeapon.ReceiverAttack=no
AutoWeapon.FireOnce=yes
