diff --git a/1.3/Assemblies/RJW_Menstruation.dll b/1.3/Assemblies/RJW_Menstruation.dll
index 2de82ec..bca31ba 100644
Binary files a/1.3/Assemblies/RJW_Menstruation.dll and b/1.3/Assemblies/RJW_Menstruation.dll differ
diff --git a/1.3/Defs/KeyBindings/KeyBindings.xml b/1.3/Defs/KeyBindings/KeyBindings_Menstruation.xml
similarity index 100%
rename from 1.3/Defs/KeyBindings/KeyBindings.xml
rename to 1.3/Defs/KeyBindings/KeyBindings_Menstruation.xml
diff --git a/1.3/Defs/ThingDefs/Apparel_Absorbers.xml b/1.3/Defs/ThingDefs/Apparel_Absorbers.xml
index 81239da..c9dec8a 100644
--- a/1.3/Defs/ThingDefs/Apparel_Absorbers.xml
+++ b/1.3/Defs/ThingDefs/Apparel_Absorbers.xml
@@ -12,14 +12,14 @@
Never
false
- Sellable
+ Sellable
20
0.01
1000
1.0
2
- 10
+ 10
5
@@ -34,7 +34,7 @@
Recipe_Tailor
ElectricTailoringBench
- HandTailoringBench
+ HandTailoringBench
true
@@ -46,11 +46,12 @@
true
+ false
false
0
- Female
+ Female
- Torso
+ GenitalsBPG
Absorber
@@ -59,18 +60,18 @@
Absorber
-
-
- false
- true
- 10
- Absorber_Tampon_Dirty
-
-
+
+
+ false
+ true
+ 10
+ Absorber_Tampon_Dirty
+
+
- Absorber_Tampon_Dirty
+ Absorber_Tampon_Dirty
An wet used tampon.
May cause infection.
RJW_Menstruation.Absorber_Tampon
@@ -80,16 +81,16 @@
Never
false
- None
+ None
20
0.05
- 0
+ 0
1000
0.2
2
- 10
- -5
+ 10
+ -5
Fabric
@@ -99,11 +100,12 @@
true
+ false
false
0
- Female
+ Female
- Torso
+ GenitalsBPG
Absorber
@@ -112,17 +114,17 @@
Absorber
-
-
- false
- true
- 8
- Absorber_Tampon_Dirty
-
-
+
+
+ false
+ true
+ 8
+ Absorber_Tampon_Dirty
+
+
-
-
+
+
Absorber_Pad
@@ -134,14 +136,22 @@
Never
false
- Sellable
+ Sellable
40
0.02
1000
1.0
4
- 25
+ 25
+ 0.02
+ 0.02
+ 0.05
+ 0.01
+ 0.04
+ 0.05
+ 1
+ -1
10
@@ -155,7 +165,7 @@
Recipe_Tailor
ElectricTailoringBench
- HandTailoringBench
+ HandTailoringBench
true
@@ -167,11 +177,12 @@
true
+ true
false
0
- Female
+ Female
- Torso
+ GenitalsBPG
Absorber
@@ -180,17 +191,17 @@
Absorber
-
-
- true
- false
- Absorber_Pad_Dirty
-
-
+
+
+ true
+ false
+ Absorber_Pad_Dirty
+
+
- Absorber_Pad_Dirty
+ Absorber_Pad_Dirty
An wet used pad.
RJW_Menstruation.Absorber
@@ -200,16 +211,24 @@
Never
false
- None
+ None
40
0.10
- 0
+ 0
1000
0.2
4
- 25
- -5
+ 25
+ -5
+ 0.02
+ 0.02
+ 0.05
+ 0.01
+ 0.04
+ 0.1
+ -4
+ 2
Fabric
@@ -219,11 +238,12 @@
true
+ true
false
0
- Female
+ Female
- Torso
+ GenitalsBPG
Absorber
@@ -232,12 +252,12 @@
Absorber
-
-
- true
- false
- Absorber_Pad_Dirty
-
-
+
+
+ true
+ false
+ Absorber_Pad_Dirty
+
+
diff --git a/1.3/Languages/English/Keyed/RJW_Menstruation.xml b/1.3/Languages/English/Keyed/RJW_Menstruation.xml
index 2f59f7c..41cc27c 100644
--- a/1.3/Languages/English/Keyed/RJW_Menstruation.xml
+++ b/1.3/Languages/English/Keyed/RJW_Menstruation.xml
@@ -25,6 +25,8 @@
Ovulation
+ Gather cums into bucket
+ Store cums in womb
enable womb icon
enable button in health tab
diff --git a/1.3/Patches/Hediffs_PrivateParts_Breasts.xml b/1.3/Patches/Hediffs_PrivateParts_Breasts.xml
index b3ad1e3..58c8141 100644
--- a/1.3/Patches/Hediffs_PrivateParts_Breasts.xml
+++ b/1.3/Patches/Hediffs_PrivateParts_Breasts.xml
@@ -19,8 +19,8 @@
- Breasts/Breast
- (55,20,0)
+ Breasts/Breasts_Artificial
+ (255,255,255)
@@ -31,8 +31,8 @@
- Breasts/Breast
- (55,20,0)
+ Breasts/Breasts_Artificial
+ (255,255,255)
@@ -44,7 +44,7 @@
Breasts/Breast
- (55,20,0)
+ (255,255,255)
diff --git a/1.3/SexperienceModule/Assemblies/SexperienceModule.dll b/1.3/SexperienceModule/Assemblies/SexperienceModule.dll
index 79c1f56..1c1516e 100644
Binary files a/1.3/SexperienceModule/Assemblies/SexperienceModule.dll and b/1.3/SexperienceModule/Assemblies/SexperienceModule.dll differ
diff --git a/1.3/SexperienceModule/Defs/JobDefs/Jobs_GatherCum.xml b/1.3/SexperienceModule/Defs/JobDefs/Jobs_GatherCum.xml
index 326189e..eaacb49 100644
--- a/1.3/SexperienceModule/Defs/JobDefs/Jobs_GatherCum.xml
+++ b/1.3/SexperienceModule/Defs/JobDefs/Jobs_GatherCum.xml
@@ -4,7 +4,7 @@
VaginaWashingwithBucket
RJW_Menstruation.Sexperience.JobDriver_VaginaWashingWithBucket
- washing vagina
+ gather cum
true
\ No newline at end of file
diff --git a/1.3/Textures/Breasts/Breast_Breast00_Nipple01.png b/1.3/Textures/Breasts/Breast_Breast00_Nipple01.png
index f845647..0aaefa6 100644
Binary files a/1.3/Textures/Breasts/Breast_Breast00_Nipple01.png and b/1.3/Textures/Breasts/Breast_Breast00_Nipple01.png differ
diff --git a/1.3/Textures/Breasts/Breast_Breast01_Areola00.png b/1.3/Textures/Breasts/Breast_Breast01_Areola00.png
index 5b401c5..bd86b22 100644
Binary files a/1.3/Textures/Breasts/Breast_Breast01_Areola00.png and b/1.3/Textures/Breasts/Breast_Breast01_Areola00.png differ
diff --git a/1.3/Textures/Breasts/Breast_Breast01_Nipple00.png b/1.3/Textures/Breasts/Breast_Breast01_Nipple00.png
index a0471b8..773e36e 100644
Binary files a/1.3/Textures/Breasts/Breast_Breast01_Nipple00.png and b/1.3/Textures/Breasts/Breast_Breast01_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00.png
new file mode 100644
index 0000000..beda441
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola00.png
new file mode 100644
index 0000000..18cb983
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola01.png
new file mode 100644
index 0000000..79826b7
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola02.png
new file mode 100644
index 0000000..b73184b
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola03.png
new file mode 100644
index 0000000..9b5b67d
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola04.png
new file mode 100644
index 0000000..9b5b67d
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Areola04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple00.png
new file mode 100644
index 0000000..10cee25
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple01.png
new file mode 100644
index 0000000..3b6ed72
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple02.png
new file mode 100644
index 0000000..b0fdf2b
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple03.png
new file mode 100644
index 0000000..c52310a
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast00_Nipple03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01.png
new file mode 100644
index 0000000..c54c8c8
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola00.png
new file mode 100644
index 0000000..77bc3ba
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola01.png
new file mode 100644
index 0000000..2367c70
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola02.png
new file mode 100644
index 0000000..268b654
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola03.png
new file mode 100644
index 0000000..c929254
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola04.png
new file mode 100644
index 0000000..c929254
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Areola04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple00.png
new file mode 100644
index 0000000..ca3ff68
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple01.png
new file mode 100644
index 0000000..5fb9842
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple02.png
new file mode 100644
index 0000000..e0861b2
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple03.png
new file mode 100644
index 0000000..9c56089
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast01_Nipple03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02.png
new file mode 100644
index 0000000..0932f21
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola00.png
new file mode 100644
index 0000000..f0604f3
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola01.png
new file mode 100644
index 0000000..2f4554e
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola02.png
new file mode 100644
index 0000000..cc03879
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola03.png
new file mode 100644
index 0000000..ab2aad7
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola04.png
new file mode 100644
index 0000000..ab2aad7
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Areola04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple00.png
new file mode 100644
index 0000000..3e9d639
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple01.png
new file mode 100644
index 0000000..00f943e
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple02.png
new file mode 100644
index 0000000..09e9e76
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple03.png
new file mode 100644
index 0000000..99e8ab1
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast02_Nipple03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03.png
new file mode 100644
index 0000000..fafd312
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola00.png
new file mode 100644
index 0000000..b8b38d9
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola01.png
new file mode 100644
index 0000000..233b047
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola02.png
new file mode 100644
index 0000000..0272334
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola03.png
new file mode 100644
index 0000000..b878073
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola04.png
new file mode 100644
index 0000000..f060499
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Areola04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple00.png
new file mode 100644
index 0000000..3b7d15a
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple01.png
new file mode 100644
index 0000000..dece1e6
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple02.png
new file mode 100644
index 0000000..f5968f5
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple03.png
new file mode 100644
index 0000000..865c01f
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast03_Nipple03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04.png
new file mode 100644
index 0000000..18617c0
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola00.png
new file mode 100644
index 0000000..177e676
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola01.png
new file mode 100644
index 0000000..9d81fbc
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola02.png
new file mode 100644
index 0000000..10c52cf
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola03.png
new file mode 100644
index 0000000..cebd475
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola04.png
new file mode 100644
index 0000000..d6e1edd
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Areola04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple00.png
new file mode 100644
index 0000000..b2114a1
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple01.png
new file mode 100644
index 0000000..56549c7
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple02.png
new file mode 100644
index 0000000..90609a1
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple03.png
new file mode 100644
index 0000000..f8a4b5f
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast04_Nipple03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05.png
new file mode 100644
index 0000000..a47cd91
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola00.png
new file mode 100644
index 0000000..1daed14
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola01.png
new file mode 100644
index 0000000..42c012b
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola02.png
new file mode 100644
index 0000000..b2fb152
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola03.png
new file mode 100644
index 0000000..5b5a19d
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola03.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola04.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola04.png
new file mode 100644
index 0000000..0c75fe2
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Areola04.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple00.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple00.png
new file mode 100644
index 0000000..a57f42d
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple00.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple01.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple01.png
new file mode 100644
index 0000000..a661789
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple01.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple02.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple02.png
new file mode 100644
index 0000000..c717d19
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple02.png differ
diff --git a/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple03.png b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple03.png
new file mode 100644
index 0000000..f74257d
Binary files /dev/null and b/1.3/Textures/Breasts_Artificial/Breast_Breast05_Nipple03.png differ
diff --git a/1.3/Textures/UI/Icon/ToBucket.png b/1.3/Textures/UI/Icon/ToBucket.png
new file mode 100644
index 0000000..b979db0
Binary files /dev/null and b/1.3/Textures/UI/Icon/ToBucket.png differ
diff --git a/1.3/Textures/UI/Icon/ToPussy.png b/1.3/Textures/UI/Icon/ToPussy.png
new file mode 100644
index 0000000..2e23632
Binary files /dev/null and b/1.3/Textures/UI/Icon/ToPussy.png differ
diff --git a/1.3/source/RJW_Menstruation/MilkModule/MilkModule.csproj b/1.3/source/RJW_Menstruation/MilkModule/MilkModule.csproj
index 63c3223..ea1a9a4 100644
--- a/1.3/source/RJW_Menstruation/MilkModule/MilkModule.csproj
+++ b/1.3/source/RJW_Menstruation/MilkModule/MilkModule.csproj
@@ -43,10 +43,6 @@
..\..\..\..\..\rjw-mc-master\1.3\Assemblies\Milk.dll
False
-
- ..\..\..\..\..\RJW\1.2\Assemblies\RJW.dll
- False
-
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs
index 3ec238b..88b43f7 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/HediffComps/HediffComp_Menstruation.cs
@@ -73,7 +73,7 @@ namespace RJW_Menstruation
public bool loaded = false;
public int ovarypower = -100000;
public int eggstack = 0;
-
+ public bool DoCleanWomb = false;
public enum Stage
{
@@ -121,7 +121,6 @@ namespace RJW_Menstruation
protected HediffComp_Breast breastcache = null;
protected float antisperm = 0.0f;
protected float? originvagsize = null;
- protected bool? hymen = null;
public int ovarypowerthreshold
{
@@ -507,7 +506,7 @@ namespace RJW_Menstruation
Scribe_Values.Look(ref eggstack, "eggstack", eggstack, true);
Scribe_Values.Look(ref estrusflag, "estrusflag", estrusflag, true);
Scribe_Values.Look(ref originvagsize, "originvagsize", originvagsize, true);
- Scribe_Values.Look(ref hymen, "hymen", hymen, true);
+ Scribe_Values.Look(ref DoCleanWomb, "DoCleanWomb", DoCleanWomb, true);
}
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/Patch/GetGizmos.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/Patch/GetGizmos.cs
index fb6fcb1..4a3904b 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/Patch/GetGizmos.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/Patch/GetGizmos.cs
@@ -12,13 +12,14 @@ namespace RJW_Menstruation
{
public static void Postfix(ref IEnumerable __result, Pawn __instance)
{
- List gizmoList = __result.ToList();
-
if (!__instance.ShowStatus())
{
return;
}
+ List gizmoList = __result.ToList();
+
+
if (__instance.ShouldShowWombGizmo())
{
AddWombGizmos(__instance, ref gizmoList);
@@ -46,10 +47,16 @@ namespace RJW_Menstruation
private static void AddWombGizmos(Pawn __instance, ref List gizmoList)
{
HediffComp_Menstruation comp = __instance.GetMenstruationComp();
- if (comp != null) gizmoList.Add(CreateGizmo_WombStatus(__instance, comp));
+ if (comp != null) AddMenstruationGizmos(__instance, comp, ref gizmoList);
}
+ private static void AddMenstruationGizmos(Pawn pawn, HediffComp_Menstruation comp, ref List gizmolist)
+ {
+ gizmolist.Add(CreateGizmo_WombStatus(pawn, comp));
+ }
+
+
private static Gizmo CreateGizmo_WombStatus(Pawn pawn, HediffComp_Menstruation comp)
{
Texture2D icon, icon_overay;
@@ -113,6 +120,7 @@ namespace RJW_Menstruation
return gizmo;
}
+
}
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/TextureCache.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/TextureCache.cs
index 346f989..0f38898 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/TextureCache.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/TextureCache.cs
@@ -87,7 +87,8 @@ namespace RJW_Menstruation
}
public static readonly Texture2D FertChanceTex = SolidColorMaterials.NewSolidColorTexture(new Color(1f, 1f, 1f, 0.4f));
-
+ public static readonly Texture2D GatherCum_Bucket = ContentFinder.Get("UI/Icon/ToBucket");
+ public static readonly Texture2D GatherCum_Pussy = ContentFinder.Get("UI/Icon/ToPussy");
private static Texture2D milktexturecache = SolidColorMaterials.NewSolidColorTexture(0.992f, 1.0f, 0.960f, 1.0f);
private static Texture2D slaaneshtexturecache = SolidColorMaterials.NewSolidColorTexture(0.686f, 0.062f, 0.698f, 1.0f);
@@ -102,5 +103,6 @@ namespace RJW_Menstruation
+
}
}
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/Translations.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/Translations.cs
index 3f2cb02..83ebb8b 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/Translations.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/Translations.cs
@@ -19,6 +19,8 @@ namespace RJW_Menstruation
public static readonly string Stage_Anestrus = "Stage_Anestrus".Translate();
public static readonly string Button_HealthTab = "Button_HealthTab".Translate();
public static readonly string Button_MilkTooltip = "Button_MilkTooltip".Translate();
+ public static readonly string Dialog_DoCleanWomb_Tooltip = "Dialog_DoCleanWomb_Tooltip".Translate();
+ public static readonly string Dialog_DontCleanWomb_Tooltip = "Dialog_DontCleanWomb_Tooltip".Translate();
public static readonly string Dialog_WombInfo01 = "Dialog_WombInfo01".Translate();
public static readonly string Dialog_WombInfo02 = "Dialog_WombInfo02".Translate();
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_HybridCustom.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_HybridCustom.cs
index 61ca325..7c18c3a 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_HybridCustom.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_HybridCustom.cs
@@ -34,7 +34,7 @@ namespace RJW_Menstruation
if (Configurations.IsOverrideExist(def)) continue;
else
{
- raceList.Add(new FloatMenuOption(def.label, delegate { AddHybridOverride(def); } ));
+ raceList.Add(new FloatMenuOption(def.label, delegate { AddHybridOverride(def);}, def.uiIcon, Color.white ));
}
}
}
@@ -288,7 +288,7 @@ namespace RJW_Menstruation
if (info.hybridExtension.Exists(x => x.defName == def.defName)) continue;
else
{
- raceList.Add(new FloatMenuOption(def.label, delegate { AddHybridInfo(def); }));
+ raceList.Add(new FloatMenuOption(def.label, delegate { AddHybridInfo(def); }, Widgets.GetIconFor(def), Color.white));
}
}
}
@@ -384,7 +384,7 @@ namespace RJW_Menstruation
if (extension.hybridInfo.ContainsKey(def.defName)) continue;
else
{
- list.Add(new FloatMenuOption(def.label, delegate { extension.hybridInfo.Add(def.defName, 1.0f); }));
+ list.Add(new FloatMenuOption(def.label, delegate { extension.hybridInfo.Add(def.defName, 1.0f); }, Widgets.GetIconFor(def), Color.white));
}
}
}
@@ -456,7 +456,7 @@ namespace RJW_Menstruation
if (extension.hybridInfo.ContainsKey(def.defName)) continue;
else
{
- list.Add(new FloatMenuOption(def.label, delegate { extension.hybridInfo.Add(def.defName, 1.0f); }));
+ list.Add(new FloatMenuOption(def.label, delegate { extension.hybridInfo.Add(def.defName, 1.0f); }, Widgets.GetIconFor(def.race), Color.white));
}
}
}
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_WombStatus.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_WombStatus.cs
index 1d06b44..7020e39 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_WombStatus.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/UI/Dialog_WombStatus.cs
@@ -38,7 +38,20 @@ namespace RJW_Menstruation
private GUIStyle boxstyle = new GUIStyle(GUI.skin.textArea);
private GUIStyle buttonstyle = new GUIStyle(GUI.skin.button);
-
+ public Pawn Pawn
+ {
+ get
+ {
+ return pawn;
+ }
+ }
+ public HediffComp_Menstruation Comp
+ {
+ get
+ {
+ return comp;
+ }
+ }
public override Vector2 InitialSize
diff --git a/1.3/source/RJW_Menstruation/RJW_Menstruation/Utility.cs b/1.3/source/RJW_Menstruation/RJW_Menstruation/Utility.cs
index e5f4b70..b2d914c 100644
--- a/1.3/source/RJW_Menstruation/RJW_Menstruation/Utility.cs
+++ b/1.3/source/RJW_Menstruation/RJW_Menstruation/Utility.cs
@@ -195,7 +195,7 @@ namespace RJW_Menstruation
nipple = ContentFinder.Get("Breasts/Breast_Breast00_Nipple00", false);
areola = ContentFinder.Get("Breasts/Breast_Breast00_Areola00", false);
- GUI.color = pawn.story.SkinColor;
+ GUI.color = pawn.story?.SkinColor ?? Color.white;
GUI.DrawTexture(rect, breast, ScaleMode.ScaleToFit);
GUI.color = Color.white;
GUI.DrawTexture(rect, areola, ScaleMode.ScaleToFit);
diff --git a/1.3/source/RJW_Menstruation/SexperienceModule/JobDrivers.cs b/1.3/source/RJW_Menstruation/SexperienceModule/JobDrivers.cs
index 4e31db4..b980b83 100644
--- a/1.3/source/RJW_Menstruation/SexperienceModule/JobDrivers.cs
+++ b/1.3/source/RJW_Menstruation/SexperienceModule/JobDrivers.cs
@@ -11,11 +11,10 @@ using RJWSexperience;
namespace RJW_Menstruation.Sexperience
{
- public class JobDriver_VaginaWashingWithBucket : JobDriver
+ public class JobDriver_VaginaWashingWithBucket : JobDriver_CleanSelfWithBucket
{
const int excretingTime = 300;//ticks - 120 = 2 real seconds, 3 in-game minutes
- protected Building_CumBucket Bucket => TargetB.Thing as Building_CumBucket;
public override bool TryMakePreToilReservations(bool errorOnFailed)
{
@@ -54,6 +53,16 @@ namespace RJW_Menstruation.Sexperience
if (Comp.TotalCumPercent > 0.001) JumpToToil(excreting);
}
};
+
+ Toil cleaning = new Toil();
+ cleaning.initAction = CleaningInit;
+ cleaning.tickAction = CleaningTick;
+ cleaning.AddFinishAction(Finish);
+ cleaning.defaultCompleteMode = ToilCompleteMode.Never;
+ cleaning.WithProgressBar(TargetIndex.A, () => progress / CleaningTime);
+
+ yield return cleaning;
+
//yield return excreting;
yield break;
}
diff --git a/1.3/source/RJW_Menstruation/SexperienceModule/Patch/GetGizmos.cs b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/GetGizmos.cs
new file mode 100644
index 0000000..70640d3
--- /dev/null
+++ b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/GetGizmos.cs
@@ -0,0 +1,45 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Verse;
+using RimWorld;
+using UnityEngine;
+using RJWSexperience;
+using rjw;
+using HarmonyLib;
+
+
+namespace RJW_Menstruation.Sexperience
+{
+ [HarmonyPatch(typeof(Pawn_GetGizmos), "AddMenstruationGizmos")]
+ public static class GetGizmos_Patch
+ {
+ public static void Postfix(Pawn pawn, HediffComp_Menstruation comp, ref List gizmolist)
+ {
+ gizmolist.Add(CreateGizmo_GatherCum(pawn, comp));
+ }
+
+ private static Gizmo CreateGizmo_GatherCum(Pawn pawn, HediffComp_Menstruation comp)
+ {
+ Texture2D icon = TextureCache.GatherCum_Bucket;
+ string label = Keyed.RS_GatherCum;
+ string description = Keyed.RS_GatherCum;
+ Gizmo gizmo = new Command_Toggle
+ {
+ defaultLabel = label,
+ defaultDesc = description,
+ icon = icon,
+ isActive = delegate() { return comp.DoCleanWomb; },
+ toggleAction = delegate
+ {
+ comp.DoCleanWomb = !comp.DoCleanWomb;
+ }
+ };
+
+ return gizmo;
+ }
+
+ }
+}
diff --git a/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Menstruation_Patch.cs b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Menstruation_Patch.cs
new file mode 100644
index 0000000..b3df374
--- /dev/null
+++ b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Menstruation_Patch.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using RJW_Menstruation;
+using HarmonyLib;
+using rjw;
+using RimWorld;
+using Verse;
+using Verse.Sound;
+using UnityEngine;
+using RJWSexperience;
+
+namespace RJW_Menstruation.Sexperience
+{
+ [HarmonyPatch(typeof(Dialog_WombStatus), "DrawWomb")]
+ public static class Menstruation_Patch_Dialog_WombStatus
+ {
+ public const float ICONSIZE = 42f;
+
+ public static void Postfix(Rect rect, Dialog_WombStatus __instance)
+ {
+ Rect buttonRect = new Rect(rect.x, rect.yMax - ICONSIZE, ICONSIZE, ICONSIZE).ContractedBy(2f);
+ if (__instance.Comp.DoCleanWomb)
+ {
+ Widgets.DrawTextureFitted(buttonRect,TextureCache.GatherCum_Bucket,1.0f);
+ TooltipHandler.TipRegion(buttonRect, Translations.Dialog_DoCleanWomb_Tooltip);
+ }
+ else
+ {
+ Widgets.DrawTextureFitted(buttonRect, TextureCache.GatherCum_Pussy, 1.0f);
+ TooltipHandler.TipRegion(buttonRect, Translations.Dialog_DontCleanWomb_Tooltip);
+ }
+
+ if (Widgets.ButtonInvisible(buttonRect))
+ {
+ SoundDefOf.Click.PlayOneShotOnCamera();
+ __instance.Comp.DoCleanWomb = !__instance.Comp.DoCleanWomb;
+ }
+ }
+ }
+
+
+
+}
diff --git a/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Pawn_Patch.cs b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Pawn_Patch.cs
index b4c96a1..8738b4c 100644
--- a/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Pawn_Patch.cs
+++ b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/Pawn_Patch.cs
@@ -18,7 +18,9 @@ namespace RJW_Menstruation.Sexperience
public static void Postfix(Vector3 clickPos, Pawn pawn, List opts)
{
var targets = GenUI.TargetsAt(clickPos, TargetingParameters.ForBuilding());
+ HediffComp_Menstruation comp = pawn.GetMenstruationComp();
+ if (comp != null && comp.TotalCumPercent > 0.001f)
foreach (LocalTargetInfo t in targets)
{
Building building = t.Thing as Building;
@@ -39,7 +41,7 @@ namespace RJW_Menstruation.Sexperience
public static FloatMenuOption MakeMenu(Pawn pawn, LocalTargetInfo target)
{
- FloatMenuOption option = FloatMenuUtility.DecoratePrioritizedTask(new FloatMenuOption(Translations.FloatMenu_CleanSelf, delegate ()
+ FloatMenuOption option = FloatMenuUtility.DecoratePrioritizedTask(new FloatMenuOption(Keyed.RS_GatherCum, delegate ()
{
pawn.jobs.TryTakeOrderedJob(new Verse.AI.Job(VariousDefOf.VaginaWashingwithBucket, null, target, target.Cell));
}, MenuOptionPriority.Low), pawn, target);
diff --git a/1.3/source/RJW_Menstruation/SexperienceModule/Patch/RJW_Patch.cs b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/RJW_Patch.cs
index cecf04d..f3e8029 100644
--- a/1.3/source/RJW_Menstruation/SexperienceModule/Patch/RJW_Patch.cs
+++ b/1.3/source/RJW_Menstruation/SexperienceModule/Patch/RJW_Patch.cs
@@ -5,14 +5,46 @@ using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
+using Verse.AI;
using rjw;
using RJW_Menstruation;
-
+using HarmonyLib;
+using RJWSexperience;
namespace RJW_Menstruation.Sexperience
{
- public class RJW_Patch
+ [HarmonyPatch(typeof(WorkGiver_CleanSelf))]
+ public static class RJW_Patch_WorkGiver_CleanSelf
{
+ [HarmonyPrefix]
+ [HarmonyPatch("HasJobOnThing")]
+ public static bool HasJobOnThing(Pawn pawn, Thing t, bool forced, ref bool __result)
+ {
+ HediffComp_Menstruation comp = pawn.GetMenstruationComp();
+ if (comp != null && comp.DoCleanWomb && comp.TotalCumPercent > 0.001f)
+ {
+ __result = true;
+ return false;
+ }
+ return true;
+ }
+
+ [HarmonyPostfix]
+ [HarmonyPatch("JobOnThing")]
+ public static void JobOnThing(Pawn pawn, Thing t, bool forced, ref Job __result)
+ {
+ HediffComp_Menstruation comp = pawn.GetMenstruationComp();
+ if (comp != null && comp.DoCleanWomb && comp.TotalCumPercent > 0.001f)
+ {
+
+ Building_CumBucket bucket = pawn.FindClosestBucket();
+ if (bucket != null)
+ {
+ __result = JobMaker.MakeJob(VariousDefOf.VaginaWashingwithBucket, null, bucket, bucket.Position);
+ }
+ }
+
+ }
diff --git a/1.3/source/RJW_Menstruation/SexperienceModule/SexperienceModule.csproj b/1.3/source/RJW_Menstruation/SexperienceModule/SexperienceModule.csproj
index 12fe8da..bdbfff0 100644
--- a/1.3/source/RJW_Menstruation/SexperienceModule/SexperienceModule.csproj
+++ b/1.3/source/RJW_Menstruation/SexperienceModule/SexperienceModule.csproj
@@ -103,7 +103,9 @@
+
+
diff --git a/About/Manifest.xml b/About/Manifest.xml
index 1cb7e0e..e635859 100644
--- a/About/Manifest.xml
+++ b/About/Manifest.xml
@@ -1,7 +1,7 @@
RJW Menstruation
- 1.0.5.7
+ 1.0.5.8
diff --git a/changelogs.txt b/changelogs.txt
index 4b491da..7f27e7d 100644
--- a/changelogs.txt
+++ b/changelogs.txt
@@ -1,3 +1,10 @@
+Version 1.0.5.8
+ - requires RJW 4.8.1 or later
+ - added toggle for gather cums in womb into a cum bucket
+ - fixed nudity pawns get mood debuff from tampons(pads will get debuffs)
+ - added blue breasts for hydraulic and bionic breasts
+ - now pads provide tiny armor rate to genitals
+
Version 1.0.5.7
- requires RJW 4.8.1 or later
- minor bug fixes