This commit is contained in:
2026-02-24 12:02:38 +08:00
parent 1af5f0c1d8
commit 96bc1d4c5a
57 changed files with 6595 additions and 1170 deletions

View File

@@ -0,0 +1,48 @@
using RimWorld;
using Verse;
namespace WulaFallenEmpire
{
public class CompProperties_AbilityRequiresNonHostility : CompProperties_AbilityEffect
{
public FactionDef factionDef;
public CompProperties_AbilityRequiresNonHostility()
{
compClass = typeof(CompAbilityEffect_RequiresNonHostility);
}
}
public class CompAbilityEffect_RequiresNonHostility : CompAbilityEffect
{
public new CompProperties_AbilityRequiresNonHostility Props => (CompProperties_AbilityRequiresNonHostility)props;
public override bool GizmoDisabled(out string reason)
{
Pawn pawn = parent.pawn;
if (pawn == null || pawn.Faction == null || Props.factionDef == null)
{
reason = null;
return false;
}
// 查找指定派系
Faction targetFaction = Find.FactionManager.FirstFactionOfDef(Props.factionDef);
if (targetFaction == null)
{
reason = null;
return false;
}
// 检查是否敌对
if (pawn.Faction.HostileTo(targetFaction))
{
reason = "WULA_AbilityRequiresNonHostility".Translate(Props.factionDef);
return true;
}
reason = null;
return false;
}
}
}