Compare commits

...

18 commits

Author SHA1 Message Date
Stardust3D
9f94a1db07 Merge branch 'release/5603.0.1.8' 2024-12-07 17:36:20 +01:00
Stardust3D
4db97c9dcb updated binaries 2024-12-07 17:35:46 +01:00
Stardust3D
cfa2be5757 bump mod version to 5603.0.1.8 2024-12-07 17:35:34 +01:00
Stardust3D
962e348956 bump Rimworld version to 1.5.4297 2024-12-07 17:34:14 +01:00
Stardust3D
8ea18ab084 upgrade gradle wrapper to 8.11.1 2024-12-07 17:31:17 +01:00
Stardust3D
c7eb15ec2f Merge tag '5600.0.1.8' into develop
5600.0.1.8 5600.0.1.8
2024-11-16 13:49:15 +01:00
Stardust3D
6c0e488cee Merge branch 'release/5600.0.1.8' 2024-11-16 13:49:14 +01:00
Stardust3D
e508dcf4cf added binaries 2024-11-16 13:48:47 +01:00
Stardust3D
b6ebf8508b bump version to 5600.0.1.8 2024-11-16 13:47:26 +01:00
Stardust3D
908352a453 Update .NET SDK version to 9.0.0 2024-11-16 03:37:14 +01:00
Stardust3D
a2a1c8c99f Update Gradle wrapper to version 8.11 2024-11-16 03:25:55 +01:00
Stardust3D
94d7c4274e Merge tag '5502.0.1.8' into develop
5502.0.1.8 5502.0.1.8
2024-10-02 11:32:41 +02:00
Stardust3D
ad7d276d90 Merge branch 'release/5502.0.1.8' 2024-10-02 11:32:40 +02:00
Stardust3D
a7b0d129b6 Update assembly and file versions to 5502.0.1.8
Updated assembly and file versions from 5400.0.1.8 to 5502.0.1.8 in all relevant project files. This ensures consistency across all versioned components of the project.
2024-10-02 11:31:41 +02:00
Stardust3D
c1d6d74573 Added a 1.5 specific implementation for cup sizes used by mammoplasties 2024-10-02 11:31:22 +02:00
Stardust3D
bc28863fe1 updated gradle 2024-10-02 11:28:37 +02:00
Stardust3D
3d54186905 configured 1.3 and 1.4 to compile with 4.7.2 2024-06-04 15:23:50 +02:00
Stardust3D
1de3af7b9a updated .net to 4.8 2024-06-03 02:07:59 +02:00
17 changed files with 234 additions and 30 deletions

View file

@ -2,5 +2,5 @@
<Manifest> <Manifest>
<identifier>RJW PlasticSurgeries</identifier> <identifier>RJW PlasticSurgeries</identifier>
<version>5400.0.1.8</version> <version>5603.0.1.8</version>
</Manifest> </Manifest>

View file

@ -15,12 +15,12 @@ Global
Release|Any CPU = Release|Any CPU Release|Any CPU = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Debug|Any CPU.ActiveCfg = Release|Any CPU {EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Debug|Any CPU.Build.0 = Release|Any CPU {EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Release|Any CPU.ActiveCfg = Release|Any CPU {EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Release|Any CPU.Build.0 = Release|Any CPU {EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Release|Any CPU.Build.0 = Release|Any CPU
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Debug|Any CPU.ActiveCfg = Release|Any CPU {F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Debug|Any CPU.Build.0 = Release|Any CPU {F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Release|Any CPU.ActiveCfg = Release|Any CPU {F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Release|Any CPU.Build.0 = Release|Any CPU {F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Release|Any CPU.Build.0 = Release|Any CPU
{02AA6D85-913F-44B8-9C32-6E8024261824}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {02AA6D85-913F-44B8-9C32-6E8024261824}.Debug|Any CPU.ActiveCfg = Debug|Any CPU

View file

@ -0,0 +1,198 @@
using System;
using System.Collections.Generic;
using System.Linq;
using rjw;
using Verse;
namespace RJW_PlasticSurgeries
{
public abstract class Recipe_Surgery_Mammoplasty : Recipe_Plastic_Surgery
{
protected override BodyPartRecord GetPartCandidate(Pawn pawn)
{
return Genital_Helper.get_genitalsBPR(pawn);
}
protected override bool HasPart(Pawn pawn, List<Hediff> hediffs)
{
return Genital_Helper.has_breasts(pawn, hediffs) &&
pawn.GetBreastList().Any(hed => hed.Severity >= 0.02f);
}
protected override List<Hediff> GetHediffs(Pawn pawn)
{
throw new NotSupportedException();
}
protected void SurgeryCupX(Pawn pawn, int stage)
{
pawn.GetBreastList().ForEach(hed =>
{
float severity;
if (TryGetSeverityFromSize(hed, stage, out severity)) hed.Severity = severity;
});
}
private static bool TryGetSeverityFromSize(Hediff hediff, float cupSize, out float severity)
{
var list = (hediff.def as HediffDef_SexPart)?.sizeProfile.cupSizes;
if (list == null)
{
severity = 0f;
return false;
}
var curve = new SimpleCurve(hediff.def.stages.Zip(list,
(stage, s) => new CurvePoint(s, stage.minSeverity)));
severity = curve.Evaluate(cupSize);
return true;
}
protected override (HediffDef, float) GetLicentiaDamage() => throw new NotSupportedException();
}
public class Recipe_Surgery_Mammoplasty_A : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 1);
}
}
public class Recipe_Surgery_Mammoplasty_B : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 2);
}
}
public class Recipe_Surgery_Mammoplasty_C : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 3);
}
}
public class Recipe_Surgery_Mammoplasty_D : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 4);
}
}
public class Recipe_Surgery_Mammoplasty_E : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 6);
}
}
public class Recipe_Surgery_Mammoplasty_F : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 7);
}
}
public class Recipe_Surgery_Mammoplasty_G : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 9);
}
}
public class Recipe_Surgery_Mammoplasty_H : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 11);
}
}
public class Recipe_Surgery_Mammoplasty_J : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 13);
}
}
public class Recipe_Surgery_Mammoplasty_K : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 15);
}
}
public class Recipe_Surgery_Mammoplasty_L : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 17);
}
}
public class Recipe_Surgery_Mammoplasty_M : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 19);
}
}
public class Recipe_Surgery_Mammoplasty_N : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 21);
}
}
public class Recipe_Surgery_Mammoplasty_O : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 23);
}
}
public class Recipe_Surgery_Mammoplasty_P : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 25);
}
}
public class Recipe_Surgery_Mammoplasty_Q : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 27);
}
}
public class Recipe_Surgery_Mammoplasty_R : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 29);
}
}
public class Recipe_Surgery_Mammoplasty_Unknown : Recipe_Surgery_Mammoplasty
{
protected override void SurgeryResult(Pawn pawn)
{
SurgeryCupX(pawn, 31);
}
}
}

View file

@ -2,5 +2,5 @@
<Manifest> <Manifest>
<identifier>RJW PlasticSurgeries</identifier> <identifier>RJW PlasticSurgeries</identifier>
<version>5400.0.1.8</version> <version>5603.0.1.8</version>
</Manifest> </Manifest>

View file

@ -15,8 +15,8 @@
<LangVersion>11</LangVersion> <LangVersion>11</LangVersion>
<Copyright>©2024 Stardust3D</Copyright> <Copyright>©2024 Stardust3D</Copyright>
<Company>Stardust3D</Company> <Company>Stardust3D</Company>
<AssemblyVersion>5400.0.1.8</AssemblyVersion> <AssemblyVersion>5603.0.1.8</AssemblyVersion>
<FileVersion>5400.0.1.8</FileVersion> <FileVersion>5603.0.1.8</FileVersion>
<SignAssembly>true</SignAssembly> <SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile> <AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
<Description>Surgically alter pawn's genitals.</Description> <Description>Surgically alter pawn's genitals.</Description>

View file

@ -15,8 +15,8 @@
<LangVersion>11</LangVersion> <LangVersion>11</LangVersion>
<Copyright>©2024 Stardust3D</Copyright> <Copyright>©2024 Stardust3D</Copyright>
<Company>Stardust3D</Company> <Company>Stardust3D</Company>
<AssemblyVersion>5400.0.1.8</AssemblyVersion> <AssemblyVersion>5603.0.1.8</AssemblyVersion>
<FileVersion>5400.0.1.8</FileVersion> <FileVersion>5603.0.1.8</FileVersion>
<SignAssembly>true</SignAssembly> <SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile> <AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
<Description>Surgically alter pawn's genitals.</Description> <Description>Surgically alter pawn's genitals.</Description>

View file

@ -8,15 +8,15 @@
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>RJW_PlasticSurgeries</RootNamespace> <RootNamespace>RJW_PlasticSurgeries</RootNamespace>
<AssemblyName>RJW_PlasticSurgeries</AssemblyName> <AssemblyName>RJW_PlasticSurgeries</AssemblyName>
<TargetFramework>net472</TargetFramework> <TargetFramework>net48</TargetFramework>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<TargetFrameworkProfile> <TargetFrameworkProfile>
</TargetFrameworkProfile> </TargetFrameworkProfile>
<LangVersion>11</LangVersion> <LangVersion>11</LangVersion>
<Copyright>©2024 Stardust3D</Copyright> <Copyright>©2024 Stardust3D</Copyright>
<Company>Stardust3D</Company> <Company>Stardust3D</Company>
<AssemblyVersion>5400.0.1.8</AssemblyVersion> <AssemblyVersion>5603.0.1.8</AssemblyVersion>
<FileVersion>5400.0.1.8</FileVersion> <FileVersion>5603.0.1.8</FileVersion>
<SignAssembly>true</SignAssembly> <SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile> <AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
<Description>Surgically alter pawn's genitals.</Description> <Description>Surgically alter pawn's genitals.</Description>
@ -32,7 +32,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Lib.Harmony" Version="2.3.3" /> <PackageReference Include="Lib.Harmony" Version="2.3.3" />
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" /> <PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
<PackageReference Include="Krafs.Rimworld.Ref" Version="1.5.4104" /> <PackageReference Include="Krafs.Rimworld.Ref" Version="1.5.4297" />
<PackageReference Include="UnlimitedHugs.Rimworld.HugsLib" Version="11.0.3" /> <PackageReference Include="UnlimitedHugs.Rimworld.HugsLib" Version="11.0.3" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@ -48,6 +48,7 @@
<Compile Remove="1.4\**" /> <Compile Remove="1.4\**" />
<Compile Remove="Recipe_Plastic_Surgery.cs" /> <Compile Remove="Recipe_Plastic_Surgery.cs" />
<Compile Remove="Recipe_Surgery_Beautify.cs" /> <Compile Remove="Recipe_Surgery_Beautify.cs" />
<Compile Remove="Recipe_Surgery_Mammoplasty.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Remove="1.3\**" /> <EmbeddedResource Remove="1.3\**" />

View file

@ -3,7 +3,7 @@ plugins {
alias(libs.plugins.versions) alias(libs.plugins.versions)
} }
version = "5400.0.1.8" version = "5603.0.1.8"
val friendlyName = "rjw-plasticsurgeries" val friendlyName = "rjw-plasticsurgeries"
tasks.register<com.ullink.Msbuild>("buildC#_1.3") { tasks.register<com.ullink.Msbuild>("buildC#_1.3") {
@ -12,7 +12,7 @@ tasks.register<com.ullink.Msbuild>("buildC#_1.3") {
// or a project file (.csproj or .vbproj) // or a project file (.csproj or .vbproj)
projectFile = file("${rootProject.name}/${rootProject.name}_1.3.csproj") projectFile = file("${rootProject.name}/${rootProject.name}_1.3.csproj")
targets = listOf("Clean", "Rebuild") targets = listOf("Restore", "Clean", "Rebuild")
configuration = "Release" configuration = "Release"
// destinationDir = "build/msbuild/bin" // destinationDir = "build/msbuild/bin"
@ -24,7 +24,7 @@ tasks.register<com.ullink.Msbuild>("buildC#_1.4") {
// or a project file (.csproj or .vbproj) // or a project file (.csproj or .vbproj)
projectFile = file("${rootProject.name}/${rootProject.name}_1.4.csproj") projectFile = file("${rootProject.name}/${rootProject.name}_1.4.csproj")
targets = listOf("Clean", "Rebuild") targets = listOf("Restore", "Clean", "Rebuild")
configuration = "Release" configuration = "Release"
// destinationDir = "build/msbuild/bin" // destinationDir = "build/msbuild/bin"
@ -36,7 +36,7 @@ tasks.register<com.ullink.Msbuild>("buildC#_1.5") {
// or a project file (.csproj or .vbproj) // or a project file (.csproj or .vbproj)
projectFile = file("${rootProject.name}/${rootProject.name}_1.5.csproj") projectFile = file("${rootProject.name}/${rootProject.name}_1.5.csproj")
targets = listOf("Clean", "Rebuild") targets = listOf("Restore", "Clean", "Rebuild")
configuration = "Release" configuration = "Release"
// destinationDir = "build/msbuild/bin" // destinationDir = "build/msbuild/bin"
@ -45,7 +45,7 @@ tasks.register<com.ullink.Msbuild>("buildC#_1.5") {
tasks.register<Exec>("sign_1.3") { tasks.register<Exec>("sign_1.3") {
dependsOn("buildC#_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/net472")
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe" executable = "H:\\Windows Kits\\10\\bin\\10.0.26100.0\\x64\\signtool.exe"
args = listOf( args = listOf(
"sign", "sign",
"/seal", "/seal",
@ -63,7 +63,7 @@ tasks.register<Exec>("sign_1.3") {
tasks.register<Exec>("sign_1.4") { tasks.register<Exec>("sign_1.4") {
dependsOn("buildC#_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/net472")
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe" executable = "H:\\Windows Kits\\10\\bin\\10.0.26100.0\\x64\\signtool.exe"
args = listOf( args = listOf(
"sign", "sign",
"/seal", "/seal",
@ -80,8 +80,8 @@ tasks.register<Exec>("sign_1.4") {
tasks.register<Exec>("sign_1.5") { tasks.register<Exec>("sign_1.5") {
dependsOn("buildC#_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" executable = "H:\\Windows Kits\\10\\bin\\10.0.26100.0\\x64\\signtool.exe"
args = listOf( args = listOf(
"sign", "sign",
"/seal", "/seal",
@ -149,7 +149,7 @@ tasks.register<Copy>("copyDll_1.4") {
tasks.register<Copy>("copyDll_1.5") { tasks.register<Copy>("copyDll_1.5") {
dependsOn("sign_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")) into(project.projectDir.parentFile.resolve("1.5/Assemblies"))
} }

View file

@ -1,6 +1,6 @@
{ {
"sdk": { "sdk": {
"version": "8.0.0", "version": "9.0.0",
"rollForward": "latestMinor", "rollForward": "latestMinor",
"allowPrerelease": false "allowPrerelease": false
} }

View file

@ -1,6 +1,6 @@
[versions] [versions]
versions = "0.51.0" versions = "0.51.0"
msbuild = "4.6" msbuild = "4.7"
[libraries] [libraries]

Binary file not shown.

View file

@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
networkTimeout=10000 networkTimeout=10000
validateDistributionUrl=true validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME

5
Source/gradlew vendored
View file

@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
# #
# SPDX-License-Identifier: Apache-2.0
#
############################################################################## ##############################################################################
# #
@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034 # shellcheck disable=SC2034
APP_BASE_NAME=${0##*/} APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value. # Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum MAX_FD=maximum

2
Source/gradlew.bat vendored
View file

@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and @rem See the License for the specific language governing permissions and
@rem limitations under the License. @rem limitations under the License.
@rem @rem
@rem SPDX-License-Identifier: Apache-2.0
@rem
@if "%DEBUG%"=="" @echo off @if "%DEBUG%"=="" @echo off
@rem ########################################################################## @rem ##########################################################################