From 861c753e2272b4a22f269dc8de4a51265f826d57 Mon Sep 17 00:00:00 2001 From: amevarashi Date: Tue, 11 Jun 2024 22:09:25 +0500 Subject: [PATCH 1/5] Implemented Sleipnir's fix for futa genital size !4 --- Source/IdeologyAddon/IdeoUtility.cs | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/Source/IdeologyAddon/IdeoUtility.cs b/Source/IdeologyAddon/IdeoUtility.cs index 05ffd75..e61eb54 100644 --- a/Source/IdeologyAddon/IdeoUtility.cs +++ b/Source/IdeologyAddon/IdeoUtility.cs @@ -67,21 +67,29 @@ namespace RJWSexperience.Ideology return 0f; // Iff the pawn has multiple genitalia, the "best" is picked (the biggest penis or tightest vagina) - float bestSeenSize = 0f; + float bestSize = 0f; foreach (Hediff part in Genital_Helper.get_AllPartsHediffList(p)) { + float size; // Only check for Vaginas and Penises, not for Anus or for things not categorized as primary sexual parts - if (Genital_Helper.is_penis(part) || Genital_Helper.is_vagina(part)) + if (Genital_Helper.is_penis(part)) { - bestSeenSize = part.Severity > bestSeenSize ? part.Severity : bestSeenSize; + size = part.Severity; } + else if (Genital_Helper.is_vagina(part)) + { + // For vagina, the scale is inverted. + size = 1 - part.Severity; + } + else + { + continue; + } + + bestSize = size > bestSize ? size : bestSize; } - // For Women, the scale is inverted. - if (p.gender == Gender.Female) - return 1 - bestSeenSize; - - return bestSeenSize; + return bestSize; } public static bool IsVisiblyPregnant(Pawn pawn) From ebb9708efe5702a2d3d7760da5f52d3cfb62f692 Mon Sep 17 00:00:00 2001 From: amevarashi Date: Thu, 13 Jun 2024 20:37:53 +0500 Subject: [PATCH 2/5] Updated contributing section of README.md --- README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 48aedd7..feca10d 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,14 @@ The only consistent way to get in touch with me is the RJW Discord server #sexpe Please, ping me in the RJW Discord if you rased the issue here. ### Contributing +All work should be done based of the `dev` branch! Trying to compile on the `master` branch will fail - this is intentional. While I can't do something like that for XML and translations, I may choose to reject the pull request based on the amount of work required to transfer all commits into the `dev` branch. + +The best practices: +1. Fork this repository. +2. In your fork create a new branch based on `dev`. The name of the new branch should reflect what you are changing in 3 words or less, separated by `-`. For example `rmb-menu-refactor` or `japanese-translation`. +3. Make your changes and commit them to the new branch. +4. Create a new merge request from your branch into the `dev` branch of this repository. + To be consistent with RJW, please use TABS not SPACES. -Please, ping me in the RJW Discord after creating a merge request. \ No newline at end of file +Please, ping me in the RJW Discord after creating a merge request. From 0a5a9769e7fdc4d7140fb0595a27653d0e76193b Mon Sep 17 00:00:00 2001 From: amevarashi Date: Thu, 13 Jun 2024 20:41:36 +0500 Subject: [PATCH 3/5] CI: expose About.xml, change package name and version to project name and branch name respectively --- .gitlab-ci.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fff6f83..98b247f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -55,7 +55,7 @@ build: when: on_success expire_in: 1 day paths: - - "*" # Incluse everything + - "*" # Include everything exclude: - ".*" # Exclude dot files - ".*/**/*" # Exclude everything in the dot folders @@ -66,12 +66,13 @@ release_dev: rules: - if: $CI_COMMIT_TAG when: never # Do not run this job when a tag is created manually - - if: $CI_COMMIT_BRANCH == "dev" # Run this job when commits are pushed or merged to the dev branch + - if: $CI_COMMIT_BRANCH == "dev" # Run this job when commits are pushed or merged to the dev branch variables: GIT_STRATEGY: none # Do not clone repo and skip 'before_script' - PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/rsi/test" + PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_BRANCH}" script: - apk add zip - zip -rq mod.zip ./ - echo "${PACKAGE_REGISTRY_URL}" + - 'curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file About/About.xml "${PACKAGE_REGISTRY_URL}/About.xml"' - 'curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file mod.zip "${PACKAGE_REGISTRY_URL}/rjw_sexperience_ideology.zip"' From 40af29a1934b603d4ef77a208abcd21b79bb73d5 Mon Sep 17 00:00:00 2001 From: amevarashi Date: Thu, 13 Jun 2024 21:57:18 +0500 Subject: [PATCH 4/5] Added url and fixed author name in About.xml --- About/RealAbout.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/About/RealAbout.xml b/About/RealAbout.xml index 630ca35..c06dabd 100644 --- a/About/RealAbout.xml +++ b/About/RealAbout.xml @@ -1,7 +1,7 @@ - + RJW Sexperience Ideology - aamevarashi + amevarashi
  • 1.3
  • 1.4
  • @@ -31,6 +31,7 @@
  • rim.job.world
  • rjw.sexperience.ideology + https://gitgud.io/amevarashi/rjw-sexperience-ideology Date: Thu, 13 Jun 2024 21:58:57 +0500 Subject: [PATCH 5/5] GetGenitalSize returns penis size for futa --- Source/IdeologyAddon/IdeoUtility.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Source/IdeologyAddon/IdeoUtility.cs b/Source/IdeologyAddon/IdeoUtility.cs index e61eb54..c103729 100644 --- a/Source/IdeologyAddon/IdeoUtility.cs +++ b/Source/IdeologyAddon/IdeoUtility.cs @@ -61,22 +61,31 @@ namespace RJWSexperience.Ideology } } + /// + /// If the pawn has multiple genitalia, the "best" is picked (the biggest penis or tightest vagina). + /// For futanari return the biggest penis size + /// public static float GetGenitalSize(Pawn p) { if (p == null) return 0f; - // Iff the pawn has multiple genitalia, the "best" is picked (the biggest penis or tightest vagina) float bestSize = 0f; + bool foundPenis = false; foreach (Hediff part in Genital_Helper.get_AllPartsHediffList(p)) { float size; // Only check for Vaginas and Penises, not for Anus or for things not categorized as primary sexual parts if (Genital_Helper.is_penis(part)) { + if (!foundPenis) + { + foundPenis = true; + bestSize = 0f; + } size = part.Severity; } - else if (Genital_Helper.is_vagina(part)) + else if (!foundPenis && Genital_Helper.is_vagina(part)) { // For vagina, the scale is inverted. size = 1 - part.Severity;