// File: CompMechOnlyWeapon.cs using System.Collections.Generic; using Verse; namespace WulaFallenEmpire { /// /// 简单的机甲专用武器组件 /// public class CompMechOnlyWeapon : ThingComp { public List allowedMechRaces; public override void Initialize(CompProperties props) { base.Initialize(props); allowedMechRaces = ((CompProperties_MechOnlyWeapon)props).allowedMechRaces; } /// /// 检查机甲是否可以装备此武器 /// public bool CanBeEquippedByMech(Pawn mech) { if (mech == null || mech.def == null) return false; return allowedMechRaces != null && allowedMechRaces.Contains(mech.def); } } public class CompProperties_MechOnlyWeapon : CompProperties { public List allowedMechRaces = new List(); public CompProperties_MechOnlyWeapon() { compClass = typeof(CompMechOnlyWeapon); } } }