From 07cfb8291f70f6e2cdfeb3102abdb9199d80fad2 Mon Sep 17 00:00:00 2001 From: Ed86 <127.0.0.1> Date: Fri, 24 May 2024 15:01:14 +0300 Subject: [PATCH] 1.5 support --- 1.5/Assemblies/FB.dll | Bin 0 -> 6144 bytes 1.5/Defs/ThoughtDefs/RJW_Beautyfuck.xml | 33 +++++++++++ 1.5/Source/FB.sln | 22 ++++++++ 1.5/Source/FB/Properties/AssemblyInfo.cs | 36 ++++++++++++ 1.5/Source/FB/fb.cs | 65 ++++++++++++++++++++++ 1.5/Source/FB/fb.csproj | 67 +++++++++++++++++++++++ 1.5/Source/FB/packages.config | 4 ++ About/About.xml | 1 + 8 files changed, 228 insertions(+) create mode 100644 1.5/Assemblies/FB.dll create mode 100644 1.5/Defs/ThoughtDefs/RJW_Beautyfuck.xml create mode 100644 1.5/Source/FB.sln create mode 100644 1.5/Source/FB/Properties/AssemblyInfo.cs create mode 100644 1.5/Source/FB/fb.cs create mode 100644 1.5/Source/FB/fb.csproj create mode 100644 1.5/Source/FB/packages.config diff --git a/1.5/Assemblies/FB.dll b/1.5/Assemblies/FB.dll new file mode 100644 index 0000000000000000000000000000000000000000..ead515a807b1b69f3869ac7aa4a1f609bfc58022 GIT binary patch literal 6144 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 Pa5vu!{_pXJh`@gUV8ko< literal 0 HcmV?d00001 diff --git a/1.5/Defs/ThoughtDefs/RJW_Beautyfuck.xml b/1.5/Defs/ThoughtDefs/RJW_Beautyfuck.xml new file mode 100644 index 0000000..2f2e2d9 --- /dev/null +++ b/1.5/Defs/ThoughtDefs/RJW_Beautyfuck.xml @@ -0,0 +1,33 @@ + + + + + RJW_Beautyfuck + Thought_Memory + 0.5 + 1 + 1.0 + +
  • + + Had sex with staggeringly ugly pawn + -4 +
  • +
  • + + Had sex with ugly pawn + -2 +
  • +
  • + + Had sex with pretty pawn + 2 +
  • +
  • + + Had sex with beautiful pawn + 4 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Source/FB.sln b/1.5/Source/FB.sln new file mode 100644 index 0000000..739948d --- /dev/null +++ b/1.5/Source/FB.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26228.4 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FB", "FB\FB.csproj", "{3FC2D442-19B8-4CF9-9D35-CD13B6AC7B28}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3FC2D442-19B8-4CF9-9D35-CD13B6AC7B28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3FC2D442-19B8-4CF9-9D35-CD13B6AC7B28}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3FC2D442-19B8-4CF9-9D35-CD13B6AC7B28}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3FC2D442-19B8-4CF9-9D35-CD13B6AC7B28}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/1.5/Source/FB/Properties/AssemblyInfo.cs b/1.5/Source/FB/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b540ac1 --- /dev/null +++ b/1.5/Source/FB/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("RJWFB")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("RJWFB")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("5b1a0ad6-cb29-4231-ae02-c352c6ac3500")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/1.5/Source/FB/fb.cs b/1.5/Source/FB/fb.cs new file mode 100644 index 0000000..e5cbb62 --- /dev/null +++ b/1.5/Source/FB/fb.cs @@ -0,0 +1,65 @@ +using HarmonyLib; +using RimWorld; +using rjw; +using Verse; +using System; +using System.Reflection; + +namespace rjwfb +{ + [StaticConstructorOnStartup] + internal static class InitHarmonyPatches + { + static InitHarmonyPatches() + { + var har = new Harmony("rjw.FB"); + har.PatchAll(Assembly.GetExecutingAssembly()); + } + } + + [HarmonyPatch(typeof(AfterSexUtility), "think_about_sex", new Type[] { typeof(Pawn), typeof(Pawn), typeof(bool), typeof(SexProps), typeof(bool) })] + [StaticConstructorOnStartup] + static class Beautyfuck_AfterSexUtility_think_about_sex + { + public static readonly ThoughtDef RJW_Beautyfuck = DefDatabase.GetNamed("RJW_Beautyfuck"); + + [HarmonyPostfix] + public static void think_about_sex_Patch(Pawn pawn, Pawn partner, bool isReceiving, SexProps props, bool whoring = false) + { + try + { + if (pawn == null) + { + return; + } + if (partner == null) + { + return; + } + var p1 = pawn; + var p2 = partner; + var p2beauty = p2.GetStatValue(StatDefOf.PawnBeauty, true); + var beautystage = -1; + + if (p2beauty != 0) + { + if (p2beauty <= -2) + beautystage = 0; + else if (p2beauty <= -1) + beautystage = 1; + else if (p2beauty < 2) + beautystage = 2; + else + beautystage = 3; + + if (beautystage != -1) + p1?.needs?.mood?.thoughts?.memories?.TryGainMemory(ThoughtMaker.MakeThought(RJW_Beautyfuck, beautystage), null); + } + } + catch(Exception e) + { + Log.Error(e.ToString()); + } + } + } +} diff --git a/1.5/Source/FB/fb.csproj b/1.5/Source/FB/fb.csproj new file mode 100644 index 0000000..0c89001 --- /dev/null +++ b/1.5/Source/FB/fb.csproj @@ -0,0 +1,67 @@ + + + + + Debug + AnyCPU + {3FC2D442-19B8-4CF9-9D35-CD13B6AC7B28} + Library + FB + FB + v4.7.2 + 512 + + + AnyCPU + true + full + false + ..\..\Assemblies\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + ..\..\Assemblies\ + TRACE + prompt + 4 + + + + ..\packages\Lib.Harmony.2.3.3\lib\net472\0Harmony.dll + False + + + ..\..\..\..\..\RimWorldWin64_Data\Managed\Assembly-CSharp.dll + False + + + ..\..\..\..\..\..\..\workshop\content\294100\818773962\v1.5\Assemblies\HugsLib.dll + False + + + ..\..\..\..\rjw\1.5\Assemblies\RJW.dll + False + + + + ..\..\..\..\..\RimWorldWin64_Data\Managed\UnityEngine.CoreModule.dll + False + + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Source/FB/packages.config b/1.5/Source/FB/packages.config new file mode 100644 index 0000000..75a6411 --- /dev/null +++ b/1.5/Source/FB/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/About/About.xml b/About/About.xml index e615cb6..9ce889c 100644 --- a/About/About.xml +++ b/About/About.xml @@ -7,6 +7,7 @@
  • 1.3
  • 1.4
  • +
  • 1.5
  • rjw.FB