整理scoure

This commit is contained in:
2025-10-31 09:57:45 +08:00
parent 9e6aa98830
commit 8fee1bcfba
103 changed files with 5547 additions and 916 deletions

View File

@@ -0,0 +1,55 @@
using RimWorld;
using System.Collections.Generic;
using Verse;
namespace WulaFallenEmpire
{
public class CompProperties_ShipArtillery : CompProperties
{
// 攻击配置
public int ticksBetweenAttacks = 600; // 攻击间隔tick
public int attackDurationTicks = 1800; // 攻击持续时间tick
public int warmupTicks = 120; // 预热时间tick
public bool continuousAttack = false; // 是否持续攻击直到飞越结束
// 目标区域配置
public float attackRadius = 15f; // 攻击半径
public IntVec3 targetOffset = IntVec3.Zero; // 目标偏移
public bool useRandomTargets = true; // 是否使用随机目标
public bool avoidPlayerAssets = true; // 是否避开玩家资产
public float playerAssetAvoidanceRadius = 5f; // 避开玩家资产的半径
// 新增:无视保护机制的概率
public float ignoreProtectionChance = 0f; // 0-1之间的值0表示从不无视1表示总是无视
// Skyfaller 配置
public ThingDef skyfallerDef; // 使用的 Skyfaller 定义
public List<ThingDef> skyfallerDefs; // 多个 Skyfaller 定义(随机选择)
public int shellsPerVolley = 1; // 每轮齐射的炮弹数量
public bool useDifferentShells = false; // 是否使用不同类型的炮弹
// 音效配置
public SoundDef attackSound; // 攻击音效
public SoundDef impactSound; // 撞击音效
// 视觉效果
public EffecterDef warmupEffect; // 预热效果
public EffecterDef attackEffect; // 攻击效果
public FleckDef warmupFleck; // 预热粒子
public FleckDef attackFleck; // 攻击粒子
// 避免击中飞越物体本身
public bool avoidHittingFlyOver = true;
// 信件通知
public bool sendAttackLetter = true; // 是否发送攻击信件
public string customLetterLabel; // 自定义信件标题
public string customLetterText; // 自定义信件内容
public LetterDef letterDef = LetterDefOf.ThreatBig; // 信件类型
public CompProperties_ShipArtillery()
{
compClass = typeof(CompShipArtillery);
}
}
}