Forwarded CommandRange Drawing incompatible mod check to prepare.

Source separated from Assemblies folder,Build target fix.
This commit is contained in:
MADxingjin 2025-04-13 18:31:09 +08:00
parent 36977d9928
commit e7c989431b
4 changed files with 446 additions and 430 deletions

File diff suppressed because it is too large Load Diff

View File

@ -10,11 +10,11 @@
<FileVersion>1.0.0.0</FileVersion> <FileVersion>1.0.0.0</FileVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\</OutputPath> <OutputPath>..\1.5\Assemblies\</OutputPath>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath> <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath> <AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies> <CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
<DocumentationFile>..\Implants.xml</DocumentationFile> <DocumentationFile>..\1.5\Assemblies\Implants.xml</DocumentationFile>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" /> <PackageReference Include="Microsoft.CSharp" Version="4.7.0" />

View File

@ -264,6 +264,8 @@ namespace LTS_Implants
} }
} }
#region Mech Carrier
//public class CompProperties_MechanitorMechCarrier : CompProperties_AbilityEffect //public class CompProperties_MechanitorMechCarrier : CompProperties_AbilityEffect
//{ //{
// public CompProperties_MechanitorMechCarrier() // public CompProperties_MechanitorMechCarrier()
@ -448,9 +450,6 @@ namespace LTS_Implants
// } // }
// } // }
// public override bool GizmoDisabled(out string reason) // public override bool GizmoDisabled(out string reason)
// { // {
// //Log.Warning(ingredientCountRemaining + " out of "+ Props.costPerPawn + " steel."); // //Log.Warning(ingredientCountRemaining + " out of "+ Props.costPerPawn + " steel.");
@ -463,14 +462,6 @@ namespace LTS_Implants
// return base.GizmoDisabled(out reason); // return base.GizmoDisabled(out reason);
// } // }
// public int remainingCharges // public int remainingCharges
// { // {
// get // get
@ -589,6 +580,10 @@ namespace LTS_Implants
// // } // // }
// //} // //}
//} //}
#endregion
#region Psychic Shield
//public class LTS_ShieldHediff : Hediff_Implant //public class LTS_ShieldHediff : Hediff_Implant
//{ //{
@ -663,7 +658,7 @@ namespace LTS_Implants
// } // }
//} //}
#endregion
public class LTS_HediffCompProperties_Mote : HediffCompProperties public class LTS_HediffCompProperties_Mote : HediffCompProperties
{ {
//public AbilityDef abilityDef; //public AbilityDef abilityDef;

View File

@ -9,20 +9,24 @@ namespace LTS_Implants
public static class HarmonyPatches public static class HarmonyPatches
{ {
public static bool IsCombatExtended = false; public static bool IsCombatExtended = false;
public static bool IsSarg = false;
static HarmonyPatches() static HarmonyPatches()
{ {
Verse.Log.Message("[LTS-II-Forked]Unpatching CE patches to reduce overlap");
Harmony harmony = new Harmony("rimworld.LTS.implants"); Harmony harmony = new Harmony("rimworld.LTS.implants");
Harmony.DEBUG = false; Harmony.DEBUG = false;
//Check if we are in a CE enabled env //Check if we are in a CE enabled env
if(ModLister.GetModWithIdentifier("ceteam.combatextended")!=null) if (ModLister.GetModWithIdentifier("ceteam.combatextended") != null)
{
IsCombatExtended = true; IsCombatExtended = true;
Verse.Log.Message("[LTS-II-Forked]Found CombatExtended,Will unpatch some harmony patches to reduce overlap");
}
//TODO Detect Sarg`s mod and unpatch accordingly.
if (ModLister.BiotechInstalled) if (ModLister.BiotechInstalled)
{ {
Verse.Log.Message("[LTS-II-Forked]Biotech found, harmony patch running"); Verse.Log.Message("[LTS-II-Forked]Biotech found, harmony patch running");
if (IsCombatExtended) if (IsCombatExtended)
{ {
Verse.Log.Message("[LTS-II-Forked]Unpatching CE patches to reduce overlap"); Verse.Log.Message("[LTS-II-Forked]Unpatching CE Biotech Mechanitor Command Range patches to reduce overlap,CE range is used instead vanilla range");
var mechanitorCanCommand = typeof(Pawn_MechanitorTracker).GetMethod("CanCommandTo"); var mechanitorCanCommand = typeof(Pawn_MechanitorTracker).GetMethod("CanCommandTo");
harmony.Unpatch(mechanitorCanCommand,HarmonyPatchType.All,"CombatExtended.HarmonyCE"); harmony.Unpatch(mechanitorCanCommand,HarmonyPatchType.All,"CombatExtended.HarmonyCE");
var mechanitorDrawCommandRange = typeof(Pawn_MechanitorTracker).GetMethod("DrawCommandRadius"); var mechanitorDrawCommandRange = typeof(Pawn_MechanitorTracker).GetMethod("DrawCommandRadius");