From d1e20383e450abbc1aeebd483ed5bd48084cd00e Mon Sep 17 00:00:00 2001 From: "ProjectKoi-Kalo\\Kalo" Date: Mon, 21 Jul 2025 16:24:04 +0800 Subject: [PATCH] =?UTF-8?q?=E9=BA=BB=E4=BA=86=E5=85=88=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 14 +- 1.6/Assemblies/WulaFallenEmpire.dll | Bin 40960 -> 56832 bytes 1.6/Assemblies/WulaFallenEmpire.pdb | Bin 130560 -> 0 bytes .../AbilityDefs/Abilities_WULA_Emergency.xml | 3 +- .../HediffDefs/Hediffs_BodyParts_WULA.xml | 3 +- .../Apparel/WULA_ShieldBelt.xml | 247 ++++++++++++ ...ompAbilityEffect_EmergencyEnergyRestore.cs | 14 +- .../CompProperties_WulaShieldBelt.cs | 31 ++ Source/WulaFallenEmpire/CompWulaShieldBelt.cs | 365 ++++++++++++++++++ .../EmergencyAbilityPatches.cs | 136 +++++++ .../WulaFallenEmpire/WulaFallenEmpire.csproj | 16 +- .../WulaFallenEmpire/WulaFallenEmpireMod.cs | 3 + .../WulaFallenEmpire/WulaShieldBeltPatches.cs | 97 +++++ Source/WulaFallenEmpire/clean.bat | 5 + ...ework,Version=v4.7.2.AssemblyAttributes.cs | 4 - ...gnTimeResolveAssemblyReferencesInput.cache | Bin 2204 -> 0 bytes ...allenEmpire.csproj.AssemblyReference.cache | Bin 61835 -> 0 bytes ...allenEmpire.csproj.CoreCompileInputs.cache | 1 - ...laFallenEmpire.csproj.FileListAbsolute.txt | 51 --- .../obj/Debug/WulaFallenEmpire.dll | Bin 33792 -> 0 bytes .../obj/Debug/WulaFallenEmpire.pdb | Bin 103936 -> 0 bytes 21 files changed, 915 insertions(+), 75 deletions(-) delete mode 100644 1.6/Assemblies/WulaFallenEmpire.pdb create mode 100644 Source/WulaFallenEmpire/CompProperties_WulaShieldBelt.cs create mode 100644 Source/WulaFallenEmpire/CompWulaShieldBelt.cs create mode 100644 Source/WulaFallenEmpire/EmergencyAbilityPatches.cs create mode 100644 Source/WulaFallenEmpire/WulaShieldBeltPatches.cs create mode 100644 Source/WulaFallenEmpire/clean.bat delete mode 100644 Source/WulaFallenEmpire/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs delete mode 100644 Source/WulaFallenEmpire/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache delete mode 100644 Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.csproj.AssemblyReference.cache delete mode 100644 Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.csproj.CoreCompileInputs.cache delete mode 100644 Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.csproj.FileListAbsolute.txt delete mode 100644 Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.dll delete mode 100644 Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.pdb diff --git a/.gitignore b/.gitignore index 2d2bf7ca..5601d9e2 100644 --- a/.gitignore +++ b/.gitignore @@ -53,8 +53,14 @@ *.tmp # Build outputs and debug files -**/obj/Debug/ -**/obj/Release/ -**/bin/Debug/ -**/bin/Release/ +**/obj/ +**/bin/ *.csproj.CoreCompileInputs.cache +*.csproj.FileListAbsolute.txt +*.pdb +*.dll.config +*.cache +*.suo +*.user +_ReSharper.* +*.dotCover diff --git a/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/Assemblies/WulaFallenEmpire.dll index d0d59f337d5309d5bf697bdc51a02a4bcf6950e7..99ba3dbfa3ef343c256f14b2a199fa3dddb7af85 100644 GIT binary patch literal 56832 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 DGNBN- delta 18976 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 b?;{_eJr}?JxMF+A{2kCmz4o|Y{Z9Hng75kR diff --git a/1.6/Assemblies/WulaFallenEmpire.pdb b/1.6/Assemblies/WulaFallenEmpire.pdb deleted file mode 100644 index a565f103548d7d8df89728bf0a861055dbe17882..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130560 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

csn*Ci80lMFy=qw#z0T~ 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%0DpFM%Rw|I&`s(vv=WIO;Z%B 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 $Kag@O><=_}NUH?*~XHoZ{ldo#;YR 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 Ck!+6u diff --git a/1.6/Defs/AbilityDefs/Abilities_WULA_Emergency.xml b/1.6/Defs/AbilityDefs/Abilities_WULA_Emergency.xml index e2bc7ec2..25e4b4a1 100644 --- a/1.6/Defs/AbilityDefs/Abilities_WULA_Emergency.xml +++ b/1.6/Defs/AbilityDefs/Abilities_WULA_Emergency.xml @@ -10,7 +10,6 @@ true true false - CastAbilityOnThing false false @@ -33,4 +32,4 @@ - \ No newline at end of file + diff --git a/1.6/Defs/HediffDefs/Hediffs_BodyParts_WULA.xml b/1.6/Defs/HediffDefs/Hediffs_BodyParts_WULA.xml index edbe0fac..d23961be 100644 --- a/1.6/Defs/HediffDefs/Hediffs_BodyParts_WULA.xml +++ b/1.6/Defs/HediffDefs/Hediffs_BodyParts_WULA.xml @@ -146,6 +146,7 @@ true true false + CastAbilityOnThing 15 @@ -245,8 +246,6 @@

  • 0 - - 0.5 diff --git a/1.6/Defs/ThingDefs_Misc/Apparel/WULA_ShieldBelt.xml b/1.6/Defs/ThingDefs_Misc/Apparel/WULA_ShieldBelt.xml index e69de29b..03f61d51 100644 --- a/1.6/Defs/ThingDefs_Misc/Apparel/WULA_ShieldBelt.xml +++ b/1.6/Defs/ThingDefs_Misc/Apparel/WULA_ShieldBelt.xml @@ -0,0 +1,247 @@ + + + + + WULA_ShieldBelt + + 乌拉帝国的个人护盾装置,可以产生动量排斥场来阻挡来袭的投射物。护盾可以通过能力按钮开关,并且具有可配置的护盾值和范围。 + Ultra + + WULA_Synth_Weapon_2_Stun_Technology + UnfinishedBelt + +
  • WULA_Cube_Productor_Energy
  • + + + 8 + + + + Things/Item/Equipment/WeaponMelee/Knife + Graphic_Single + + + 50 + 25 + 3 + 1 + + + 12000 + 1.2 + 0.4 + + +
  • Apparel
  • +
    + + +
  • Waist
  • +
    + Things/Pawn/Humanlike/Apparel/ShieldBelt/ShieldBelt + +
  • Belt
  • +
    + +
  • BeltDefensePop
  • +
    + +
  • Soldier
  • +
    +
    + +
  • + + 200 + + 3.0 + + true + + false + + false + + false + + (0.2, 0.6, 1.0) + + 5.0 + + 300 + + BulletShield_Ambience + + BulletShieldGenerator_Reactivate + + false + + true +
  • +
    + + + + + WULA_ShieldBelt_Advanced + + 乌拉帝国的高级个人护盾装置,具有更强的护盾值、更大的范围,并且可以抵抗近战攻击和EMP伤害。 + Ultra + + WULA_Synth_Weapon_2_Stun_Technology + UnfinishedBelt + +
  • WULA_Cube_Productor_Energy
  • +
    + + 10 + +
    + + Things/Item/Equipment/WeaponMelee/Knife + Graphic_Single + + + 100 + 50 + 6 + 2 + 10 + + + 20000 + 2.0 + 0.2 + + +
  • Apparel
  • +
    + + +
  • Waist
  • +
    + Things/Pawn/Humanlike/Apparel/ShieldBelt/ShieldBelt + +
  • Belt
  • +
    + +
  • BeltDefensePop
  • +
    + +
  • Soldier
  • +
    +
    + +
  • + + 400 + + 4.5 + + true + + true + + true + + true + + (1.0, 0.6, 0.2) + + 8.0 + + 180 + + BulletShield_Ambience + + BulletShieldGenerator_Reactivate + + false + + true +
  • +
    +
    + + + + WULA_ShieldBelt_Deflector + + 乌拉帝国的偏转型个人护盾装置,采用低角护盾技术,不会被破坏但只能偏转投射物。这种护盾永远不会过载,但也无法完全阻挡攻击。 + Ultra + + WULA_Synth_Weapon_2_Stun_Technology + UnfinishedBelt + +
  • WULA_Cube_Productor_Energy
  • +
    + + 6 + +
    + + Things/Item/Equipment/WeaponMelee/Knife + Graphic_Single + + + 30 + 15 + 2 + 1 + + + 8000 + 0.8 + 0.4 + + +
  • Apparel
  • +
    + + +
  • Waist
  • +
    + Things/Pawn/Humanlike/Apparel/ShieldBelt/ShieldBelt + +
  • Belt
  • +
    + +
  • BeltDefensePop
  • +
    + +
  • Soldier
  • +
    +
    + +
  • + + 100 + + 2.5 + + true + + false + + false + + false + + (0.6, 1.0, 0.6) + + 0 + + 0 + + BulletShield_Ambience + + BulletShieldGenerator_Reactivate + + true + + false +
  • +
    +
    + + \ No newline at end of file diff --git a/Source/WulaFallenEmpire/CompAbilityEffect_EmergencyEnergyRestore.cs b/Source/WulaFallenEmpire/CompAbilityEffect_EmergencyEnergyRestore.cs index 0832f9dc..c9ceb91c 100644 --- a/Source/WulaFallenEmpire/CompAbilityEffect_EmergencyEnergyRestore.cs +++ b/Source/WulaFallenEmpire/CompAbilityEffect_EmergencyEnergyRestore.cs @@ -9,6 +9,7 @@ namespace WulaFallenEmpire public override void Apply(LocalTargetInfo target, LocalTargetInfo dest) { + Log.Message($"[EmergencyEnergyRestore] Apply method called for {parent.pawn?.LabelShort}"); base.Apply(target, dest); Pawn caster = parent.pawn; @@ -45,14 +46,9 @@ namespace WulaFallenEmpire public override bool CanApplyOn(LocalTargetInfo target, LocalTargetInfo dest) { - bool canApply = base.CanApplyOn(target, dest) && IsWulaRace(parent.pawn); - - if (Props.requireDowned) - { - canApply = canApply && parent.pawn.Downed; - } - - return canApply; + Log.Message($"[EmergencyEnergyRestore] CanApplyOn called. Pawn: {parent.pawn?.LabelShort}"); + // 暂时强制返回true,以排除CanApplyOn的限制 + return true; } private bool IsWulaRace(Pawn pawn) @@ -61,4 +57,4 @@ namespace WulaFallenEmpire return pawn.def.defName == "WulaSpecies"; } } -} \ No newline at end of file +} diff --git a/Source/WulaFallenEmpire/CompProperties_WulaShieldBelt.cs b/Source/WulaFallenEmpire/CompProperties_WulaShieldBelt.cs new file mode 100644 index 00000000..6b926f1b --- /dev/null +++ b/Source/WulaFallenEmpire/CompProperties_WulaShieldBelt.cs @@ -0,0 +1,31 @@ +using RimWorld; +using UnityEngine; +using Verse; +using Verse.Sound; + +namespace WulaFallenEmpire +{ + public class CompProperties_WulaShieldBelt : CompProperties + { + public int maxShieldHitPoints = 200; + public float shieldRadius = 3.0f; + public bool interceptGroundProjectiles = true; + public bool interceptAirProjectiles = false; + public bool interceptMeleeAttacks = false; + public bool empImmune = false; + public Color shieldColor = new Color(0.2f, 0.6f, 1.0f); + public float rechargeRate = 5.0f; + public int rechargeCooldownTicks = 300; + public SoundDef activeSound; + public EffecterDef reactivateEffect; + public bool startEnabled = false; + + // 护盾模式:true = 有生命值模式(可被破坏),false = 无生命值模式(类似低角护盾,只是偏转) + public bool useHitPointsMode = true; + + public CompProperties_WulaShieldBelt() + { + compClass = typeof(CompWulaShieldBelt); + } + } +} \ No newline at end of file diff --git a/Source/WulaFallenEmpire/CompWulaShieldBelt.cs b/Source/WulaFallenEmpire/CompWulaShieldBelt.cs new file mode 100644 index 00000000..46ff596c --- /dev/null +++ b/Source/WulaFallenEmpire/CompWulaShieldBelt.cs @@ -0,0 +1,365 @@ +using RimWorld; +using System.Collections.Generic; +using UnityEngine; +using Verse; +using Verse.Sound; + +namespace WulaFallenEmpire +{ + [StaticConstructorOnStartup] + public class CompWulaShieldBelt : ThingComp + { + private float shieldHitPoints; + private int ticksToReset = -1; + private int lastKeepDisplayTick = -9999; + private Vector3 impactAngleVect; + private int lastAbsorbDamageTick = -9999; + private bool shieldEnabled = false; + private Sustainer sustainer; + // 静态构造函数加载材质 + private static readonly Material BubbleMat = MaterialPool.MatFrom("Other/ShieldBubble", ShaderDatabase.Transparent, Color.white); + + public CompProperties_WulaShieldBelt Props => (CompProperties_WulaShieldBelt)props; + + public float ShieldHitPoints => shieldHitPoints; + public float ShieldMaxHitPoints => Props.maxShieldHitPoints; + public bool ShieldEnabled => shieldEnabled; + + private bool ShouldDisplay + { + get + { + Pawn wearer = GetWearer(); + return wearer != null && wearer.Spawned && (wearer.Drafted || (wearer.Faction != null && wearer.Faction.IsPlayer) || Find.TickManager.TicksGame < lastKeepDisplayTick + 50); + } + } + + public override void PostExposeData() + { + base.PostExposeData(); + Scribe_Values.Look(ref shieldHitPoints, "shieldHitPoints", 0f); + Scribe_Values.Look(ref ticksToReset, "ticksToReset", -1); + Scribe_Values.Look(ref shieldEnabled, "shieldEnabled", Props.startEnabled); + } + + public override void PostSpawnSetup(bool respawningAfterLoad) + { + base.PostSpawnSetup(respawningAfterLoad); + if (!respawningAfterLoad) + { + shieldHitPoints = Props.maxShieldHitPoints; + shieldEnabled = Props.startEnabled; + } + } + + public override void CompTick() + { + base.CompTick(); + + Pawn wearer = GetWearer(); + if (wearer == null) return; + + if (shieldEnabled) + { + if (sustainer == null && Props.activeSound != null) + { + sustainer = Props.activeSound.TrySpawnSustainer(SoundInfo.InMap(wearer, MaintenanceType.PerTick)); + } + sustainer?.Maintain(); + } + else + { + sustainer?.End(); + sustainer = null; + } + + if (ticksToReset > 0) + { + ticksToReset--; + if (ticksToReset <= 0) + { + Reset(); + } + } + else if (shieldEnabled && Props.useHitPointsMode && shieldHitPoints < Props.maxShieldHitPoints) + { + shieldHitPoints += Props.rechargeRate / 60f; // 每秒恢复 + if (shieldHitPoints > Props.maxShieldHitPoints) + { + shieldHitPoints = Props.maxShieldHitPoints; + } + } + } + + public override void PostDraw() + { + base.PostDraw(); + if (shieldEnabled && ShouldDisplay) + { + float num = Mathf.Lerp(1.2f, 1.55f, shieldHitPoints / Props.maxShieldHitPoints); + Vector3 drawPos = GetWearer().Drawer.DrawPos; + drawPos.y = AltitudeLayer.MoteOverhead.AltitudeFor(); + int num2 = Find.TickManager.TicksGame - lastAbsorbDamageTick; + if (num2 < 8) + { + float num3 = (8 - num2) / 8f * 0.05f; + drawPos += impactAngleVect * num3; + num -= num3; + } + + float alpha; + if (Props.useHitPointsMode) + { + // 生命值模式:透明度根据护盾生命值变化 + alpha = Mathf.Lerp(0.2f, 0.7f, shieldHitPoints / Props.maxShieldHitPoints); + } + else + { + // 偏转模式:固定透明度,稍微闪烁效果 + alpha = 0.4f + Mathf.Sin(Time.time * 2f) * 0.1f; + } + Color color = Props.shieldColor; + color.a = alpha; + + Matrix4x4 matrix = default(Matrix4x4); + matrix.SetTRS(drawPos, Quaternion.identity, Vector3.one * num * Props.shieldRadius); + Graphics.DrawMesh(MeshPool.plane10, matrix, BubbleMat, 0, null, 0, MaterialPropertyBlock); + } + } + + private MaterialPropertyBlock materialPropertyBlock; + private MaterialPropertyBlock MaterialPropertyBlock + { + get + { + if (materialPropertyBlock == null) + { + materialPropertyBlock = new MaterialPropertyBlock(); + } + materialPropertyBlock.SetColor(ShaderPropertyIDs.Color, Props.shieldColor); + return materialPropertyBlock; + } + } + + public bool CheckIntercept(Projectile projectile, Vector3 lastExactPos, Vector3 newExactPos) + { + if (!shieldEnabled) + return false; + + // 如果使用生命值模式且护盾已破坏,则不拦截 + if (Props.useHitPointsMode && shieldHitPoints <= 0f) + return false; + + Pawn wearer = GetWearer(); + if (wearer == null || !wearer.Spawned) + return false; + + if (!Props.interceptGroundProjectiles && !projectile.def.projectile.flyOverhead) + return false; + + if (!Props.interceptAirProjectiles && projectile.def.projectile.flyOverhead) + return false; + + Vector3 center = wearer.TrueCenter(); + float radius = Props.shieldRadius; + + // 简单检查:如果射线起点和终点都在圆外,且连线不穿过圆,则不相交 + float distanceFromLastPos = Vector3.Distance(lastExactPos, center); + float distanceFromNewPos = Vector3.Distance(newExactPos, center); + + if (distanceFromLastPos > radius && distanceFromNewPos > radius) + { + // 计算点到线段的最短距离 + Vector3 line = newExactPos - lastExactPos; + float lineLength = line.magnitude; + Vector3 lineDirection = line / lineLength; + float projection = Mathf.Clamp(Vector3.Dot(center - lastExactPos, lineDirection), 0f, lineLength); + Vector3 closestPoint = lastExactPos + lineDirection * projection; + float distanceToLine = Vector3.Distance(center, closestPoint); + + if (distanceToLine > radius) + return false; + } + + lastKeepDisplayTick = Find.TickManager.TicksGame + 40; + + // 根据模式处理伤害 + if (Props.useHitPointsMode) + { + // 生命值模式:吸收伤害并可能破坏护盾 + AbsorbDamage(projectile.DamageAmount, projectile.ExactPosition); + } + else + { + // 偏转模式:只是偏转,不消耗护盾生命值 + DeflectProjectile(projectile.ExactPosition); + } + + return true; + } + + public bool CheckMeleeIntercept(DamageInfo dinfo, Pawn attacker) + { + if (!shieldEnabled || !Props.interceptMeleeAttacks || shieldHitPoints <= 0f) + return false; + + Pawn wearer = GetWearer(); + if (wearer == null || !wearer.Spawned) + return false; + + lastKeepDisplayTick = Find.TickManager.TicksGame + 40; + AbsorbDamage(dinfo.Amount, attacker.Position.ToVector3()); + return true; + } + + private void AbsorbDamage(float damage, Vector3 impactPos) + { + if (Props.empImmune && damage > 0f) + { + // EMP免疫时减少EMP伤害 + damage *= 0.1f; + } + + // 只有在生命值模式下才扣除护盾生命值 + if (Props.useHitPointsMode) + { + shieldHitPoints -= damage; + } + + lastAbsorbDamageTick = Find.TickManager.TicksGame; + + Pawn wearer = GetWearer(); + if (wearer != null) + { + impactAngleVect = Vector3Utility.HorizontalVectorFromAngle((impactPos - wearer.TrueCenter()).AngleFlat() + 180f); + } + + // 只有在生命值模式下才会破坏护盾 + if (Props.useHitPointsMode && shieldHitPoints <= 0f) + { + Break(); + } + } + + private void DeflectProjectile(Vector3 impactPos) + { + // 偏转模式:只显示视觉效果,不消耗护盾生命值 + lastAbsorbDamageTick = Find.TickManager.TicksGame; + + Pawn wearer = GetWearer(); + if (wearer != null) + { + impactAngleVect = Vector3Utility.HorizontalVectorFromAngle((impactPos - wearer.TrueCenter()).AngleFlat() + 180f); + + // 播放偏转特效 + FleckMaker.ThrowLightningGlow(impactPos, wearer.Map, 0.5f); + } + } + + private void Break() + { + shieldHitPoints = 0f; + ticksToReset = Props.rechargeCooldownTicks; + sustainer?.End(); + sustainer = null; + + Pawn wearer = GetWearer(); + if (wearer != null && wearer.Map != null) + { + FleckMaker.Static(wearer.TrueCenter(), wearer.Map, FleckDefOf.ExplosionFlash, 12f); + for (int i = 0; i < 6; i++) + { + FleckMaker.ThrowDustPuff(wearer.TrueCenter() + Vector3Utility.HorizontalVectorFromAngle(Rand.Range(0, 360)) * Rand.Range(0.3f, 0.6f), wearer.Map, Rand.Range(0.8f, 1.2f)); + } + } + } + + private void Reset() + { + if (parent.Spawned) + { + SoundDefOf.EnergyShield_Reset.PlayOneShot(new TargetInfo(parent.Position, parent.Map)); + FleckMaker.ThrowLightningGlow(GetWearer().TrueCenter(), parent.Map, 3f); + + if (Props.reactivateEffect != null) + { + Effecter effecter = Props.reactivateEffect.Spawn(parent.Position, parent.Map); + effecter.Trigger(new TargetInfo(parent.Position, parent.Map), TargetInfo.Invalid); + effecter.Cleanup(); + } + } + shieldHitPoints = Props.maxShieldHitPoints; + } + + public void ToggleShield() + { + shieldEnabled = !shieldEnabled; + + Pawn wearer = GetWearer(); + if (wearer != null) + { + string message = shieldEnabled ? $"{wearer.LabelShort}激活了护盾" : $"{wearer.LabelShort}关闭了护盾"; + Messages.Message(message, MessageTypeDefOf.NeutralEvent, false); + } + + if (!shieldEnabled) + { + sustainer?.End(); + sustainer = null; + } + } + + private Pawn GetWearer() + { + if (parent is Apparel apparel) + { + return apparel.Wearer; + } + return null; + } + + // 添加初始化方法,确保护盾值正确设置 + public override void Initialize(CompProperties props) + { + base.Initialize(props); + shieldHitPoints = ((CompProperties_WulaShieldBelt)props).maxShieldHitPoints; + shieldEnabled = ((CompProperties_WulaShieldBelt)props).startEnabled; + } + + public override IEnumerable CompGetWornGizmosExtra() + { + // 确保穿戴者存在 + Pawn wearer = GetWearer(); + if (wearer == null) yield break; + + // 不限制只有选中时才显示 + yield return new Command_Toggle + { + defaultLabel = "护盾开关", + defaultDesc = shieldEnabled ? "关闭护盾" : "激活护盾", + icon = ContentFinder.Get("UI/Commands/DesirePower"), + isActive = () => shieldEnabled, + toggleAction = ToggleShield + }; + } + + public override string CompInspectStringExtra() + { + if (shieldEnabled) + { + if (Props.useHitPointsMode) + { + return $"护盾: {shieldHitPoints:F0} / {Props.maxShieldHitPoints} (生命值模式)"; + } + else + { + return "护盾: 激活 (偏转模式)"; + } + } + else + { + return "护盾: 已关闭"; + } + } + } +} \ No newline at end of file diff --git a/Source/WulaFallenEmpire/EmergencyAbilityPatches.cs b/Source/WulaFallenEmpire/EmergencyAbilityPatches.cs new file mode 100644 index 00000000..845cc8e6 --- /dev/null +++ b/Source/WulaFallenEmpire/EmergencyAbilityPatches.cs @@ -0,0 +1,136 @@ +using HarmonyLib; +using RimWorld; +using System; // Added for Type +using System.Collections.Generic; +using System.Reflection; +using System.Reflection.Emit; +using Verse; + +namespace WulaFallenEmpire +{ + [HarmonyPatch] + public static class EmergencyAbilityPatches + { + // 修复倒地时无法使用能力的问题 + [HarmonyPatch(typeof(Ability), "get_CanCast")] + [HarmonyPostfix] + public static void CanCast_Postfix(Ability __instance, ref AcceptanceReport __result) + { + if (__instance.def.defName == "WULA_EmergencyEnergyRestore") + { + Log.Message($"[EmergencyAbilityPatches] CanCast_Postfix for {__instance.pawn?.LabelShort}, initial result: {__result.Accepted}, reason: {__result.Reason}"); + if (!__result.Accepted) + { + // 检查是否是因为pawn失去知觉而无法使用能力 + if (__instance.pawn.Downed) + { + // 对于紧急能量恢复能力,我们允许在倒地时使用 + __result = true; + Log.Message($"[EmergencyAbilityPatches] CanCast_Postfix: Pawn is downed, overriding to true. New result: {__result.Accepted}"); + } + } + } + } + + // 修复倒地时无法显示能力按钮的问题 + [HarmonyPatch(typeof(Pawn_AbilityTracker), "get_AllAbilitiesForReading")] + [HarmonyPostfix] + public static void GetAbilitiesForDisplay_Postfix(Pawn_AbilityTracker __instance, ref List __result) + { + // 检查pawn是否倒地 + if (__instance.pawn.Downed) + { + // 添加紧急能量恢复能力,即使pawn倒地 + foreach (Ability ability in __instance.abilities) + { + if (ability.def.defName == "WULA_EmergencyEnergyRestore" && !__result.Contains(ability)) + { + __result.Add(ability); + } + } + } + } + + // 修复倒地时无法使用能力的UI限制 - 直接修补Ability.GizmoDisabled方法 + [HarmonyPatch(typeof(Ability), "GizmoDisabled")] + [HarmonyPostfix] + public static void Ability_GizmoDisabled_Postfix(Ability __instance, ref bool __result, ref string reason) + { + if (__instance.def.defName == "WULA_EmergencyEnergyRestore") + { + Log.Message($"[EmergencyAbilityPatches] GizmoDisabled_Postfix for {__instance.pawn?.LabelShort}, initial result: {__result}, reason: {reason}"); + if (__result) + { + // 检查是否是因为倒地而被禁用 + if (__instance.pawn.Downed && reason != null && + (reason.Contains("失去知觉") || reason.Contains("unconscious") || reason.Contains("CommandDisabledUnconscious"))) + { + // 对于紧急能量恢复能力,我们允许在倒地时使用 + __result = false; + reason = null; + Log.Message($"[EmergencyAbilityPatches] GizmoDisabled_Postfix: Pawn is downed, overriding to false. New result: {__result}"); + } + } + } + } + + // 额外的安全措施:修复Command_Ability的禁用检查 + [HarmonyPatch(typeof(Command_Ability), "get_Disabled")] + [HarmonyPostfix] + public static void Command_Ability_GizmoDisabled_Postfix(Command_Ability __instance, ref bool __result) + { + // 使用反射获取ability字段 + var abilityField = typeof(Command_Ability).GetField("ability", BindingFlags.Instance | BindingFlags.NonPublic); + if (abilityField == null) return; + + Ability ability = (Ability)abilityField.GetValue(__instance); + if (ability == null) return; + + if (ability.def.defName == "WULA_EmergencyEnergyRestore") + { + Log.Message($"[EmergencyAbilityPatches] Command_Ability_GizmoDisabled_Postfix for {ability.pawn?.LabelShort}, initial result: {__result}"); + if (__result && ability.pawn.Downed) + { + // 对于紧急能量恢复能力,我们允许在倒地时使用 + __result = false; + Log.Message($"[EmergencyAbilityPatches] Command_Ability_GizmoDisabled_Postfix: Pawn is downed, overriding to false. New result: {__result}"); + } + } + } + + // 新增补丁:检查ApparelPreventsShooting是否阻止了施法 + [HarmonyPatch(typeof(Verb), "ApparelPreventsShooting")] + [HarmonyPostfix] + public static void ApparelPreventsShooting_Postfix(Verb __instance, ref bool __result) + { + Log.Message($"[EmergencyAbilityPatches] ApparelPreventsShooting_Postfix called. Verb type: {__instance.GetType().Name}, Caster: {__instance.CasterPawn?.LabelShort}, initial result: {__result}"); + if (__instance is Verb_CastAbility castAbilityVerb && castAbilityVerb.ability?.def.defName == "WULA_EmergencyEnergyRestore") + { + Log.Message($"[EmergencyAbilityPatches] ApparelPreventsShooting_Postfix for EmergencyEnergyRestore. Pawn: {__instance.CasterPawn?.LabelShort}, result: {__result}"); + } + } + + // 最终诊断补丁:检查Verb.TryStartCastOn是否被调用 + [HarmonyPatch(typeof(Verb), "TryStartCastOn", new Type[] { typeof(LocalTargetInfo), typeof(LocalTargetInfo), typeof(bool), typeof(bool), typeof(bool), typeof(bool) })] + [HarmonyPrefix] + public static void TryStartCastOn_DiagnosticPrefix(Verb __instance, LocalTargetInfo castTarg, LocalTargetInfo destTarg, ref bool __result) + { + Log.Message($"[EmergencyAbilityPatches] TryStartCastOn_DiagnosticPrefix called for Verb type: {__instance.GetType().Name}. Caster: {__instance.CasterPawn?.LabelShort}. CastTarg: {castTarg}, DestTarg: {destTarg}"); + if (__instance is Verb_CastAbility castAbilityVerb && castAbilityVerb.ability?.def.defName == "WULA_EmergencyEnergyRestore") + { + Log.Message($"[EmergencyAbilityPatches] TryStartCastOn_DiagnosticPrefix: This is EmergencyEnergyRestore ability. Caster: {__instance.CasterPawn?.LabelShort}"); + } + } + + // 诊断补丁:检查Verb_CastAbility.TryCastShot是否被调用 + [HarmonyPatch(typeof(Verb_CastAbility), "TryCastShot")] + [HarmonyPrefix] + public static void TryCastShot_DiagnosticPrefix(Verb_CastAbility __instance, ref bool __result) + { + if (__instance.ability?.def.defName == "WULA_EmergencyEnergyRestore") + { + Log.Message($"[EmergencyAbilityPatches] TryCastShot_DiagnosticPrefix called for EmergencyEnergyRestore. Pawn: {__instance.CasterPawn?.LabelShort}"); + } + } + } +} diff --git a/Source/WulaFallenEmpire/WulaFallenEmpire.csproj b/Source/WulaFallenEmpire/WulaFallenEmpire.csproj index 6de951e6..df0101bf 100644 --- a/Source/WulaFallenEmpire/WulaFallenEmpire.csproj +++ b/Source/WulaFallenEmpire/WulaFallenEmpire.csproj @@ -14,13 +14,15 @@ true - true - full + false + none false ..\..\1.6\Assemblies\ DEBUG;TRACE prompt 4 + Off + .allowedextension pdbonly @@ -80,6 +82,16 @@ + + + + + + + + + + diff --git a/Source/WulaFallenEmpire/WulaFallenEmpireMod.cs b/Source/WulaFallenEmpire/WulaFallenEmpireMod.cs index cb6a4608..41cb256b 100644 --- a/Source/WulaFallenEmpire/WulaFallenEmpireMod.cs +++ b/Source/WulaFallenEmpire/WulaFallenEmpireMod.cs @@ -13,6 +13,9 @@ namespace WulaFallenEmpire // 初始化Harmony var harmony = new Harmony("tourswen.wulafallenempire"); // 替换为您的唯一Mod ID harmony.PatchAll(Assembly.GetExecutingAssembly()); + + // 手动应用护盾腰带的近战拦截补丁 + WulaShieldBeltPatches.ApplyMeleePatch(harmony); Log.Message("[WulaFallenEmpire] Harmony patches applied."); } diff --git a/Source/WulaFallenEmpire/WulaShieldBeltPatches.cs b/Source/WulaFallenEmpire/WulaShieldBeltPatches.cs new file mode 100644 index 00000000..3b706712 --- /dev/null +++ b/Source/WulaFallenEmpire/WulaShieldBeltPatches.cs @@ -0,0 +1,97 @@ +using HarmonyLib; +using RimWorld; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using Verse; + +namespace WulaFallenEmpire +{ + public static class WulaShieldBeltPatches + { + // 拦截投射物 + [HarmonyPatch(typeof(Projectile), "CheckForFreeInterceptBetween")] + [HarmonyPrefix] + public static bool CheckForFreeInterceptBetween_Prefix(Projectile __instance, Vector3 lastExactPos, Vector3 newExactPos, ref bool __result) + { + var map = __instance.Map; + if (map == null) return true; + + // 检查所有穿戴护盾腰带的pawn + var pawns = map.mapPawns.AllPawnsSpawned; + foreach (var pawn in pawns) + { + if (pawn.apparel?.WornApparel == null) continue; + + foreach (var apparel in pawn.apparel.WornApparel) + { + var shieldComp = apparel.GetComp(); + if (shieldComp != null && shieldComp.CheckIntercept(__instance, lastExactPos, newExactPos)) + { + // 使用反射调用protected方法 + typeof(Projectile).GetMethod("Impact", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic) + .Invoke(__instance, new object[] { null, true }); + __result = true; + return false; + } + } + } + + return true; + } + + // 拦截近战攻击 - 使用Harmony的手动补丁方式 + public static void ApplyMeleePatch(Harmony harmony) + { + // 获取Thing.TakeDamage方法 + var originalMethod = typeof(Thing).GetMethod("TakeDamage", + System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance); + + if (originalMethod != null) + { + // 获取我们的前缀方法 + var prefixMethod = typeof(WulaShieldBeltPatches).GetMethod("TakeDamage_Manual_Prefix", + System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.Public); + + // 应用补丁 + harmony.Patch(originalMethod, new HarmonyMethod(prefixMethod)); + } + } + + // 手动补丁方法 + public static bool TakeDamage_Manual_Prefix(Thing __instance, DamageInfo dinfo, ref DamageWorker.DamageResult __result) + { + // 只有当实例是Pawn时才执行护盾腰带的逻辑 + if (__instance is Pawn pawn) + { + if (pawn.apparel?.WornApparel == null) return true; + + // 检查是否有护盾腰带可以拦截这次攻击 + foreach (var apparel in pawn.apparel.WornApparel) + { + var shieldComp = apparel.GetComp(); + if (shieldComp != null && dinfo.Instigator is Pawn attacker) + { + if (shieldComp.CheckMeleeIntercept(dinfo, attacker)) + { + __result = new DamageWorker.DamageResult(); + return false; + } + } + } + } + + return true; + } + + // 为护盾腰带添加投射物拦截器接口支持 + [HarmonyPatch(typeof(CompProjectileInterceptor), "CheckIntercept")] + [HarmonyPostfix] + public static void CheckIntercept_Postfix(CompProjectileInterceptor __instance, Projectile projectile, Vector3 lastExactPos, Vector3 newExactPos, ref bool __result) + { + if (__result) return; // 如果已经被拦截了就不需要再检查 + + // 这个补丁确保我们的护盾系统与原版的投射物拦截系统兼容 + } + } +} diff --git a/Source/WulaFallenEmpire/clean.bat b/Source/WulaFallenEmpire/clean.bat new file mode 100644 index 00000000..a657fac4 --- /dev/null +++ b/Source/WulaFallenEmpire/clean.bat @@ -0,0 +1,5 @@ +@echo off +echo 清理临时文件... +if exist "obj" rmdir /s /q obj +if exist "bin" rmdir /s /q bin +echo 清理完成! \ No newline at end of file diff --git a/Source/WulaFallenEmpire/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/Source/WulaFallenEmpire/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs deleted file mode 100644 index 3871b184..00000000 --- a/Source/WulaFallenEmpire/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs +++ /dev/null @@ -1,4 +0,0 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/Source/WulaFallenEmpire/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Source/WulaFallenEmpire/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache deleted file mode 100644 index 455cf6fae82fa54ff249372674e538dcdb65f1d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2204 zcmcIlNsALf7>yco5cD8|A|7&7h(%|ajx*pvvk<|AG0B)Ylnj;bZ#t#5#Hz~Dg!tS2 zs$&x8qJvB~boExe_bspA_v}HTP$-cVS28Y=ScoElH54A>+d=D$jvO#atzX%EZfT^Y z)QS$doM2&K;>qpiMnw2S*; zrOkIr2A%QoY1tr6Qlp2Bs*ds`x|G6qB-dm-$0x3Sc%n;8=3gH2m!JMZ zahG;f!WCp9M!Q*vOv?Sc1I92#E;aA6h{foF3Y>LJ#mvOMCTOjNdw5>tLh6x=-NlZ^ zQ|*otUY>7S7zK}+gWtxOX12L~vgvW<&Y7Eajg}wLGPW-^V`dU?2YYOD1Ci4v-L^MF zNVs(-JsY8)u9$(NY2NhI%Fa_O2RbccFt)SaKH3b~%Cis9jJF?d(amhs)K98mEevY4 z5Jye89}0fdWNF?>Xg~iWn2}zX23Zw*Iz$N4om<5 diff --git a/Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.csproj.AssemblyReference.cache b/Source/WulaFallenEmpire/obj/Debug/WulaFallenEmpire.csproj.AssemblyReference.cache deleted file mode 100644 index 4665d311cd861f696a3a11f2052670706b1c9d4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61835 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 Pq5f$~Qx|d?SS&pS+-s_i3@S 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