3.9 KiB
3.9 KiB
爆炸射线武器配置说明
概述
新的 Verb_ShootBeamExplosive 类扩展了原版的 Verb_ShootBeam,添加了可配置的爆炸效果。
配置属性
基础爆炸控制
enableExplosion(bool): 是否启用爆炸效果,默认 falseexplosionShotInterval(int): 每x发射击触发一次爆炸,默认 1
爆炸伤害属性
explosionRadius(float): 爆炸半径,默认 2.9explosionDamageDef(DamageDef): 爆炸伤害类型,null时使用 BombexplosionDamage(int): 爆炸伤害值,-1时使用武器默认伤害explosionArmorPenetration(float): 爆炸护甲穿透,-1时使用武器默认值
音效和特效
explosionSound(SoundDef): 爆炸音效explosionEffecter(EffecterDef): 爆炸特效
爆炸后效果
postExplosionSpawnThingDef(ThingDef): 爆炸后生成的物品postExplosionSpawnChance(float): 生成概率 (0-1)postExplosionSpawnThingCount(int): 生成数量
爆炸前效果
preExplosionSpawnThingDef(ThingDef): 爆炸前生成的物品preExplosionSpawnChance(float): 生成概率 (0-1)preExplosionSpawnThingCount(int): 生成数量
其他属性
postExplosionGasType(GasType?): 爆炸后的气体类型applyDamageToExplosionCellsNeighbors(bool): 是否对邻近格子造成伤害chanceToStartFire(float): 点燃概率 (0-1)damageFalloff(bool): 是否有伤害衰减
使用示例
<verbs>
<li Class="WulaFallenEmpire.VerbPropertiesExplosiveBeam">
<verbClass>WulaFallenEmpire.Verb_ShootBeamExplosive</verbClass>
<!-- 基础射线属性 -->
<hasStandardCommand>true</hasStandardCommand>
<warmupTime>0.5</warmupTime>
<range>30</range>
<burstShotCount>6</burstShotCount>
<beamWidth>3</beamWidth>
<beamDamageDef>Stun</beamDamageDef>
<!-- 爆炸配置 -->
<enableExplosion>true</enableExplosion>
<explosionShotInterval>3</explosionShotInterval> <!-- 每3发触发一次爆炸 -->
<explosionRadius>2.5</explosionRadius>
<explosionDamageDef>Bomb</explosionDamageDef>
<explosionDamage>25</explosionDamage>
<explosionSound>Explosion_Bomb</explosionSound>
<chanceToStartFire>0.3</chanceToStartFire>
<postExplosionSpawnThingDef>Filth_Fuel</postExplosionSpawnThingDef>
<postExplosionSpawnChance>0.15</postExplosionSpawnChance>
</li>
</verbs>
工作原理
- 武器正常进行射线攻击
- 每次成功射击后,计数器递增
- 当计数器达到
explosionShotInterval时:- 在当前射线位置触发爆炸
- 播放爆炸音效和特效
- 重置计数器
- 爆炸使用配置的参数进行伤害计算
注意事项
- 爆炸位置基于射线的插值位置
- 如果爆炸位置超出地图边界,爆炸不会触发
- 音效和特效是可选的,可以设置为 null
- 伤害值为 -1 时会尝试使用武器的默认伤害
- 这个功能完全向后兼容,不启用爆炸时行为与原版相同
配置模板
轻型爆炸武器
<enableExplosion>true</enableExplosion>
<explosionShotInterval>1</explosionShotInterval>
<explosionRadius>1.8</explosionRadius>
<explosionDamageDef>Flame</explosionDamageDef>
<explosionDamage>15</explosionDamage>
<chanceToStartFire>0.6</chanceToStartFire>
重型爆炸武器
<enableExplosion>true</enableExplosion>
<explosionShotInterval>3</explosionShotInterval>
<explosionRadius>3.2</explosionRadius>
<explosionDamageDef>Bomb</explosionDamageDef>
<explosionDamage>35</explosionDamage>
<explosionArmorPenetration>0.4</explosionArmorPenetration>
<postExplosionSpawnThingDef>Filth_Fuel</postExplosionSpawnThingDef>
<postExplosionSpawnChance>0.25</postExplosionSpawnChance>
毒气武器
<enableExplosion>true</enableExplosion>
<explosionShotInterval>2</explosionShotInterval>
<explosionRadius>2.8</explosionRadius>
<explosionDamageDef>ToxGas</explosionDamageDef>
<postExplosionGasType>ToxGas</postExplosionGasType>