|
|
本帖最后由 jgaxmey 于 2022-12-21 22:53 编辑
Ares变形逻辑遇到一些问题,想请教各位大佬 @云茹的堡儿 @kinghaoren
这个贴提出的这个问题。我也因为这个原因没有使用过一些功能。双杀大佬说Transform一样会解除buildlimit,Ares的Cover也一样解除,不过我的单位用的变形ae没有解除buildlimit,不知道什么原因,但这是好事,我就不管了。但是变形总归有一些限制,不如转换好用,还是要解决这个问题。原帖大佬们提出了屏蔽建造,但这个方法对于buildlimit=5这种情况无能为力,而且屏蔽掉,建造栏里没那个单位了也怪怪的,变来变去还有语音提示。最终想出一个办法,目前没发现bug。
假设单位A限制造五个,A能转换为B,那我们就给B一个出生自带的替身,替身写A,这样,当A变为B的时候,A仍然以替身的形式存在,建造限制就不受影响了,实际测试,建造栏里看不出变化,也没有语音提示,非常丝滑。但是替身不能被看到,就让他的位置跑到地图外面吧。大概这样写就行:
[ceshi]
Duration=500
HoldDuration=yes ;不进行有效期计时,即无限时间
ResetDurationOnReapply=no ;如果不允许叠加,持续过程中重复赋予时是否重置计时器
DiscardOnEntry=no ;离开地图后是否即刻失效
PenetratesIronCurtain=yes ;用于弹头附加时是否穿透铁幕
FromTransporter=no ;乘客使用弹头附加时,视为乘坐的载具使用弹头附加
ReceiverOwn=yes ;用于弹头附加时,AE属于被赋予对象
Cumulative=no ;是否允许同名AE进行叠加,yes=可叠加作用;no=不可叠加;attacker=来源不同的攻击者允许叠加
Group=-1 ;分组,同一个分组的效果互相影响,削减或增加持续时间
OverrideSameGroup=yes ;同一个分组已存在,再赋予则覆盖
AttachOnceInTechnoType=yes ;用于出厂附加时,只在单位生成时附加一次,不会在Delay后重新获得
AttachWithDamage=yes ;用于弹头附加时,随着伤害附加,而不是按弹头爆炸位置附加,如在使用AmbientDamage时
; 模块:替身 —— AE生效期间,为附着对象添加一个独立单位做替身,替身会始终跟随使者行动
Stand.Type=转换后的单位 ;替身类型,可以是虚拟单位
Stand.Offset=10000,10000,300 ;替身的位置,单位的FLH,+F在建筑的右下方,
Stand.LockDirection=no ;强制固定替身朝向始终保持与使者的方位,无论替身是否正在攻击目标
Stand.FreeDirection=no ;完全不控制替身的朝向,由替身自由行动,默认情况下替身会在失去目标之后回归到初始朝向
Stand.IsOnTurret=no ;替身绑定在炮管上
Stand.IsOnWorld=yes ;替身绑定位置以世界坐标做参考,固定朝向北方,不跟随转动
Stand.DrawLayer=NONE ;替身的渲染层设置,当ZOffset不为0时启用,NONE为自动识别,NONE\UNDERGROUND\SURFACE\GROUND\AIR\TOP
Stand.ZOffset=14 ;替身在ZAdjust偏移值,正值在上层,负值在下层,火车类型无效
Stand.SameHouse=yes ;替身跟随附属对象的所属变化,本体属性变化如心控,替身所属也跟随变化
Stand.SameTarget=no ;强制替身与使者攻击同一个目标
Stand.SameLoseTarget=yes ;使者失去目标同时替身也失去
Stand.SameAmmo=no ;强制替身弹药数量与使者相同
Stand.UseMasterAmmo=no ;替身在开火时消耗使者的弹药,SameAmmo启用时自动开启
; Stand.SamePassengers=no ;替身使用JOJO的乘客空间,JOJO的乘客等同于替身获得乘客
Stand.ForceAttackMaster=no ;替身强制选定使者为目标
Stand.MobileFire=yes ;使者在移动时替身仍可攻击
Stand.Powered=no ;替身需要电力支持才能攻击
Stand.Immune=yes ;替身是否可以收到伤害
Stand.DamageFromMaster=0.0 ;替身是否分摊使者收到的伤害,如果替身无法受伤,则不会分摊,如果弹头无法对替身造成伤害,同样分摊
Stand.DamageToMaster=0.0 ;使者是否分摊替身收到的伤害,如果使者无法受伤,则不会分摊,如果弹头无法对使者造成伤害,同样分摊
Stand.Explodes=no ;替身死亡时爆炸
Stand.ExplodesWithMaster=no ;替身在JOJO死亡时爆炸,覆盖上一条设置
Stand.PromoteFromMaster=no ;强制替身等级与使者相同
Stand.ExperienceToMaster=1.0 ;替身可以训练时,分多少经验给使者,替身不能训练时,击杀100%经验转给使者
Stand.SelectToMaster=yes ;当替身被选中时,转移选中使者
Stand.VirtualUnit=yes ; 虚拟单位,不存在于地图上的单位,不可以被选中
不是所有语句都需要,我为了保险都写了。
对了,这个方法对于ares的水上转换无效。因为水上转换后的单位似乎不能带上出场ae。针对这个问题我也想了办法,把原单位A复制一遍,改名B,限制建造,然后原单位改为不可建造,B加上一个礼盒ae,让B造出来就变成A,A再附加替身B,不过B还会继续变形,我尝试让礼盒必须受到伤害才能拆开,礼盒ae再加个自损效果,替身是无敌的,不会受到伤害,这样替身B就不会继续转换。不过实际测试无延迟拆盒会导致出不了战车工厂,出来再拆盒就能看出来顿了一下,而且一开始替身B不能再拆盒,但改着改着替身B也开始拆盒了,我就暂时放弃了,反正我没有这种单位,谁如果有这种单位可以费脑子想想有没有办法。
这个方法同时也能解决二选一建造的问题。比如谭雅和boris都能造,但同时只能选一个,原帖也是用的屏蔽建造,用本方法,谭雅挂boris替身,造了谭雅,boris就不能造了,建造栏还有boris,但是灰色的,这样感觉效果好一些
|
|