diff --git a/1.6/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/1.6/Assemblies/WulaFallenEmpire.dll
index 86145388..321b2a61 100644
Binary files a/1.6/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/1.6/Assemblies/WulaFallenEmpire.dll differ
diff --git a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Shuttle_Building.xml b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Shuttle_Building.xml
index fb7fb932..eb92e0d2 100644
--- a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Shuttle_Building.xml
+++ b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Shuttle_Building.xml
@@ -344,6 +344,20 @@
-2000
true
+
+
+
+
+ 2000
+ true
+ true
+ false
+ Shuttle_PawnLoaded
+ Shuttle_PawnExit
+
+
+ ShuttleIdle_Ambience
+
diff --git a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml
index 5776549f..9af2e59b 100644
--- a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml
+++ b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml
@@ -427,8 +427,6 @@
BuildingDestroyed_Metal_Small
3.5
- false
- true
WULA_Cat_Bunker_TurretGun
false
diff --git a/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/Misc_Gameplay.xml b/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/Misc_Gameplay.xml
index 585bd433..d8040567 100644
--- a/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/Misc_Gameplay.xml
+++ b/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/Misc_Gameplay.xml
@@ -322,7 +322,7 @@
区域伤害:已启用
区域伤害:已禁用
- 更换武器
+ 重置武器
扔掉当前武器,并装备该单位的初始武器
{0} 更换了武器为 {1}
{0} 没有可用的武器类型
diff --git a/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml b/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml
index ea2deecf..a87ce8c4 100644
--- a/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml
+++ b/1.6/1.6/Languages/ChineseSimplified (简体中文)/Keyed/WULA_Keyed.xml
@@ -265,4 +265,13 @@
命令该单位所有的炮塔攻击指定目标。如果目标不处于某个炮塔的攻击范围或者无法攻击到目标,则其依然会自行索敌。
清除目标
清除指定的集中攻击目标,各炮塔将自行索敌。
+
+ 更换装备
+ 更换乌拉猫猫的装备,使其可以承担不同的工作。\n\n更换装备的预制件装载在乌拉猫猫地堡中,下达更换指令后,乌拉猫猫会去寻找最近的地堡进行装备更换。
+ 没有可以抵达的乌拉猫猫地堡
+ 没有可用位置
+ 猫猫集合!
+ 使地堡发出号召,让地图上所有的乌拉猫猫自动进入征召状态并聚集到该地堡附近。
+ 集合能力冷却中
+ 地堡被停用,无法进行集结征召
diff --git a/Content/Textures/Wula/UI/Commands/Wula_GatherCats.png b/Content/Textures/Wula/UI/Commands/Wula_GatherCats.png
new file mode 100644
index 00000000..6af5b132
Binary files /dev/null and b/Content/Textures/Wula/UI/Commands/Wula_GatherCats.png differ
diff --git a/Source/WulaFallenEmpire/BuildingComp/WULA_BuildToPawn/CompBuildToPawn.cs b/Source/WulaFallenEmpire/BuildingComp/WULA_BuildToPawn/CompBuildToPawn.cs
index 008e8fa1..19f78ca2 100644
--- a/Source/WulaFallenEmpire/BuildingComp/WULA_BuildToPawn/CompBuildToPawn.cs
+++ b/Source/WulaFallenEmpire/BuildingComp/WULA_BuildToPawn/CompBuildToPawn.cs
@@ -42,7 +42,7 @@ namespace WulaFallenEmpire
GenSpawn.Spawn(pawn, parent.Position, parent.Map, WipeMode.Vanish);
- if (Props.initDrafted && pawn.drafter!=null)
+ if (Props.initDrafted && pawn.Faction.IsPlayer && pawn.drafter!=null)
pawn.drafter.Drafted = true;
}
diff --git a/Source/WulaFallenEmpire/BuildingComp/WULA_Gather/CompGather.cs b/Source/WulaFallenEmpire/BuildingComp/WULA_Gather/CompGather.cs
index 1355c57d..e82d8c12 100644
--- a/Source/WulaFallenEmpire/BuildingComp/WULA_Gather/CompGather.cs
+++ b/Source/WulaFallenEmpire/BuildingComp/WULA_Gather/CompGather.cs
@@ -135,21 +135,6 @@ namespace WulaFallenEmpire
// 生成新的Pawn
GenSpawn.Spawn(newPawn, position, map);
-
- // 为新Pawn添加AutonomousCat组件(如果还没有)
- EnsureAutonomousCatComponent(newPawn);
-
- // 显示消息
- Messages.Message(
- "Wula_TransformComplete".Translate(originalPawn.LabelShort, newPawn.LabelShort),
- MessageTypeDefOf.PositiveEvent
- );
-
- // 记录日志
- if (Prefs.DevMode)
- {
- Log.Message($"[CompGather] Transformation complete: {originalPawn.LabelShort} -> {newPawn.LabelShort}");
- }
}
catch (Exception ex)
{
@@ -157,34 +142,6 @@ namespace WulaFallenEmpire
}
}
- // 确保新Pawn有AutonomousCat组件
- private void EnsureAutonomousCatComponent(Pawn newPawn)
- {
- // 检查是否已经有AutonomousCat组件
- if (newPawn.TryGetComp() != null)
- return;
-
- // 检查Pawn的定义中是否有AutonomousCat组件
- var compProps = newPawn.def.comps?.Find(c => c.compClass == typeof(Comp_AutonomousCat)) as CompProperties_AutonomousCat;
- if (compProps == null)
- {
- // 如果没有,添加一个默认的AutonomousCat组件
- newPawn.AllComps.Add(new Comp_AutonomousCat()
- {
- parent = newPawn,
- props = new CompProperties_AutonomousCat()
- {
- autoDraftOnGather = true
- }
- });
-
- if (Prefs.DevMode)
- {
- Log.Message($"[CompGather] Added AutonomousCat component to {newPawn.LabelShort}");
- }
- }
- }
-
// Gizmo显示
public override IEnumerable CompGetGizmosExtra()
{
@@ -210,7 +167,7 @@ namespace WulaFallenEmpire
cachedGizmo = new Command_Action();
cachedGizmo.defaultLabel = "Wula_GatherCats".Translate();
cachedGizmo.defaultDesc = "Wula_GatherCatsDesc".Translate();
- cachedGizmo.icon = ContentFinder.Get("UI/Gizmos/GatherCats", false) ?? BaseContent.BadTex;
+ cachedGizmo.icon = ContentFinder.Get("Wula/UI/Commands/Wula_GatherCats", false) ?? BaseContent.BadTex;
cachedGizmo.action = StartGathering;
// 添加冷却时间显示
@@ -255,10 +212,7 @@ namespace WulaFallenEmpire
// 查找并命令范围内的 Autonomous Cats
GatherAutonomousCats();
-
- // 显示消息
- Messages.Message("Wula_GatheringStarted".Translate(), MessageTypeDefOf.PositiveEvent);
-
+
// 刷新Gizmo状态
cachedGizmo.disabledReason = GetDisabledReason();
}
@@ -295,15 +249,6 @@ namespace WulaFallenEmpire
{
CommandCatToGather(cat);
}
-
- // 报告召集数量
- if (autonomousCats.Count > 0)
- {
- Messages.Message(
- "Wula_CatsGathered".Translate(autonomousCats.Count),
- MessageTypeDefOf.NeutralEvent
- );
- }
}
// 命令单个 Autonomous Cat
@@ -340,12 +285,6 @@ namespace WulaFallenEmpire
cat.jobs.StartJob(job, JobCondition.InterruptForced);
}
-
- // 记录日志
- if (Prefs.DevMode)
- {
- Log.Message($"[CompGather] Cat {cat.LabelShort} commanded to gather at {parent.Position}");
- }
}
catch (Exception ex)
{
diff --git a/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/CompAutonomousCat.cs b/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/CompAutonomousCat.cs
index cf35d3ef..c91e35c2 100644
--- a/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/CompAutonomousCat.cs
+++ b/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/CompAutonomousCat.cs
@@ -83,12 +83,6 @@ namespace WulaFallenEmpire
{
CreateGatherJob(pawn, target);
}
-
- // 记录日志
- if (Prefs.DevMode)
- {
- Log.Message($"[CompAutonomousCat] {pawn.LabelShort} responding to gather call from {target?.LabelShort ?? "unknown"}");
- }
}
catch (Exception ex)
{
@@ -152,18 +146,6 @@ namespace WulaFallenEmpire
// 清除当前任务并开始新任务
pawn.jobs.StopAll();
pawn.jobs.StartJob(job, JobCondition.InterruptForced);
-
- // 显示消息
- Messages.Message(
- "Wula_TransformStarted".Translate(pawn.LabelShort, targetPawnKind.label),
- MessageTypeDefOf.NeutralEvent
- );
-
- // 记录日志
- if (Prefs.DevMode)
- {
- Log.Message($"[CompAutonomousCat] {pawn.LabelShort} starting transformation to {targetPawnKind.label}");
- }
}
catch (Exception ex)
{
@@ -314,12 +296,6 @@ namespace WulaFallenEmpire
if (cachedTransformGizmo != null)
{
- // 如果已有待处理的转化,显示不同图标或状态
- if (pendingTransformTarget != null)
- {
- cachedTransformGizmo.disabledReason = "Wula_TransformPending".Translate(pendingTransformTarget.label);
- }
-
yield return cachedTransformGizmo;
}
}
@@ -333,7 +309,7 @@ namespace WulaFallenEmpire
cachedTransformGizmo = new Command_Action();
cachedTransformGizmo.defaultLabel = "Wula_Transform".Translate();
cachedTransformGizmo.defaultDesc = "Wula_TransformDesc".Translate();
- cachedTransformGizmo.icon = ContentFinder.Get("UI/Gizmos/Transform", false) ?? BaseContent.BadTex;
+ cachedTransformGizmo.icon = ContentFinder.Get("Wula/UI/Commands/WULA_ConvertMechanoids", false) ?? BaseContent.BadTex;
cachedTransformGizmo.action = () => ShowTransformMenu();
// 设置热键
@@ -359,13 +335,6 @@ namespace WulaFallenEmpire
));
}
- // 添加取消选项
- options.Add(new FloatMenuOption(
- "Cancel".Translate(),
- null,
- MenuOptionPriority.Default
- ));
-
Find.WindowStack.Add(new FloatMenu(options));
}
diff --git a/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/JobDriver_TransformPawn.cs b/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/JobDriver_TransformPawn.cs
index 6da93fe0..53ecf59f 100644
--- a/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/JobDriver_TransformPawn.cs
+++ b/Source/WulaFallenEmpire/Pawn_Comps/AutonomousCat/JobDriver_TransformPawn.cs
@@ -16,10 +16,10 @@ namespace WulaFallenEmpire
public override bool TryMakePreToilReservations(bool errorOnFailed)
{
// 预留目标建筑
- if (!pawn.Reserve(job.targetA, job, 1, -1, null, errorOnFailed))
- {
- return false;
- }
+ //if (!pawn.Reserve(job.targetA, job, 1, -1, null, errorOnFailed))
+ //{
+ // return false;
+ //}
return true;
}
@@ -51,7 +51,6 @@ namespace WulaFallenEmpire
// 确保可以转化
if (!gatherComp.CanTransformPawn(pawn))
{
- Messages.Message("Wula_CannotTransformHere".Translate(), MessageTypeDefOf.RejectInput);
ReadyForNextToil();
return;
}
@@ -113,7 +112,6 @@ namespace WulaFallenEmpire
var targetPawnKind = PawnComp?.PendingTransformTarget;
if (targetPawnKind == null)
{
- Messages.Message("Wula_NoTransformTarget".Translate(), MessageTypeDefOf.RejectInput);
return;
}
diff --git a/美术与文本源文件/Wula/UI/Abilities/Wula_GatherCats.sai2 b/美术与文本源文件/Wula/UI/Abilities/Wula_GatherCats.sai2
new file mode 100644
index 00000000..ac296769
Binary files /dev/null and b/美术与文本源文件/Wula/UI/Abilities/Wula_GatherCats.sai2 differ