找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 703|回复: 10

[我解决不了自己的问题] 单位武器能做到延迟开火吗?

[复制链接]
发表于 2025-11-24 12:47:17 来自手机 | 显示全部楼层 |阅读模式
如题所示,单位接受攻击指令时在射程内是马上发射炮弹的,有代码能做延迟发射的吗?子机武器我就能找到。
发表于 2025-11-24 14:06:08 | 显示全部楼层
FireUp=
回复

使用道具 举报

 楼主| 发表于 2025-11-24 18:09:49 来自手机 | 显示全部楼层
膜术师协会 发表于 2025-11-24 14:06
FireUp=

你这个语句哪里来的?在单位上写FireUp=300,都无效,在武器上写也无效。
回复

使用道具 举报

发表于 2025-11-24 18:20:11 | 显示全部楼层
mcate 发表于 2025-11-24 18:09
你这个语句哪里来的?在单位上写FireUp=300,都无效,在武器上写也无效。

写在单位的art里面,单位为帧
回复

使用道具 举报

 楼主| 发表于 2025-11-24 21:26:50 | 显示全部楼层
z3481048 发表于 2025-11-24 18:20
写在单位的art里面,单位为帧

FireUp=
            指定使用第一武器开火的动画的帧的序号。它用来确定步兵的开火动作播放到第几帧的时候才产生真正的武器开火。

这里作用是SHP单位的,VXL单位无效.但是建筑类的磁暴线圈怎么做到延迟攻击的?
回复

使用道具 举报

发表于 2025-11-24 21:43:40 | 显示全部楼层
mcate 发表于 2025-11-24 21:26
FireUp=
            指定使用第一武器开火的动画的帧的序号。它用来确定步兵的开火动作播放到第几帧的 ...

这个帖子应该会对你有帮助  https://bbs.ra2diy.com/forum.php?mod=viewthread&tid=21572  

回复

使用道具 举报

 楼主| 发表于 2025-11-25 22:37:39 | 显示全部楼层
延迟开火
通过为武器设置 DelayedFire.Duration 可使其延迟开火 - 它支持单个整数或用逗号隔开的两个整数作为随机取值区间。
若 DelayedFire.SkipInTransport 设为 true 且开火者在运输工具中则这种情况下跳过延迟。
DelayedFire.Animation 可用于定义延时计时器启动时创建的动画。可用 DelayedFire.OpenToppedAnimation 单独定义开火者在运输工具中开火时创建的。
若 DelayedFire.AnimIsAttached 设为 true 则该动画将附着于开火的单位上。
若 DelayedFire.RemoveAnimOnNoDelay 也设为 true,则在持续时间结束或开火被中断时无论是否播放完毕都立即移除动画。
DelayedFire.AnimOffset 可用于覆盖开火坐标来设置动画的位置。
DelayedFire.AnimOnTurret 决定在单位有炮塔的情况下该动画的位置是相对于开火单位的本体还是炮塔。
若设置了 DelayedFire.CenterAnimOnFirer 则动画会创建于开火单位的中心而非开火坐标处。
若该武器由一个步兵发射且 DelayedFire.PauseFiringSequence 为 true 则当步兵的动画序列达到其在 artmd.ini 中由 FireUp/Prone 或 SecondaryFire/Prone 定义的开火帧时其开火序列动画将会暂停直至延时计时器结束。
若武器 Burst > 1 且 DelayedFire.OnlyOnInitialBurst 为 true 则延迟仅在首次发射前生效。注意若使用了 Ares 则开火被中断或开火者失去目标时 Burst 索引不会重置,这意味着它可以无需等待延迟时间即可开火。

[SOMEWEAPON]                           ; WeaponType
DelayedFire.Duration=                  ; integer - single or comma-sep. range (game frames)
DelayedFire.SkipInTransport=false      ; boolean
DelayedFire.Animation=                 ; Animation
DelayedFire.OpenToppedAnimation=       ; Animation
DelayedFire.AnimIsAttached=true        ; boolean
DelayedFire.AnimOffset=                ; integer - Forward,Lateral,Height
DelayedFire.AnimOnTurret=true          ; boolean
DelayedFire.CenterAnimOnFirer=false    ; boolean
DelayedFire.RemoveAnimOnNoDelay=false  ; boolean
DelayedFire.PauseFiringSequence=false  ; boolean
DelayedFire.OnlyOnInitialBurst=false   ; boolean

今天查看了最新的Phobos的在线说明书,发现了 DelayedFire.Duration 这条语句,然后加了了Phobos平台。但加上犀牛坦克的[120mm] 武器上,一点效果都没有。是哪里不对。以下是加在[120mm]武器上的代码。
; large anti-armor cannon (single shooter)
[120mm]
Damage=90
ROF=65
Range=5.75
Projectile=Cannon
Speed=40
Warhead=AP
Report=RhinoTankAttack
Anim=GUNFIRE
Bright=yes
DelayedFire.Duration=240

实在不能用的话,我再试试楼上蝎子那个,那个有点复杂。

回复

使用道具 举报

发表于 2025-11-25 22:38:32 | 显示全部楼层
如果对副武器没有需求,可以用弹药逻辑、盖特逻辑搞
回复

使用道具 举报

发表于 2025-11-25 22:40:53 | 显示全部楼层
当然,对副武器有需求也可以用盖特逻辑搞,比如主武器有前摇攻击地面,副武器无前摇防空
回复

使用道具 举报

 楼主| 发表于 2025-11-26 00:08:37 | 显示全部楼层
原来是Phobos 0.4 版本还没添加上面的功能,下载 最新的自动构建版本 就有了。结贴。
回复 1 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|Archiver|手机版|管理员邮箱|红警DIY论坛 |网站地图

GMT+8, 2026-6-5 21:06 , Processed in 0.067923 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表