diff --git a/1.3/Assemblies/RJW_PlasticSurgeries.dll b/1.3/Assemblies/RJW_PlasticSurgeries.dll
index 2761384..a569982 100644
Binary files a/1.3/Assemblies/RJW_PlasticSurgeries.dll and b/1.3/Assemblies/RJW_PlasticSurgeries.dll differ
diff --git a/1.4/Assemblies/RJW_PlasticSurgeries.dll b/1.4/Assemblies/RJW_PlasticSurgeries.dll
index 512eb3e..3c230e0 100644
Binary files a/1.4/Assemblies/RJW_PlasticSurgeries.dll and b/1.4/Assemblies/RJW_PlasticSurgeries.dll differ
diff --git a/1.5/Assemblies/RJW_PlasticSurgeries.dll b/1.5/Assemblies/RJW_PlasticSurgeries.dll
index 717f787..e2ba071 100644
Binary files a/1.5/Assemblies/RJW_PlasticSurgeries.dll and b/1.5/Assemblies/RJW_PlasticSurgeries.dll differ
diff --git a/About/About.xml b/About/About.xml
index 55aab1b..9a60bb7 100644
--- a/About/About.xml
+++ b/About/About.xml
@@ -22,10 +22,16 @@
steam://url/CommunityFilePage/2009463077
https://github.com/pardeike/HarmonyRimWorld/releases/latest
+
Ludeon.RimWorld
rim.job.world
+ NuttySquabble.Dyspareunia
LustLicentia.RJWLabs
\ No newline at end of file
diff --git a/About/Manifest.xml b/About/Manifest.xml
index cb4e292..cb86e88 100644
--- a/About/Manifest.xml
+++ b/About/Manifest.xml
@@ -2,5 +2,5 @@
RJW PlasticSurgeries
- 5400.0.1.8
+ 5400.0.1.7
\ No newline at end of file
diff --git a/1.5/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml b/Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml
similarity index 100%
rename from 1.5/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml
rename to Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml
diff --git a/1.5/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml b/Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml
similarity index 100%
rename from 1.5/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml
diff --git a/1.5/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml b/Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml
similarity index 100%
rename from 1.5/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml
diff --git a/1.5/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml b/Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml
similarity index 100%
rename from 1.5/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml
diff --git a/1.5/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml b/Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml
similarity index 100%
rename from 1.5/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.3/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml
diff --git a/Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml b/Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml
similarity index 100%
rename from Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml
rename to Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Beautify.xml
diff --git a/Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml b/Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml
similarity index 100%
rename from Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Mammoplasty.xml
diff --git a/Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml b/Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml
similarity index 100%
rename from Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Penoplasty.xml
diff --git a/Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml b/Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml
similarity index 100%
rename from Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Sphinctoplasty.xml
diff --git a/Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml b/Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml
similarity index 100%
rename from Source/RJW_PlasticSurgeries/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml
rename to Source/RJW_PlasticSurgeries/1.4/Defs/Recipe_Surgery/Recipes_Surgery_Vaginoplasty.xml
diff --git a/Source/RJW_PlasticSurgeries/1.5/Recipe_Plastic_Surgery.cs b/Source/RJW_PlasticSurgeries/1.5/Recipe_Plastic_Surgery.cs
index 0277836..2304c8c 100644
--- a/Source/RJW_PlasticSurgeries/1.5/Recipe_Plastic_Surgery.cs
+++ b/Source/RJW_PlasticSurgeries/1.5/Recipe_Plastic_Surgery.cs
@@ -7,6 +7,7 @@ namespace RJW_PlasticSurgeries
{
public abstract class Recipe_Plastic_Surgery : Recipe_Surgery
{
+ protected readonly bool HasDyspareunia = false; // ModLister.HasActiveModWithName("Dyspareunia");
protected readonly bool HasLicentia = ModLister.HasActiveModWithName("RimJobWorld - Licentia Labs");
public override IEnumerable GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
@@ -34,11 +35,18 @@ namespace RJW_PlasticSurgeries
protected abstract void SurgeryResult(Pawn pawn);
+
+ ///
+ private static void DamageHediff(Hediff hed)
+ {
+ }
+
protected void SurgeryX(Pawn pawn, float severity, bool damagePart = false)
{
GetHediffs(pawn).ForEach(hed =>
{
hed.Severity = severity;
+ if (damagePart && HasDyspareunia) DamageHediff(hed);
if (damagePart && HasLicentia)
{
var (type, damage) = GetLicentiaDamage();
diff --git a/Source/RJW_PlasticSurgeries/About/About.xml b/Source/RJW_PlasticSurgeries/About/About.xml
index 55aab1b..9a60bb7 100644
--- a/Source/RJW_PlasticSurgeries/About/About.xml
+++ b/Source/RJW_PlasticSurgeries/About/About.xml
@@ -22,10 +22,16 @@
steam://url/CommunityFilePage/2009463077
https://github.com/pardeike/HarmonyRimWorld/releases/latest
+
Ludeon.RimWorld
rim.job.world
+ NuttySquabble.Dyspareunia
LustLicentia.RJWLabs
\ No newline at end of file
diff --git a/Source/RJW_PlasticSurgeries/About/Manifest.xml b/Source/RJW_PlasticSurgeries/About/Manifest.xml
index cb4e292..cb86e88 100644
--- a/Source/RJW_PlasticSurgeries/About/Manifest.xml
+++ b/Source/RJW_PlasticSurgeries/About/Manifest.xml
@@ -2,5 +2,5 @@
RJW PlasticSurgeries
- 5400.0.1.8
+ 5400.0.1.7
\ No newline at end of file
diff --git a/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.3.csproj b/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.3.csproj
index 71b95a0..05a3460 100644
--- a/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.3.csproj
+++ b/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.3.csproj
@@ -8,15 +8,15 @@
Properties
RJW_PlasticSurgeries
RJW_PlasticSurgeries
- net472
+ net48
512
11
©2024 Stardust3D
Stardust3D
- 5400.0.1.8
- 5400.0.1.8
+ 5400.0.1.7
+ 5400.0.1.7
true
RJW_PlasticSurgeries.snk
Surgically alter pawn's genitals.
@@ -31,11 +31,14 @@
-
+
+
+ ..\..\..\dyspareunia\1.3\Assemblies\Dyspareunia.dll
+
..\..\..\licentia-labs\Assemblies\LicentiaLabs.dll
diff --git a/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.4.csproj b/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.4.csproj
index ea6ba56..edf45b8 100644
--- a/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.4.csproj
+++ b/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.4.csproj
@@ -8,15 +8,15 @@
Properties
RJW_PlasticSurgeries
RJW_PlasticSurgeries
- net472
+ net48
512
11
©2024 Stardust3D
Stardust3D
- 5400.0.1.8
- 5400.0.1.8
+ 5400.0.1.7
+ 5400.0.1.7
true
RJW_PlasticSurgeries.snk
Surgically alter pawn's genitals.
@@ -31,11 +31,14 @@
-
+
+
+ ..\..\..\dyspareunia\1.4\Assemblies\Dyspareunia.dll
+
..\..\..\licentia-labs\Assemblies\LicentiaLabs.dll
diff --git a/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.5.csproj b/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.5.csproj
index 8961655..0fa1757 100644
--- a/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.5.csproj
+++ b/Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries_1.5.csproj
@@ -8,15 +8,15 @@
Properties
RJW_PlasticSurgeries
RJW_PlasticSurgeries
- net472
+ net48
512
11
©2024 Stardust3D
Stardust3D
- 5400.0.1.8
- 5400.0.1.8
+ 5400.0.1.7
+ 5400.0.1.7
true
RJW_PlasticSurgeries.snk
Surgically alter pawn's genitals.
@@ -31,11 +31,14 @@
-
+
+
..\..\..\licentia-labs\Assemblies\LicentiaLabs.dll
@@ -53,4 +56,5 @@
+
diff --git a/Source/RJW_PlasticSurgeries/Recipe_Plastic_Surgery.cs b/Source/RJW_PlasticSurgeries/Recipe_Plastic_Surgery.cs
index 0277836..829a5b4 100644
--- a/Source/RJW_PlasticSurgeries/Recipe_Plastic_Surgery.cs
+++ b/Source/RJW_PlasticSurgeries/Recipe_Plastic_Surgery.cs
@@ -1,12 +1,15 @@
using System.Collections.Generic;
+using Dyspareunia;
using RimWorld;
using rjw;
using Verse;
+using DamageDefOf = Dyspareunia.DamageDefOf;
namespace RJW_PlasticSurgeries
{
public abstract class Recipe_Plastic_Surgery : Recipe_Surgery
{
+ protected readonly bool HasDyspareunia = ModLister.HasActiveModWithName("Dyspareunia");
protected readonly bool HasLicentia = ModLister.HasActiveModWithName("RimJobWorld - Licentia Labs");
public override IEnumerable GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
@@ -34,11 +37,17 @@ namespace RJW_PlasticSurgeries
protected abstract void SurgeryResult(Pawn pawn);
+ private static void DamageHediff(Hediff hed)
+ {
+ PenetrationUtility.AddDamageHediff(DamageDefOf.SexStretch, 0.5f, hed, null);
+ }
+
protected void SurgeryX(Pawn pawn, float severity, bool damagePart = false)
{
GetHediffs(pawn).ForEach(hed =>
{
hed.Severity = severity;
+ if (damagePart && HasDyspareunia) DamageHediff(hed);
if (damagePart && HasLicentia)
{
var (type, damage) = GetLicentiaDamage();
diff --git a/Source/build.gradle.kts b/Source/build.gradle.kts
index 8e3c668..842c741 100644
--- a/Source/build.gradle.kts
+++ b/Source/build.gradle.kts
@@ -1,9 +1,17 @@
+/*
+ * This file was generated by the Gradle "init" task.
+ *
+ * This is a general purpose Gradle build.
+ * Learn more about Gradle by exploring our samples at https://docs.gradle.org/7.3/samples
+ * This project uses @Incubating APIs which are subject to change.
+ */
+
plugins {
alias(libs.plugins.msbuild)
alias(libs.plugins.versions)
}
-version = "5400.0.1.8"
+version = "5400.0.1.7"
val friendlyName = "rjw-plasticsurgeries"
tasks.register("buildC#_1.3") {
@@ -44,7 +52,7 @@ tasks.register("buildC#_1.5") {
tasks.register("sign_1.3") {
dependsOn("buildC#_1.3")
- workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.3/net472")
+ workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.3/net48")
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe"
args = listOf(
"sign",
@@ -62,7 +70,7 @@ tasks.register("sign_1.3") {
tasks.register("sign_1.4") {
dependsOn("buildC#_1.4")
- workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.4/net472")
+ workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.4/net48")
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe"
args = listOf(
"sign",
@@ -80,7 +88,7 @@ tasks.register("sign_1.4") {
tasks.register("sign_1.5") {
dependsOn("buildC#_1.5")
- workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.5/net472")
+ workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.5/net48")
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe"
args = listOf(
"sign",
@@ -107,8 +115,6 @@ tasks.register("copy_about") {
tasks.register("copy_1.3") {
dependsOn("copyDll_1.3")
- dependsOn("copyDefs_1.3")
-
from(project.projectDir.resolve("${rootProject.name}/1.3")){
exclude("**/*.cs")
}
@@ -117,8 +123,6 @@ tasks.register("copy_1.3") {
tasks.register("copy_1.4") {
dependsOn("copyDll_1.4")
- dependsOn("copyDefs_1.4")
-
from(project.projectDir.resolve("${rootProject.name}/1.4")){
exclude("**/*.cs")
}
@@ -127,8 +131,6 @@ tasks.register("copy_1.4") {
tasks.register("copy_1.5") {
dependsOn("copyDll_1.5")
- dependsOn("copyDefs_1.5")
-
from(project.projectDir.resolve("${rootProject.name}/1.5")){
exclude("**/*.cs")
}
@@ -137,37 +139,22 @@ tasks.register("copy_1.5") {
tasks.register("copyDll_1.3") {
dependsOn("sign_1.3")
- from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.3/net472/${rootProject.name}.dll"))
+ from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.3/net48/${rootProject.name}.dll"))
into(project.projectDir.parentFile.resolve("1.3/Assemblies"))
}
tasks.register("copyDll_1.4") {
dependsOn("sign_1.4")
- from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.4/net472/${rootProject.name}.dll"))
+ from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.4/net48/${rootProject.name}.dll"))
into(project.projectDir.parentFile.resolve("1.4/Assemblies"))
}
tasks.register("copyDll_1.5") {
dependsOn("sign_1.5")
- from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.5/net472/${rootProject.name}.dll"))
+ from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.5/net48/${rootProject.name}.dll"))
into(project.projectDir.parentFile.resolve("1.5/Assemblies"))
}
-tasks.register("copyDefs_1.3") {
- from(project.projectDir.resolve("${rootProject.name}/Defs"))
- into(project.projectDir.parentFile.resolve("1.3/Defs"))
-}
-
-tasks.register("copyDefs_1.4") {
- from(project.projectDir.resolve("${rootProject.name}/Defs"))
- into(project.projectDir.parentFile.resolve("1.4/Defs"))
-}
-
-tasks.register("copyDefs_1.5") {
- from(project.projectDir.resolve("${rootProject.name}/Defs"))
- into(project.projectDir.parentFile.resolve("1.5/Defs"))
-}
-
tasks.register("buildZip") {
dependsOn("clean", ":copy")
into("$friendlyName/1.3") {
diff --git a/Source/gradle/wrapper/gradle-wrapper.properties b/Source/gradle/wrapper/gradle-wrapper.properties
index a441313..b82aa23 100644
--- a/Source/gradle/wrapper/gradle-wrapper.properties
+++ b/Source/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/Source/gradlew b/Source/gradlew
index b740cf1..1aa94a4 100644
--- a/Source/gradlew
+++ b/Source/gradlew
@@ -55,7 +55,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.