From 47d5dc9490032c6b9e804b5333958311c46120e1 Mon Sep 17 00:00:00 2001 From: "ProjectKoi-Kalo\\Kalo" Date: Wed, 3 Sep 2025 19:54:55 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E4=BA=A7=E5=A5=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1.6/1.6/Assemblies/ArachnaeSwarm.dll | Bin 49664 -> 51200 bytes .../Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml | 8 +- Source/ArachnaeSwarm/ArachnaeSwarm.csproj | 4 + .../Work/CompMilkableArachnae.cs | 80 ++++++++++++++++++ .../Work/CompProperties_MilkableArachnae.cs | 17 ++++ 5 files changed, 105 insertions(+), 4 deletions(-) create mode 100644 Source/ArachnaeSwarm/Work/CompMilkableArachnae.cs create mode 100644 Source/ArachnaeSwarm/Work/CompProperties_MilkableArachnae.cs diff --git a/1.6/1.6/Assemblies/ArachnaeSwarm.dll b/1.6/1.6/Assemblies/ArachnaeSwarm.dll index de23dbc6161de391d117aac6db6a656936cd3986..456ab82dd527dcfbd55645498e49fdce70e461bc 100644 GIT binary patch delta 21117 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 jb2+{)5mT@Is9SyJTBSR%^Ir~i%jj-n*WZ3!h delta 19566 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 diff --git a/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml b/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml index 65aff14..c7db3db 100644 --- a/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml +++ b/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml @@ -587,10 +587,10 @@ -
  • - ARA_InsectJelly - 0.01 - 14 +
  • + ARA_InsectJelly + 2 + 14
  • true diff --git a/Source/ArachnaeSwarm/ArachnaeSwarm.csproj b/Source/ArachnaeSwarm/ArachnaeSwarm.csproj index 2a93bed..9e8ae6b 100644 --- a/Source/ArachnaeSwarm/ArachnaeSwarm.csproj +++ b/Source/ArachnaeSwarm/ArachnaeSwarm.csproj @@ -84,6 +84,10 @@ + + + + diff --git a/Source/ArachnaeSwarm/Work/CompMilkableArachnae.cs b/Source/ArachnaeSwarm/Work/CompMilkableArachnae.cs new file mode 100644 index 0000000..a2c7c18 --- /dev/null +++ b/Source/ArachnaeSwarm/Work/CompMilkableArachnae.cs @@ -0,0 +1,80 @@ +using RimWorld; +using Verse; +using UnityEngine; + +namespace ArachnaeSwarm +{ + public class CompMilkableArachnae : CompHasGatherableBodyResource + { + protected override int GatherResourcesIntervalDays => Props.milkIntervalDays; + + protected override int ResourceAmount => Props.milkAmount; + + protected override ThingDef ResourceDef => Props.milkDef; + + protected override string SaveKey => "milkFullness"; + + public CompProperties_MilkableArachnae Props => (CompProperties_MilkableArachnae)props; + + protected override bool Active + { + get + { + if (!base.Active) + { + return false; + } + Pawn pawn = parent as Pawn; + if (Props.milkFemaleOnly && pawn != null && pawn.gender != Gender.Female) + { + return false; + } + if (pawn != null && !pawn.ageTracker.CurLifeStage.milkable) + { + return false; + } + if (ModsConfig.AnomalyActive && pawn.IsShambler) + { + return false; + } + return true; + } + } + + public override string CompInspectStringExtra() + { + if (!Active) + { + return null; + } + return "MilkFullness".Translate() + ": " + base.Fullness.ToStringPercent(); + } + + public override void CompTick() + { + base.CompTick(); + + // 检查是否活跃且fullness已满 + if (Active && fullness >= 1.0f) + { + // 检查parent是否是Pawn且在普通地图上 + if (parent is Pawn pawn && pawn.Map != null) + { + // 自动生成资源并掉落到地上 + int num = ResourceAmount; + while (num > 0) + { + int num2 = Mathf.Clamp(num, 1, ResourceDef.stackLimit); + num -= num2; + Thing thing = ThingMaker.MakeThing(ResourceDef); + thing.stackCount = num2; + GenPlace.TryPlaceThing(thing, pawn.Position, pawn.Map, ThingPlaceMode.Near); + } + + // 重置挤奶进度 + fullness = 0f; + } + } + } + } +} \ No newline at end of file diff --git a/Source/ArachnaeSwarm/Work/CompProperties_MilkableArachnae.cs b/Source/ArachnaeSwarm/Work/CompProperties_MilkableArachnae.cs new file mode 100644 index 0000000..b76818d --- /dev/null +++ b/Source/ArachnaeSwarm/Work/CompProperties_MilkableArachnae.cs @@ -0,0 +1,17 @@ +using Verse; + +namespace ArachnaeSwarm +{ + public class CompProperties_MilkableArachnae : CompProperties + { + public int milkIntervalDays; + public int milkAmount = 1; + public ThingDef milkDef; + public bool milkFemaleOnly = true; + + public CompProperties_MilkableArachnae() + { + compClass = typeof(CompMilkableArachnae); // 注意这里是 CompMilkableArachnae + } + } +} \ No newline at end of file