+
\ No newline at end of file
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 a47ae7c..f51f553 100644
--- a/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml
+++ b/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml
@@ -648,6 +648,7 @@
+
ARA_HiveMindDrone
ARA_HiveStrength_Low
ARA_Hive_Cannot_Speak
@@ -2064,4 +2065,4 @@
-->
-
\ No newline at end of file
+
diff --git a/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawner.cs b/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawner.cs
index e7e5739..f24ee22 100644
--- a/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawner.cs
+++ b/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawner.cs
@@ -115,7 +115,10 @@ namespace ArachnaeSwarm
{
if (order.spawnUntilTick > 0 && Find.TickManager.TicksGame >= order.spawnUntilTick)
{
- Pawn pawn = PawnGenerator.GeneratePawn(new PawnGenerationRequest(order.entry.pawnKind, parent.Faction));
+ Pawn pawn = PawnGenerator.GeneratePawn(new PawnGenerationRequest(
+ order.entry.pawnKind,
+ parent.Faction,
+ forceGenerateNewPawn: true));
if (pawn != null) GenPlace.TryPlaceThing(pawn, parent.Position, parent.Map, ThingPlaceMode.Near);
return true;
}
@@ -200,4 +203,4 @@ namespace ArachnaeSwarm
}
}
}
-}
\ No newline at end of file
+}
diff --git a/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawnerWithFlux.cs b/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawnerWithFlux.cs
index 5295c93..3c999f1 100644
--- a/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawnerWithFlux.cs
+++ b/Source/ArachnaeSwarm/Building_Comps/ARA_SpawnPawnFromList/CompQueuedPawnSpawnerWithFlux.cs
@@ -355,7 +355,10 @@ namespace ArachnaeSwarm
{
if (order.config?.pawnKind == null) return;
- Pawn pawn = PawnGenerator.GeneratePawn(new PawnGenerationRequest(order.config.pawnKind, parent.Faction));
+ Pawn pawn = PawnGenerator.GeneratePawn(new PawnGenerationRequest(
+ order.config.pawnKind,
+ parent.Faction,
+ forceGenerateNewPawn: true));
if (pawn != null)
{
ApplyQualityEffects(pawn, order.QualityPercent, order.config);
diff --git a/Source/ArachnaeSwarm/Buildings/Building_Ootheca/Building_Ootheca.cs b/Source/ArachnaeSwarm/Buildings/Building_Ootheca/Building_Ootheca.cs
index ac1b535..4043da0 100644
--- a/Source/ArachnaeSwarm/Buildings/Building_Ootheca/Building_Ootheca.cs
+++ b/Source/ArachnaeSwarm/Buildings/Building_Ootheca/Building_Ootheca.cs
@@ -339,7 +339,11 @@ namespace ArachnaeSwarm
if (incubatingPawnKind == null) return;
float finalQuality = QualityPercent;
- var pawn = PawnGenerator.GeneratePawn(incubatingPawnKind, Faction);
+ var request = new PawnGenerationRequest(
+ incubatingPawnKind,
+ Faction,
+ forceGenerateNewPawn: true);
+ var pawn = PawnGenerator.GeneratePawn(request);
ApplyQualityEffects(pawn, finalQuality);
GenSpawn.Spawn(pawn, Position, Map);
@@ -564,6 +568,7 @@ namespace ArachnaeSwarm
// 首先添加中子通量Gizmo(最重要的控制)
if (Faction == Faction.OfPlayer)
{
+ yield return new Gizmo_PawnProgressBar(this);
yield return new Gizmo_NeutronFlux(this);
}
// 然后是基础Gizmo,但过滤一些不需要的