Kratos:说明书/叠层检测
基础特性
此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整个语句都干爆掉。谨慎使用这一机制,如无必要,不要使用。
语句
[AttachEffectTypes]
Stack.Watch=AE1,AE2;待监视的AE
Stack.Level=0,0 ;监视的AE叠加到多少层时触发,-1等于无条件触发
Stack.Condition=EQ,EQ ;条件,EQ=等于,NE=不等于,GT=大于,LT=小于,GE=大于等于,LE=小于等于
Stack.ActionMode=OR ;监视多条AE时触发条件,AND=与,OR=或,AND时AE1和AE2必须同时满足,才会触发
Stack.AttachEffects=AE1,AE2 ;触发后赋予的新AE
Stack.AttachChances=100%,100% ;附加效果的成功率
Stack.AttachToSource=no ;触发后向Stack的来源附加AE,而不是附着对象
Stack.RemoveEffects=AE1,AE2 ;触发后移除的AE
Stack.RemoveEffectsLevel=0,0 ;触发后移除的AE对应的层数
Stack.RemoveEffectsWithMarks=none ;触发后移除带这些标记的AE
Stack.RemoveEffectsSkipNext=no ;触发后移除的AE将跳过Next
Stack.RemoveToSource=no ;触发后向Stack的来源移除AE,而不是附着对象
Stack.TriggeredTimes=-1 ;触发多少次后移除自身
Stack.RemoveLevel=0,0 ;触发后移除指定层数监视的AE,从先赋予的开始按赋予顺序关闭,设置>0时优先级高于RemoveAll
Stack.RemoveAll=yes ;触发后移除监视的所有监视的AE
Stack.RemoveSkipNext=no ;触发后移除监视的AE,并且跳过Next
简单样例
[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
