diff --git a/1.6/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/1.6/Assemblies/WulaFallenEmpire.dll
index bf2a7b1b..985a6918 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_Misc/Weapons/WULA_FE_Machine_Weapon.xml b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Machine_Weapon.xml
index 42a240e4..ce03c0a9 100644
--- a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Machine_Weapon.xml
+++ b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Machine_Weapon.xml
@@ -204,7 +204,7 @@
None
true
- Wula/Weapon/Wula_Mobile_Factory_Turret
+ Wula/Weapon/WULA_RW_Unlimit_Penetrating_Beam_Cannon
Graphic_Single
0.75
diff --git a/1.6/1.6/Defs/ThingDefs_Races/WULA_Mechunit_Race.xml b/1.6/1.6/Defs/ThingDefs_Races/WULA_Mechunit_Race.xml
index 516dbc1b..81918af3 100644
--- a/1.6/1.6/Defs/ThingDefs_Races/WULA_Mechunit_Race.xml
+++ b/1.6/1.6/Defs/ThingDefs_Races/WULA_Mechunit_Race.xml
@@ -118,9 +118,9 @@
Wula_AI_Heavy_Panzer_Turret_Weapon
20
0
- 5
+ 3
true
- 3
+ 7
@@ -384,10 +384,10 @@
0
Wula_AI_Rocket_Panzer_Turret_Weapon
20
- 30
+ 0
8
true
- 3
+ 10
@@ -866,7 +866,7 @@
0
- Wula_CR_Mobile_Factory_Turret
+ Wula_MR_Mobile_Factory_Turret
@@ -879,7 +879,7 @@
-90
- (-1, 0, -1.45)
+ (-1.5, 0, -1.45)
true
-5
@@ -890,7 +890,7 @@
-90
- (1.5, 0, -1.45)
+ (2.1, 0, -1.45)
90
@@ -902,7 +902,7 @@
1
- Wula_CR_Mobile_Factory_Turret
+ Wula_MR_Mobile_Factory_Turret
@@ -915,7 +915,7 @@
-90
- (1, 0, -1.45)
+ (1.5, 0, -1.45)
-5
@@ -924,7 +924,7 @@
-90
- (-1.6, 0, -1.45)
+ (-2.1, 0, -1.45)
90
@@ -937,7 +937,7 @@
2
- Wula_MR_Mobile_Factory_Turret
+ Wula_LR_Mobile_Factory_Turret
@@ -950,7 +950,7 @@
-90
- (-1.3, 0, -0.45)
+ (-1.8, 0, -0.45)
true
-5
@@ -961,7 +961,7 @@
-90
- (2.3, 0, -0.45)
+ (2.8, 0, -0.45)
90
@@ -973,7 +973,7 @@
3
- Wula_MR_Mobile_Factory_Turret
+ Wula_LR_Mobile_Factory_Turret
@@ -986,7 +986,7 @@
-90
- (1.3, 0, -0.45)
+ (1.8, 0, -0.45)
true
-5
@@ -996,7 +996,7 @@
-90
- (-2.3, 0, -0.45)
+ (-2.8, 0, -0.45)
90
@@ -1022,7 +1022,7 @@
-90
- (1.25, 0, 0.45)
+ (1.75, 0, 0.45)
true
-5
@@ -1033,7 +1033,7 @@
-90
- (-2.15, 0, 0.65)
+ (-2.65, 0, 0.65)
90
@@ -1058,7 +1058,7 @@
-90
- (-1.25, 0, 0.45)
+ (-1.75, 0, 0.45)
true
-5
@@ -1068,7 +1068,7 @@
-90
- (2.05, 0, 0.65)
+ (2.65, 0, 0.65)
90
diff --git a/Content/Textures/Wula/UI/Commands/WULA_TargetFocus.png b/Content/Textures/Wula/UI/Commands/WULA_TargetFocus.png
new file mode 100644
index 00000000..e2998a43
Binary files /dev/null and b/Content/Textures/Wula/UI/Commands/WULA_TargetFocus.png differ
diff --git a/Source/WulaFallenEmpire/Pawn_Comps/MultiTurretGun/CompMultiTurretGun.cs b/Source/WulaFallenEmpire/Pawn_Comps/MultiTurretGun/CompMultiTurretGun.cs
index 69d4860e..cb2077b4 100644
--- a/Source/WulaFallenEmpire/Pawn_Comps/MultiTurretGun/CompMultiTurretGun.cs
+++ b/Source/WulaFallenEmpire/Pawn_Comps/MultiTurretGun/CompMultiTurretGun.cs
@@ -689,22 +689,23 @@ namespace WulaFallenEmpire
// 为主控炮塔创建集中火力Gizmo
if (IsMasterTurret)
{
- cachedFocusGizmo = new Command_Action();
- cachedFocusGizmo.defaultLabel = "Wula_FocusFire".Translate();
- cachedFocusGizmo.defaultDesc = "Wula_FocusFireDesc".Translate();
- cachedFocusGizmo.icon = ContentFinder.Get("UI/Gizmos/TargetFocus", false) ?? BaseContent.BadTex;
- cachedFocusGizmo.action = () =>
- {
- // 显示目标选择菜单
- ShowTargetSelectMenu();
- };
-
// 如果有集中火力目标,添加清除按钮
if (focusTarget.IsValid && lastFocusPawn == parent)
{
cachedFocusGizmo.defaultLabel = "Wula_ClearFocus".Translate();
cachedFocusGizmo.defaultDesc = "Wula_ClearFocusDesc".Translate();
- cachedFocusGizmo.icon = ContentFinder.Get("UI/Gizmos/TargetClear", false) ?? BaseContent.BadTex;
+ cachedFocusGizmo.icon = ContentFinder.Get("Wula/UI/Commands/WULA_TargetFocus", false) ?? BaseContent.BadTex;
+ }
+ else {
+ cachedFocusGizmo = new Command_Action();
+ cachedFocusGizmo.defaultLabel = "Wula_FocusFire".Translate();
+ cachedFocusGizmo.defaultDesc = "Wula_FocusFireDesc".Translate();
+ cachedFocusGizmo.icon = ContentFinder.Get("Wula/UI/Commands/WULA_TargetFocus", false) ?? BaseContent.BadTex;
+ cachedFocusGizmo.action = () =>
+ {
+ // 显示目标选择菜单
+ ShowTargetSelectMenu();
+ };
}
}
}
@@ -715,52 +716,13 @@ namespace WulaFallenEmpire
if (focusTarget.IsValid && lastFocusPawn == parent)
{
focusTarget = LocalTargetInfo.Invalid;
- Messages.Message("Wula_FocusCleared".Translate(), MessageTypeDefOf.NeutralEvent);
return;
}
-
- // 创建目标选择器
- CameraJumper.TryJump(parent);
-
- // 显示选择目标的消息
- Messages.Message("Wula_SelectFocusTarget".Translate(), MessageTypeDefOf.NeutralEvent);
-
- // 设置目标选择回调
- TargetingParameters targetingParameters = new TargetingParameters();
- targetingParameters.canTargetPawns = true;
- targetingParameters.canTargetBuildings = true;
- targetingParameters.canTargetItems = false;
- targetingParameters.canTargetLocations = false;
- targetingParameters.canTargetSelf = false;
- targetingParameters.canTargetFires = false;
- targetingParameters.canTargetAnimals = true;
- targetingParameters.canTargetHumans = true;
- targetingParameters.canTargetMechs = true;
-
- // 添加地图上的所有有生命值的目标
- targetingParameters.validator = (TargetInfo targ) =>
- {
- if (targ.Thing == null)
- return false;
-
- // 必须有生命值
- if (targ.Thing.def.useHitPoints && targ.Thing.HitPoints > 0)
- {
- // 不能是友方(可选,根据需求调整)
- if (targ.Thing.Faction != null && targ.Thing.Faction == parent.Faction)
- {
- // 如果是友方,需要特殊确认
- return false;
- }
- return true;
- }
- return false;
- };
// 启动目标选择
Find.Targeter.BeginTargeting(new TargetingParameters
{
- canTargetLocations = true,
+ canTargetLocations = false,
canTargetPawns = true,
canTargetBuildings = true,
canTargetItems = false
@@ -774,11 +736,6 @@ namespace WulaFallenEmpire
focusTarget = target;
lastFocusSetTick = Find.TickManager.TicksGame;
lastFocusPawn = parent;
-
- Messages.Message(
- "Wula_FocusTargetSet".Translate(target.Thing.LabelCap),
- MessageTypeDefOf.PositiveEvent
- );
}
}
private void OnFocusTargetCancelled()
diff --git a/美术与文本源文件/Wula/UI/Abilities/WULA_TargetFocus.sai2 b/美术与文本源文件/Wula/UI/Abilities/WULA_TargetFocus.sai2
new file mode 100644
index 00000000..48fbce43
Binary files /dev/null and b/美术与文本源文件/Wula/UI/Abilities/WULA_TargetFocus.sai2 differ