diff --git a/1.4/Assemblies/SizedApparelforRJW.dll b/1.4/Assemblies/SizedApparelforRJW.dll
index e437a4f..2499701 100644
Binary files a/1.4/Assemblies/SizedApparelforRJW.dll and b/1.4/Assemblies/SizedApparelforRJW.dll differ
diff --git a/1.4/Defs/BodyAddonDefs/HumanBody.xml b/1.4/Defs/BodyAddonDefs/HumanBody.xml
new file mode 100644
index 0000000..11b2387
--- /dev/null
+++ b/1.4/Defs/BodyAddonDefs/HumanBody.xml
@@ -0,0 +1,599 @@
+
+
+
+
+ Human
+
+
+ Female
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Thin
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Male
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Hulk
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Fat
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/1.4/Defs/BodyAddonDefs/HumanBody.xml.bak b/1.4/Defs/BodyAddonDefs/HumanBody.xml.bak
new file mode 100644
index 0000000..c38a8fc
--- /dev/null
+++ b/1.4/Defs/BodyAddonDefs/HumanBody.xml.bak
@@ -0,0 +1,583 @@
+
+
+
+
+ Human
+
+
+ Female
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Thin
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Male
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Hulk
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+ PubicHair
+ PubicHair
+ Default
+ PubicHair
+ Hair
+ false
+ false
+
+
+ 0.0099
+ 0.0099
+ 0.0089
+ 0.0089
+
+
+
+
+
+ Fat
+
+
+ Breasts
+ Breasts
+ Breasts
+ Breasts
+ Skin
+ true
+ false
+
+
+ 0.0113
+ 0.001
+ 0.0113
+ 0.0113
+
+
+
+ Vagina
+ Vagina
+ Vagina
+ Vagina
+ Skin
+ false
+ false
+
+
+ 0.0088
+ 0.0100
+ 0.0088
+ 0.0088
+
+
+
+ Anus
+ Anus
+ Anus
+ Anus
+ Skin
+ false
+ false
+
+
+ 0.0093
+ 0.0105
+ 0.0093
+ 0.0093
+
+
+
+ Belly
+ Belly
+ BellyBulge
+ Belly
+ Skin
+ false
+ false
+
+
+ 0.0098
+ 0.0002
+ 0.0098
+ 0.0098
+
+
+
+ Penis
+ Penis
+ Penis
+ Penis
+ Skin
+ false
+ true
+
+
+ 0.0108
+ 0.0025
+ 0.0108
+ 0.0108
+
+
+
+ Balls
+ Balls
+ Penis
+ Balls
+ Penis/Balls
+ Skin
+ false
+ true
+
+
+ 0.0096
+ 0.0085
+ 0.0096
+ 0.0096
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/1.4/Defs/PubicHairDefs/PubicHairDefault.xml b/1.4/Defs/PubicHairDefs/PubicHairDefault.xml
new file mode 100644
index 0000000..e0e0b0c
--- /dev/null
+++ b/1.4/Defs/PubicHairDefs/PubicHairDefault.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ Default
+
+ SizedApparel/BodyParts/Human/PubicHair/Default
+
+
+
+
diff --git a/1.4/Defs/PubicHairDefs/PubicHairNone.xml b/1.4/Defs/PubicHairDefs/PubicHairNone.xml
new file mode 100644
index 0000000..a49bf4e
--- /dev/null
+++ b/1.4/Defs/PubicHairDefs/PubicHairNone.xml
@@ -0,0 +1,7 @@
+
+
+
+ None
+ true
+
+
diff --git a/1.4/Defs/SkeletonDef/HumanSkeletonDef.xml b/1.4/Defs/SkeletonDef/HumanSkeletonDef.xml
new file mode 100644
index 0000000..bce98e7
--- /dev/null
+++ b/1.4/Defs/SkeletonDef/HumanSkeletonDef.xml
@@ -0,0 +1,563 @@
+
+
+
+ Human
+
+
+ Female
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.320)
+ 0
+
+
+ (-0.01, 0, -0.338)
+ 0
+
+
+ (0.062, 0, -0.221)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.320)
+ 0
+
+
+ (-0.01, 0, -0.338)
+ 0
+
+
+ (0.062, 0, -0.221)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Thin
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.307)
+ 0
+
+
+ (0, 0, -0.305)
+ 0
+
+
+ (0.008, 0, -0.248)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.307)
+ 0
+
+
+ (0, 0, -0.305)
+ 0
+
+
+ (0.007, 0, -0.248)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Male
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.301)
+ 0
+
+
+ (0, 0, -0.311)
+ 0
+
+
+ (0.068, 0, -0.250)
+ 0
+
+
+
+ Balls
+
+ (0.0, 0, -0.301)
+ 0
+
+
+ (0.0, 0, -0.311)
+ 0
+
+
+ (0.066, 0, -0.250)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Hulk
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.436)
+ 0
+
+
+ (0.0, 0, -0.445)
+ 0
+
+
+ (0.029, 0, -0.387)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.436)
+ 0
+
+
+ (0, 0, -0.445)
+ 0
+
+
+ (0.028, 0, -0.387)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Fat
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.357)
+ 0
+
+
+ (0, 0, -0.363)
+ 0
+
+
+ (0.168, 0, -0.348)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.357)
+ 0
+
+
+ (0, 0, -0.363)
+ 0
+
+
+ (0.168, 0, -0.348)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Child
+
+
+
+
+
+
\ No newline at end of file
diff --git a/1.4/Defs/SkeletonDef/HumanSkeletonDef.xml.bak b/1.4/Defs/SkeletonDef/HumanSkeletonDef.xml.bak
new file mode 100644
index 0000000..c056139
--- /dev/null
+++ b/1.4/Defs/SkeletonDef/HumanSkeletonDef.xml.bak
@@ -0,0 +1,563 @@
+
+
+
+ Human
+
+
+ Female
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.320)
+ 0
+
+
+ (-0.01, 0, -0.338)
+ 0
+
+
+ (0.062, 0, -0.221)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.320)
+ 0
+
+
+ (-0.01, 0, -0.338)
+ 0
+
+
+ (0.062, 0, -0.221)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Thin
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.307)
+ 0
+
+
+ (0, 0, -0.305)
+ 0
+
+
+ (0.008, 0, -0.248)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.307)
+ 0
+
+
+ (0, 0, -0.305)
+ 0
+
+
+ (0.008, 0, -0.248)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Male
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.301)
+ 0
+
+
+ (0, 0, -0.311)
+ 0
+
+
+ (0.068, 0, -0.250)
+ 0
+
+
+
+ Balls
+
+ (0.0, 0, -0.301)
+ 0
+
+
+ (0.0, 0, -0.311)
+ 0
+
+
+ (0.066, 0, -0.250)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Hulk
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.436)
+ 0
+
+
+ (0.0, 0, -0.445)
+ 0
+
+
+ (0.029, 0, -0.387)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.436)
+ 0
+
+
+ (0, 0, -0.445)
+ 0
+
+
+ (0.028, 0, -0.387)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Fat
+
+
+ Vagina
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Breasts
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Anus
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ Penis
+
+ (0, 0, -0.357)
+ 0
+
+
+ (0, 0, -0.363)
+ 0
+
+
+ (0.168, 0, -0.348)
+ 0
+
+
+
+ Balls
+
+ (0, 0, -0.357)
+ 0
+
+
+ (0, 0, -0.363)
+ 0
+
+
+ (0.168, 0, -0.348)
+ 0
+
+
+
+ Belly
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+ PubicHair
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+ (0, 0, 0)
+ 0
+
+
+
+
+
+ Child
+
+
+
+
+
+
\ No newline at end of file
diff --git a/1.4/Defs/TexturePointsDefs/Test.zip b/1.4/Defs/TexturePointsDefs/Test.zip
new file mode 100644
index 0000000..d6a1cce
Binary files /dev/null and b/1.4/Defs/TexturePointsDefs/Test.zip differ
diff --git a/About/About.xml b/About/About.xml
index baa7d1d..1afd5de 100644
--- a/About/About.xml
+++ b/About/About.xml
@@ -9,13 +9,13 @@
OTYOTY.SizedApparel
-[version 0.93.2]
-
This mod changes apparel texture for matching pawn's breasts size.
Also, it has include pawn's private body parts rendering system.
I'm planning to at least all vanilla apparels will be supported.
+[special thanks]
+leoinc
@@ -30,5 +30,6 @@ I'm planning to at least all vanilla apparels will be supported.
erdelf.HumanoidAlienRaces
rim.job.world
shauaputa.rimnudeworld
+ c0ffee.rimworld.animations
\ No newline at end of file
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_east.png
new file mode 100644
index 0000000..12031c1
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_north.png
new file mode 100644
index 0000000..c494bb2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_south.png
new file mode 100644
index 0000000..9f0826a
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Fat_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_east.png
new file mode 100644
index 0000000..7b91684
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_north.png
new file mode 100644
index 0000000..c494bb2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_south.png
new file mode 100644
index 0000000..5c26891
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Hulk_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_east.png
new file mode 100644
index 0000000..19cef9b
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_north.png
new file mode 100644
index 0000000..df6701d
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_south.png
new file mode 100644
index 0000000..ce1e0ff
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Male_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_east.png
new file mode 100644
index 0000000..910214f
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_north.png
new file mode 100644
index 0000000..8dd4426
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_south.png
new file mode 100644
index 0000000..746da54
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_10_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_east.png
new file mode 100644
index 0000000..bfccc08
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_north.png
new file mode 100644
index 0000000..b77e824
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_south.png
new file mode 100644
index 0000000..c2dfd7e
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_7_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_east.png
new file mode 100644
index 0000000..f60289a
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_north.png
new file mode 100644
index 0000000..829f0bd
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_south.png
new file mode 100644
index 0000000..ea55a67
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_8_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_east.png
new file mode 100644
index 0000000..a5cf5f3
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_north.png
new file mode 100644
index 0000000..36c26a8
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_south.png
new file mode 100644
index 0000000..aedebba
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/Breasts_Thin_9_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/7~10 not yet ready.txt b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/7~10 not yet ready.txt
deleted file mode 100644
index 30897b6..0000000
--- a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/7~10 not yet ready.txt
+++ /dev/null
@@ -1 +0,0 @@
-For now, those are just copied, avoid error
\ No newline at end of file
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png
index 97c3325..cab1b83 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png
index 06aecf1..aac9fd8 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png
index 05e6a4e..42c23ab 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png
index 1a991b1..e3ebf46 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png
index 2e80d11..25994ea 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png
index 2d0ae19..e9dbb34 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png
index cfdce29..06e0760 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png
index 4e8fc95..a6ca1c0 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png
index ce604aa..ebe3bbe 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png
index cd601f2..b96a013 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png
index 9a3c708..d74efac 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png
index 2098247..28f6e63 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png
index 01ab259..503cae3 100644
Binary files a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_0_east.png
similarity index 100%
rename from Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_0_east.png
rename to Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_0_east.png
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_0_north.png
similarity index 100%
rename from Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_0_north.png
rename to Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_0_north.png
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_0_south.png
similarity index 100%
rename from Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_0_south.png
rename to Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_0_south.png
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_east.png
new file mode 100644
index 0000000..1d8673c
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_north.png
new file mode 100644
index 0000000..34db081
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_south.png
new file mode 100644
index 0000000..42c23ab
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_10_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_east.png
new file mode 100644
index 0000000..34bf6eb
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_north.png
similarity index 100%
rename from Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_north.png
rename to Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_north.png
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_south.png
new file mode 100644
index 0000000..968c2d4
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_1_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_east.png
new file mode 100644
index 0000000..295739e
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_north.png
new file mode 100644
index 0000000..240c96f
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_south.png
new file mode 100644
index 0000000..0eaeb89
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_2_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_east.png
similarity index 100%
rename from Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_east.png
rename to Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_east.png
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_north.png
new file mode 100644
index 0000000..1db8ba6
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_south.png
new file mode 100644
index 0000000..2be557b
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_3_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_east.png
new file mode 100644
index 0000000..baeae64
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_north.png
new file mode 100644
index 0000000..19fdf5e
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_south.png
new file mode 100644
index 0000000..287e5e5
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_4_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_east.png
new file mode 100644
index 0000000..d7a7c9e
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_north.png
new file mode 100644
index 0000000..901a825
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_south.png
new file mode 100644
index 0000000..d74f9e1
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_5_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_east.png
new file mode 100644
index 0000000..0efb4ae
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_north.png
new file mode 100644
index 0000000..91d62fa
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_south.png
similarity index 99%
rename from Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_south.png
rename to Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_south.png
index fde0308..bddc985 100644
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_south.png and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_6_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_east.png
new file mode 100644
index 0000000..9774113
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_north.png
new file mode 100644
index 0000000..8a561b9
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_south.png
new file mode 100644
index 0000000..4f47391
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_7_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_east.png
new file mode 100644
index 0000000..bdb1de1
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_north.png
new file mode 100644
index 0000000..1a4386f
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_south.png
new file mode 100644
index 0000000..316511b
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_8_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_east.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_east.png
new file mode 100644
index 0000000..a2990b5
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_north.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_north.png
new file mode 100644
index 0000000..7df5913
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_south.png b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_south.png
new file mode 100644
index 0000000..ce34747
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Breasts/CustomPose/JiggleUp/Breasts_Thin_9_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_east.png
new file mode 100644
index 0000000..cd2a181
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_north.png
new file mode 100644
index 0000000..528a6ef
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_south.png
new file mode 100644
index 0000000..84473a5
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_2_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_east.png
deleted file mode 100644
index 8fa4b4e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_north.png
deleted file mode 100644
index df41bbd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_south.png
deleted file mode 100644
index a7b06fb..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_east.png
deleted file mode 100644
index 9034ea7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_north.png
deleted file mode 100644
index 99efe23..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_south.png
deleted file mode 100644
index fbb573f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_east.png
deleted file mode 100644
index 12911e6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_north.png
deleted file mode 100644
index 3bd0221..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_south.png
deleted file mode 100644
index 3f63f1e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_east.png
deleted file mode 100644
index a3dfd75..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_north.png
deleted file mode 100644
index ebfcfcd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_south.png
deleted file mode 100644
index c43de9c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_east.png
deleted file mode 100644
index 40c4933..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_north.png
deleted file mode 100644
index 53f167b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_south.png
deleted file mode 100644
index c43de9c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_east.png
deleted file mode 100644
index a3dfd75..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_north.png
deleted file mode 100644
index bcaed51..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_south.png
deleted file mode 100644
index c43de9c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/Penis_UndefinedOffset_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_east.png
deleted file mode 100644
index 0824c25..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_north.png
deleted file mode 100644
index c871a65..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_south.png
deleted file mode 100644
index 89653e7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/PegDick_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_east.png
deleted file mode 100644
index 51b3bb5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_north.png
deleted file mode 100644
index a0938f5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_south.png
deleted file mode 100644
index 651d452..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_east.png
deleted file mode 100644
index 2cac42e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_north.png
deleted file mode 100644
index dd62ef5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_south.png
deleted file mode 100644
index 838c235..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Hulk_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Hulk_3_south.png
deleted file mode 100644
index 15cb559..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Hulk_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_east.png
deleted file mode 100644
index e180466..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_north.png
deleted file mode 100644
index f6e2709..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_south.png
deleted file mode 100644
index fa0ab1f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_east.png
deleted file mode 100644
index 5876a07..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_north.png
deleted file mode 100644
index 61fb743..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_south.png
deleted file mode 100644
index 85e7aaa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Balls/old/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown.zip b/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown.zip
new file mode 100644
index 0000000..0232303
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown.zip differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_east.png
deleted file mode 100644
index 12bb438..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_north.png
deleted file mode 100644
index 7d3f8ae..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_south.png
deleted file mode 100644
index 42b8ba5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_east.png
new file mode 100644
index 0000000..09fc8f9
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_north.png
new file mode 100644
index 0000000..a1f49f2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_south.png
new file mode 100644
index 0000000..3a5966a
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_east.png
new file mode 100644
index 0000000..e063656
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_north.png
new file mode 100644
index 0000000..a1f49f2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_south.png
new file mode 100644
index 0000000..b6e811c
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_1_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_east.png
new file mode 100644
index 0000000..fc07c78
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_north.png
similarity index 100%
rename from Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_north.png
rename to Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_north.png
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_south.png
new file mode 100644
index 0000000..f58ebb6
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_2_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_east.png
new file mode 100644
index 0000000..75b8b17
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_north.png
new file mode 100644
index 0000000..a1f49f2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_south.png
new file mode 100644
index 0000000..fae67c5
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_3_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_east.png
new file mode 100644
index 0000000..41670c0
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_north.png
new file mode 100644
index 0000000..a1f49f2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_south.png
new file mode 100644
index 0000000..e7a1b3f
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_4_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_east.png
new file mode 100644
index 0000000..f7e74c5
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_north.png
new file mode 100644
index 0000000..a1f49f2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_south.png
new file mode 100644
index 0000000..b14ead3
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_5_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_east.png
deleted file mode 100644
index 3fc883b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_south.png
deleted file mode 100644
index b28cbe8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_east.png
deleted file mode 100644
index 287388e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_south.png
deleted file mode 100644
index 9863353..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_east.png
deleted file mode 100644
index 013ef54..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_south.png
deleted file mode 100644
index b928031..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_east.png
deleted file mode 100644
index 9ca1e0a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_south.png
deleted file mode 100644
index 4f25304..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_east.png
deleted file mode 100644
index 05500ad..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_south.png
deleted file mode 100644
index fc064b2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_east .png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_east .png
deleted file mode 100644
index 9ca1e0a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_east .png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_south .png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_south .png
deleted file mode 100644
index 4f25304..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/Penis_UndefinedOffset_2_south .png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_east.png
deleted file mode 100644
index e8d3904..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_north.png
deleted file mode 100644
index 49eb4d6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_south.png
deleted file mode 100644
index fc947e4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_east.png
deleted file mode 100644
index 0ca73cd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_north.png
deleted file mode 100644
index a17615c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_south.png
deleted file mode 100644
index f7c7b33..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_east.png
deleted file mode 100644
index 09b2561..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_north.png
deleted file mode 100644
index e346d60..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_south.png
deleted file mode 100644
index f091c38..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_east.png
deleted file mode 100644
index 48540b6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_north.png
deleted file mode 100644
index 6b082aa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_south.png
deleted file mode 100644
index 594c682..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Horny/old/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_east.png
deleted file mode 100644
index d3da276..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_north.png
deleted file mode 100644
index 14c0f4b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_south.png
deleted file mode 100644
index 05b128d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/HorsePenis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_east.png
new file mode 100644
index 0000000..3ed10f7
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_north.png
new file mode 100644
index 0000000..dea9d3a
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_south.png
new file mode 100644
index 0000000..a33afd4
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_east.png
new file mode 100644
index 0000000..e959106
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_north.png
new file mode 100644
index 0000000..177ae98
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_south.png
new file mode 100644
index 0000000..5389d20
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_1_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_east.png
new file mode 100644
index 0000000..1a8c832
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_north.png
new file mode 100644
index 0000000..a68fa5c
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_south.png
new file mode 100644
index 0000000..adabbde
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_2_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_east.png
deleted file mode 100644
index 407a3e9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_north.png
deleted file mode 100644
index 5021af2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_south.png
deleted file mode 100644
index 3ec1cb9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_east.png
deleted file mode 100644
index f749f00..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_north.png
deleted file mode 100644
index b5e2f57..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_south.png
deleted file mode 100644
index 001f104..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_east.png
deleted file mode 100644
index 09c837d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_north.png
deleted file mode 100644
index 459d10c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_south.png
deleted file mode 100644
index 1c19ab7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_east.png
deleted file mode 100644
index 41eb510..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_north.png
deleted file mode 100644
index ff81492..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_south.png
deleted file mode 100644
index 0926bd2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_east.png
deleted file mode 100644
index 390ce5e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_north.png
deleted file mode 100644
index ff81492..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_south.png
deleted file mode 100644
index 1488a73..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_2_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_2_north.png
deleted file mode 100644
index ff81492..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_2_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_2_south.png
deleted file mode 100644
index 0926bd2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_east.png
deleted file mode 100644
index 41eb510..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/Penis_UndefinedOffset_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_east.png
deleted file mode 100644
index e1b47b8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_eastm.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_eastm.png
deleted file mode 100644
index 8ca6c82..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_eastm.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_north.png
deleted file mode 100644
index f0f6572..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_northm.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_northm.png
deleted file mode 100644
index 8ca6c82..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_northm.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_south.png
deleted file mode 100644
index 1e3a737..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_southm.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_southm.png
deleted file mode 100644
index 8ca6c82..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/PegDick_Female_3_southm.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_east.png
deleted file mode 100644
index 13e3047..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_north.png
deleted file mode 100644
index 3754043..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_south.png
deleted file mode 100644
index f7b211a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_east.png
deleted file mode 100644
index 044545b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_north.png
deleted file mode 100644
index 38bfad2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_south.png
deleted file mode 100644
index 49bf41c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_east.png
deleted file mode 100644
index d6dabf6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_north.png
deleted file mode 100644
index 542ad81..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_south.png
deleted file mode 100644
index 1f4c748..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_east.png
deleted file mode 100644
index 27072c1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_north.png
deleted file mode 100644
index 7173c17..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_south.png
deleted file mode 100644
index 9fc85c0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Human/Penis/old/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_east.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_east.png
new file mode 100644
index 0000000..01a12a8
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_north.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_north.png
new file mode 100644
index 0000000..f11ec98
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_south.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_south.png
new file mode 100644
index 0000000..0ef062c
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Fat_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_east.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_east.png
new file mode 100644
index 0000000..c7680eb
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_north.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_north.png
new file mode 100644
index 0000000..f11ec98
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_south.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_south.png
new file mode 100644
index 0000000..1e521ef
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Female_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_east.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_east.png
new file mode 100644
index 0000000..f597dea
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_north.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_north.png
new file mode 100644
index 0000000..f11ec98
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_south.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_south.png
new file mode 100644
index 0000000..b5671e1
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Hulk_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_east.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_east.png
new file mode 100644
index 0000000..c08cbc9
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_north.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_north.png
new file mode 100644
index 0000000..f11ec98
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_south.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_south.png
new file mode 100644
index 0000000..7ac5cb2
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Male_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_east.png
new file mode 100644
index 0000000..ef82630
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_east.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_north.png
new file mode 100644
index 0000000..f11ec98
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_north.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_south.png
new file mode 100644
index 0000000..3a43edc
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_Thin_0_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_south.png b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_south.png
new file mode 100644
index 0000000..1e521ef
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/PubicHair/Default_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Thighs/ThighLeft_Female_south.png b/Textures/SizedApparel/BodyParts/Human/Thighs/ThighLeft_Female_south.png
new file mode 100644
index 0000000..26d92c9
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Thighs/ThighLeft_Female_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Thighs/ThighRight_Female_south.png b/Textures/SizedApparel/BodyParts/Human/Thighs/ThighRight_Female_south.png
new file mode 100644
index 0000000..66a7724
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Thighs/ThighRight_Female_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Thighs/Thighs2_Female_south.png b/Textures/SizedApparel/BodyParts/Human/Thighs/Thighs2_Female_south.png
new file mode 100644
index 0000000..b85d7ec
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Thighs/Thighs2_Female_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Human/Thighs/Thighs_Female_south.png b/Textures/SizedApparel/BodyParts/Human/Thighs/Thighs_Female_south.png
new file mode 100644
index 0000000..67ddc2d
Binary files /dev/null and b/Textures/SizedApparel/BodyParts/Human/Thighs/Thighs_Female_south.png differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_north.png
deleted file mode 100644
index 059cc4f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_north.png
deleted file mode 100644
index 7f11401..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_north.png
deleted file mode 100644
index 8a09fb5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_north.png
deleted file mode 100644
index 28a5a04..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_north.png
deleted file mode 100644
index 05d648d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_north.png
deleted file mode 100644
index 5da79c9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_Donut_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_north.png
deleted file mode 100644
index 1d676ed..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_north.png
deleted file mode 100644
index 31b309f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_north.png
deleted file mode 100644
index 797a3b1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_north.png
deleted file mode 100644
index 9a274c6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_north.png
deleted file mode 100644
index 12c7d41..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_north.png
deleted file mode 100644
index 07cb9fd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_north.png
deleted file mode 100644
index cf5dda3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_Donut_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_east.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_north.png
deleted file mode 100644
index 8d9bb3e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_south.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/Anus_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_east.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_north.png
deleted file mode 100644
index 04a711b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_south.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_east.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_north.png
deleted file mode 100644
index 560fd60..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_south.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_east.png
deleted file mode 100644
index 2c52289..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_north.png
deleted file mode 100644
index 2c34840..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_south.png
deleted file mode 100644
index 2c52289..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_east.png
deleted file mode 100644
index 2c52289..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_north.png
deleted file mode 100644
index cff8abb..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_south.png
deleted file mode 100644
index 2c52289..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_east.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_north.png
deleted file mode 100644
index d86e3c2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_south.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Anus/old/Anus_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/BaseBody/Naked_OTY_BaseBody_south.png b/Textures/SizedApparel/BodyParts/Humanlike/BaseBody/Naked_OTY_BaseBody_south.png
deleted file mode 100644
index c18519b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/BaseBody/Naked_OTY_BaseBody_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_east.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_north.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_south.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_east.png
deleted file mode 100644
index 49ee570..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_north.png
deleted file mode 100644
index b584d4d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_south.png
deleted file mode 100644
index b584d4d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_east.png
deleted file mode 100644
index b6f8bb2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_north.png
deleted file mode 100644
index 31d758e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_south.png
deleted file mode 100644
index 31d758e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_east.png
deleted file mode 100644
index 42bd403..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_north.png
deleted file mode 100644
index a676423..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_south.png
deleted file mode 100644
index a676423..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_east.png
deleted file mode 100644
index 0588df8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_north.png
deleted file mode 100644
index 273e76d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_south.png
deleted file mode 100644
index 273e76d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Fat_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_east.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_north.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_south.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_east.png
deleted file mode 100644
index 78320ae..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_north.png
deleted file mode 100644
index 0df65d8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_south.png
deleted file mode 100644
index 0df65d8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_east.png
deleted file mode 100644
index 6a79119..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_north.png
deleted file mode 100644
index 283cdae..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_south.png
deleted file mode 100644
index 283cdae..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_east.png
deleted file mode 100644
index d787143..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_north.png
deleted file mode 100644
index 800bfac..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_south.png
deleted file mode 100644
index 800bfac..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_east.png
deleted file mode 100644
index 65b4183..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_north.png
deleted file mode 100644
index f8093af..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_south.png
deleted file mode 100644
index f8093af..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_east.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_north.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_south.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_east.png
deleted file mode 100644
index bf051fc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_north.png
deleted file mode 100644
index f0cf4e1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_south.png
deleted file mode 100644
index f0cf4e1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_east.png
deleted file mode 100644
index fb16fec..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_north.png
deleted file mode 100644
index c053929..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_south.png
deleted file mode 100644
index c053929..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_east.png
deleted file mode 100644
index 475ecd3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_north.png
deleted file mode 100644
index c5f1e3b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_south.png
deleted file mode 100644
index c5f1e3b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_east.png
deleted file mode 100644
index 802b42d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_north.png
deleted file mode 100644
index 3239b4d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_south.png
deleted file mode 100644
index 3239b4d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Hulk_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_east.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_north.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_south.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_east.png
deleted file mode 100644
index 38219aa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_north.png
deleted file mode 100644
index 99cd2b3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_south.png
deleted file mode 100644
index 99cd2b3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_east.png
deleted file mode 100644
index 9475884..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_north.png
deleted file mode 100644
index b059c7f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_south.png
deleted file mode 100644
index b059c7f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_east.png
deleted file mode 100644
index 6b1fe60..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_north.png
deleted file mode 100644
index 2ef1dc1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_south.png
deleted file mode 100644
index 2ef1dc1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_east.png
deleted file mode 100644
index 934e029..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_north.png
deleted file mode 100644
index dfbd445..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_south.png
deleted file mode 100644
index dfbd445..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Male_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_east.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_north.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_south.png
deleted file mode 100644
index 6775361..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_east.png
deleted file mode 100644
index c7eeae3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_north.png
deleted file mode 100644
index 50aa3a5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_south.png
deleted file mode 100644
index 50aa3a5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_east.png
deleted file mode 100644
index 9ee6311..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_north.png
deleted file mode 100644
index b5daff1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_south.png
deleted file mode 100644
index b5daff1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_east.png
deleted file mode 100644
index 76e6f9d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_north.png
deleted file mode 100644
index e2c715d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_south.png
deleted file mode 100644
index e2c715d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_east.png
deleted file mode 100644
index 2cf96fd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_north.png
deleted file mode 100644
index ac41d90..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_south.png
deleted file mode 100644
index ac41d90..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Belly/BellyBulge_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_east.png
deleted file mode 100644
index 53a359d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_north.png
deleted file mode 100644
index a2203d6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_south.png
deleted file mode 100644
index d91cace..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_east.png
deleted file mode 100644
index 5d82098..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_north.png
deleted file mode 100644
index 667ae05..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_south.png
deleted file mode 100644
index 1526927..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_east.png
deleted file mode 100644
index 683013a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_north.png
deleted file mode 100644
index 925ffde..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_south.png
deleted file mode 100644
index 27c8e7e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_8_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_east.png
deleted file mode 100644
index a13e692..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_north.png
deleted file mode 100644
index f308203..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_south.png
deleted file mode 100644
index b84eda8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/128/Breasts_Female_9_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_east.png
deleted file mode 100644
index 6d50489..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_north.png
deleted file mode 100644
index 9411416..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_south.png
deleted file mode 100644
index 2ab4707..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_east.png
deleted file mode 100644
index 61d1360..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_north.png
deleted file mode 100644
index 1724f2e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_south.png
deleted file mode 100644
index 749c659..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/256/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_east.png
deleted file mode 100644
index de3a540..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_north.png
deleted file mode 100644
index ffa684c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_south.png
deleted file mode 100644
index 7d320a9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_east.png
deleted file mode 100644
index 97c3325..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_north.png
deleted file mode 100644
index 06aecf1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_south.png
deleted file mode 100644
index 05e6a4e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_10_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_east.png
deleted file mode 100644
index f003bf1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_north.png
deleted file mode 100644
index ffa684c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_south.png
deleted file mode 100644
index f0c7230..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_east.png
deleted file mode 100644
index d1dd60d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_north.png
deleted file mode 100644
index 5dd3cce..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_south.png
deleted file mode 100644
index 2b2a51a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_east.png
deleted file mode 100644
index 22385ee..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_north.png
deleted file mode 100644
index c059595..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_south.png
deleted file mode 100644
index 259db4e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_east.png
deleted file mode 100644
index c46cccc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_north.png
deleted file mode 100644
index 2ef5161..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_south.png
deleted file mode 100644
index 56abd02..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_east.png
deleted file mode 100644
index fe7eb25..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_north.png
deleted file mode 100644
index b79c45f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_south.png
deleted file mode 100644
index e70bfe4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_east.png
deleted file mode 100644
index 08b75b3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_north.png
deleted file mode 100644
index d6ac83e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_south.png
deleted file mode 100644
index 0dba4d9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_6_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_east.png
deleted file mode 100644
index e3e8097..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_north.png
deleted file mode 100644
index f2bc10d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_south.png
deleted file mode 100644
index e1f8ac3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_InvertedNipple_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_east.png
deleted file mode 100644
index 2e80d11..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_north.png
deleted file mode 100644
index 2d0ae19..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_south.png
deleted file mode 100644
index cfdce29..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_east.png
deleted file mode 100644
index 4e8fc95..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_north.png
deleted file mode 100644
index ce604aa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_south.png
deleted file mode 100644
index cd601f2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_8_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_east.png
deleted file mode 100644
index 9a3c708..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_north.png
deleted file mode 100644
index 2098247..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_south.png
deleted file mode 100644
index 01ab259..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Female_9_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_east.png
deleted file mode 100644
index 3768bfb..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_south.png
deleted file mode 100644
index 55a8961..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_east.png
deleted file mode 100644
index 8b3a9e7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_north.png
deleted file mode 100644
index 3edefb1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_south.png
deleted file mode 100644
index 8e8a92d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_east.png
deleted file mode 100644
index 2daabb8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_north.png
deleted file mode 100644
index 62642c3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_south.png
deleted file mode 100644
index 7dcf315..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_east.png
deleted file mode 100644
index aa2fc08..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_north.png
deleted file mode 100644
index 90c6c61..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_south.png
deleted file mode 100644
index 5073cb1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_east.png
deleted file mode 100644
index 9cf27a0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_north.png
deleted file mode 100644
index ac6beb2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_south.png
deleted file mode 100644
index 5f7e2ec..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_east.png
deleted file mode 100644
index e01115d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_north.png
deleted file mode 100644
index cff2d51..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_south.png
deleted file mode 100644
index 88ab566..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_6_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_east.png
deleted file mode 100644
index 4a741bb..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_north.png
deleted file mode 100644
index 13bebd7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_south.png
deleted file mode 100644
index d656f74..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/Breasts_Thin_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleCenter/Breasts_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleCenter/Breasts_Female_3_south.png
deleted file mode 100644
index 1142c46..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleCenter/Breasts_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/7~10 not yet ready.txt b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/7~10 not yet ready.txt
deleted file mode 100644
index 30897b6..0000000
--- a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/7~10 not yet ready.txt
+++ /dev/null
@@ -1 +0,0 @@
-For now, those are just copied, avoid error
\ No newline at end of file
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_east.png
deleted file mode 100644
index de3a540..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_north.png
deleted file mode 100644
index ffa684c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_south.png
deleted file mode 100644
index 7d320a9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png
deleted file mode 100644
index 97c3325..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png
deleted file mode 100644
index 06aecf1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png
deleted file mode 100644
index 05e6a4e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_10_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_east.png
deleted file mode 100644
index f7a7be4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_north.png
deleted file mode 100644
index ffa684c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_south.png
deleted file mode 100644
index 65c526d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_east.png
deleted file mode 100644
index 7c64d0c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_north.png
deleted file mode 100644
index 7344a01..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_south.png
deleted file mode 100644
index b4405ce..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_north.png
deleted file mode 100644
index 3a0fdaf..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_south.png
deleted file mode 100644
index 118a3fd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_east.png
deleted file mode 100644
index 408eaba..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_north.png
deleted file mode 100644
index cdcc59d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_south.png
deleted file mode 100644
index 6a71272..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png
deleted file mode 100644
index 1a991b1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_north.png
deleted file mode 100644
index 99464b6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_south.png
deleted file mode 100644
index feb710c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_east.png
deleted file mode 100644
index 1c194ed..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_north.png
deleted file mode 100644
index 896226b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_6_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png
deleted file mode 100644
index 2e80d11..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png
deleted file mode 100644
index 2d0ae19..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png
deleted file mode 100644
index cfdce29..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png
deleted file mode 100644
index 4e8fc95..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png
deleted file mode 100644
index ce604aa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png
deleted file mode 100644
index cd601f2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_8_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png
deleted file mode 100644
index 9a3c708..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png
deleted file mode 100644
index 2098247..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png
deleted file mode 100644
index 01ab259..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/CustomPose/JiggleUp/Breasts_Female_9_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_1_north.png
deleted file mode 100644
index 4801d8a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_5_south.png
deleted file mode 100644
index da7cde6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_east.png
deleted file mode 100644
index 4571773..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_north.png
deleted file mode 100644
index fdeebd9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_south.png
deleted file mode 100644
index 5ab4f1f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/backup/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_10_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_10_south.png
deleted file mode 100644
index e91c735..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_10_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_5_south.png
deleted file mode 100644
index 39f1084..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_7_south.png
deleted file mode 100644
index f1c6107..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_8_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_8_south.png
deleted file mode 100644
index 816769e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_8_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_9_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_9_south.png
deleted file mode 100644
index 8df390f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old/Breasts_Female_9_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_east.png
deleted file mode 100644
index c202473..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_north.png
deleted file mode 100644
index 2c52289..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_south.png
deleted file mode 100644
index 469a104..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Fat_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_east.png
deleted file mode 100644
index fef9fd1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_north.png
deleted file mode 100644
index ffa684c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_south.png
deleted file mode 100644
index 6167244..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_east.png
deleted file mode 100644
index 2ce4683..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_north.png
deleted file mode 100644
index ee8ac67..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_south.png
deleted file mode 100644
index 0c5c387..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_east.png
deleted file mode 100644
index d45bbac..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_north.png
deleted file mode 100644
index 3b9ca59..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_south.png
deleted file mode 100644
index 5c0ac19..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_east.png
deleted file mode 100644
index aa14d4d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_north.png
deleted file mode 100644
index d826a19..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_south.png
deleted file mode 100644
index 2d0c63b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_east.png
deleted file mode 100644
index bcedc53..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_north.png
deleted file mode 100644
index af67aee..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_south.png
deleted file mode 100644
index 965d0a0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_east.png
deleted file mode 100644
index 4405559..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_north.png
deleted file mode 100644
index 1585165..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_south.png
deleted file mode 100644
index 77e223a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_east.png
deleted file mode 100644
index 58c826b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_north.png
deleted file mode 100644
index d705da8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_south.png
deleted file mode 100644
index fb8351f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Female_6_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_east.png
deleted file mode 100644
index bc58487..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_north.png
deleted file mode 100644
index b97b635..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_south.png
deleted file mode 100644
index adfc3b0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Male_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_east.png
deleted file mode 100644
index 944b523..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_north.png
deleted file mode 100644
index ffa684c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_south.png
deleted file mode 100644
index 7930caf..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_east.png
deleted file mode 100644
index 83c4e13..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_north.png
deleted file mode 100644
index ee8ac67..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_south.png
deleted file mode 100644
index 0c5c387..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_east.png
deleted file mode 100644
index 3d25b31..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_north.png
deleted file mode 100644
index 3b9ca59..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_south.png
deleted file mode 100644
index 5c0ac19..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_east.png
deleted file mode 100644
index dd00ca4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_north.png
deleted file mode 100644
index d826a19..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_south.png
deleted file mode 100644
index 2d0c63b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_east.png
deleted file mode 100644
index edfe2ac..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_north.png
deleted file mode 100644
index af67aee..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_south.png
deleted file mode 100644
index 965d0a0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_east.png
deleted file mode 100644
index 4405559..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_north.png
deleted file mode 100644
index 1585165..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_south.png
deleted file mode 100644
index e1d3b79..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_east.png
deleted file mode 100644
index f2a7d16..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_north.png
deleted file mode 100644
index b19bed2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_south.png
deleted file mode 100644
index 15443a1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/old2/Breasts_Thin_6_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_10_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_10_east.png
deleted file mode 100644
index 1264d93..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_10_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_10_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_10_south.png
deleted file mode 100644
index 5f8fe6a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_10_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_east.png
deleted file mode 100644
index 4571773..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_north.png
deleted file mode 100644
index fdeebd9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_south.png
deleted file mode 100644
index 5ab4f1f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_7_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_9_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_9_east.png
deleted file mode 100644
index b1bd9e2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_9_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_9_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_9_south.png
deleted file mode 100644
index 532b851..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Breasts/temp/Breasts_Female_9_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Hips/Hips_OTY_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Hips/Hips_OTY_2_south.png
deleted file mode 100644
index 5ea7550..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Hips/Hips_OTY_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_east.png
deleted file mode 100644
index 8fa4b4e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_north.png
deleted file mode 100644
index df41bbd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_south.png
deleted file mode 100644
index a7b06fb..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_east.png
deleted file mode 100644
index 76a409a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_north.png
deleted file mode 100644
index 155b750..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_south.png
deleted file mode 100644
index 5a24645..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_east.png
deleted file mode 100644
index eae0e4e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_north.png
deleted file mode 100644
index 57aac47..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_south.png
deleted file mode 100644
index edf53bc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_east.png
deleted file mode 100644
index 9034ea7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_north.png
deleted file mode 100644
index 99efe23..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_south.png
deleted file mode 100644
index fbb573f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_east.png
deleted file mode 100644
index b46cad5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_north.png
deleted file mode 100644
index 13080f6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_south.png
deleted file mode 100644
index ecfd8a7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_east.png
deleted file mode 100644
index 788e70c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_north.png
deleted file mode 100644
index 6b2a240..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_south.png
deleted file mode 100644
index fe9fe39..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_east.png
deleted file mode 100644
index ee66cfb..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_north.png
deleted file mode 100644
index 0badad7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_south.png
deleted file mode 100644
index 71a00c0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_east.png
deleted file mode 100644
index 12911e6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_north.png
deleted file mode 100644
index 3bd0221..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_south.png
deleted file mode 100644
index 3f63f1e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_east.png
deleted file mode 100644
index a3dfd75..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_north.png
deleted file mode 100644
index ebfcfcd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_south.png
deleted file mode 100644
index c43de9c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_east.png
deleted file mode 100644
index 9f39400..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_north.png
deleted file mode 100644
index b4ac34f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_south.png
deleted file mode 100644
index ddbb564..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_east.png
deleted file mode 100644
index 7943b67..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_north.png
deleted file mode 100644
index e0fb1b1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_south.png
deleted file mode 100644
index 9ca0736..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_east.png
deleted file mode 100644
index 40c4933..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_north.png
deleted file mode 100644
index 53f167b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_south.png
deleted file mode 100644
index c43de9c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_east.png
deleted file mode 100644
index 944eea9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_north.png
deleted file mode 100644
index 4259b05..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_south.png
deleted file mode 100644
index fba7c0b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_east.png
deleted file mode 100644
index 3306f67..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_north.png
deleted file mode 100644
index 728d204..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_south.png
deleted file mode 100644
index 2126f10..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_east.png
deleted file mode 100644
index 922dd85..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_north.png
deleted file mode 100644
index 51d60a9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_south.png
deleted file mode 100644
index d7264e4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_east.png
deleted file mode 100644
index a3dfd75..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_north.png
deleted file mode 100644
index bcaed51..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_south.png
deleted file mode 100644
index c43de9c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/Penis_UndefinedOffset_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_east.png
deleted file mode 100644
index 0824c25..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_north.png
deleted file mode 100644
index c871a65..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_south.png
deleted file mode 100644
index 89653e7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/PegDick_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_east.png
deleted file mode 100644
index 51b3bb5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_north.png
deleted file mode 100644
index a0938f5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_south.png
deleted file mode 100644
index 651d452..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_east.png
deleted file mode 100644
index 2cac42e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_north.png
deleted file mode 100644
index dd62ef5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_south.png
deleted file mode 100644
index 838c235..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Hulk_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Hulk_3_south.png
deleted file mode 100644
index 15cb559..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Hulk_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_east.png
deleted file mode 100644
index e180466..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_north.png
deleted file mode 100644
index f6e2709..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_south.png
deleted file mode 100644
index fa0ab1f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_east.png
deleted file mode 100644
index 5876a07..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_north.png
deleted file mode 100644
index 61fb743..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_south.png
deleted file mode 100644
index 85e7aaa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Balls/old/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_east.png
deleted file mode 100644
index 12bb438..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_north.png
deleted file mode 100644
index 7d3f8ae..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_south.png
deleted file mode 100644
index 42b8ba5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/CustomPose/PenisDown/Horny/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_east.png
deleted file mode 100644
index 3fc883b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_south.png
deleted file mode 100644
index b28cbe8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_east.png
deleted file mode 100644
index 4e2f9d1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_south.png
deleted file mode 100644
index d9fdf2e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_east.png
deleted file mode 100644
index 24e2989..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_south.png
deleted file mode 100644
index c43c441..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_east.png
deleted file mode 100644
index 287388e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_south.png
deleted file mode 100644
index 9863353..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_east.png
deleted file mode 100644
index b37641e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_south.png
deleted file mode 100644
index fb31605..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_east.png
deleted file mode 100644
index 16edc84..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_south.png
deleted file mode 100644
index b8b7f85..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_east.png
deleted file mode 100644
index 3b05456..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_south.png
deleted file mode 100644
index 2e568ce..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_east.png
deleted file mode 100644
index 013ef54..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_south.png
deleted file mode 100644
index b928031..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_east.png
deleted file mode 100644
index 9ca1e0a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_south.png
deleted file mode 100644
index 4f25304..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_east.png
deleted file mode 100644
index a8232b8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_south.png
deleted file mode 100644
index 519fb0c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_east.png
deleted file mode 100644
index e9a6cbd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_south.png
deleted file mode 100644
index 82ac4ff..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_east.png
deleted file mode 100644
index 05500ad..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_south.png
deleted file mode 100644
index fc064b2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_east.png
deleted file mode 100644
index 503fdf4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_south.png
deleted file mode 100644
index 9e9d988..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_east.png
deleted file mode 100644
index 99de71a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_south.png
deleted file mode 100644
index 2df13f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_east.png
deleted file mode 100644
index 0fd18af..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_south.png
deleted file mode 100644
index 82f2b8a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_east .png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_east .png
deleted file mode 100644
index 9ca1e0a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_east .png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_north.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_south .png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_south .png
deleted file mode 100644
index 4f25304..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/Penis_UndefinedOffset_2_south .png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_east.png
deleted file mode 100644
index e8d3904..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_north.png
deleted file mode 100644
index 49eb4d6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_south.png
deleted file mode 100644
index fc947e4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_east.png
deleted file mode 100644
index 0ca73cd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_north.png
deleted file mode 100644
index a17615c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_south.png
deleted file mode 100644
index f7c7b33..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_east.png
deleted file mode 100644
index 09b2561..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_north.png
deleted file mode 100644
index e346d60..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_south.png
deleted file mode 100644
index f091c38..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_east.png
deleted file mode 100644
index 48540b6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_north.png
deleted file mode 100644
index 6b082aa..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_south.png
deleted file mode 100644
index 594c682..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Horny/old/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_east.png
deleted file mode 100644
index d3da276..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_north.png
deleted file mode 100644
index 14c0f4b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_south.png
deleted file mode 100644
index 05b128d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/HorsePenis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_east.png
deleted file mode 100644
index 407a3e9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_north.png
deleted file mode 100644
index 5021af2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_south.png
deleted file mode 100644
index 3ec1cb9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_east.png
deleted file mode 100644
index cbc45e6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_north.png
deleted file mode 100644
index f663e97..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_south.png
deleted file mode 100644
index fa1e8dc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_east.png
deleted file mode 100644
index f906c9f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_north.png
deleted file mode 100644
index 08e732d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_south.png
deleted file mode 100644
index bbb7c8b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_east.png
deleted file mode 100644
index f749f00..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_north.png
deleted file mode 100644
index b5e2f57..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_south.png
deleted file mode 100644
index 001f104..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_east.png
deleted file mode 100644
index 93ebdab..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_north.png
deleted file mode 100644
index b7232b0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_south.png
deleted file mode 100644
index 101cdf5..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_east.png
deleted file mode 100644
index be86346..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_north.png
deleted file mode 100644
index ad49440..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_south.png
deleted file mode 100644
index 72dc3df..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_east.png
deleted file mode 100644
index 3127910..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_north.png
deleted file mode 100644
index 9bb2fb0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_south.png
deleted file mode 100644
index 38b844f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_east.png
deleted file mode 100644
index 09c837d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_north.png
deleted file mode 100644
index 459d10c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_south.png
deleted file mode 100644
index 1c19ab7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_east.png
deleted file mode 100644
index 41eb510..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_north.png
deleted file mode 100644
index ff81492..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_south.png
deleted file mode 100644
index 0926bd2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_east.png
deleted file mode 100644
index 6aefbfe..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_north.png
deleted file mode 100644
index 53d8128..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_south.png
deleted file mode 100644
index 3c4e1e2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_east.png
deleted file mode 100644
index 8f69c1c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_north.png
deleted file mode 100644
index 1e4f941..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_south.png
deleted file mode 100644
index 6022043..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_east.png
deleted file mode 100644
index 390ce5e..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_north.png
deleted file mode 100644
index ff81492..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_south.png
deleted file mode 100644
index 1488a73..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_east.png
deleted file mode 100644
index fea17ab..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_north.png
deleted file mode 100644
index 4e126e7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_south.png
deleted file mode 100644
index c3a182a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_east.png
deleted file mode 100644
index be5d7a0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_north.png
deleted file mode 100644
index e533fe3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_south.png
deleted file mode 100644
index 0acb994..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_east.png
deleted file mode 100644
index 789b6cc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_north.png
deleted file mode 100644
index 08e6ad1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_south.png
deleted file mode 100644
index c048631..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_2_north.png
deleted file mode 100644
index ff81492..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_2_south.png
deleted file mode 100644
index 0926bd2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_east.png
deleted file mode 100644
index 41eb510..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/Penis_UndefinedOffset_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_east.png
deleted file mode 100644
index e1b47b8..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_eastm.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_eastm.png
deleted file mode 100644
index 8ca6c82..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_eastm.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_north.png
deleted file mode 100644
index f0f6572..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_northm.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_northm.png
deleted file mode 100644
index 8ca6c82..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_northm.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_south.png
deleted file mode 100644
index 1e3a737..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_southm.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_southm.png
deleted file mode 100644
index 8ca6c82..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/PegDick_Female_3_southm.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_east.png
deleted file mode 100644
index 13e3047..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_north.png
deleted file mode 100644
index 3754043..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_south.png
deleted file mode 100644
index f7b211a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Fat_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_east.png
deleted file mode 100644
index 044545b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_north.png
deleted file mode 100644
index 38bfad2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_south.png
deleted file mode 100644
index 49bf41c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_east.png
deleted file mode 100644
index d6dabf6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_north.png
deleted file mode 100644
index 542ad81..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_south.png
deleted file mode 100644
index 1f4c748..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Male_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_east.png
deleted file mode 100644
index 27072c1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_north.png
deleted file mode 100644
index 7173c17..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_south.png
deleted file mode 100644
index 9fc85c0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Penis/old/Penis_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/PubicHairs/Clean.png b/Textures/SizedApparel/BodyParts/Humanlike/PubicHairs/Clean.png
deleted file mode 100644
index 4012944..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/PubicHairs/Clean.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Thighs/Thigh_OTY_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Thighs/Thigh_OTY_2_south.png
deleted file mode 100644
index b85c9b0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Thighs/Thigh_OTY_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_north.png
deleted file mode 100644
index 83218fc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_south.png
deleted file mode 100644
index ffc2ab1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_north.png
deleted file mode 100644
index 8fcd516..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_south.png
deleted file mode 100644
index e3f6de2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_north.png
deleted file mode 100644
index 70d9a91..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_south.png
deleted file mode 100644
index 0be83fe..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_north.png
deleted file mode 100644
index 1a98f18..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_south.png
deleted file mode 100644
index 5bd6614..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_north.png
deleted file mode 100644
index 108de7b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_south.png
deleted file mode 100644
index 5c5f238..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_north.png
deleted file mode 100644
index a91f7f7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_south.png
deleted file mode 100644
index 16c1fc1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_north.png
deleted file mode 100644
index ff95748..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_south.png
deleted file mode 100644
index 76aaf0f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_1_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_1_south.png
deleted file mode 100644
index 7586fb3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_2_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_2_south.png
deleted file mode 100644
index da5a435..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_north.png
deleted file mode 100644
index d653938..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_south.png
deleted file mode 100644
index 925736a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_north.png
deleted file mode 100644
index ba57344..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_south.png
deleted file mode 100644
index 89afd28..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_north.png
deleted file mode 100644
index dec22cf..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_south.png
deleted file mode 100644
index 213225f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Horny/Vagina_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_north.png
deleted file mode 100644
index 83218fc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_south.png
deleted file mode 100644
index ffc2ab1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_north.png
deleted file mode 100644
index 8fcd516..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_south.png
deleted file mode 100644
index e3f6de2..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_north.png
deleted file mode 100644
index 70d9a91..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_south.png
deleted file mode 100644
index 0be83fe..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_north.png
deleted file mode 100644
index 1a98f18..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_south.png
deleted file mode 100644
index 5bd6614..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_north.png
deleted file mode 100644
index 108de7b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_south.png
deleted file mode 100644
index 5c5f238..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_north.png
deleted file mode 100644
index a91f7f7..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_south.png
deleted file mode 100644
index 16c1fc1..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Female_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_north.png
deleted file mode 100644
index ff95748..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_south.png
deleted file mode 100644
index 76aaf0f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_0_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_north.png
deleted file mode 100644
index 56ad1d6..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_south.png
deleted file mode 100644
index 7586fb3..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_1_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_north.png
deleted file mode 100644
index ae65a17..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_south.png
deleted file mode 100644
index da5a435..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_north.png
deleted file mode 100644
index d653938..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_south.png
deleted file mode 100644
index 925736a..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_3_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_north.png
deleted file mode 100644
index ba57344..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_south.png
deleted file mode 100644
index 89afd28..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_4_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_east.png
deleted file mode 100644
index 1f816f0..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_north.png
deleted file mode 100644
index dec22cf..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_south.png
deleted file mode 100644
index 213225f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/Vagina_Thin_5_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old/Vagina_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old/Vagina_Female_2_south.png
deleted file mode 100644
index 9a3bf7d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old/Vagina_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_east.png
deleted file mode 100644
index d70c973..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_north.png
deleted file mode 100644
index beaedcc..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_south.png
deleted file mode 100644
index eff8813..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Fat_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_east.png
deleted file mode 100644
index 04ca716..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_north.png
deleted file mode 100644
index 4c65ecd..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_south.png
deleted file mode 100644
index 456417f..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Female_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_east.png
deleted file mode 100644
index c52a24c..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_north.png
deleted file mode 100644
index c9f2f5d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_south.png
deleted file mode 100644
index cd42fd4..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Hulk_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_east.png
deleted file mode 100644
index 49f5cd9..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_north.png
deleted file mode 100644
index ef3e52d..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_south.png
deleted file mode 100644
index d88635b..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Male_2_south.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_east.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_east.png
deleted file mode 100644
index c48ac69..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_east.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_north.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_north.png
deleted file mode 100644
index 122ffec..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_north.png and /dev/null differ
diff --git a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_south.png b/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_south.png
deleted file mode 100644
index db48c85..0000000
Binary files a/Textures/SizedApparel/BodyParts/Humanlike/Vagina/old2/Vagina_Thin_2_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron.png b/Textures/Things/Apparel/Apron/source/Apron.png
deleted file mode 100644
index f14cd70..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Fat_east.png b/Textures/Things/Apparel/Apron/source/Apron_Fat_east.png
deleted file mode 100644
index 64ce7ed..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Fat_north.png b/Textures/Things/Apparel/Apron/source/Apron_Fat_north.png
deleted file mode 100644
index 8f864e5..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Fat_south.png b/Textures/Things/Apparel/Apron/source/Apron_Fat_south.png
deleted file mode 100644
index d085270..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Female_east.png b/Textures/Things/Apparel/Apron/source/Apron_Female_east.png
deleted file mode 100644
index 1b3d635..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Female_north.png b/Textures/Things/Apparel/Apron/source/Apron_Female_north.png
deleted file mode 100644
index 35dc25e..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Female_south.png b/Textures/Things/Apparel/Apron/source/Apron_Female_south.png
deleted file mode 100644
index f0ab058..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Hulk_east.png b/Textures/Things/Apparel/Apron/source/Apron_Hulk_east.png
deleted file mode 100644
index 80f1db2..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Hulk_north.png b/Textures/Things/Apparel/Apron/source/Apron_Hulk_north.png
deleted file mode 100644
index 998760c..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Hulk_south.png b/Textures/Things/Apparel/Apron/source/Apron_Hulk_south.png
deleted file mode 100644
index 56bc7ff..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Male_east.png b/Textures/Things/Apparel/Apron/source/Apron_Male_east.png
deleted file mode 100644
index 0388f48..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Male_north.png b/Textures/Things/Apparel/Apron/source/Apron_Male_north.png
deleted file mode 100644
index 9a85476..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Male_south.png b/Textures/Things/Apparel/Apron/source/Apron_Male_south.png
deleted file mode 100644
index 1875e42..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Thin_east.png b/Textures/Things/Apparel/Apron/source/Apron_Thin_east.png
deleted file mode 100644
index c75fc8e..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Thin_north.png b/Textures/Things/Apparel/Apron/source/Apron_Thin_north.png
deleted file mode 100644
index 624bf31..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Apron/source/Apron_Thin_south.png b/Textures/Things/Apparel/Apron/source/Apron_Thin_south.png
deleted file mode 100644
index 70dd315..0000000
Binary files a/Textures/Things/Apparel/Apron/source/Apron_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse.png b/Textures/Things/Apparel/Blouse/source/Blouse.png
deleted file mode 100644
index 07da9ed..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Fat_east.png b/Textures/Things/Apparel/Blouse/source/Blouse_Fat_east.png
deleted file mode 100644
index 168f616..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Fat_north.png b/Textures/Things/Apparel/Blouse/source/Blouse_Fat_north.png
deleted file mode 100644
index 20345d2..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Fat_south.png b/Textures/Things/Apparel/Blouse/source/Blouse_Fat_south.png
deleted file mode 100644
index 465bd18..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Female_east.png b/Textures/Things/Apparel/Blouse/source/Blouse_Female_east.png
deleted file mode 100644
index 2a1cc96..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Female_north.png b/Textures/Things/Apparel/Blouse/source/Blouse_Female_north.png
deleted file mode 100644
index 1d52595..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Female_south.png b/Textures/Things/Apparel/Blouse/source/Blouse_Female_south.png
deleted file mode 100644
index 6232a5c..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_east.png b/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_east.png
deleted file mode 100644
index 977cc21..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_north.png b/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_north.png
deleted file mode 100644
index c1c2871..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_south.png b/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_south.png
deleted file mode 100644
index 166b7f7..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Male_east.png b/Textures/Things/Apparel/Blouse/source/Blouse_Male_east.png
deleted file mode 100644
index 8035898..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Male_north.png b/Textures/Things/Apparel/Blouse/source/Blouse_Male_north.png
deleted file mode 100644
index 53a85eb..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Male_south.png b/Textures/Things/Apparel/Blouse/source/Blouse_Male_south.png
deleted file mode 100644
index a8bdcc4..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Thin_east.png b/Textures/Things/Apparel/Blouse/source/Blouse_Thin_east.png
deleted file mode 100644
index d7df226..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Thin_north.png b/Textures/Things/Apparel/Blouse/source/Blouse_Thin_north.png
deleted file mode 100644
index 1f60da8..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Blouse/source/Blouse_Thin_south.png b/Textures/Things/Apparel/Blouse/source/Blouse_Thin_south.png
deleted file mode 100644
index 5297b89..0000000
Binary files a/Textures/Things/Apparel/Blouse/source/Blouse_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket.png
deleted file mode 100644
index 1f03472..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_east.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_east.png
deleted file mode 100644
index 454755d..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_north.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_north.png
deleted file mode 100644
index bd6e7c2..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_south.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_south.png
deleted file mode 100644
index 34abe08..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_east.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_east.png
deleted file mode 100644
index e6a1982..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_north.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_north.png
deleted file mode 100644
index 93447a5..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_south.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_south.png
deleted file mode 100644
index 63ecb82..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_east.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_east.png
deleted file mode 100644
index df9bc6d..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_north.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_north.png
deleted file mode 100644
index b8346df..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_south.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_south.png
deleted file mode 100644
index 8945e25..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_east.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_east.png
deleted file mode 100644
index 6a87094..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_north.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_north.png
deleted file mode 100644
index 3a63316..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_south.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_south.png
deleted file mode 100644
index c4f5100..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_east.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_east.png
deleted file mode 100644
index 51737e5..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_north.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_north.png
deleted file mode 100644
index d8e05d8..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_south.png b/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_south.png
deleted file mode 100644
index 2bdf24f..0000000
Binary files a/Textures/Things/Apparel/BuildersJacket/source/BuildersJacket_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt.png
deleted file mode 100644
index bf2e4de..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_east.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_east.png
deleted file mode 100644
index b59a5cc..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_north.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_north.png
deleted file mode 100644
index 8d7fdbb..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_south.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_south.png
deleted file mode 100644
index 0c43e43..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_east.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_east.png
deleted file mode 100644
index 4f76dba..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_north.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_north.png
deleted file mode 100644
index bbaa19e..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_south.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_south.png
deleted file mode 100644
index f3a15b1..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_east.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_east.png
deleted file mode 100644
index 1b6c67b..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_north.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_north.png
deleted file mode 100644
index 38b89c4..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_south.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_south.png
deleted file mode 100644
index 0781727..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_east.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_east.png
deleted file mode 100644
index e5c18ff..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_north.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_north.png
deleted file mode 100644
index 01e4982..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_south.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_south.png
deleted file mode 100644
index 4c5601b..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_east.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_east.png
deleted file mode 100644
index 3ea3041..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_north.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_north.png
deleted file mode 100644
index d14ccee..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_south.png b/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_south.png
deleted file mode 100644
index cff71c7..0000000
Binary files a/Textures/Things/Apparel/CasualTShirt/source/CasualTShirt_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform.png
deleted file mode 100644
index 49fc930..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_east.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_east.png
deleted file mode 100644
index 1f09202..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_north.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_north.png
deleted file mode 100644
index ce3231f..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_south.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_south.png
deleted file mode 100644
index f361b1f..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_east.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_east.png
deleted file mode 100644
index a67493a..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_north.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_north.png
deleted file mode 100644
index 850c8a3..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_south.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_south.png
deleted file mode 100644
index 51f210e..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_east.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_east.png
deleted file mode 100644
index 23ad9b3..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_north.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_north.png
deleted file mode 100644
index 3f6641f..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_south.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_south.png
deleted file mode 100644
index 6352cfb..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_east.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_east.png
deleted file mode 100644
index d873784..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_north.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_north.png
deleted file mode 100644
index 1d17634..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_south.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_south.png
deleted file mode 100644
index f4849bd..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_east.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_east.png
deleted file mode 100644
index ec3f830..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_north.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_north.png
deleted file mode 100644
index 92aca60..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_south.png b/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_south.png
deleted file mode 100644
index de0bd04..0000000
Binary files a/Textures/Things/Apparel/ChefsUniform/source/ChefsUniform_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie.png b/Textures/Things/Apparel/Hoodie/source/Hoodie.png
deleted file mode 100644
index 96b5c98..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_east.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_east.png
deleted file mode 100644
index d7dbbca..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_north.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_north.png
deleted file mode 100644
index 3970918..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_south.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_south.png
deleted file mode 100644
index 0092e29..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_east.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_east.png
deleted file mode 100644
index 4d073a2..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_north.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_north.png
deleted file mode 100644
index a8ce70d..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_south.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_south.png
deleted file mode 100644
index 173fecd..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_east.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_east.png
deleted file mode 100644
index b3fb284..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_north.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_north.png
deleted file mode 100644
index 461389f..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_south.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_south.png
deleted file mode 100644
index 7a6616d..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_east.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_east.png
deleted file mode 100644
index ed0c5d9..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_north.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_north.png
deleted file mode 100644
index b31c097..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_south.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_south.png
deleted file mode 100644
index bcbe9b5..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_east.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_east.png
deleted file mode 100644
index dae8ceb..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_north.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_north.png
deleted file mode 100644
index b0452d4..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_south.png b/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_south.png
deleted file mode 100644
index 3b21000..0000000
Binary files a/Textures/Things/Apparel/Hoodie/source/Hoodie_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit.png
deleted file mode 100644
index 673b40d..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_east.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_east.png
deleted file mode 100644
index ef4ee2d..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_north.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_north.png
deleted file mode 100644
index 66cf08b..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_south.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_south.png
deleted file mode 100644
index 6bedcc8..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_east.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_east.png
deleted file mode 100644
index da7762b..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_north.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_north.png
deleted file mode 100644
index d975f0d..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_south.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_south.png
deleted file mode 100644
index 5b5d5da..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_east.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_east.png
deleted file mode 100644
index 0b6376f..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_north.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_north.png
deleted file mode 100644
index ead53d1..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_south.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_south.png
deleted file mode 100644
index af0f957..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_east.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_east.png
deleted file mode 100644
index 9df4110..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_north.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_north.png
deleted file mode 100644
index 1e9a0e3..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_south.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_south.png
deleted file mode 100644
index a55add5..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_east.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_east.png
deleted file mode 100644
index 33ab41e..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_north.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_north.png
deleted file mode 100644
index 8a99d74..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_south.png b/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_south.png
deleted file mode 100644
index 087827a..0000000
Binary files a/Textures/Things/Apparel/Jumpsuit/source/Jumpsuit_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat.png b/Textures/Things/Apparel/LabCoat/source/LabCoat.png
deleted file mode 100644
index 48116eb..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_east.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_east.png
deleted file mode 100644
index c1e23be..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_north.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_north.png
deleted file mode 100644
index ca86c8c..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_south.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_south.png
deleted file mode 100644
index 4479fd9..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_east.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_east.png
deleted file mode 100644
index 09226df..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_north.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_north.png
deleted file mode 100644
index 0da1114..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_south.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_south.png
deleted file mode 100644
index 359e84b..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_east.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_east.png
deleted file mode 100644
index 548f9e5..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_north.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_north.png
deleted file mode 100644
index 08d461b..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_south.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_south.png
deleted file mode 100644
index 1e9965a..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_east.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_east.png
deleted file mode 100644
index 332a289..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_north.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_north.png
deleted file mode 100644
index a465d24..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_south.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_south.png
deleted file mode 100644
index e7600d3..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_east.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_east.png
deleted file mode 100644
index e7adcae..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_north.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_north.png
deleted file mode 100644
index 19f1339..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_south.png b/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_south.png
deleted file mode 100644
index 96cb6ef..0000000
Binary files a/Textures/Things/Apparel/LabCoat/source/LabCoat_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket.png
deleted file mode 100644
index fad7b51..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_east.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_east.png
deleted file mode 100644
index 1352606..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_eastm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_eastm.png
deleted file mode 100644
index 7b02bd8..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_eastm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_north.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_north.png
deleted file mode 100644
index 8af346a..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_northm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_northm.png
deleted file mode 100644
index 5928eee..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_northm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_south.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_south.png
deleted file mode 100644
index 263a13b..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_southm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_southm.png
deleted file mode 100644
index f113a60..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Fat_southm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_east.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_east.png
deleted file mode 100644
index 7c4e8a9..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_eastm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_eastm.png
deleted file mode 100644
index dcff5cb..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_eastm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_north.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_north.png
deleted file mode 100644
index 5b5569c..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_northm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_northm.png
deleted file mode 100644
index f8c8b12..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_northm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_south.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_south.png
deleted file mode 100644
index 1fcf64f..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_southm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_southm.png
deleted file mode 100644
index 71d08df..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Female_southm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_east.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_east.png
deleted file mode 100644
index 0045389..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_eastm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_eastm.png
deleted file mode 100644
index a634854..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_eastm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_north.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_north.png
deleted file mode 100644
index c64f620..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_northm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_northm.png
deleted file mode 100644
index 669ec81..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_northm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_south.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_south.png
deleted file mode 100644
index a17dc04..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_southm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_southm.png
deleted file mode 100644
index 7a04369..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Hulk_southm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_east.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_east.png
deleted file mode 100644
index 14e37bd..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_eastm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_eastm.png
deleted file mode 100644
index 26ce096..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_eastm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_north.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_north.png
deleted file mode 100644
index ecd486e..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_northm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_northm.png
deleted file mode 100644
index 02e72dc..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_northm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_south.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_south.png
deleted file mode 100644
index fcc9c47..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_southm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_southm.png
deleted file mode 100644
index fa357ea..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Male_southm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_east.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_east.png
deleted file mode 100644
index ec070f8..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_eastm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_eastm.png
deleted file mode 100644
index c1487cc..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_eastm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_north.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_north.png
deleted file mode 100644
index e645ed1..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_northm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_northm.png
deleted file mode 100644
index 35ea3eb..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_northm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_south.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_south.png
deleted file mode 100644
index 38a6480..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_southm.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_southm.png
deleted file mode 100644
index 05d79f6..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_Thin_southm.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_m.png b/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_m.png
deleted file mode 100644
index 1454a74..0000000
Binary files a/Textures/Things/Apparel/MilitaryJacket/source/MilitaryJacket_m.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform.png
deleted file mode 100644
index d32b5be..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_east.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_east.png
deleted file mode 100644
index 0455492..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_north.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_north.png
deleted file mode 100644
index 8031e8b..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_south.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_south.png
deleted file mode 100644
index 3ee6fb9..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_east.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_east.png
deleted file mode 100644
index 7510fdf..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_north.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_north.png
deleted file mode 100644
index ef128b7..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_south.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_south.png
deleted file mode 100644
index 88a37ba..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_east.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_east.png
deleted file mode 100644
index b8549d2..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_north.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_north.png
deleted file mode 100644
index e22a623..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_south.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_south.png
deleted file mode 100644
index 794588c..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_east.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_east.png
deleted file mode 100644
index b9a9e5a..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_north.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_north.png
deleted file mode 100644
index 56f4a30..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_south.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_south.png
deleted file mode 100644
index e71f373..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_east.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_east.png
deleted file mode 100644
index 11ddc73..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_north.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_north.png
deleted file mode 100644
index 02e20a4..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_south.png b/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_south.png
deleted file mode 100644
index e66413f..0000000
Binary files a/Textures/Things/Apparel/MilitaryUniform/source/MilitaryUniform_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls.png b/Textures/Things/Apparel/Overalls/source/Overalls.png
deleted file mode 100644
index 06e7cf5..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Fat_east.png b/Textures/Things/Apparel/Overalls/source/Overalls_Fat_east.png
deleted file mode 100644
index a5270d9..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Fat_north.png b/Textures/Things/Apparel/Overalls/source/Overalls_Fat_north.png
deleted file mode 100644
index ec55d09..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Fat_south.png b/Textures/Things/Apparel/Overalls/source/Overalls_Fat_south.png
deleted file mode 100644
index d1b3a89..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Female_east.png b/Textures/Things/Apparel/Overalls/source/Overalls_Female_east.png
deleted file mode 100644
index e71f039..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Female_north.png b/Textures/Things/Apparel/Overalls/source/Overalls_Female_north.png
deleted file mode 100644
index 464563c..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Female_south.png b/Textures/Things/Apparel/Overalls/source/Overalls_Female_south.png
deleted file mode 100644
index e5159df..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_east.png b/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_east.png
deleted file mode 100644
index c23196e..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_north.png b/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_north.png
deleted file mode 100644
index 83d3aab..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_south.png b/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_south.png
deleted file mode 100644
index c737fc8..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Male_east.png b/Textures/Things/Apparel/Overalls/source/Overalls_Male_east.png
deleted file mode 100644
index 1c43cc9..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Male_north.png b/Textures/Things/Apparel/Overalls/source/Overalls_Male_north.png
deleted file mode 100644
index 00b9a23..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Male_south.png b/Textures/Things/Apparel/Overalls/source/Overalls_Male_south.png
deleted file mode 100644
index e7dbf66..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Thin_east.png b/Textures/Things/Apparel/Overalls/source/Overalls_Thin_east.png
deleted file mode 100644
index 201e6fa..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Thin_north.png b/Textures/Things/Apparel/Overalls/source/Overalls_Thin_north.png
deleted file mode 100644
index 6d6b99a..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Overalls/source/Overalls_Thin_south.png b/Textures/Things/Apparel/Overalls/source/Overalls_Thin_south.png
deleted file mode 100644
index 7284240..0000000
Binary files a/Textures/Things/Apparel/Overalls/source/Overalls_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat.png
deleted file mode 100644
index ef6eb27..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_east.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_east.png
deleted file mode 100644
index 2aad8be..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_north.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_north.png
deleted file mode 100644
index 21e75f4..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_south.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_south.png
deleted file mode 100644
index 481cbc6..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_east.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_east.png
deleted file mode 100644
index 3b821cb..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_north.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_north.png
deleted file mode 100644
index 1eaa7a3..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_south.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_south.png
deleted file mode 100644
index 928effe..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_east.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_east.png
deleted file mode 100644
index 21b26ce..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_north.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_north.png
deleted file mode 100644
index 0c9be08..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_south.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_south.png
deleted file mode 100644
index 0c6e20e..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_east.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_east.png
deleted file mode 100644
index 5de3203..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_north.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_north.png
deleted file mode 100644
index 7340ef3..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_south.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_south.png
deleted file mode 100644
index 6b19dc6..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_east.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_east.png
deleted file mode 100644
index 187bcd8..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_north.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_north.png
deleted file mode 100644
index 6f83c06..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_south.png b/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_south.png
deleted file mode 100644
index 6a863e1..0000000
Binary files a/Textures/Things/Apparel/PeltCoat/source/PeltCoat_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs.png b/Textures/Things/Apparel/Scrubs/source/Scrubs.png
deleted file mode 100644
index 5f5e011..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_east.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_east.png
deleted file mode 100644
index 5afccca..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_north.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_north.png
deleted file mode 100644
index be92eea..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_south.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_south.png
deleted file mode 100644
index aeacf6f..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_east.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_east.png
deleted file mode 100644
index c19c0e2..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_north.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_north.png
deleted file mode 100644
index 4c27928..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_south.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_south.png
deleted file mode 100644
index b2ddf57..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_east.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_east.png
deleted file mode 100644
index 777d8ba..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_north.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_north.png
deleted file mode 100644
index fa0ca77..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_south.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_south.png
deleted file mode 100644
index 0fd7b9d..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_east.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_east.png
deleted file mode 100644
index dfcefc1..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_north.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_north.png
deleted file mode 100644
index 97e16e6..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_south.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_south.png
deleted file mode 100644
index 04ecb43..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_east.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_east.png
deleted file mode 100644
index f96f043..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_north.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_north.png
deleted file mode 100644
index 2aa0c73..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_south.png b/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_south.png
deleted file mode 100644
index 6f33bc6..0000000
Binary files a/Textures/Things/Apparel/Scrubs/source/Scrubs_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt.png
deleted file mode 100644
index a11b17c..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_east.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_east.png
deleted file mode 100644
index 4bf71a8..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_north.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_north.png
deleted file mode 100644
index 8d01258..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_south.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_south.png
deleted file mode 100644
index 8d37a31..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_east.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_east.png
deleted file mode 100644
index c9ed4c9..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_north.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_north.png
deleted file mode 100644
index 2c76c91..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_south.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_south.png
deleted file mode 100644
index e3c8b12..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_east.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_east.png
deleted file mode 100644
index 5601157..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_north.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_north.png
deleted file mode 100644
index 3f6f759..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_south.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_south.png
deleted file mode 100644
index e303af8..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_east.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_east.png
deleted file mode 100644
index d6d4b15..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_north.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_north.png
deleted file mode 100644
index 6b85099..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_south.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_south.png
deleted file mode 100644
index 40e9a54..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_east.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_east.png
deleted file mode 100644
index d47face..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_north.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_north.png
deleted file mode 100644
index 1355483..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_south.png b/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_south.png
deleted file mode 100644
index c93b526..0000000
Binary files a/Textures/Things/Apparel/SheriffShirt/source/SheriffShirt_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece.png
deleted file mode 100644
index 83c677c..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_east.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_east.png
deleted file mode 100644
index 14aefca..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_north.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_north.png
deleted file mode 100644
index b2ab1bb..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_south.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_south.png
deleted file mode 100644
index ddc8a31..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_east.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_east.png
deleted file mode 100644
index 7d6c76b..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_north.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_north.png
deleted file mode 100644
index eecf665..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_south.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_south.png
deleted file mode 100644
index e3b74cc..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_east.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_east.png
deleted file mode 100644
index cd714e2..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_north.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_north.png
deleted file mode 100644
index 6934531..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_south.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_south.png
deleted file mode 100644
index 881dd92..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_east.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_east.png
deleted file mode 100644
index 38a2728..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_north.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_north.png
deleted file mode 100644
index b39b3ce..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_south.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_south.png
deleted file mode 100644
index 65c9403..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_east.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_east.png
deleted file mode 100644
index 31660a3..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_north.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_north.png
deleted file mode 100644
index 5887991..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_south.png b/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_south.png
deleted file mode 100644
index 7c4f68e..0000000
Binary files a/Textures/Things/Apparel/ShirtFleece/source/ShirtFleece_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie.png
deleted file mode 100644
index 2eb23e8..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_east.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_east.png
deleted file mode 100644
index f9d1527..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_north.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_north.png
deleted file mode 100644
index 25ae417..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_south.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_south.png
deleted file mode 100644
index 3b7d42d..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_east.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_east.png
deleted file mode 100644
index 431ec9b..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_north.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_north.png
deleted file mode 100644
index 6fcef0b..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_south.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_south.png
deleted file mode 100644
index 0d95ed1..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_east.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_east.png
deleted file mode 100644
index 80e613a..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_north.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_north.png
deleted file mode 100644
index 94aa5ba..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_south.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_south.png
deleted file mode 100644
index 737d89b..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_east.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_east.png
deleted file mode 100644
index 5a1fd5a..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_north.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_north.png
deleted file mode 100644
index 7584ae6..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_south.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_south.png
deleted file mode 100644
index 5302504..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_east.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_east.png
deleted file mode 100644
index 17e1d5c..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_north.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_north.png
deleted file mode 100644
index d38851b..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_south.png b/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_south.png
deleted file mode 100644
index 69c3d08..0000000
Binary files a/Textures/Things/Apparel/ShirtandTie/source/ShirtandTie_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket.png
deleted file mode 100644
index f382460..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_east.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_east.png
deleted file mode 100644
index 177fc76..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_north.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_north.png
deleted file mode 100644
index 982d13a..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_south.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_south.png
deleted file mode 100644
index 65797c1..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_east.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_east.png
deleted file mode 100644
index 834cb82..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_north.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_north.png
deleted file mode 100644
index 808e671..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_south.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_south.png
deleted file mode 100644
index 617afbb..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_east.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_east.png
deleted file mode 100644
index 5a45cd0..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_north.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_north.png
deleted file mode 100644
index 7b8757d..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_south.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_south.png
deleted file mode 100644
index aa9f1ca..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_east.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_east.png
deleted file mode 100644
index bf1163a..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_north.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_north.png
deleted file mode 100644
index a3ff363..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_south.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_south.png
deleted file mode 100644
index e2e0e44..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_east.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_east.png
deleted file mode 100644
index bea1645..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_north.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_north.png
deleted file mode 100644
index 1346491..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_south.png b/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_south.png
deleted file mode 100644
index 45935a0..0000000
Binary files a/Textures/Things/Apparel/SuitJacket/source/SuitJacket_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop.png b/Textures/Things/Apparel/TankTop/source/TankTop.png
deleted file mode 100644
index 3ce4395..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Fat_east.png b/Textures/Things/Apparel/TankTop/source/TankTop_Fat_east.png
deleted file mode 100644
index a33b18d..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Fat_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Fat_north.png b/Textures/Things/Apparel/TankTop/source/TankTop_Fat_north.png
deleted file mode 100644
index 4b11faa..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Fat_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Fat_south.png b/Textures/Things/Apparel/TankTop/source/TankTop_Fat_south.png
deleted file mode 100644
index 2409088..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Fat_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Female_east.png b/Textures/Things/Apparel/TankTop/source/TankTop_Female_east.png
deleted file mode 100644
index e0377d5..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Female_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Female_north.png b/Textures/Things/Apparel/TankTop/source/TankTop_Female_north.png
deleted file mode 100644
index 7e53e34..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Female_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Female_south.png b/Textures/Things/Apparel/TankTop/source/TankTop_Female_south.png
deleted file mode 100644
index cbfead6..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Female_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_east.png b/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_east.png
deleted file mode 100644
index 3e35af9..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_north.png b/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_north.png
deleted file mode 100644
index 440b252..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_south.png b/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_south.png
deleted file mode 100644
index 203259b..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Hulk_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Male_east.png b/Textures/Things/Apparel/TankTop/source/TankTop_Male_east.png
deleted file mode 100644
index ab9f49b..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Male_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Male_north.png b/Textures/Things/Apparel/TankTop/source/TankTop_Male_north.png
deleted file mode 100644
index 22d24f1..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Male_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Male_south.png b/Textures/Things/Apparel/TankTop/source/TankTop_Male_south.png
deleted file mode 100644
index d95deef..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Male_south.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Thin_east.png b/Textures/Things/Apparel/TankTop/source/TankTop_Thin_east.png
deleted file mode 100644
index f18042d..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Thin_east.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Thin_north.png b/Textures/Things/Apparel/TankTop/source/TankTop_Thin_north.png
deleted file mode 100644
index 47dddb4..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Thin_north.png and /dev/null differ
diff --git a/Textures/Things/Apparel/TankTop/source/TankTop_Thin_south.png b/Textures/Things/Apparel/TankTop/source/TankTop_Thin_south.png
deleted file mode 100644
index bb45eee..0000000
Binary files a/Textures/Things/Apparel/TankTop/source/TankTop_Thin_south.png and /dev/null differ
diff --git a/Textures/Things/Pawn/Humanlike/Apparel/Apparel.zip b/Textures/Things/Pawn/Humanlike/Apparel/Apparel.zip
new file mode 100644
index 0000000..803d68a
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Apparel/Apparel.zip differ
diff --git a/Textures/Things/Pawn/Humanlike/Apparel/ShirtButton.zip b/Textures/Things/Pawn/Humanlike/Apparel/ShirtButton.zip
new file mode 100644
index 0000000..182f0f4
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Apparel/ShirtButton.zip differ
diff --git a/Textures/Things/Pawn/Humanlike/Apparel/rename(don't run).py b/Textures/Things/Pawn/Humanlike/Apparel/rename(don't run).py
new file mode 100644
index 0000000..3800d76
--- /dev/null
+++ b/Textures/Things/Pawn/Humanlike/Apparel/rename(don't run).py
@@ -0,0 +1,94 @@
+import os
+
+files = os.listdir('./')
+
+for file in files:
+ if file[-2:] != 'py':
+ name = file
+
+ new_name = file.replace('_6', '_7')
+ #new_name = file.replace('_5', '_6')
+ #new_name = file.replace('_4', '_5')
+ #new_name = file.replace('_3', '_4')
+ #new_name = file.replace('_2', '_3')
+ #new_name = file.replace('_1', '_2')
+
+ name = os.path.join('./', name)
+ new_name = os.path.join('./', new_name)
+ os.rename(name, new_name)
+
+for file in files:
+ if file[-2:] != 'py':
+ name = file
+
+ #new_name = file.replace('_6', '_7')
+ new_name = file.replace('_5', '_6')
+ #new_name = file.replace('_4', '_5')
+ #new_name = file.replace('_3', '_4')
+ #new_name = file.replace('_2', '_3')
+ #new_name = file.replace('_1', '_2')
+
+ name = os.path.join('./', name)
+ new_name = os.path.join('./', new_name)
+ os.rename(name, new_name)
+
+for file in files:
+ if file[-2:] != 'py':
+ name = file
+
+ #new_name = file.replace('_6', '_7')
+ #new_name = file.replace('_5', '_6')
+ new_name = file.replace('_4', '_5')
+ #new_name = file.replace('_3', '_4')
+ #new_name = file.replace('_2', '_3')
+ #new_name = file.replace('_1', '_2')
+
+ name = os.path.join('./', name)
+ new_name = os.path.join('./', new_name)
+ os.rename(name, new_name)
+
+for file in files:
+ if file[-2:] != 'py':
+ name = file
+
+ #new_name = file.replace('_6', '_7')
+ #new_name = file.replace('_5', '_6')
+ #new_name = file.replace('_4', '_5')
+ new_name = file.replace('_3', '_4')
+ #new_name = file.replace('_2', '_3')
+ #new_name = file.replace('_1', '_2')
+
+ name = os.path.join('./', name)
+ new_name = os.path.join('./', new_name)
+ os.rename(name, new_name)
+
+for file in files:
+ if file[-2:] != 'py':
+ name = file
+
+ #new_name = file.replace('_6', '_7')
+ #new_name = file.replace('_5', '_6')
+ #new_name = file.replace('_4', '_5')
+ #new_name = file.replace('_3', '_4')
+ new_name = file.replace('_2', '_3')
+ #new_name = file.replace('_1', '_2')
+
+ name = os.path.join('./', name)
+ new_name = os.path.join('./', new_name)
+ os.rename(name, new_name)
+
+for file in files:
+ if file[-2:] != 'py':
+ name = file
+
+ #new_name = file.replace('_6', '_7')
+ #new_name = file.replace('_5', '_6')
+ #new_name = file.replace('_4', '_5')
+ #new_name = file.replace('_3', '_4')
+ #new_name = file.replace('_2', '_3')
+ new_name = file.replace('_1', '_2')
+
+ name = os.path.join('./', name)
+ new_name = os.path.join('./', new_name)
+ os.rename(name, new_name)
+
diff --git a/Textures/Things/Pawn/Humanlike/Apparel/renameCapital.py b/Textures/Things/Pawn/Humanlike/Apparel/renameCapital.py
new file mode 100644
index 0000000..6cb640b
--- /dev/null
+++ b/Textures/Things/Pawn/Humanlike/Apparel/renameCapital.py
@@ -0,0 +1,9 @@
+import os
+
+for filename in os.listdir("."):
+ new_filename = filename.replace("_female", "_Female")
+ new_filename = new_filename.replace("_thin", "_Thin")
+ new_filename = new_filename.replace("_male", "_Male")
+ new_filename = new_filename.replace("_fat", "_Fat")
+ new_filename = new_filename.replace("_hulk", "_Hulk")
+ os.rename(filename, new_filename)
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_east.png
new file mode 100644
index 0000000..c40352c
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_north.png
new file mode 100644
index 0000000..d11bb6c
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_south.png
new file mode 100644
index 0000000..2109d5f
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Female_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_east.png
new file mode 100644
index 0000000..a614624
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_north.png
new file mode 100644
index 0000000..2b437d4
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_south.png
new file mode 100644
index 0000000..9c87995
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/256/Naked_Thin_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_east.png
new file mode 100644
index 0000000..052c7d8
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_north.png
new file mode 100644
index 0000000..a87bf14
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_south.png
new file mode 100644
index 0000000..666f313
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Fat_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_east.png
new file mode 100644
index 0000000..365c5d0
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_north.png
new file mode 100644
index 0000000..ebbb626
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_south.png
new file mode 100644
index 0000000..6bace2e
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Hulk_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_east.png
new file mode 100644
index 0000000..1f8e47a
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_north.png
new file mode 100644
index 0000000..96b9316
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_south.png
new file mode 100644
index 0000000..fffc7f6
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/512/Naked_Male_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_east.png
new file mode 100644
index 0000000..cfd6920
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_north.png
new file mode 100644
index 0000000..8e5dbd8
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_south.png
new file mode 100644
index 0000000..bc86e5e
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Fat_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_east.png
new file mode 100644
index 0000000..1cc98d3
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_north.png
new file mode 100644
index 0000000..245e1d8
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_south.png
new file mode 100644
index 0000000..eeea2f4
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Hulk_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_east.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_east.png
new file mode 100644
index 0000000..180ebde
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_north.png
new file mode 100644
index 0000000..687f1ef
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_south.png
new file mode 100644
index 0000000..66352de
Binary files /dev/null and b/Textures/Things/Pawn/Humanlike/Bodies/FurCovered_Male_BaseBody_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_east.png b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_east.png
index 7af186a..ed3e994 100644
Binary files a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_east.png and b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_east.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_north.png b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_north.png
index 07f518d..d4736de 100644
Binary files a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_north.png and b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_south.png b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_south.png
index 39d886e..4a4f8cd 100644
Binary files a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_south.png and b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBodyF_south.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_north.png b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_north.png
index 4b940ba..f3d16cd 100644
Binary files a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_north.png and b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_north.png differ
diff --git a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_south.png b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_south.png
index add9fc7..48223d1 100644
Binary files a/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_south.png and b/Textures/Things/Pawn/Humanlike/Bodies/Naked_Hulk_BaseBody_south.png differ
diff --git a/Tools/SizedApparelTool/main.py b/Tools/SizedApparelTool/main.py
new file mode 100644
index 0000000..889790b
--- /dev/null
+++ b/Tools/SizedApparelTool/main.py
@@ -0,0 +1,128 @@
+import sys
+import math
+from PyQt5.QtCore import QPoint
+from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QToolTip , QMainWindow, QAction, qApp , QHBoxLayout, QVBoxLayout, QFrame
+from PyQt5.QtWidgets import QRadioButton, QCheckBox, QGroupBox, QGridLayout, QMenu, QTabWidget, QDesktopWidget, QLabel, QStatusBar
+from PyQt5.QtGui import QPixmap
+from PyQt5.QtGui import QFont
+from PyQt5.QtGui import QIcon
+from PyQt5.QtCore import QCoreApplication
+
+
+
+class MyApp(QWidget):
+ graphic_image = QPixmap
+ lbl_img = QLabel
+
+ def __init__(self):
+ super().__init__()
+ self.setWindowTitle('ImagePointFinder')
+ self.statusbar = QStatusBar()
+ self.statusbar.showMessage("Click Image to Get Position")
+ self.initUI()
+ self.setAcceptDrops(True)
+ self.posX = 0.0
+ self.posY = 0.0
+ self.Rot = 0.0
+ self.Len = 0
+
+ #self.setStatusBar(self.statusbar)
+
+ def dragEnterEvent(self, event):
+ if event.mimeData().hasUrls():
+ event.accept()
+ else:
+ event.ignore()
+
+ def dropEvent(self, event):
+ files = [u.toLocalFile() for u in event.mimeData().urls()]
+ for f in files:
+ print(f)
+ self.graphic_image = QPixmap(files[0])
+
+ self.lbl_img.setPixmap(self.graphic_image.scaled(512,512))
+ #self.lbl_img.frame = QFrame(self.lbl_img.frame)
+ self.lbl_img.setFrameShape(QFrame.Box)
+
+ def mousePressEvent(self, event):
+ #event.x()
+
+ #print()
+ self.posX = event.globalX() - self.lbl_img.mapToGlobal(QPoint(0,0)).x()
+ self.posY = event.globalY() - self.lbl_img.mapToGlobal(QPoint(0,0)).y()
+ self.Rot = 0.0
+ self.Len = 0.0
+ U = 0
+ V = 0
+ if(self.lbl_img.pixmap()):
+ U = (self.posX / self.lbl_img.pixmap().height())-0.5
+ V = (self.posY / self.lbl_img.pixmap().width())*-1 + 0.5
+ txt = "Clicked Position ; Position(x,y) =({0:.3f}, {1:.3f}) , Rotation = {2:.1f}, Length = {3:.3f} ".format(U, V, self.Rot, self.Len)
+ self.statusbar.showMessage(txt)
+ #print(event.globalX())
+
+ def mouseMoveEvent(self, event):
+ target_posX = event.globalX() - self.lbl_img.mapToGlobal(QPoint(0,0)).x()
+ target_posY = event.globalY() - self.lbl_img.mapToGlobal(QPoint(0,0)).y()
+
+ self.Rot = math.degrees( math.atan2(target_posY - self.posY, target_posX - self.posX)) + 90
+ if(self.Rot < 0):
+ self.Rot = self.Rot + 360
+
+
+ if(self.lbl_img.pixmap()):
+ U = (self.posX / self.lbl_img.pixmap().height())-0.5
+ V = (self.posY / self.lbl_img.pixmap().width())*-1 + 0.5
+ tU = target_posX / self.lbl_img.pixmap().height()
+ tV = target_posY / self.lbl_img.pixmap().width()
+ self.Len = math.fabs(math.dist((U,V),( tU, tV)))
+ txt = "Clicked Position ; Position(x,y) =({0:.3f}, {1:.3f}) , Rotation = {2:.1f}, Length = {3:.3f} ".format(U, V, self.Rot, self.Len)
+ self.statusbar.showMessage(txt)
+
+ def initUI(self):
+ tab1 = QWidget()
+ tab2 = QWidget()
+
+ tabs = QTabWidget()
+ tabs.addTab(tab1, 'Texture Pivot and Point Editor')
+ #tabs.addTab(tab2, 'Sized Texture List Editor')
+
+ vbox = QVBoxLayout()
+ vbox.addWidget(tabs)
+
+ self.graphic_image = QPixmap()
+ self.lbl_img = QLabel()
+ #self.lbl_img.setPixmap(self.graphic_image)
+ self.lbl_img.setText("Drag and Drop Image Here")
+
+ vbox2 = QVBoxLayout()
+ vbox2.addWidget(self.lbl_img)
+ vbox2.addWidget(self.statusbar)
+ tab1.setLayout(vbox2)
+
+
+ self.setLayout(vbox)
+
+ #print(self.hasMouseTracking())
+ self.setMouseTracking(True)
+
+ #print(self.hasMouseTracking())
+
+
+ self.setGeometry(500, 500, 500, 400)
+ self.center()
+
+ self.show()
+ #self.statusbar.show()
+
+ def center(self):
+ qr = self.frameGeometry()
+ cp = QDesktopWidget().availableGeometry().center()
+ qr.moveCenter(cp)
+ self.move(qr.topLeft())
+
+
+if __name__ == '__main__':
+ app = QApplication(sys.argv)
+ ex = MyApp()
+ sys.exit(app.exec_())
\ No newline at end of file
diff --git a/source/SizedApparel/AlienRaceSupport.cs b/source/SizedApparel/AlienRaceSupport.cs
index ebfcdd3..a8f1dba 100644
--- a/source/SizedApparel/AlienRaceSupport.cs
+++ b/source/SizedApparel/AlienRaceSupport.cs
@@ -11,10 +11,4 @@ namespace SizedApparel
class AlienRaceSupport
{
}
-
- public class SizedApparelPawnDef : Def
- {
- public bool allowForceHumanlike = false;
-
- }
}
diff --git a/source/SizedApparel/Graphic_BodyParts.cs b/source/SizedApparel/Graphic_BodyParts.cs
index 50be733..f221eda 100644
--- a/source/SizedApparel/Graphic_BodyParts.cs
+++ b/source/SizedApparel/Graphic_BodyParts.cs
@@ -6,6 +6,7 @@ using System.Threading.Tasks;
namespace SizedApparel
{
+ //Does it better to optimize?
public class Graphic_BodyParts : Verse.Graphic_Multi
{
public float serverity;
diff --git a/source/SizedApparel/Graphic_SizedApparel.cs b/source/SizedApparel/Graphic_SizedApparel.cs
index a0a879c..f84fa77 100644
--- a/source/SizedApparel/Graphic_SizedApparel.cs
+++ b/source/SizedApparel/Graphic_SizedApparel.cs
@@ -3,11 +3,17 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using UnityEngine;
+using RimWorld;
+using Verse;
namespace SizedApparel
{
- public class Graphic_SizedApparel : Verse.Graphic_Multi
+ //Does it better to optimize?
+ public class Graphic_SizedApparel : Graphic_Multi
{
-
+ public string TargetBodyParts = "Breats";
+ //Sized Graphics.
+ public List graphics;
}
}
diff --git a/source/SizedApparel/HarmonyPatches.cs b/source/SizedApparel/HarmonyPatches.cs
index 0a4f424..b571cb5 100644
--- a/source/SizedApparel/HarmonyPatches.cs
+++ b/source/SizedApparel/HarmonyPatches.cs
@@ -1,16 +1,11 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
+using HarmonyLib;
using RimWorld;
-using Verse;
-using HarmonyLib;
+//using Rimworld_Animations;
//using AlienRace;
-using UnityEngine;
using rjw;
-using Rimworld_Animations;
-using RevealingApparel;
-using System.Reflection;
+using System;
+using System.Linq;
+using Verse;
namespace SizedApparel
{
@@ -87,6 +82,22 @@ namespace SizedApparel
{
LicentiaActive = true;
}
+ if (!LicentiaActive)
+ {
+ if (LoadedModManager.RunningModsListForReading.Any(x => x.PackageId.ToLower() == "Euclidean.LustLicentia.RJWLabs".ToLower()))
+ {
+ LicentiaActive = true;
+ }
+ }
+ if (!LicentiaActive)
+ {
+ if (LoadedModManager.RunningModsListForReading.Any(x => x.PackageId.ToLower().Contains("LustLicentia.RJWLabs".ToLower())))
+ {
+ LicentiaActive = true;
+ }
+ }
+
+
//check rjw animation
if (LoadedModManager.RunningModsListForReading.Any(x => x.PackageId.ToLower() == "c0ffee.rimworld.animations".ToLower()))
@@ -186,7 +197,7 @@ namespace SizedApparel
{
Log.Message("[SizedApparel] RimworldAnimaion(rjw animation) Found");
- harmony.Patch(AccessTools.Method(typeof(CompBodyAnimator), "tickClip"),
+ harmony.Patch(AccessTools.Method(typeof(Rimworld_Animations.CompBodyAnimator), "tickClip"),
postfix: new HarmonyMethod(typeof(RimworldAnimationPatch), "TickClipPostfix"));
harmony.Patch(AccessTools.Method(typeof(JobDriver_SexBaseInitiator), "End"),
diff --git a/source/SizedApparel/Patch-Animation.cs b/source/SizedApparel/Patch-Animation.cs
new file mode 100644
index 0000000..32bc436
--- /dev/null
+++ b/source/SizedApparel/Patch-Animation.cs
@@ -0,0 +1,105 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using RimWorld;
+using Verse;
+using HarmonyLib;
+using UnityEngine;
+//using Rimworld_Animations;
+
+namespace SizedApparel
+{
+
+ public class RimworldAnimationPatch
+ {
+ //since instance (CompBodyAnimator class) must be soft dependency, Get as System.Object.
+ public static void TickClipPostfix(System.Object __instance) //CompBodyAnimator __instance, AnimationDef ___anim, int ___curStage, int ___actor, int ___clipTicks, float ___clipPercent
+ {
+ Rimworld_Animations.CompBodyAnimator instance = __instance as Rimworld_Animations.CompBodyAnimator;
+
+ if (instance == null)
+ return;
+
+ if (!instance.controlGenitalAngle)
+ return;
+
+ var comp = instance.parent.GetComp();
+ if (comp == null)
+ return;
+
+
+ comp.SetPenisAngle(instance.genitalAngle - instance.bodyAngle); //genitalAngle is global Angle value in rjwanimation... fix with body Angle;
+
+
+ if (!SizedApparelSettings.AnimationPatch)//Rotating Penis Setting(avobe) is set from RimworldAnimation Setting, not in SizedApparel.
+ return;
+
+ foreach (var actor in instance.actorsInCurrentAnimation)
+ {
+ //comp.ForceUpdateTickAnimation = true;
+ var actorcomp = actor.GetComp();
+ //actorcomp.SetBreastJiggle(true);
+ actorcomp.ForceUpdateTickAnimation = true;
+
+ }
+ return;
+ bool isFuckTick = false;
+ /*
+ var soundEffects = ((PawnAnimationClip)___anim.animationStages[___curStage].animationClips[___actor]).SoundEffects;
+ if (soundEffects.ContainsKey(___clipTicks) && (soundEffects[___clipTicks].Contains("Fuck") || soundEffects[___clipTicks].Contains("Suck")))
+ {
+ isFuckTick = true;
+ }
+ else
+ {
+ const int jiggleTime = 3;
+ for(int i = 0; i < jiggleTime; i++)
+ {
+ if (soundEffects.ContainsKey(___clipTicks - i) && soundEffects[___clipTicks - i].Contains("Fuck"))
+ {
+ isFuckTick = true;
+ break;
+ }
+ }
+ }*/
+ //need to find partner's breasts.
+ /*
+ if (isFuckTick)
+ {
+ foreach (var actor in __instance.actorsInCurrentAnimation)
+ {
+ actor.GetComp().SetBreastJiggle(true);
+ }
+ }
+ else
+ {
+ foreach (var actor in __instance.actorsInCurrentAnimation)
+ {
+ actor.GetComp().SetBreastJiggle(false);
+ }
+ }*/
+ //may have some tick issue? too fast jiggle?
+ }
+
+ //rjw's JobDriver_SexBaseInitiator end patch
+ public static void EndClipPostfix(System.Object __instance)//CompBodyAnimator __instance
+ {
+ Rimworld_Animations.CompBodyAnimator instance = __instance as Rimworld_Animations.CompBodyAnimator;
+ if (instance == null)
+ return;
+
+ if (!instance.controlGenitalAngle)
+ return;
+ var comp = instance.parent.GetComp();
+ if (comp == null)
+ return;
+ comp.SetBreastJiggle(false, -1);
+ comp.ForceUpdateTickAnimation = false;
+ comp.SetPenisAngle(0);
+
+ }
+ }
+
+}
diff --git a/source/SizedApparel/SizedApparelDubsApparelPatch.cs b/source/SizedApparel/Patch-DubsApparelPatch.cs
similarity index 100%
rename from source/SizedApparel/SizedApparelDubsApparelPatch.cs
rename to source/SizedApparel/Patch-DubsApparelPatch.cs
diff --git a/source/SizedApparel/SizedApparelRJWPatch.cs b/source/SizedApparel/Patch-RimJobWorld.cs
similarity index 96%
rename from source/SizedApparel/SizedApparelRJWPatch.cs
rename to source/SizedApparel/Patch-RimJobWorld.cs
index 7501d1d..06f8ac6 100644
--- a/source/SizedApparel/SizedApparelRJWPatch.cs
+++ b/source/SizedApparel/Patch-RimJobWorld.cs
@@ -21,7 +21,7 @@ namespace SizedApparel
ApparelRecorderComp comp = pawn?.GetComp();
if (comp == null)
return;
- comp.SetDirty();
+ comp.SetDirty(true,true,true);
/*
comp.ClearAll();
var graphicSet = pawn.Drawer?.renderer?.graphics;
diff --git a/source/SizedApparel/SizedApparelRNWPatch.cs b/source/SizedApparel/Patch-RimNudeWorld.cs
similarity index 100%
rename from source/SizedApparel/SizedApparelRNWPatch.cs
rename to source/SizedApparel/Patch-RimNudeWorld.cs
diff --git a/source/SizedApparel/SizedApparelBodyPart.cs b/source/SizedApparel/SizedApparelBodyPart.cs
index 580be69..70b9000 100644
--- a/source/SizedApparel/SizedApparelBodyPart.cs
+++ b/source/SizedApparel/SizedApparelBodyPart.cs
@@ -10,22 +10,42 @@ using Verse;
namespace SizedApparel
{
- public struct Depth4Offsets
+ public class Depth4Offsets
{
- float South;
- float North;
- float East;
- float West;
+ public float south=0;
+ public float north=0;
+ public float east=0;
+ public float west=0;
+
+ public Depth4Offsets() { }
+
+ public Depth4Offsets(Vector4 arg)
+ {
+ south = arg.x;
+ north = arg.y;
+ east = arg.z;
+ west = arg.w;
+ }
+ public Depth4Offsets(float s, float n, float e, float w)
+ {
+ south = s;
+ north = n;
+ east = e;
+ west = w;
+ }
}
- public struct Rot4Offsets
+ public class Rot4Offsets
{
//X: right and left
//Y: Frong or Back
//Z: Up and Down
Vector3 South;
+
Vector3 North;
+
Vector3 East;
+
Vector3 West;
public Rot4Offsets(Vector3 vector)
@@ -66,11 +86,25 @@ namespace SizedApparel
public string bodyType;
}
+ public class BodyWithBodyType
+ {
+ public string bodyType;
+ public List Addons = new List();
+ }
+
public class BodyPart
{
- public string partName;
- public Depth4Offsets depthOffset;
- public List offsets;
+ public string partName = null;
+ public string customPath = null;
+ public string defaultHediffName = null; // for missing Hediff
+ public bool isBreasts = false;
+ public bool centeredTexture = false;
+ public string boneName = null;
+ public Bone bone = null; // For Graphic Positioning System
+ public SizedApparelBodyPartOf bodyPartOf = SizedApparelBodyPartOf.None;
+ public ColorType colorType = ColorType.Skin;
+ public Depth4Offsets depthOffset = new Depth4Offsets();
+ public BodyTypeAndOffset offsets = new BodyTypeAndOffset();
}
public class BodyTypeAndOffset
@@ -79,11 +113,16 @@ namespace SizedApparel
public string bodyType;
public Rot4Offsets offsets = new Rot4Offsets(Vector3.zero);
+ public BodyTypeAndOffset()
+ {
+
+ }
+
public BodyTypeAndOffset(bool useCenter)
{
if (useCenter)
{
- offsets = new Rot4Offsets(new Vector3(0.5f, 0, 0.5f));
+ offsets = new Rot4Offsets(Vector3.zero);
}
}
public BodyTypeAndOffset(Vector3 defaultOffset)
@@ -92,7 +131,7 @@ namespace SizedApparel
}
}
- public enum SizedApparelBodyPartColorOf
+ public enum ColorType
{
Skin, Hair, Custom, None
}
@@ -100,7 +139,7 @@ namespace SizedApparel
public enum SizedApparelBodyPartOf
{
- All, Torso, Breasts, Crotch, Penis, Vagina, Anus, Belly, Udder, Hips, Thighs, hands, feet, None
+ All, Torso, Breasts, Crotch, Penis, Balls, Vagina, Anus, Belly, PubicHair, Udder, Hips, Thighs, hands, feet, None
}
public static class SizedApparelBodyPartOfExtension
{
@@ -122,13 +161,17 @@ namespace SizedApparel
return true;
return false;
case SizedApparelBodyPartOf.Crotch:
- if (source == SizedApparelBodyPartOf.Penis || source == SizedApparelBodyPartOf.Vagina || source == SizedApparelBodyPartOf.Anus)
+ if (source == SizedApparelBodyPartOf.Crotch || source == SizedApparelBodyPartOf.Penis || source == SizedApparelBodyPartOf.Vagina || source == SizedApparelBodyPartOf.Anus || source == SizedApparelBodyPartOf.PubicHair || source == SizedApparelBodyPartOf.Balls)
return true;
return false;
case SizedApparelBodyPartOf.Penis:
if (source == SizedApparelBodyPartOf.Penis)
return true;
return false;
+ case SizedApparelBodyPartOf.Balls:
+ if (source == SizedApparelBodyPartOf.Balls)
+ return true;
+ return false;
case SizedApparelBodyPartOf.Vagina:
if (source == SizedApparelBodyPartOf.Vagina)
return true;
@@ -161,10 +204,13 @@ namespace SizedApparel
if (source == SizedApparelBodyPartOf.feet)
return true;
return false;
+ case SizedApparelBodyPartOf.PubicHair:
+ if (source == SizedApparelBodyPartOf.PubicHair)
+ return true;
+ return false;
case SizedApparelBodyPartOf.None:
return false;
- return false;
}
Log.Error("[SizedApparel] missing SizedApparelBodyPartOf!");
return false;
@@ -186,7 +232,7 @@ namespace SizedApparel
public class GraphicPoint
{
public string pointName;
- public Vector2 point = new Vector2(0.5f, 0.5f);
+ public Vector2 point = Vector2.zero;
}
public class GraphicPointsWithBodyType
{
@@ -197,13 +243,13 @@ namespace SizedApparel
public class PointWithBodyType
{
public string bodyTypeName; //null can be used too
- public Vector2 point = new Vector2(0.5f,0.5f);
+ public Vector2 point = Vector2.zero;
}
- public struct BodyPartPoint
+ public class BodyPartPoint
{
string name;
- Vector2 position;//Uv position. not pixel
+ Vector2 position = Vector2.zero;//Uv position. not pixel
}
[Obsolete]//todo
@@ -211,11 +257,7 @@ namespace SizedApparel
{
}
-
- public enum ColorMode
- {
- Skin, Hair
- }
+
//Def for Hediff Graphic color options or else.
public class SizedApparelHeddifDef : Def
@@ -226,6 +268,7 @@ namespace SizedApparel
}
//Def per graphic(texture)
+ [Obsolete]
public class SizedApparelBodyPartGraphicDef : Def
{
public string graphicPath;
@@ -239,8 +282,9 @@ namespace SizedApparel
public class SizedApparelBodyPartDef : Def
{
SizedApparelBodyPartOf bodyPartOf = SizedApparelBodyPartOf.None;
- public bool canPose = false;
- public bool canAnimate = false;
+ public bool canPose = true;
+ public List TexturePaths;
+
}
public class SizedApparelBodyPart
@@ -249,7 +293,7 @@ namespace SizedApparel
public bool AutoOffsetForFurCoveredBody = true;
- public SizedApparelBodyPart(Pawn pawn, ApparelRecorderComp apparelRecorderComp, string bodyPartName, SizedApparelBodyPartOf bodyPartOf, string defaultHediffName, bool isBreast, bool isOverlay , string customPathName = null, SizedApparelBodyPartColorOf colorOf = SizedApparelBodyPartColorOf.Skin)
+ public SizedApparelBodyPart(Pawn pawn, ApparelRecorderComp apparelRecorderComp, string bodyPartName, SizedApparelBodyPartOf bodyPartOf, string defaultHediffName, bool isBreast, bool isOverlay, string customPathName = null, ColorType colorOf = ColorType.Skin, Bone parentBone = null, bool isCenteredTexture = false)
{
this.pawn = pawn; //owner
@@ -265,6 +309,14 @@ namespace SizedApparel
this.isOverlay = isOverlay;
this.customPath = customPathName;
this.colorType = colorOf;
+
+ this.bone = parentBone;
+ this.centeredTexture = isCenteredTexture;
+ }
+
+ public void SetCenteredTexture(bool isCentered)
+ {
+ this.centeredTexture = isCentered;
}
public Vector2 OffsetFromUVOffset(Vector2 vector, Mesh mesh , bool isFliped = false)
@@ -272,10 +324,21 @@ namespace SizedApparel
//treat mesh as plane
//Vector3 width = mesh.vertices[2] - mesh.vertices[1];
//Vector3 height = mesh.vertices[1] - mesh.vertices[2];
- Vector2 loc = new Vector2(0.5f, 0.5f) - vector;
+
+
if(!isFliped)
+ return new Vector2((mesh.vertices[2].x - mesh.vertices[0].x)*vector.x,(mesh.vertices[0].z - mesh.vertices[2].z)*vector.y);
+ return new Vector2((mesh.vertices[2].x - mesh.vertices[0].x)*vector.x, (mesh.vertices[2].z - mesh.vertices[0].z)*vector.y);
+ /*
+ * Vector2 loc = new Vector2(0.5f, 0.5f) - vector;
+ if(!isFliped)
return new Vector2(Mathf.Lerp(mesh.vertices[0].x, mesh.vertices[2].x, loc.x), Mathf.Lerp(mesh.vertices[0].z, mesh.vertices[2].z, loc.y));
return new Vector2(Mathf.Lerp(mesh.vertices[3].x, mesh.vertices[1].x, loc.x), Mathf.Lerp(mesh.vertices[3].z, mesh.vertices[1].z, loc.y));
+
+
+
+ */
+
}
//public Vector2 OffestFromUVOffset(Vector2 vector, Vector2 drawSize, bool isFliped = false)
@@ -284,6 +347,9 @@ namespace SizedApparel
public Pawn pawn;
public ApparelRecorderComp apparelRecorderCompCache; // for reduce getComp call;
+ public Bone bone;
+
+ public bool centeredTexture = false; // false to keep original position from mesh. and consider this graphics pivot as bone position
public string bodyPartName; //breast, penis, belly, pubichair... etc. just name. not like architech something
public string customPath = null;
@@ -291,6 +357,7 @@ namespace SizedApparel
public string defaultHediffName;
public bool isBreast = false;
+
public bool isOverlay = false; //write z cache?
public string currentHediffName;
@@ -299,7 +366,7 @@ namespace SizedApparel
public int lastPoseTick = -1;
- public SizedApparelBodyPartColorOf colorType = SizedApparelBodyPartColorOf.Skin;
+ public ColorType colorType = ColorType.Skin;
public Color? customColorOne;
public Color? customColorTwo;
@@ -320,6 +387,10 @@ namespace SizedApparel
public int maxDrawAge = -1;
+ public void SetBone(Bone bone)
+ {
+ this.bone = bone;
+ }
public void SetCustomPose(string newPose, bool autoUpdate = true, bool autoSetPawnGraphicDirty = false)
{
@@ -347,32 +418,8 @@ namespace SizedApparel
{
if (checkApparels)
{
- foreach(ApparelGraphicRecord agr in pawn.Drawer.renderer.graphics.apparelGraphics)
- {
- /*
- if (!agr.sourceApparel.def.apparel.bodyPartGroups.Any(bpgd => bpgd.defName == "Torso" || bpgd.defName == "Chest"))
- continue;
-
- if (agr.sourceApparel.def.apparel.tags.Any(s => s.ToLower() == "SizedApparel_IgnorePose".ToLower()))
- continue;
- */
- //Only Check Torso Apparel Only
- if (!agr.sourceApparel.def.apparel.bodyPartGroups.Contains(BodyPartGroupDefOf.Torso))
- continue;
-
- string originalPath = SizedApparelsDatabase.GetSupportedApparelOriginalPath(agr.graphic.path);
- if (originalPath == null)
- return false;
-
- int outInt = -1;
- float outFloat = -1;
- SizedApparelsDatabase.SizedApparelDatabaseKey key = new SizedApparelsDatabase.SizedApparelDatabaseKey(originalPath,pawn.def.defName,pawn.story?.bodyType?.defName, pawn.gender, currentHediffName, Math.Min(currentSeverityInt, cappedSeverityInt), false, targetPose);
- if (SizedApparelSettings.useGenderSpecificTexture)
- key.gender = Gender.None;
- var result = SizedApparelsDatabase.GetSupportedApparelSizedPath(key, out outInt, out outFloat);
- if (!result.isCustomPose)
- return false;
- }
+ if (!SizedApparelUtility.CanPoseApparels(pawn, targetPose, currentHediffName, currentSeverityInt, cappedSeverityInt))
+ return false;
}
if (checkBodyParts)
{
@@ -390,20 +437,22 @@ namespace SizedApparel
public int currentSeverityInt = -1;
public int cappedSeverityInt = 1000; // supported severity from worn apparel graphics
- public Vector2 pivot = new Vector2(0.5f, 0.5f);
+ public Vector2 pivot = Vector2.zero;
public Vector2 position = Vector2.zero;//offset from pivot //UV. not pixel
- public Dictionary points;
- public Dictionary pointsHorny;
+ public SizedApparelTexturePointDef points;
+ public SizedApparelTexturePointDef pointsHorny;
public float rotation = 0; // +: rotate right, -: rotate left
- public Vector2 scale = Vector2.one;
+ public float scale = 1f;
public Graphic bodyPartGraphic;
public Graphic bodyPartGraphicHorny;
+
+
public Vector2 positionOffset = Vector2.zero; //offset from position //UV. not pixel
public Vector2 positionOffsetSouth = Vector2.zero;
public Vector2 positionOffsetNorth = Vector2.zero;
@@ -426,6 +475,13 @@ namespace SizedApparel
depthOffsetEast = east;
depthOffsetWest = west;
}
+ public void SetDepthOffsets(Depth4Offsets oppsets)
+ {
+ depthOffsetSouth = oppsets.south;
+ depthOffsetNorth = oppsets.north;
+ depthOffsetEast = oppsets.east;
+ depthOffsetWest = oppsets.west;
+ }
public void SetPositionOffsets(Vector2 south, Vector2 north, Vector2 east, Vector2 west)
{
positionOffsetSouth = south;
@@ -435,11 +491,11 @@ namespace SizedApparel
}
public Graphic GetBodyPartGraphics(bool isHorny, bool mustMatchSize = false, string poseOverride = null)
{
- Dictionary var;
+ SizedApparelTexturePointDef var;
return GetBodyPartGraphics(isHorny, out var, mustMatchSize, poseOverride);
}
- public Graphic GetBodyPartGraphics(bool isHorny, out Dictionary outPoints, bool mustMatchSize = false ,string poseOverride = null, string variationOverride = null)
+ public Graphic GetBodyPartGraphics(bool isHorny, out SizedApparelTexturePointDef outPoints, bool mustMatchSize = false ,string poseOverride = null, string variationOverride = null)
{
if (pawn == null)
{
@@ -454,11 +510,15 @@ namespace SizedApparel
outPoints = null;
return null;
}
-
- var key = new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType?.defName, currentHediffName, customPath==null?bodyPartName: customPath, pawn.gender, Math.Min(currentSeverityInt, cappedSeverityInt), isHorny, poseOverride==null?customPose:poseOverride, variationOverride==null?variation: variationOverride);
+ string bodyTypeString = pawn.story?.bodyType?.defName;
+
+ var key = new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeString, currentHediffName, customPath==null?bodyPartName: customPath, pawn.gender, Math.Min(currentSeverityInt, cappedSeverityInt), isHorny, poseOverride==null?customPose:poseOverride, variationOverride==null?variation: variationOverride);
var result = SizedApparelsDatabase.GetSupportedBodyPartPath(key, isBreast, customPath == null ? bodyPartName : customPath, defaultHediffName);
+
+
+
if (mustMatchSize)
if (Math.Min(currentSeverityInt, cappedSeverityInt) != result.size)
{
@@ -492,7 +552,7 @@ namespace SizedApparel
public void ResetTransform()
{
this.position = Vector2.zero;
- this.scale = Vector2.one;
+ this.scale = 1f;
this.rotation = 0;
}
@@ -533,7 +593,7 @@ namespace SizedApparel
{
if (!isVisible)
return;
- if (scale == Vector2.zero)
+ if (scale == 0f)
return; //Don't draw if scale is zero
if (pawn == null)
return;
@@ -561,7 +621,7 @@ namespace SizedApparel
HasFurSkin = true;
}
- if (colorType == SizedApparelBodyPartColorOf.Skin)
+ if (colorType == ColorType.Skin)
{
forceWriteZ = true;
if (bodyDrawType == RotDrawMode.Fresh)
@@ -597,14 +657,14 @@ namespace SizedApparel
}
- else if (colorType == SizedApparelBodyPartColorOf.Hair)
+ else if (colorType == ColorType.Hair)
{
forceWriteZ = false;
shader = ShaderDatabase.Transparent;
if(pawn.story != null)
drawColor1 = pawn.story.HairColor;
}
- else if (colorType == SizedApparelBodyPartColorOf.Custom)
+ else if (colorType == ColorType.Custom)
{
forceWriteZ = true;
shader = ShaderDatabase.Transparent;
@@ -613,7 +673,7 @@ namespace SizedApparel
if (customColorTwo != null)
drawColor2 = customColorTwo.Value;
}
- else if (colorType == SizedApparelBodyPartColorOf.None)
+ else if (colorType == ColorType.None)
{
forceWriteZ = false;
shader = ShaderDatabase.Cutout;
@@ -621,13 +681,120 @@ namespace SizedApparel
+ Mesh scaledBodyMesh;
+
+ BoneTransform boneTransform = null;
+ if(bone != null)
+ {
+ if (facing == Rot4.South)
+ {
+ boneTransform = bone.south;
+ }
+ else if (facing == Rot4.North)
+ {
+ boneTransform = bone.north;
+ }
+ else if (facing == Rot4.East)
+ {
+ boneTransform = bone.east;
+
+ }
+ else if (facing == Rot4.West)
+ {
+ boneTransform = bone.west;
+ if (boneTransform == null)
+ boneTransform = bone.east;
+
+ }
+ }
+
+ float drawScale = scale;
+ float drawRotation = angle;
+ Vector3 drawPosition = rootLoc;
+
+ if (boneTransform != null)
+ {
+ //TODO fixed angle for IK?
+
+
+ if (centeredTexture)
+ {
+ bool westUsingEast = false;
+ if (facing == Rot4.West && bone.west == null)
+ westUsingEast = true;
+ float width = (bodyMesh.vertices[2].x - bodyMesh.vertices[0].x);
+ drawRotation = boneTransform.InitialAngle + boneTransform.angleOffset;
+ //not sure it work correct
+ Vector3 v = (boneTransform.InitialPosition + boneTransform.positionOffset) * width;
+ var q = Quaternion.AngleAxis (westUsingEast? -angle : angle, Vector3.up);
+ v = q * v;
+ drawPosition = (v) ; // calculate rotated point
+
+ //Log.Message(boneTransform.angleOffset.ToString());
+ if (westUsingEast)
+ {
+ //already scaled with "width"?
+ //its using east as west. so flip position
+ drawPosition.Scale(new Vector3(-1f,0f,1f));
+ //drawRotation = boneTransform.InitialAngle - boneTransform.angleOffset;
+ }
+ drawPosition += rootLoc;
+ drawRotation += angle ;
+ }
+ else
+ {
+ //wip
+ bool westUsingEast = false;
+ if (facing == Rot4.West && bone.west == null)
+ westUsingEast = true;
+ float width = (bodyMesh.vertices[2].x - bodyMesh.vertices[0].x);
+ drawRotation = boneTransform.InitialAngle + boneTransform.angleOffset;
+ //not sure it work correct
+ Vector3 v = (-boneTransform.InitialPosition); //initialpos as custom pivot
+ var q = Quaternion.AngleAxis(westUsingEast ? -drawRotation : drawRotation, Vector3.up);
+ var q2 = Quaternion.AngleAxis(westUsingEast ? -angle : angle, Vector3.up);
+ v = q * v; // calculate final draw position with torso angle
+ v = v + boneTransform.InitialPosition + boneTransform.positionOffset;
+ v = q2 * v;
+ drawPosition = (v) * width;
+ if (westUsingEast)
+ {
+ //already scaled with "width"?
+ //its using east as west. so flip position
+ drawPosition.Scale(new Vector3(-1f, 0f, 1f));
+ //drawRotation = boneTransform.InitialAngle - boneTransform.angleOffset;
+ }
+ drawPosition += rootLoc ; // adjust with result
+ //Log.Message(boneTransform.angleOffset.ToString());
+ drawRotation += angle;
+ }
+ }
+
+ if (drawScale != 1f)
+ {
+ // scale Only Rimworld Plane Mesh
+ if(bodyMesh.vertexCount == 4)
+ {
+ float width = (bodyMesh.vertices[2].x - bodyMesh.vertices[0].x);
+
+ var meshSet = MeshPool.GetMeshSetForWidth(scale * width);
+ scaledBodyMesh = meshSet.MeshAt(facing);
+ }
+ else
+ scaledBodyMesh = bodyMesh;
+ }
+ else
+ {
+ scaledBodyMesh = bodyMesh;
+ }
+
+
+ Quaternion quaternion = Quaternion.AngleAxis(drawRotation, Vector3.up);
- Quaternion quaternion = Quaternion.AngleAxis(angle + rotation, Vector3.up);
- Vector3 vector = rootLoc;
if (this.pawn.ageTracker.CurLifeStage.bodyDrawOffset != null)
{
- vector += this.pawn.ageTracker.CurLifeStage.bodyDrawOffset.Value;
+ drawPosition += this.pawn.ageTracker.CurLifeStage.bodyDrawOffset.Value;
}
Rot4 targetRot = facing;
@@ -636,31 +803,31 @@ namespace SizedApparel
if (targetRot == Rot4.South)
{
- var loc = OffsetFromUVOffset(positionOffsetSouth, bodyMesh);
- vector.x += loc.x;
- vector.z += loc.y;
- vector.y += depthOffsetSouth;
+ var loc = OffsetFromUVOffset(positionOffsetSouth, scaledBodyMesh);
+ drawPosition.x += loc.x;
+ drawPosition.z += loc.y;
+ drawPosition.y += depthOffsetSouth;
}
else if(targetRot == Rot4.North)
{
- var loc = OffsetFromUVOffset(positionOffsetNorth, bodyMesh);
- vector.x += loc.x;
- vector.z += loc.y;
- vector.y += depthOffsetNorth;
+ var loc = OffsetFromUVOffset(positionOffsetNorth, scaledBodyMesh);
+ drawPosition.x += loc.x;
+ drawPosition.z += loc.y;
+ drawPosition.y += depthOffsetNorth;
}
else if (targetRot == Rot4.East)
{
- var loc = OffsetFromUVOffset(positionOffsetEast, bodyMesh);
- vector.x += loc.x;
- vector.z += loc.y;
- vector.y += depthOffsetEast;
+ var loc = OffsetFromUVOffset(positionOffsetEast, scaledBodyMesh);
+ drawPosition.x += loc.x;
+ drawPosition.z += loc.y;
+ drawPosition.y += depthOffsetEast;
}
else if (targetRot == Rot4.West)
{
- var loc = OffsetFromUVOffset(positionOffsetWest, bodyMesh);
- vector.x += loc.x;
- vector.z += loc.y;
- vector.y += depthOffsetWest;
+ var loc = OffsetFromUVOffset(positionOffsetWest, scaledBodyMesh);
+ drawPosition.x += loc.x;
+ drawPosition.z += loc.y;
+ drawPosition.y += depthOffsetWest;
}
@@ -694,13 +861,13 @@ namespace SizedApparel
{
graphic = graphic.GetColoredVersion(ShaderDatabase.Cutout, drawColor1, drawColor2); // ShaderDatabase.Cutout
mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(targetRot) : (Material)overrideMatMethod.Invoke(pawnRenderer, new object[] { graphic.MatAt(facing), pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
+ GenDraw.DrawMeshNowOrLater(scaledBodyMesh, drawPosition, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
}
graphic = graphic.GetColoredVersion(shader, drawColor1, drawColor2);
- vector.y += 0.00001f;
+ drawPosition.y += 0.00001f;
mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(targetRot) : (Material)overrideMatMethod.Invoke(pawnRenderer, new object[] { graphic.MatAt(facing), pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
+ GenDraw.DrawMeshNowOrLater(scaledBodyMesh, drawPosition, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
}
@@ -710,23 +877,24 @@ namespace SizedApparel
//TODO: Torso Pose?
- public class SizedApparelBodyDef : Def
+ public class BodyDef : Def
{
//public List BodyParts;
//defName = raceName ?? could it work?
- public List bodyParts;
+ public List bodies = new List();
- /*
- public List penisOffset;
- public List vaginaOffset; //TODO
- public List udderOffset; //TODO
- public List bellyOffset; //TODO
- public List breastsOffset; //TODO
- public List anusOffset; //TODO
- */
+
+ //public List penisOffset;
+ //public List vaginaOffset;
+ //public List pubicHairOffset;
+ //public List udderOffset;
+ //public List bellyOffset;
+ //public List breastsOffset;
+ //public List anusOffset;
+
}
public class SizedApparelBody
@@ -740,4 +908,10 @@ namespace SizedApparel
}
}
+ public class SizedApparelBodyPartOfssetDef : Def
+ {
+ //defName IsRaceName
+
+ }
+
}
diff --git a/source/SizedApparel/SizedApparelBodyPartDef.cs b/source/SizedApparel/SizedApparelBodyPartDef.cs
new file mode 100644
index 0000000..742f3f5
--- /dev/null
+++ b/source/SizedApparel/SizedApparelBodyPartDef.cs
@@ -0,0 +1,163 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using UnityEngine;
+using Verse;
+
+namespace SizedApparel
+{
+
+ //This Class is Use for Def BodyParts' Custom Pivot, or Some Special Common Vector Points Per Serverity.
+ //Not Consider Acture Graphic Textures.
+ public class SkeletonDef : Def
+ {
+ //defName = Pawn's race name (such as "Human")
+ //public List graphicBones = new List();
+
+ //Do Not Directly Use it
+ public List skeletons = new List();
+
+
+ public Skeleton CreateSkeleton(string bodyType)
+ {
+ for(int i = 0; i< skeletons.Count; i++)
+ {
+ if(skeletons[i].bodyType == bodyType)
+ {
+ return new Skeleton(skeletons[i]);
+ }
+ }
+ return null;
+ }
+ }
+
+ public class Skeleton
+ {
+ public string bodyType = null; // can be null for animal or etc
+ public List Bones;
+
+ //only runtime. Do not Set in Def
+ public Rot4 BodyFacing; // for flip east-west bones
+ public Rot4 HeadFacing; //TODO
+
+ public Skeleton()
+ {
+
+ }
+ public Skeleton(Skeleton skeletonToCopy)
+ {
+ this.Bones = new List();
+
+
+ foreach (var s in skeletonToCopy.Bones)
+ {
+ this.Bones.Add(new Bone(s, this));
+ }
+
+ }
+ public Bone FindBone(string boneName)
+ {
+ foreach (var b in this.Bones)
+ {
+ if (b.name == boneName)
+ return b;
+ }
+ return null;
+ }
+
+ }
+
+ //for deafault bone support?
+ public class BodyPartBoneDef : Def
+ {
+ //DefName is Bone Name To Use.
+ public Vector3 customPivot = new Vector3(0.5f, 0, 0.5f);
+ public Vector3 Position = new Vector3(0.5f, 0, 0.5f); // Local Position(UV) from Body
+ public float Length = 1;
+ public float Rotation = 0;
+ public float Scale = 1f; // Default Render Scale.
+ }
+
+ //Body Parts Graphic can be attached to bone position and rotation
+ public class Bone
+ {
+
+ public string name = null;
+ public Skeleton parentSkeleton = null;
+ //public string parentBoneName = null; // ToDo
+ public bool isHeadBone = false; // TODO
+ public BoneTransform south;
+ public BoneTransform north;
+ public BoneTransform east;
+ public BoneTransform west; // can be null. then use east
+ //hiding Graphic parameter will be in that bodygraphic class
+
+ public Bone()
+ {
+
+ }
+
+ public Bone(Bone boneToCopy, Skeleton parent)
+ {
+ this.name = boneToCopy.name;
+ this.parentSkeleton = parent;
+ this.isHeadBone = boneToCopy.isHeadBone;
+ if(boneToCopy.south != null)
+ this.south = new BoneTransform(boneToCopy.south);
+ if (boneToCopy.north != null)
+ this.north = new BoneTransform(boneToCopy.north);
+ if (boneToCopy.east != null)
+ this.east = new BoneTransform(boneToCopy.east);
+ if (boneToCopy.west != null)
+ this.west = new BoneTransform(boneToCopy.west); // null for use east
+
+ }
+
+ public void SetAngle(float angle)
+ {
+ if(south != null)
+ south.angleOffset = angle;
+ if (north != null)
+ north.angleOffset = angle;
+ if (east != null)
+ east.angleOffset = angle;
+ if (west != null)
+ west.angleOffset = angle;
+ }
+
+
+ }
+
+ public class BoneTransform
+ {
+ //public Vector3 customPivot = new Vector3(0.5f, 0, 0.5f); // used to calculation rotation. the rotating center will be customPivot.
+ //Custom Pivot Doesn't affect to Draw Position on zero Rotated.
+ public Vector3 InitialPosition = Vector3.zero; // Local Position(UV) from Body
+ public float InitialLength = 1;
+ public float InitialAngle = 0;
+ public float InitialScale = 1f;
+ public bool isHeadBone = false; // TODO
+
+ //public BodyPartGraphicBone parentBone; //TODO
+ public Vector3 positionOffset = Vector3.zero;
+ public float lengthOffset = 0;
+ public float angleOffset = 0;
+ public float scaleOffset = 0;
+
+ public BoneTransform() { }
+
+ public BoneTransform(BoneTransform boneToCopy)
+ {
+
+ //this.parentBoneName = boneToCopy.parentBoneName;
+ //this.customPivot = boneToCopy.customPivot;
+ this.InitialPosition = boneToCopy.InitialPosition;
+ this.InitialLength = boneToCopy.InitialLength;
+ this.InitialAngle = boneToCopy.InitialAngle;
+ this.InitialScale = boneToCopy.InitialScale;
+ }
+ }
+
+}
diff --git a/source/SizedApparel/SizedApparelComp.cs b/source/SizedApparel/SizedApparelComp.cs
index 305c6c1..3056e3b 100644
--- a/source/SizedApparel/SizedApparelComp.cs
+++ b/source/SizedApparel/SizedApparelComp.cs
@@ -27,32 +27,42 @@ namespace SizedApparel
public bool needToCheckApparelGraphicRecords = false;
public bool isDirty = true;
-
+ public bool isHediffDirty = true;
+ public bool isApparelDirty = true;
+ public bool isSkeletonDirty = true;
public bool hasUnsupportedApparel = true;
public bool havingSex = false;//Obsolete
public bool hasUpdateForSex = false;//Obsolete
+ string cachedBodytype;
public List cachedApparelGraphicRecord = new List();
- public Hediff breastHediff = null; //TODO: Make this as List
+ public Hediff breastHediff = null;
public Hediff vaginaHediff = null;
public List penisHediffs = null; // RJW can attach multiple penis
public Hediff anusHediff = null;
-
public Hediff udderHediff = null;//RJW 4.6.8: Udder is not partof chest's breast. it attached to torso.
+ //TODO Optimize Update Hediff Filter
+ private bool hasBreastsAddon = false;
+ private bool hasVaginaAddon = false;
+ private bool hasPenisAddon = false;
+ private bool hasAnusAddon = false;
+ private bool hasUdderAddon = false;
+ private bool hasPubicHairAddon = false;
+
public float breastSeverity = -1;
- public float breastSeverityCapToDraw = 1000;
public float BreastSeverityCache = 0;
//public float BiggestBreastSeverityInAvailableTextures = 0;
//for breasts animation or something.
public bool ForceUpdateTickAnimation = false;
+ public bool ForceBlockTickAnimation = false; // useful when you have make fixed pose
public bool PrePositionCache;
public Vector3? prePositionCache;
public float? preAngleCache;
@@ -63,6 +73,14 @@ namespace SizedApparel
+ public BodyDef bodyDef = null;
+ public List bodyAddons = new List(); // BodyParts Added form Defs
+
+ public SkeletonDef skeletonDef; // for rebuild Skeleton
+ public Skeleton skeleton;
+ public bool skipSkeleton = false;
+
+ //native BodyParts
public SizedApparelBodyPart bodyPartBreasts;//TODO: Make this as List
public SizedApparelBodyPart bodyPartNipple;//TODO
public List bodyPartPenises = new List();
@@ -72,58 +90,35 @@ namespace SizedApparel
public SizedApparelBodyPart bodyPartBelly;
public SizedApparelBodyPart bodyPartMuscleOverlay;//TODO
public SizedApparelBodyPart bodyPartUdder;
- public SizedApparelBodyPart bodyPartPubicHair; //TODO
+
+
public SizedApparelBodyPart bodyPartHips;
public List bodyPartThighs = new List();
public List bodyPartHands = new List();
public List bodyPartFeet = new List();
+ public PubicHairDef pubicHairDef = null;
+ public PubicHairDef initialPubicHairDef = null; // For StyleStaitionWork
+ public PubicHairDef nextPubicHairDef = null; // For StyleStaitionWork
+ public SizedApparelBodyPart bodyPartPubicHair;
+
+
public Graphic graphicSourceNaked = null; //original Graphic
public Graphic graphicSourceRotten = null; //original Graphic
public Graphic graphicSourceFurCovered = null; //original Graphic
public Graphic graphicbaseBodyNaked = null;
+ public SizedApparelTexturePointDef baseBodyNakedPoints;
public Graphic graphicbaseBodyCorpse = null;
+ public SizedApparelTexturePointDef baseBodyCorpsePoints;
public Graphic graphicbaseBodyRotten = null;
+ public SizedApparelTexturePointDef baseBodyRottenPoints;
public Graphic graphicbaseBodyFurCovered = null;
+ public SizedApparelTexturePointDef baseBodyFurCoveredPoints;
- [Obsolete]
- public Graphic graphicBreasts = null;
- [Obsolete]
- public Graphic graphicBreasts_horny = null;
- [Obsolete]
- public Graphic graphicVagina = null;
- [Obsolete]
- public Graphic graphicVagina_horny = null;
- [Obsolete]
- public Graphic graphicAnus = null;
- [Obsolete]
- public Graphic graphicAnus_horny = null;
- [Obsolete]
- public List graphicPenises = new List();
- [Obsolete]
- public List graphicBallsOfPenises = new List();
- [Obsolete]
- public Graphic graphicBelly = null;
- [Obsolete]
- public Graphic graphicUdder = null; //RJW 4.6.8: Udder is not partof chest's breast. it attached to torso.
- [Obsolete]
- public Graphic graphicUdder_horny = null;
- [Obsolete]
- public List graphicPenises_horny = new List();
- [Obsolete]
- public List graphicBalls_horny = new List();//Does it need?
- //size uncapped breasts graphics.
- [Obsolete]
- public Graphic graphicBreastsNude = null;
- [Obsolete]
- public Graphic graphicBreastsNude_horny = null;
-
- private bool drawingBreastsAddon = false;
-
- public AlienRaceSetting raceSetting = new AlienRaceSetting();
+ public AlienRaceSetting raceSetting = null;
public string customPose = null;
public SizedApparelPose currentCustomPose = null;
@@ -137,36 +132,208 @@ namespace SizedApparel
public bool canDrawVaginaAndAnus = false;
public bool canDrawTorsoParts = false; //belly and udder
+
+ //this may reset skeleton animation. also little have process
+ public void InitSkeleton()
+ {
+ skeletonDef = DefDatabase.GetNamedSilentFail(pawn.def.defName);
+ if (skeletonDef == null)
+ {
+ if (raceSetting != null && raceSetting.asHuman == true) //old: !SizedApparelSettings.UnsupportedRaceToUseHumanlike
+ {
+ skeletonDef = DefDatabase.GetNamedSilentFail("Human");
+ }
+ }
+ if (skeletonDef != null)
+ {
+ if (this.pawn.story == null || this.pawn.story.bodyType == null)
+ {
+ foreach (Skeleton s in skeletonDef.skeletons)
+ {
+ if (s.bodyType == null)
+ {
+ this.skeleton = new Skeleton(s);
+ if (SizedApparelSettings.Debug)
+ Log.Message("[SizedApparel] Apply SkeletonDef: pawn withouth bodytype " + pawn.Name);
+ return;
+ }
+ }
+ }
+ else
+ {
+ //Setting Up Skeleton
+ foreach (Skeleton s in skeletonDef.skeletons)
+ {
+ if (s.bodyType == this.pawn.story.bodyType.defName)
+ {
+ this.skeleton = new Skeleton(s);
+ if (SizedApparelSettings.Debug)
+ Log.Message("[SizedApparel] Apply SkeletonDef: pawn with bodytype " + pawn.Name + " with SkeletonDef : " + this.pawn.story.bodyType.defName);
+ return;
+ }
+ }
+ }
+ this.skeleton = null;
+ }
+ if (SizedApparelSettings.Debug)
+ Log.Message("[SizedApparel] Apply SkeletonDef: No Skeleton Found for " + pawn.Name);
+ isSkeletonDirty = false;
+ }
+
+ public void InitBodyAddons()
+ {
+
+ bodyAddons.Clear();
+
+ //TODO
+ //bodyDef = DefDatabase.GetNamed(pawn.def.defName);
+
+ bodyDef = DefDatabase.GetNamedSilentFail(pawn.def.defName);
+
+ //bodyDef can be null
+
+ if (bodyDef == null)
+ {
+ if (raceSetting != null && raceSetting.asHuman) //old: !SizedApparelSettings.UnsupportedRaceToUseHumanlike
+ {
+ bodyDef = DefDatabase.GetNamedSilentFail("Human");
+ }
+ }
+
+
+ if (bodyDef != null && bodyDef.bodies != null)
+ {
+ if (pawn.story?.bodyType == null)
+ {
+ if(SizedApparelSettings.Debug)
+ Log.Message("[SizedApparel] Apply BodyDef: pawn has no bodytype " + pawn.Name);
+ BodyWithBodyType body = null;
+ if(!bodyDef.bodies.NullOrEmpty())
+ body = bodyDef.bodies[0];
+ if (body != null && body.Addons != null)
+ {
+ foreach (var bodyaddon in body.Addons)
+ {
+ if (bodyaddon == null)
+ continue;
+ var a = new SizedApparelBodyPart(pawn, this, bodyaddon.partName, bodyaddon.bodyPartOf, bodyaddon.defaultHediffName, bodyaddon.isBreasts, false, bodyaddon.customPath, bodyaddon.colorType);
+ a.SetDepthOffsets(bodyaddon.depthOffset.south, bodyaddon.depthOffset.north, bodyaddon.depthOffset.east, bodyaddon.depthOffset.west);
+ //a.SetDepthOffsets(bodyaddon.depthOffset);
+ a.SetCenteredTexture(bodyaddon.centeredTexture);
+ bodyAddons.Add(a);
+ break;
+ }
+ }
+ }
+ else
+ {
+ foreach (BodyWithBodyType body in bodyDef.bodies)
+ {
+ if (body.bodyType != null && body.bodyType == this.pawn.story.bodyType.defName)
+ {
+ if (SizedApparelSettings.Debug)
+ Log.Message("[SizedApparel] Apply BodyDef: matched BodyTyped Body for " + pawn.Name);
+ if (body != null && body.Addons != null)
+ {
+ foreach (var bodyaddon in body.Addons)
+ {
+ if (bodyaddon == null)
+ continue;
+ var a = new SizedApparelBodyPart(pawn, this, bodyaddon.partName, bodyaddon.bodyPartOf, bodyaddon.defaultHediffName, bodyaddon.isBreasts, false, bodyaddon.customPath, bodyaddon.colorType);
+ a.SetDepthOffsets(bodyaddon.depthOffset.south, bodyaddon.depthOffset.north, bodyaddon.depthOffset.east, bodyaddon.depthOffset.west);
+ //a.SetDepthOffsets(bodyaddon.depthOffset);
+ a.SetCenteredTexture(bodyaddon.centeredTexture);
+ bodyAddons.Add(a);
+ }
+ }
+ break;
+ }
+
+ }
+
+ }
+
+ }
+ else
+ {
+ if (SizedApparelSettings.Debug)
+ Log.Message("[SizedApparel] Cannot find BodyDef for " + pawn.def.defName);
+ }
+
+ //bodyPartBreasts = new SizedApparelBodyPart(pawn, this, "Breasts", SizedApparelBodyPartOf.Breasts, "Breasts", true, false, null);
+ //bodyPartBreasts.SetDepthOffsets(0.0113f, 0.001f, 0.0113f, 0.0113f);
+
+ //bodyPartBreasts.SetPositionOffsets(Vector2.one, Vector2.one, Vector2.one, Vector2.one);
+ //bodyPartBreasts.scale = 2f;
+ //Nipple. should I separate from Breats?
+ //bodyPartNipple = new SizedApparelBodyPart(pawn, this, "Nippple", SizedApparelBodyPartOf.Breasts, "Breasts", true, false);
+ //bodyPartBreasts.SetDepthOffsets(0.0114f, 0.000f, 0.0114f, 0.0114f);
+
+ //bodyPartUdder = new SizedApparelBodyPart(pawn, this, "Udder", SizedApparelBodyPartOf.Udder, "UdderBreasts", true, false);
+ //bodyPartUdder.SetDepthOffsets(0.0112f, 0.0005f, 0.0112f, 0.0112f);
+
+ //UdderNipple...?
+ //bodyPartUdder = new SizedApparelBodyPart(p, "Udder", SizedApparelBodyPartOf.Udder, "UdderBreasts", true, false);
+ //bodyPartUdder.SetDepthOffsets(0.0112f, 0.0005f, 0.0112f, 0.0112f);\
+
+ //bodyPartVagina = new SizedApparelBodyPart(pawn, this, "Vagina", SizedApparelBodyPartOf.Vagina, "Vagina", false, false);
+ //bodyPartVagina.SetDepthOffsets(0.0088f, 0.0100f, 0.0088f, 0.0088f);
+
+ //bodyPartAnus = new SizedApparelBodyPart(pawn, this, "Anus", SizedApparelBodyPartOf.Anus, "Anus", false, false);
+ //bodyPartAnus.SetDepthOffsets(0.0093f, 0.0105f, 0.0093f, 0.0093f);
+
+ //bodyPartBelly = new SizedApparelBodyPart(pawn, this, "Belly", SizedApparelBodyPartOf.Belly, "BellyBulge", false, false);
+ //bodyPartBelly.SetDepthOffsets(0.0098f, 0.0002f, 0.0098f, 0.0098f);
+
+ //bodyPartPubicHair = new SizedApparelBodyPart(pawn, this, "PubicHair", SizedApparelBodyPartOf.PubicHair, "Default", false, false, null, ColorType.Hair);
+ //bodyPartPubicHair.SetDepthOffsets(0.0099f, 0.0099f, 0.0089f, 0.0089f);
+ }
+
+ public void ResetBodyAddonBoneLink()
+ {
+ string s;
+ foreach(var a in bodyAddons)
+ {
+ s = a.bone?.name;
+ if (s == null)
+ continue;
+ a.SetBone(skeleton.FindBone(s));
+ }
+ }
+
public override void Initialize(CompProperties props)
{
base.Initialize(props);
this.pawn = this.parent as Pawn;
-
- bodyPartBreasts = new SizedApparelBodyPart(pawn, this, "Breasts", SizedApparelBodyPartOf.Breasts, "Breasts", true, false);
- bodyPartBreasts.SetDepthOffsets(0.0113f, 0.001f, 0.0113f, 0.0113f);
- bodyPartNipple = new SizedApparelBodyPart(pawn, this, "Nippple", SizedApparelBodyPartOf.Breasts, "Breasts", true, false);
- bodyPartBreasts.SetDepthOffsets(0.0114f, 0.000f, 0.0114f, 0.0114f);
- bodyPartUdder = new SizedApparelBodyPart(pawn, this, "Udder", SizedApparelBodyPartOf.Udder, "UdderBreasts", true, false);
- bodyPartUdder.SetDepthOffsets(0.0112f, 0.0005f, 0.0112f, 0.0112f);
- //UdderNipple...?
- //bodyPartUdder = new SizedApparelBodyPart(p, "Udder", SizedApparelBodyPartOf.Udder, "UdderBreasts", true, false);
- //bodyPartUdder.SetDepthOffsets(0.0112f, 0.0005f, 0.0112f, 0.0112f);
- bodyPartVagina = new SizedApparelBodyPart(pawn, this, "Vagina", SizedApparelBodyPartOf.Vagina, "Vagina", false, false);
- bodyPartVagina.SetDepthOffsets(0.0088f, 0.0100f, 0.0088f, 0.0088f);
-
- bodyPartAnus = new SizedApparelBodyPart(pawn, this, "Anus", SizedApparelBodyPartOf.Anus, "Anus", false, false);
- bodyPartAnus.SetDepthOffsets(0.0093f, 0.0105f, 0.0093f, 0.0093f);
-
- bodyPartBelly = new SizedApparelBodyPart(pawn, this, "Belly", SizedApparelBodyPartOf.Belly, "BellyBulge", false, false);
- bodyPartBelly.SetDepthOffsets(0.0098f, 0.0002f, 0.0098f, 0.0098f);
}
+ public override void PostDeSpawn(Map map)
+ {
+ base.PostDeSpawn(map);
+ }
+
+ public override void PostSpawnSetup(bool respawningAfterLoad)
+ {
+ base.PostSpawnSetup(respawningAfterLoad);
+
+ UpdateRaceSettingData(); // include race Setting
+ InitSkeleton();
+ InitBodyAddons();
+ }
+
+
public override void PostExposeData()
{
base.PostExposeData();
- Scribe_Values.Look(ref customPose, "customPose"); // save pawn's custom pose
+ Scribe_Values.Look(ref customPose, "customPose"); // save pawn's custom pose. Each bodyparts will not saved.
+ Scribe_Defs.Look(ref pubicHairDef, "PubicHairDef");
+ if (pubicHairDef == null)
+ {
+ pubicHairDef = SizedApparelUtility.GetRandomPubicHair();
+ }
+
//Scribe_Values.Look<>(); //TODO: save pubic hair data
}
@@ -194,6 +361,18 @@ namespace SizedApparel
public void SetPenisAngle(float angle)
{
penisAngle = angle;
+
+ if(this.skeleton != null)
+ {
+ Bone penisBone = skeleton.FindBone("Penis");
+ if (penisBone != null)
+ {
+ //Log.Message("SetPenisAngle : " + angle.ToString());
+ penisBone.SetAngle(angle);
+ }
+ }
+
+
bool penisDown = false;
if (angle >= 120 && angle <= 250)
penisDown = true;
@@ -209,23 +388,48 @@ namespace SizedApparel
}
}
}
- public void SetBreastJiggle(bool jiggle, int cooltime = 5)
+ //do not call this in character creation from new game.
+ public void SetBreastJiggle(bool jiggle, int cooltime = 5, bool checkApparelForCanPose = false)
{
- //SetJiggle has cooltime
- if (Find.TickManager.TicksGame < bodyPartBreasts.lastPoseTick + cooltime)
- return;
+ //SetJiggle has cooltime.
- if (jiggle)
+
+ bool flag1 = true;
+
+ //should set apparels pose?
+ //Use First BodyAddon which is partof Breasts
+ foreach(var a in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Breasts))
{
- //may need to check apparels for aply pose
- //bodyPartBreasts.CheckCanPose("JiggleUp",)
- bodyPartBreasts.SetCustomPose("JiggleUp");
- }
- else
- {
- //SetPoseFromPoseSet(null);
- bodyPartBreasts.SetCustomPose(null);
+ if (flag1)
+ {
+ if (Find.TickManager.TicksGame < a.lastPoseTick + cooltime)
+ return;
+ flag1 = false;
+ }
+
+
+ if (jiggle)
+ {
+ bool flag2 = true;
+ if (flag2 && checkApparelForCanPose)
+ {
+ if (!a.CheckCanPose("JiggleUp", true, false, false))
+ return;
+ flag2 = false;
+ }
+
+ //may need to check apparels for aply pose
+ //bodyPartBreasts.CheckCanPose("JiggleUp",)
+ a.SetCustomPose("JiggleUp");
+ }
+ else
+ {
+ //SetPoseFromPoseSet(null);
+ a.SetCustomPose(null);
+ }
}
+
+
}
string[] testPose = { null, "JiggleUp", "JiggleCenter" };
@@ -233,6 +437,15 @@ namespace SizedApparel
public void UpdateTickAnim(Vector3 rootLoc, float angle) // call this in DrawPawnBody <- only called when it rendered
{
+ if (ForceBlockTickAnimation)// prevent breasts jiggle from other pose
+ return;
+
+ if (skeleton == null)
+ return;
+
+ if (Find.CameraDriver == null)
+ return;
+
//do not calculate physics camera is far
if (Find.CameraDriver.CurrentZoom >= CameraZoomRange.Furthest)
return;
@@ -251,6 +464,7 @@ namespace SizedApparel
else
tick = Find.TickManager.TicksGame;
+ //if tick is not updated, don't update animation.
if (tick == 0)
return;
@@ -275,26 +489,29 @@ namespace SizedApparel
//(Vector3.Dot(velocity.normalized, preVelocity.normalized)) < 0.2f
float dotV = Vector3.Dot(velocity.normalized, preVelocity.normalized);
-
- /*
- Log.Message(pawn.ToString());
- Log.Message("rotAcc : " + rotAcc.ToString());
- Log.Message("Velocity.x : " + velocity.x.ToString());
- Log.Message("Velocity.z : " + velocity.z.ToString());
- Log.Message("dotV : " + dotV.ToString());
- */
- if (dotV < 0.2f || Mathf.Abs(rotAcc) > 0.5) //(dotV == 0 ? 0:1), Mathf.Abs(dotV) // || Mathf.Abs(rotation) > 20
+ float velocityOffset = (velocity - preVelocity).magnitude;
+
+ //Log.Message(pawn.ToString());
+ //Log.Message("rotAcc : " + rotAcc.ToString());
+ //Log.Message("Velocity.x : " + velocity.x.ToString());
+ //Log.Message("Velocity.z : " + velocity.z.ToString());
+ //Log.Message("dotV : " + dotV.ToString());
+ //Log.Message("velocityOffset : " + velocityOffset.ToString());
+ //&& dotV > 0.4f
+ if (((preVelocity != Vector3.zero && velocityOffset >= 0.02))|| Mathf.Abs(rotAcc) > 0.5) //(dotV == 0 ? 0:1), Mathf.Abs(dotV) // || Mathf.Abs(rotation) > 20
{
//tickCache.Add("BreastsJiggleUp", Find.TickManager.TicksGame);
- SetBreastJiggle(true,10);
+ SetBreastJiggle(true,10,true);
}
else
{
- SetBreastJiggle(false,10);
+ SetBreastJiggle(false,10, false);
}
+ //cache pre data
+
this.prePositionCache = rootLoc;
this.preAngleCache = angle;
this.preRotation = rotation;
@@ -337,171 +554,63 @@ namespace SizedApparel
{
if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawVagina && SizedApparelUtility.CanDrawVagina(___pawn, flags))
{
- if (this.bodyPartVagina != null)
- this.bodyPartVagina.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
- /*
- //Draw Vagina. AllwaysDraw
- Vector3 vector = rootLoc;
- if (facing == Rot4.North)
- vector.y += 0.0100f;//not sure what to do
- else
- vector.y += 0.0088f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = this.graphicVagina_horny;
- if (graphic == null)
- graphic = this.graphicVagina;
- if (graphic != null)
+ //if (this.bodyPartVagina != null)
+ // this.bodyPartVagina.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Vagina))
{
- Material mat;
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- graphic = graphic.GetColoredVersion(graphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- graphic = graphic.GetColoredVersion(shader, skinColor, skinColor2);
- vector.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
- }*/
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }
}
if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawAnus && SizedApparelUtility.CanDrawAnus(___pawn, flags))
{
- if (this.bodyPartAnus != null)
- this.bodyPartAnus.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
- /*
- //Draw Anus. //Allways draw
- Vector3 vector = rootLoc;
- if (facing == Rot4.North)
- vector.y += 0.0105f;//not sure what to do
- else
- vector.y += 0.0093f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = this.graphicAnus_horny;
- if (graphic == null)
- graphic = this.graphicAnus;
- if (graphic != null)
+ //if (this.bodyPartAnus != null)
+ // this.bodyPartAnus.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Anus))
{
- Material mat;
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- graphic = graphic.GetColoredVersion(graphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- graphic = graphic.GetColoredVersion(shader, skinColor, skinColor2);
- vector.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
- }*/
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }
}
if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawBelly && SizedApparelUtility.CanDrawBelly(___pawn, flags))
{
- if (this.bodyPartBelly != null)
- this.bodyPartBelly.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
- /*
- //Draw Belly. Need Complex Hiding Calculation
- Vector3 vector = rootLoc;
- if (facing == Rot4.North)
- vector.y += 0.0002f;//not sure what to do
- else
- vector.y += 0.0098f;
- Graphic graphic = this.graphicBelly;
- if (graphic != null)
+ //if (this.bodyPartBelly != null)
+ // this.bodyPartBelly.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Belly))
{
- Material mat;
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- graphic = graphic.GetColoredVersion(graphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- graphic = graphic.GetColoredVersion(shader, skinColor, skinColor2);
- vector.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
- }*/
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }
}
+ //Draw Pubic Hair
+ if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawPubicHair && SizedApparelUtility.CanDrawPubicHair(___pawn, flags))
+ {
+ if (this.bodyPartPubicHair != null)
+ this.bodyPartPubicHair.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.PubicHair))
+ {
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }
+ }
+
+
if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawUdder && SizedApparelUtility.CanDrawUdder(___pawn, flags))
{
- if (this.bodyPartUdder != null)
- this.bodyPartUdder.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
- //Draw Udder. Need Complex Hiding Calculation ->
- /*
- Vector3 vector = rootLoc;
- if (facing == Rot4.North)
- vector.y += 0.0015f;//not sure what to do
- else
- vector.y += 0.0088f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = this.graphicUdder_horny;
- if (graphic == null)
- graphic = this.graphicUdder;
- if (graphic != null)
+ //if (this.bodyPartUdder != null)
+ // this.bodyPartUdder.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Udder))
{
- Material mat;
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- graphic = graphic.GetColoredVersion(graphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- graphic = graphic.GetColoredVersion(shader, skinColor, skinColor2);
- vector.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
- }*/
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }
+
}
if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawBreasts && SizedApparelUtility.CanDrawBreasts(___pawn, flags) && (SizedApparelSettings.drawSizedApparelBreastsOnlyWorn ? !SizedApparelUtility.isPawnNaked(___pawn, flags) : true))
{
- if (this.bodyPartBreasts != null)
- this.bodyPartBreasts.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
-
- //Log.Message("DrawBreasts for " + ___pawn.Name);
- //if (SizedApparelSettings.Debug)
- // Log.Message("trying to draw breasts");
- //Draw Breasts. Allways draw
-
- /*
- Vector3 vector = rootLoc;
- if (facing == Rot4.North)
- vector.y += 0.001f;//not sure what to do
- else
- vector.y += 0.0113f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = this.graphicBreasts_horny;
- if (graphic == null)
- graphic = this.graphicBreasts;
-
-
-
- if (graphic != null)
+ //if (this.bodyPartBreasts != null)
+ // this.bodyPartBreasts.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Breasts))
{
- Material mat;
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- graphic = graphic.GetColoredVersion(graphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- graphic = graphic.GetColoredVersion(shader, skinColor, skinColor2);
- vector.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? graphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { graphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
}
- else
- {
- //Log.Warning("[SizedApparel] Missing Breasts Graphic for: " + ___pawn.Name);
-
- }
- */
-
}
if (bodyDrawType != RotDrawMode.Dessicated && SizedApparelSettings.drawPenis && SizedApparelUtility.CanDrawPenis(___pawn, flags, true))
@@ -509,105 +618,29 @@ namespace SizedApparel
if (SizedApparelSettings.hideBallOfFuta ? !Genital_Helper.is_futa(___pawn) : true)
{
+ /*
foreach (SizedApparelBodyPart b in this.bodyPartBalls)
+ {
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }*/
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Balls))
{
b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
}
}
+ /*
foreach (SizedApparelBodyPart p in this.bodyPartPenises)
{
p.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
- }
- /*
- //Render Penis And Balls
- Vector3 vector = rootLoc;
- if (facing == Rot4.North)
- vector.y += 0.0025f;
- else
- vector.y += 0.0108f;
-
- float offsetX = 0; // right and left
- float offsetZ = 0; // up and down
-
- if(this.graphicPenises != null && this.graphicBallsOfPenises != null)
- {
- for (int i = 0; i < this.graphicPenises.Count; i++)
- {
- float t = (i + 1f) / (this.graphicPenises.Count + 1);
- offsetX = Mathf.Lerp(-0.1f, 0.1f, t);
- offsetZ = Mathf.Lerp(-0.05f, 0.05f, t);
-
- Graphic penisGraphic = null;
- Graphic ballGraphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- {
- penisGraphic = this.graphicPenises_horny[i];
- }
- if (penisGraphic == null)
- penisGraphic = this.graphicPenises[i];
- ballGraphic = this.graphicBallsOfPenises[i];//Balls Doesn't support HornyVariation
- if (ballGraphic != null && (SizedApparelSettings.hideBallOfFuta ? Genital_Helper.is_futa(___pawn) : true))
- {
- Material mat;
- //TODO: vector2.y
- Vector3 vector2 = vector;
- if (facing == Rot4.North)
- vector2.y += 0.0060f;
- else
- vector2.y -= 0.0012f;
- if (facing == Rot4.North || facing == Rot4.South)
- vector2.x += offsetX;
- else
- vector2.x += offsetX * 0.5f;
-
- if (facing == Rot4.East)
- vector2.z += offsetZ;
- if (facing == Rot4.West)
- vector2.z -= offsetZ;
-
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- ballGraphic = ballGraphic.GetColoredVersion(ballGraphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? ballGraphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { ballGraphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector2, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- ballGraphic = ballGraphic.GetColoredVersion(shader, skinColor, skinColor2);
- vector2.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? ballGraphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { ballGraphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector2, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
- }
- if (penisGraphic != null)
- {
- Material mat;
- Vector3 vector2 = vector;
- if (facing == Rot4.North || facing == Rot4.South)
- vector2.x += offsetX;
- else
- vector2.x += offsetX * 0.5f;
-
- if (facing == Rot4.East)
- vector2.z += offsetZ;
- if (facing == Rot4.West)
- vector2.z -= offsetZ;
-
- if (!flags.FlagSet(PawnRenderFlags.Cache))
- {
- penisGraphic = penisGraphic.GetColoredVersion(penisGraphic.Shader, skinColor, skinColor2);
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? penisGraphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { penisGraphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector2, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow)); // draw for writeZ data to solve shadow issue
- }
- penisGraphic = penisGraphic.GetColoredVersion(shader, skinColor, skinColor2);
- //TODO: vector2.y
- vector2.y += 0.00001f;
- mat = flags.FlagSet(PawnRenderFlags.Cache) ? penisGraphic.MatAt(facing) : (Material)overrideMatMethod.Invoke(__instance, new object[] { penisGraphic.MatAt(facing), ___pawn, flags.FlagSet(PawnRenderFlags.Portrait) });
- GenDraw.DrawMeshNowOrLater(bodyMesh, vector2, quaternion, mat, flags.FlagSet(PawnRenderFlags.DrawNow));
- }
- }
}*/
+ foreach (var b in GetSizedApparelBodyParts(SizedApparelBodyPartOf.Penis))
+ {
+ b.DrawBodyPart(rootLoc, angle, facing, bodyDrawType, flags, bodyMesh);
+ }
}//Draw BodyParts
- //Draw Modular Apparel Parts
+ //Draw Modular Apparel Parts... TODO...? Is it passible?
if (flags.FlagSet(PawnRenderFlags.Clothes))
{
@@ -615,6 +648,7 @@ namespace SizedApparel
+
}
}
@@ -642,22 +676,20 @@ namespace SizedApparel
}
*/
- }
- public void ClearHediffs()
+ }
+ public void ClearHediffs()
{
breastHediff = null;
vaginaHediff = null;
if(penisHediffs != null)
penisHediffs.Clear();
anusHediff = null;
-
udderHediff = null;
}
public void ClearBreastCacheValue()
{
breastHediff = null;
breastSeverity = -1;
- breastSeverityCapToDraw = 1000;
BreastSeverityCache = 0;
}
public void ClearPenisCacheValue()
@@ -683,40 +715,24 @@ namespace SizedApparel
graphicbaseBodyRotten = null;
graphicbaseBodyFurCovered = null;
+ return;
//Clear BodyParts
- if(clearBreasts)
+ if (clearBreasts && bodyPartBreasts!= null)
bodyPartBreasts.Clear();
- bodyPartAnus.Clear();
- bodyPartBelly.Clear();
- bodyPartVagina.Clear();
+ if(bodyPartAnus != null)
+ bodyPartAnus.Clear();
+ if (bodyPartBelly != null)
+ bodyPartBelly.Clear();
+ if (bodyPartVagina != null)
+ bodyPartVagina.Clear();
+ if (bodyPartPubicHair != null)
+ bodyPartPubicHair.Clear();
+
+ foreach(var a in bodyAddons)
+ {
+ a.Clear();
+ }
- graphicBreasts = null;
- graphicVagina = null;
- graphicAnus = null;
- if (graphicPenises == null)
- graphicPenises = new List();
- else
- graphicPenises.Clear();
- if (graphicBallsOfPenises == null)
- graphicBallsOfPenises = new List();
- else
- graphicBallsOfPenises.Clear();
- graphicBelly = null;
-
- graphicUdder = null;
- graphicUdder_horny = null;
-
- graphicBreasts_horny = null;
- graphicVagina_horny = null;
- graphicAnus_horny = null;
- if (graphicPenises_horny == null)
- graphicPenises_horny = new List();
- else
- graphicPenises_horny.Clear();
- if (graphicBalls_horny == null)
- graphicBalls_horny = new List();
- else
- graphicBalls_horny.Clear();
}
public void ClearAll(bool clearGraphics = true)
{
@@ -731,9 +747,12 @@ namespace SizedApparel
needToCheckApparelGraphicRecords = false;
}
- public void SetDirty(bool clearPawnGraphicSet = false)
+ public void SetDirty(bool clearPawnGraphicSet = false, bool dirtyHediff = true, bool dirtyApparel = true, bool dirtySkeleton = false)
{
this.isDirty = true;
+ this.isHediffDirty = dirtyHediff;
+ this.isApparelDirty = dirtyApparel;
+ this.isSkeletonDirty = dirtySkeleton;
if (clearPawnGraphicSet)
{
if (pawn == null)
@@ -743,27 +762,16 @@ namespace SizedApparel
if (pawn.Drawer.renderer == null)
return;
pawn.Drawer.renderer.graphics.ClearCache();
-
}
}
-
- public void UpdateIfDirty()
- {
-
- }
-
- public void UpdateBodyGraphics()
- {
-
- }
- public void UpdateSettingData()
+ public void UpdateRaceSettingData()
{
if (pawn == null)
return;
var loc_raceSetting = SizedApparelSettings.alienRaceSettings.FirstOrDefault((AlienRaceSetting s) => s.raceName == pawn.def.defName);
- if (raceSetting == null)
+ if (loc_raceSetting == null)
return;
raceSetting = loc_raceSetting;
}
@@ -776,7 +784,7 @@ namespace SizedApparel
return;
//TODO. Cleanup
- UpdateSettingData();
+ UpdateRaceSettingData();
if (raceSetting == null)
return;
@@ -899,11 +907,44 @@ namespace SizedApparel
if (cache)
recentClothFlag = CheckApparel;
+
+
isDirty = false;
bool flag = fromGraphicRecord;
needToCheckApparelGraphicRecords = false;
//flag = false; //TODO:fromGraphicRecord is forced not to do for a while. it will update later
- hasUpdateBefore = true;
+
+
+
+ UpdateRaceSettingData();
+
+
+
+ if (!hasUpdateBefore)
+ {
+ InitSkeleton();
+ InitBodyAddons();
+ hasUpdateBefore = true;
+ }
+ else
+ {
+ //check is bodytype changed
+ if(cachedBodytype != pawn.story?.bodyType?.defName)
+ {
+ isSkeletonDirty = true;
+ }
+ if (isSkeletonDirty)
+ {
+ InitSkeleton();
+ ResetBodyAddonBoneLink();
+ }
+ }
+
+ if (skeleton == null)
+ {
+ if (Find.CurrentMap != null)
+ return;
+ }
if (!SizedApparelUtility.CanApplySizedApparel(pawn))
@@ -915,11 +956,80 @@ namespace SizedApparel
if (updateGraphics)
{
ClearGraphics();
- ClearHediffs();
+ //ClearHediffs();
}
+
+
+
+ //float breastSeverityCapped = 1000;
+ string bodyTypeDefName = null;
+ if (pawn.story != null)
+ bodyTypeDefName = pawn.story.bodyType?.defName;
+ float bellySeverity = 0;
+
+ if (isHediffDirty) //Update Hediff Data
+ {
+ ClearHediffs();
+
+
+ if(SizedApparelSettings.drawPenis || SizedApparelSettings.drawVagina || SizedApparelSettings.drawAnus)
+ {
+ BodyPartRecord genitalPart = Genital_Helper.get_genitalsBPR(pawn);
+ if (genitalPart != null)
+ {
+ var genitalList = Genital_Helper.get_PartsHediffList(pawn, genitalPart);
+ if (!genitalList.NullOrEmpty())
+ {
+ if (SizedApparelSettings.Debug)
+ {
+ foreach (var g in genitalList)
+ {
+ Log.Message(" [SizedApparel] " + pawn.Name + "has hediff in genital (" + g.def.defName + ")");
+ }
+ }
+
+ //penisHediffs = genitalList.FindAll((Hediff h) => SizedApparelUtility.isPenis(h.def.defName));
+ penisHediffs = genitalList.FindAll((Hediff h) => Genital_Helper.is_penis(h));
+ //vaginaHediff = genitalList.FirstOrDefault((Hediff h) => SizedApparelUtility.isVagina(h.def.defName));
+ vaginaHediff = genitalList.FirstOrDefault((Hediff h) => Genital_Helper.is_vagina(h));
+
+ }
+ }
+ }
+
+ if (SizedApparelSettings.drawBelly)
+ {
+ List pregnancies = pawn.health?.hediffSet?.hediffs?.FindAll((Hediff h) => h.def.defName.ToLower().Contains("pregnan"));//pregnancy and pregnant. has some issue with "pregnancy mood"
+ if (!pregnancies.NullOrEmpty())
+ {
+ foreach (Hediff h in pregnancies)
+ {
+ bellySeverity = Math.Max(bellySeverity, h.Severity);
+ }
+ }
+
+ //Licentia Lab Hediff
+ if (SizedApparelPatch.LicentiaActive)
+ {
+ Hediff cumflation = pawn.health?.hediffSet?.GetFirstHediffOfDef(HediffDef.Named("Cumflation"));
+ Hediff cumstuffed = pawn.health?.hediffSet?.GetFirstHediffOfDef(HediffDef.Named("Cumstuffed"));
+ bellySeverity += cumflation != null ? cumflation.Severity : 0;
+ bellySeverity += cumstuffed != null ? cumstuffed.Severity : 0;
+ }
+ }
+
+
+
+ }
+
CheckAgeChanged();
- SizedApparelUtility.GetBreastSeverity(pawn, out breastSeverity, out breastHediff);
+ if (SizedApparelSettings.drawBreasts)
+ {
+ SizedApparelUtility.GetBreastSeverity(pawn, out breastSeverity, out breastHediff);
+
+ }
+
if (breastHediff != null)
{
if (pawn.gender == Gender.Male && !SizedApparelSettings.ApplyApparelPatchForMale)
@@ -927,22 +1037,40 @@ namespace SizedApparel
CheckApparel = false;
}
- BreastSeverityCache = 1000;
- if (CheckApparel)
+
+ if (CheckApparel || this.isApparelDirty)
+ {
hasUnsupportedApparel = SizedApparelUtility.hasUnSupportedApparelFromWornData(pawn, breastSeverity, breastHediff, true, flag);
+
+ }
else
+ {
hasUnsupportedApparel = false;
+
+ }
//float validBreastTextureSeverity = SizedApparelUtility.GetBreastSeverityValidTextures(pawn, breastHediff);
- if (hasUnsupportedApparel)
- BreastSeverityCache = breastSeverity;
+ if (SizedApparelSettings.useBreastSizeCapForApparels) // && hasUnsupportedApparel
+ {
+ BreastSeverityCache = Math.Min(BreastSeverityCache, breastSeverity);
+
+ }
+ else
+ {
+ BreastSeverityCache = 1000;
+ }
+ //if (SizedApparelSettings.useBreastSizeCapForApparels) //SizedApparelSettings.useBreastSizeCapForApparels //wip
+ // breastSeverityCapped = Math.Min(BreastSeverityCache, breastSeverityCapped);
+
+
//float validBreastTextureSeverity = SizedApparelUtility.GetBreastSeverityValidTextures(pawn, breastHediff);
//breast cache forApparel brests Check. This ignore variation!
//SizedApparelMod.CheckAndLoadAlienRaces();
-
+
var key = new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType?.defName, breastHediff.def.defName, "Breasts", pawn.gender ,SizedApparelUtility.BreastSeverityInt(breastHediff.Severity));
var raceSetting = SizedApparelSettings.alienRaceSettings.FirstOrDefault((AlienRaceSetting s) => s.raceName == key.raceName);
+ //TODO? Remove ValidBreastsTextureCheck...
float validBreastTextureSeverity = SizedApparelUtility.BreastSizeIndexToSeverity(SizedApparelsDatabase.GetSupportedBodyPartPath(key,true,"Breasts","Breasts").size);
//if (validBreastTextureSeverity < -5 && SizedApparelSettings.alienRaceSettings.settings[key.raceName].asHumanlike)//old: SizedApparelSettings.UnsupportedRaceToUseHumanlike
// validBreastTextureSeverity = SizedApparelUtility.GetBreastSeverityValidTextures(pawn, breastHediff, "Humanlike");
@@ -954,28 +1082,7 @@ namespace SizedApparel
//since rjw race support's part name are too variation, not handling it.
- BodyPartRecord genitalPart = Genital_Helper.get_genitalsBPR(pawn);
- if (genitalPart != null)
- {
- var genitalList = Genital_Helper.get_PartsHediffList(pawn, genitalPart);
- if (!genitalList.NullOrEmpty())
- {
- if (SizedApparelSettings.Debug)
- {
- foreach (var g in genitalList)
- {
- Log.Message(" [SizedApparel] "+ pawn.Name + "has hediff in genital (" + g.def.defName + ")");
- }
- }
- //penisHediffs = genitalList.FindAll((Hediff h) => SizedApparelUtility.isPenis(h.def.defName));
- penisHediffs = genitalList.FindAll((Hediff h) => Genital_Helper.is_penis(h));
- //vaginaHediff = genitalList.FirstOrDefault((Hediff h) => SizedApparelUtility.isVagina(h.def.defName));
- vaginaHediff = genitalList.FirstOrDefault((Hediff h) => Genital_Helper.is_vagina(h));
-
- }
-
- }
var anusList = Genital_Helper.get_PartsHediffList(pawn, Genital_Helper.get_anusBPR(pawn));
if(!anusList.NullOrEmpty())
anusHediff = anusList.FirstOrDefault((Hediff h) => h.def.defName.ToLower().Contains("anus"));
@@ -1103,6 +1210,18 @@ namespace SizedApparel
graphicbaseBodyNaked = pawnRenderer.nakedGraphic;
}
+ //Finding Texture Points
+ if (false && graphicbaseBodyNaked != null)
+ {
+ SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphicbaseBodyNaked.path);
+ if (SizedApparelSettings.Debug && PointsDef != null)
+ {
+ Log.Message("[SizedApparel] : NakedBaseBody Texture Points Def Found : " + PointsDef.defName);
+ }
+ baseBodyNakedPoints = PointsDef;
+ }
+ else
+ baseBodyNakedPoints = null;
string rottingGraphicPath = null;
if (pawnRenderer.rottingGraphic != null)
@@ -1181,6 +1300,19 @@ namespace SizedApparel
graphicbaseBodyRotten = pawnRenderer.rottingGraphic;
}
+ //Finding Texture Points
+ if (false && graphicbaseBodyRotten != null)
+ {
+ SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphicbaseBodyRotten.path);
+ if (SizedApparelSettings.Debug && PointsDef != null)
+ {
+ Log.Message("[SizedApparel] : RottenBaseBody Texture Points Def Found : " + PointsDef.defName);
+ }
+ baseBodyRottenPoints = PointsDef;
+ }
+ else
+ baseBodyRottenPoints = null;
+
string furCoveredGraphicPath = null;
if (pawnRenderer.furCoveredGraphic != null)
@@ -1252,6 +1384,18 @@ namespace SizedApparel
graphicbaseBodyFurCovered = pawnRenderer.furCoveredGraphic;
}
+ //Finding Texture Points
+ if (false && graphicbaseBodyFurCovered != null)
+ {
+ SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphicbaseBodyFurCovered.path);
+ if (SizedApparelSettings.Debug && PointsDef != null)
+ {
+ Log.Message("[SizedApparel] : FurCoveredBaseBody Texture Points Def Found : " + PointsDef.defName);
+ }
+ baseBodyFurCoveredPoints = PointsDef;
+ }
+ else
+ baseBodyFurCoveredPoints = null;
/*
@@ -1353,28 +1497,36 @@ namespace SizedApparel
if (SizedApparelSettings.drawBodyParts)//body parts update
{
- string bodyPartPath = null;
-
- SizedApparelsDatabase.PathAndSize cachedPathAndSize;
-
-
if (SizedApparelSettings.drawBreasts)
{
- float breastSeverityCapped = breastSeverity;
- if (SizedApparelSettings.useBreastSizeCapForApparels) //SizedApparelSettings.useBreastSizeCapForApparels //wip
- breastSeverityCapped = Math.Min(BreastSeverityCache, breastSeverityCapped);
-
- string bodyTypeDefName = null;
- if (pawn.story != null)
- bodyTypeDefName = pawn.story.bodyType?.defName;
if (breastHediff != null)
{
var breastvar = breastHediff.TryGetComp();
- bodyPartBreasts.SetHediffData(breastHediff.def.defName, SizedApparelUtility.BreastSeverityInt(breastHediff.Severity), SizedApparelUtility.BreastSeverityInt(breastSeverityCapped), breastvar?.variation);
- bodyPartBreasts.UpdateGraphic();
+ foreach(var addon in bodyAddons)
+ {
+ if(addon.bodyPartOf == SizedApparelBodyPartOf.Breasts)
+ {
+ addon.SetHediffData(breastHediff.def.defName, SizedApparelUtility.BreastSeverityInt(breastHediff.Severity), SizedApparelUtility.BreastSeverityInt(BreastSeverityCache), breastvar?.variation);
+ addon.SetBone(skeleton?.FindBone("Breasts"));
+ addon.UpdateGraphic();
+ }
+ }
+ //bodyPartBreasts.SetHediffData(breastHediff.def.defName, SizedApparelUtility.BreastSeverityInt(breastHediff.Severity), SizedApparelUtility.BreastSeverityInt(breastSeverityCapped), breastvar?.variation);
+ //bodyPartBreasts.UpdateGraphic();
}
+ else
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Breasts)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
+ }
+
}
@@ -1385,13 +1537,30 @@ namespace SizedApparel
if (udderHediff != null)
{
var udderVar = udderHediff.TryGetComp();
-
- bodyPartUdder.SetHediffData(udderHediff.def.defName, SizedApparelUtility.BreastSeverityInt(udderHediff.Severity), 1000, udderVar?.variation);
- bodyPartUdder.UpdateGraphic();
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Udder)
+ {
+ addon.SetHediffData(udderHediff.def.defName, SizedApparelUtility.BreastSeverityInt(udderHediff.Severity), 1000, udderVar?.variation);
+ addon.SetBone(skeleton?.FindBone("Udder"));
+ addon.UpdateGraphic();
+ }
+ }
+ //bodyPartUdder.SetHediffData(udderHediff.def.defName, SizedApparelUtility.BreastSeverityInt(udderHediff.Severity), 1000, udderVar?.variation);
+ //bodyPartUdder.UpdateGraphic();
}
else
- bodyPartUdder.SetHediffData(null, -1);
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Udder)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
+ }
+
}
@@ -1399,77 +1568,33 @@ namespace SizedApparel
if (SizedApparelSettings.drawBelly)
{
- float bellySeverity = 0;
- List pregnancies = pawn.health?.hediffSet?.hediffs?.FindAll((Hediff h) => h.def.defName.ToLower().Contains("pregnan"));//pregnancy and pregnant
- if (!pregnancies.NullOrEmpty())
- {
- foreach (Hediff h in pregnancies)
- {
- bellySeverity = Math.Max(bellySeverity, h.Severity);
- }
- }
- /*
- List eggs = pawn.health?.hediffSet?.hediffs?.FindAll((Hediff h) => h.def.defName.ToLower().Contains("rjw") && h.def.defName.ToLower().Contains("egg"));
- if (!eggs.NullOrEmpty())
- {
- foreach (Hediff h in eggs)
- {
- bellySeverity = Math.Max(bellySeverity, h.Severity);
- }
- }
- List mech = pawn.health?.hediffSet?.hediffs?.FindAll((Hediff h) => h.def.defName.ToLower().Contains("rjw") && h.def.defName.ToLower().Contains("mech"));
- if (!mech.NullOrEmpty())
- {
- foreach (Hediff h in mech)
- {
- bellySeverity = Math.Max(bellySeverity, h.Severity);
- }
- }
- List parasite = pawn.health?.hediffSet?.hediffs?.FindAll((Hediff h) => h.def.defName.ToLower().Contains("parasite"));
- if (!parasite.NullOrEmpty())
- {
- foreach (Hediff h in parasite)
- {
- bellySeverity = Math.Max(bellySeverity, h.Severity);
- }
- }*/
- //Licentia Lab Hediff
- if (SizedApparelPatch.LicentiaActive)
- {
- Hediff cumflation = pawn.health?.hediffSet?.GetFirstHediffOfDef(HediffDef.Named("Cumflation"));
- Hediff cumstuffed = pawn.health?.hediffSet?.GetFirstHediffOfDef(HediffDef.Named("Cumstuffed"));
- bellySeverity += cumflation != null ? cumflation.Severity : 0;
- bellySeverity += cumstuffed != null ? cumstuffed.Severity : 0;
- }
if (bellySeverity >= 0)
{
//var bellyVar = breastHediff.GetComp();
string BellyVar = null;
-
- bodyPartBelly.SetHediffData("BellyBulge", SizedApparelUtility.PrivatePartSeverityInt(bellySeverity), 1000, BellyVar);
- bodyPartBelly.UpdateGraphic();
- /*
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, "BellyBulge", "Belly", SizedApparelUtility.PrivatePartSeverityInt(bellySeverity), false), false, "Belly", "BellyBulge");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
+ foreach (var addon in bodyAddons)
{
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Belly)
{
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- graphicBelly = GraphicDatabase.Get(bodyPartPath);
+ addon.SetHediffData("BellyBulge", SizedApparelUtility.PrivatePartSeverityInt(bellySeverity), 1000, BellyVar);
+ addon.SetBone(skeleton?.FindBone("Belly"));
+ addon.UpdateGraphic();
}
- else
- graphicBelly = GraphicDatabase.Get(bodyPartPath);
- }*/
- //if (graphicVagina_horny == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, vaginaHediff.def.defName, "Vagina", SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), true), false, "Vagina", "Vagina", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // graphicVagina_horny = GraphicDatabase.Get(bodyPartPath);
- //}
+ }
+ //bodyPartBelly.SetHediffData("BellyBulge", SizedApparelUtility.PrivatePartSeverityInt(bellySeverity), 1000, BellyVar);
+ //bodyPartBelly.UpdateGraphic();
+ }
+ else
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Belly)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
}
}
@@ -1477,75 +1602,113 @@ namespace SizedApparel
if (SizedApparelSettings.drawVagina)
{
- //graphicVagina = SizedApparelUtility.GetBodyPartGraphic(pawn, vaginaHediff, false, "Vagina", "Vagina");
- //if(graphicVagina == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- // graphicVagina = SizedApparelUtility.GetBodyPartGraphic(pawn, vaginaHediff, false, "Vagina", "Vagina", false, true,"Humanlike");
if (vaginaHediff != null)
{
var vaginaVar = vaginaHediff.TryGetComp();
- bodyPartVagina.SetHediffData(vaginaHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), 1000, vaginaVar?.variation);
- bodyPartVagina.UpdateGraphic();
- /*
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, vaginaHediff.def.defName, "Vagina", SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), false), false, "Vagina", "Vagina");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
+ foreach (var addon in bodyAddons)
{
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Vagina)
{
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- graphicVagina = GraphicDatabase.Get(bodyPartPath);
+ addon.SetHediffData(vaginaHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), 1000, vaginaVar?.variation);
+ addon.SetBone(skeleton?.FindBone("Vagina"));
+ addon.UpdateGraphic();
+
}
- else
- graphicVagina = GraphicDatabase.Get(bodyPartPath);
}
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, vaginaHediff.def.defName, "Vagina", SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), true), false, "Vagina", "Vagina");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
- {
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
- {
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- graphicVagina_horny = GraphicDatabase.Get(bodyPartPath);
- }
- else
- graphicVagina_horny = GraphicDatabase.Get(bodyPartPath);
- }*/
- //if (graphicVagina_horny == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, vaginaHediff.def.defName, "Vagina", SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), true), false, "Vagina", "Vagina", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // graphicVagina_horny = GraphicDatabase.Get(bodyPartPath);
- //}
+ //bodyPartVagina.SetHediffData(vaginaHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(vaginaHediff.Severity), 1000, vaginaVar?.variation);
+ //bodyPartVagina.UpdateGraphic();
+
}
else
- bodyPartVagina.SetHediffData(null, -1);
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Vagina)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
+ }
}
+ if (SizedApparelSettings.drawPubicHair)
+ {
+ if (pubicHairDef != null && pubicHairDef.defName != "None") // pubicHairDef != null // for testing
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.PubicHair)
+ {
+ addon.SetHediffData(pubicHairDef.defName, 0, 1000, null);
+ addon.SetBone(skeleton?.FindBone("PubicHair"));
+ addon.UpdateGraphic();
+ }
+ }
-
- //graphicVagina_horny = SizedApparelUtility.GetBodyPartGraphic(pawn, vaginaHediff, false, "Vagina", "Vagina", true);
- //if(graphicVagina_horny == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- // graphicVagina_horny = SizedApparelUtility.GetBodyPartGraphic(pawn, vaginaHediff, false, "Vagina", "Vagina", true, true, "Humanlike");
- /*
- graphicPenises.Clear();
- graphicPenises_horny.Clear();
- graphicBallsOfPenises.Clear();
- */
+ //bodyPartPubicHair.SetHediffData(pubicHairDef.defName, 0, 1000, null);
+ //bodyPartPubicHair.UpdateGraphic();
+ }
+ else
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.PubicHair)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
+ }
+ }
if (SizedApparelSettings.drawPenis)
{
- //TODO: Optimize
- bodyPartPenises.Clear();
- bodyPartBalls.Clear();
- if (penisHediffs != null)
+ //TODO: Optimize.... memory leak issue?
+ //bodyPartPenises.Clear();
+ //bodyPartBalls.Clear();
+ if (!penisHediffs.NullOrEmpty())
{
+ var penisHediff = penisHediffs[0];
+
+ if (penisHediff != null)
+ {
+ var penisVar = penisHediff.TryGetComp();
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Penis)
+ {
+ addon.SetHediffData(penisHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), 1000, penisVar?.variation);
+ addon.SetBone(skeleton?.FindBone("Penis"));
+ addon.UpdateGraphic();
+ }
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Balls)
+ {
+ addon.SetHediffData(penisHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), 1000, penisVar?.variation);
+ addon.SetBone(skeleton?.FindBone("Balls"));
+ addon.UpdateGraphic();
+ }
+ }
+ }
+ else
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Penis)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Balls)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
+ }
+ // Multiple Penis Drawing. obsolte
+ /*
for (int i = 0; i < penisHediffs.Count; i++)
{
- Hediff penisHediff = penisHediffs[i];
+ penisHediff = penisHediffs[i];
float offsetX = 0; // right and left
float offsetZ = 0; // up and down
float t = (i + 1f) / (penisHediffs.Count + 1);
@@ -1555,114 +1718,40 @@ namespace SizedApparel
if (penisHediff == null)
continue;
+ Bone penisBone = null;
+ Bone ballsBone = null;
+ if(skeleton != null)
+ {
+ penisBone = skeleton.FindBone("Penis");
+ ballsBone = skeleton.FindBone("Balls");
+ if (ballsBone == null)
+ ballsBone = penisBone;
+ }
+
+
+
var penisVar = penisHediff.TryGetComp();
- SizedApparelBodyPart penis = new SizedApparelBodyPart(pawn, this, "Penis", SizedApparelBodyPartOf.Penis, "Penis", false, false);
+ SizedApparelBodyPart penis = new SizedApparelBodyPart(pawn, this, "Penis", SizedApparelBodyPartOf.Penis, "Penis", false, false, null,ColorType.Skin, penisBone);
penis.SetDepthOffsets(0.0108f, 0.0025f, 0.0108f, 0.0108f);
penis.SetPositionOffsets(new Vector2(offsetX, 0), new Vector2(-offsetX, 0), new Vector2(offsetX, offsetZ), new Vector2(offsetX, -offsetZ));
penis.SetHediffData(penisHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), 1000, penisVar?.variation);
+ penis.centeredTexture = true; // Test Bone
penis.UpdateGraphic();
bodyPartPenises.Add(penis);
-
- SizedApparelBodyPart balls = new SizedApparelBodyPart(pawn, this, "Balls", SizedApparelBodyPartOf.Penis, "Penis", false, false, "Penis/Balls");
+ SizedApparelBodyPart balls = new SizedApparelBodyPart(pawn, this, "Balls", SizedApparelBodyPartOf.Balls, "Penis", false, false, "Penis/Balls", ColorType.Skin, ballsBone);
balls.SetDepthOffsets(0.0096f, 0.0085f, 0.0096f, 0.0096f);
balls.SetPositionOffsets(new Vector2(offsetX, 0), new Vector2(-offsetX, 0), new Vector2(offsetX, offsetZ), new Vector2(offsetX, -offsetZ));
balls.SetHediffData(penisHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), 1000, penisVar?.variation);
+ balls.centeredTexture = true; // Test Bone
balls.UpdateGraphic();
bodyPartBalls.Add(balls);
-
-
- /*
- Graphic penisGraphic = SizedApparelUtility.GetBodyPartGraphic(pawn, penisHediff, false, "Penis", "Penis");
- if (penisGraphic == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- penisGraphic = SizedApparelUtility.GetBodyPartGraphic(pawn, penisHediff, false, "Penis", "Penis", false, true, "Humanlike");
-
- Graphic penisGraphicHorny = SizedApparelUtility.GetBodyPartGraphic(pawn, penisHediff, false, "Penis", "Penis", true);
- if (penisGraphicHorny == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- penisGraphicHorny = SizedApparelUtility.GetBodyPartGraphic(pawn, penisHediff, false, "Penis", "Penis", true, true, "Humanlike");
*/
- /*
- Graphic penisGraphic = null;
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, penisHediff.def.defName, "Penis", SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), false), false, "Penis", "Penis");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
- {
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
- {
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- penisGraphic = GraphicDatabase.Get(bodyPartPath);
- }
- else
- penisGraphic = GraphicDatabase.Get(bodyPartPath);
- }
- //if (penisGraphic == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, penisHediff.def.defName, "Penis", SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), false), false, "Penis", "Penis", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // penisGraphic = GraphicDatabase.Get(bodyPartPath);
- //}
- Graphic penisGraphicHorny = null;
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, penisHediff.def.defName, "Penis", SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), true), false, "Penis", "Penis");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
- {
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
- {
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- penisGraphicHorny = GraphicDatabase.Get(bodyPartPath);
- }
- else
- penisGraphicHorny = GraphicDatabase.Get(bodyPartPath);
- }
- //if (penisGraphicHorny == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, penisHediff.def.defName, "Penis", SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), true), false, "Penis", "Penis", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // penisGraphicHorny = GraphicDatabase.Get(bodyPartPath);
- //}
- //balls are no need horny graphic. it wiil share sametime
-
- //Graphic ballGraphic = SizedApparelUtility.GetBodyPartGraphic(pawn, penisHediff, false, "Penis/Balls", "Penis", false);
- //if (ballGraphic == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- // ballGraphic = SizedApparelUtility.GetBodyPartGraphic(pawn, penisHediff, false, "Penis/Balls", "Penis", false, true, "Humanlike");
-
-
- Graphic ballGraphic = null;
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, "Penis/Balls", penisHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), false), false, "Penis/Balls", "Penis");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
- {
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
- {
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- ballGraphic = GraphicDatabase.Get(bodyPartPath);
- }
- else
- ballGraphic = GraphicDatabase.Get(bodyPartPath);
- }
- //if (ballGraphic == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, "Penis/Balls", penisHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(penisHediff.Severity), false), false, "Penis/Balls", "Penis", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // ballGraphic = GraphicDatabase.Get(bodyPartPath);
- //}
-
-
- if (true)//penisGraphic != null
- {
- graphicPenises.Add(penisGraphic);
- graphicPenises_horny.Add(penisGraphicHorny);
- graphicBallsOfPenises.Add(ballGraphic);
- }
- */
- }
}
}
+
else
{
bodyPartPenises.Clear();
@@ -1684,52 +1773,25 @@ namespace SizedApparel
if (anusHediff != null)
{
var anusVar = anusHediff.TryGetComp();
-
- bodyPartAnus.SetHediffData(anusHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(anusHediff.Severity), 1000, anusVar?.variation);
- bodyPartAnus.UpdateGraphic();
-
- /*
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, anusHediff.def.defName, "Anus", SizedApparelUtility.PrivatePartSeverityInt(anusHediff.Severity), false), false, "Anus", "Anus");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
+ foreach (var addon in bodyAddons)
{
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Anus)
{
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- graphicAnus = GraphicDatabase.Get(bodyPartPath);
+ addon.SetHediffData(anusHediff.def.defName, SizedApparelUtility.PrivatePartSeverityInt(anusHediff.Severity), 1000, anusVar?.variation);
+ addon.UpdateGraphic();
}
- else
- graphicAnus = GraphicDatabase.Get(bodyPartPath);
}
- //if (graphicAnus == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, anusHediff.def.defName, "Anus", SizedApparelUtility.PrivatePartSeverityInt(anusHediff.Severity), false), false, "Anus", "Anus", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // graphicAnus = GraphicDatabase.Get(bodyPartPath);
- //}
- bodyPartPath = null;
- cachedPathAndSize = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, bodyTypeDefName, anusHediff.def.defName, "Anus", SizedApparelUtility.PrivatePartSeverityInt(anusHediff.Severity), true), false, "Anus", "Anus");
- bodyPartPath = cachedPathAndSize.pathWithSizeIndex;
- if (bodyPartPath != null)
- {
- if (cachedPathAndSize.isUnsupportedHumanlikePath)
- {
- if (SizedApparelSettings.UnsupportedRaceToUseHumanlike && pawn.RaceProps.Humanlike)
- graphicAnus_horny = GraphicDatabase.Get(bodyPartPath);
- }
- else
- graphicAnus_horny = GraphicDatabase.Get(bodyPartPath);
- }
- //if (graphicAnus_horny == null && pawn.RaceProps.Humanlike && SizedApparelSettings.UnsupportedRaceToUseHumanlike)
- //{
- // bodyPartPath = SizedApparelsDatabase.GetSupportedBodyPartPath(new SizedApparelsDatabase.BodyPartDatabaseKey(pawn.def.defName, pawn.story?.bodyType.defName, anusHediff.def.defName, "Anus", SizedApparelUtility.PrivatePartSeverityInt(anusHediff.Severity), true), false, "Anus", "Anus", "Humanlike").pathWithSizeIndex;
- // if (bodyPartPath != null)
- // graphicAnus_horny = GraphicDatabase.Get(bodyPartPath);
- //}*/
}
else
- bodyPartAnus.SetHediffData(null, -1);
+ {
+ foreach (var addon in bodyAddons)
+ {
+ if (addon.bodyPartOf == SizedApparelBodyPartOf.Anus)
+ {
+ addon.SetHediffData(null, -1);
+ }
+ }
+ }
}
}
@@ -1742,6 +1804,9 @@ namespace SizedApparel
cachedApparelGraphicRecord = new List();
hasUpdateBeforeSuccess = true;
+ this.isHediffDirty = false;
+ this.isApparelDirty = false;
+ this.isSkeletonDirty = false;
}
@@ -1803,6 +1868,10 @@ namespace SizedApparel
{
yield return bp;
}
+ foreach (SizedApparelBodyPart bp in bodyAddons)
+ {
+ yield return bp;
+ }
}
public IEnumerable GetSizedApparelBodyParts(SizedApparelBodyPartOf targetPartOf, bool returnNullPart = false)
{
diff --git a/source/SizedApparel/SizedApparelMain.cs b/source/SizedApparel/SizedApparelMain.cs
index 6c66053..59a4c6a 100644
--- a/source/SizedApparel/SizedApparelMain.cs
+++ b/source/SizedApparel/SizedApparelMain.cs
@@ -10,10 +10,9 @@ using rjw;
using Rimworld_Animations;
using System.Reflection;
-
-
//since I test system alot, source cord is very dirty and not optimized.
+
namespace SizedApparel
{
public struct supportedIndex
@@ -21,86 +20,6 @@ namespace SizedApparel
}
-
- public class RimworldAnimationPatch
- {
- public static void TickClipPostfix(CompBodyAnimator __instance, AnimationDef ___anim, int ___curStage, int ___actor, int ___clipTicks, float ___clipPercent)
- {
-
-
- if (!__instance.controlGenitalAngle)
- return;
- var comp = __instance.parent.GetComp();
- if (comp == null)
- return;
- comp.SetPenisAngle(__instance.genitalAngle);
-
-
- if (!SizedApparelSettings.AnimationPatch)//Rotating Penis Setting(avobe) is set from RimworldAnimation Setting, not in SizedApparel.
- return;
-
- foreach (var actor in __instance.actorsInCurrentAnimation)
- {
- //comp.ForceUpdateTickAnimation = true;
- var actorcomp = actor.GetComp();
- //actorcomp.SetBreastJiggle(true);
- actorcomp.ForceUpdateTickAnimation = true;
-
- }
- return;
- bool isFuckTick = false;
- /*
- var soundEffects = ((PawnAnimationClip)___anim.animationStages[___curStage].animationClips[___actor]).SoundEffects;
- if (soundEffects.ContainsKey(___clipTicks) && (soundEffects[___clipTicks].Contains("Fuck") || soundEffects[___clipTicks].Contains("Suck")))
- {
- isFuckTick = true;
- }
- else
- {
- const int jiggleTime = 3;
- for(int i = 0; i < jiggleTime; i++)
- {
- if (soundEffects.ContainsKey(___clipTicks - i) && soundEffects[___clipTicks - i].Contains("Fuck"))
- {
- isFuckTick = true;
- break;
- }
- }
- }*/
- //need to find partner's breasts.
- if (isFuckTick)
- {
- foreach(var actor in __instance.actorsInCurrentAnimation)
- {
- actor.GetComp().SetBreastJiggle(true);
- }
- }
- else
- {
- foreach (var actor in __instance.actorsInCurrentAnimation)
- {
- actor.GetComp().SetBreastJiggle(false);
- }
- }
- //may have some tick issue? too fast jiggle?
- }
-
- //rjw's JobDriver_SexBaseInitiator end patch
- public static void EndClipPostfix(CompBodyAnimator __instance)
- {
- if (!__instance.controlGenitalAngle)
- return;
- var comp = __instance.parent.GetComp();
- if (comp == null)
- return;
- comp.ForceUpdateTickAnimation = false;
- comp.SetPenisAngle(0);
- comp.SetBreastJiggle(false);
- }
- }
-
-
-
[StaticConstructorOnStartup]
[HarmonyPatch(typeof(Pawn_HealthTracker), "Notify_HediffChanged")]
public class PawnHealthTrackerPatch
@@ -119,7 +38,7 @@ namespace SizedApparel
{
//comp.ClearAll();
//comp.Update();
- comp.SetDirty();
+ comp.SetDirty(false,true,false);
//already doing set dirty in hediffchange method.
//___pawn.Drawer.renderer.graphics.SetApparelGraphicsDirty();
//PortraitsCache.SetDirty(___pawn);
@@ -128,7 +47,7 @@ namespace SizedApparel
}
if (SizedApparelUtility.isBellyBulgeHediff(hediff))
{
- comp.SetDirty();
+ comp.SetDirty(false, true, false);
return;
}
@@ -179,7 +98,7 @@ namespace SizedApparel
-
+ [Obsolete]
[StaticConstructorOnStartup]
public class BodyPatch
{
@@ -367,62 +286,7 @@ namespace SizedApparel
}
-
-
-
-
-
-
-
- //for worn apparel
-
-
-
-
-
-
-
-
-
-
- //[HarmonyPatch(typeof(ApparelGraphicRecordGetter), "TryGetGraphicApparel")]
- /*
- [StaticConstructorOnStartup]
- [HarmonyPatch(typeof(PawnGraphicSet), "ResolveAllGraphics")]
- class BodyfixForUnsupported
- {
- static void Prefix(PawnGraphicSet __instance)
- {
- if (!UnityData.IsInMainThread)
- return;
- if (__instance.pawn == null)
- return;
- var comp = __instance.pawn.GetComp();
- if (comp == null)
- return;
- comp.ClearAll();
- //comp.Update();
- }
- }*/
-
-
- /*
-[StaticConstructorOnStartup]
-[HarmonyPatch(typeof(PawnGenerator), "GeneratePawn", typeof(PawnGenerationRequest) )]
-class GeneratePawnPatch
-{
- Type[] types = { typeof(PawnGenerationRequest) };
- static void Postfix(PawnGenerationRequest request, Pawn __result)
- {
- if (!UnityData.IsInMainThread)
- return;
- if (__result != null)
- {
- //__result.Drawer.renderer.graphics.ResolveAllGraphics();
- __result.Drawer.renderer.graphics.ResolveApparelGraphics();
- }
- }
-}*/
+ [Obsolete]
[StaticConstructorOnStartup]
//[HarmonyPatch(typeof(Pawn_ApparelTracker), "ExposeData")]
class ApparelTrackerExposePatch
@@ -488,7 +352,7 @@ class GeneratePawnPatch
//comp.Update(true, false);//TODO: Coverd But No Graphic may cause Big Issue!!!
//comp.Update(true, true);
- comp.SetDirty();
+ comp.SetDirty(false,false,true);
/*
if (SizedApparelSettings.drawBodyParts)//old:SizedApparelSettings.useBodyTexture
@@ -610,8 +474,8 @@ class GeneratePawnPatch
//if (SizedApparelSettings.matchBodyTextureToMinimumApparelSize)
// BreastSeverity = comp.BreastSeverityCache;
- int currentBreastSizeIndex = 0;
- float currentBreastSeverity = -1;
+ //int currentBreastSizeIndex = 0;
+ //float currentBreastSeverity = -1;
//int minSupportedBreastSizeIndex = 1000;
//float minSupportedBreastSeverity = 1000;
@@ -653,17 +517,18 @@ class GeneratePawnPatch
}*/
}
+ //Log.Message("1");
var breastHediff = comp.breastHediff;
float BreastSeverity = comp.breastSeverity;
-
+ //Log.Message("2");
if (SizedApparelSettings.useBreastSizeCapForApparels) //SizedApparelSettings.useBreastSizeCapForApparels //wip
BreastSeverity = Math.Min(comp.BreastSeverityCache, BreastSeverity);
-
- if (comp.hasUnsupportedApparel == false && (comp.bodyPartBreasts.bodyPartGraphic !=null || comp.bodyPartBreasts.bodyPartGraphicHorny != null))//(comp.graphicBreasts!=null|| comp.graphicBreasts_horny != null)
+ //Log.Message("3");
+ if (comp.hasUnsupportedApparel == false)//&& (comp.bodyPartBreasts.bodyPartGraphic !=null || comp.bodyPartBreasts.bodyPartGraphicHorny != null)
{
Graphic sizedGraphic = null;
-
+ //Log.Message("4");
string resultPath = SizedApparelsDatabase.GetSupportedApparelSizedPath(new SizedApparelsDatabase.SizedApparelDatabaseKey(rec.graphic.path, apparel?.Wearer?.def.defName, breastHediff.def.defName, apparel.Wearer.gender, apparel?.Wearer?.story?.bodyType?.defName, SizedApparelUtility.BreastSeverityInt(BreastSeverity))).pathWithSizeIndex;
if(resultPath != null)
{
@@ -712,413 +577,6 @@ class GeneratePawnPatch
-
-
-
- //[HarmonyPatch(typeof(PawnGraphicSet))]
- //[HarmonyPatch("ResolveApparelGraphics")]
- //[HarmonyBefore(new string[] { "rimworld.erdelf.alien_race.main" })]
- [StaticConstructorOnStartup]
- //[HarmonyPatch(typeof(PawnGraphicSet), "ResolveApparelGraphics")]
- class ApparelFix
- {
- [Obsolete]
- public static bool old_old_Prefix(Apparel apparel, BodyTypeDef bodyType, ApparelGraphicRecord rec, ref bool __result)
- {
-
- bool result = true;
- bool flag = apparel.def.apparel.wornGraphicPath.NullOrEmpty();
- if (flag)
- {
- string text = apparel.def.apparel.wornGraphicPath + "_" + bodyType.defName + "_3";
-
- bool flag2 = false;
-
- flag2 = ContentFinder.Get(text + "_north", true) == null || ContentFinder.Get(text + "_east", true) == null || ContentFinder.Get(text + "_south", true) == null;
- if (flag2)
- {
- bool flag3 = apparel.def.apparel.LastLayer != ApparelLayerDefOf.Overhead;
- if (flag3)
- {
- //text = apparel.def.apparel.wornGraphicPath + "_Female";
- Graphic graphic = GraphicDatabase.Get(text, ShaderDatabase.Cutout, apparel.def.graphicData.drawSize, apparel.DrawColor);
- rec = new ApparelGraphicRecord(graphic, apparel);
- result = false;
- __result = true;
- }
- }
- else
- {
- bool flag4 = apparel.def.apparel.LastLayer == ApparelLayerDefOf.Overhead;
- if (flag4)
- {
- Graphic graphic2 = GraphicDatabase.Get(text, ShaderDatabase.Cutout, apparel.def.graphicData.drawSize, apparel.DrawColor);
- rec = new ApparelGraphicRecord(graphic2, apparel);
- result = false;
- __result = true;
- }
- }
- }
- return result;
- }
-
- [Obsolete]
- static void old_Postfix(ref PawnGraphicSet __instance)
- {
- if (Current.Game.World == null)
- return;
-
- // Log.Message("ResolveGraphic");
- if (__instance.pawn.RaceProps.Humanlike)
- {
- //Log.Message("ResolveApparelGraphics");
- //__instance.pawn.health.hediffSet.HasHediff(Hediff ,BodyPartRecord ,false);
- //__instance.pawn.health.hediffSet.GetNotMissingParts(BodyPartHeight.Undefined, BodyPartDepth.Undefined, null, null).Any((BodyPartRecord bpr) => bpr.untranslatedCustomLabel == label || bpr.def.defName == label);
-
- var comp = __instance.pawn.GetComp();
- if (comp != null)
- {
- bool flag = false;
- float BreastSeverity = -1;
- Hediff breastHediff = null;
- SizedApparelUtility.GetBreastSeverity(__instance.pawn, out BreastSeverity, out breastHediff);
- //Log.Message("hasUnsupported? : "+comp.hasUnsupportedApparel.ToString());
-
- if (true) //(!comp.hasUpdateBefore)
- {
- //Log.Message("UpdateFirst");
- /*
- if (comp.havingSex)
- comp.hasUnsupportedApparel = SizedApparelUtility.hasUnSupportedApparel(__instance.pawn, BreastSeverity, breastHediff);
- else
- comp.hasUnsupportedApparel = SizedApparelUtility.hasUnSupportedApparelFromWornData(__instance.pawn, BreastSeverity, breastHediff);
- */
- comp.hasUnsupportedApparel = SizedApparelUtility.hasUnSupportedApparelFromWornData(__instance.pawn, BreastSeverity, breastHediff);
- comp.hasUpdateBefore = true;
- }
- if (comp.hasUnsupportedApparel == false)
- {
- int currentBreastSizeIndex = 0;
- int minSupportedBreastSizeIndex = 1000;
- float currentBreastSeverity = 0;
- float minSupportedBreastSeverity = 1000;
- List newAgr = new List();
- foreach (ApparelGraphicRecord agr in __instance.apparelGraphics)//ApparelGraphicRecord agr in curAgr
- {
- /*
- if(apparel != null)
- {
- ApparelGraphicRecord rec;
- if (apparel.def.apparel.wornGraphicPath.NullOrEmpty())
- {
- rec = new ApparelGraphicRecord(null, null);
- newAgr.Add(rec);
- continue;
- }
- string path;
- if (apparel.def.apparel.LastLayer == ApparelLayerDefOf.Overhead || apparel.def.apparel.wornGraphicPath == BaseContent.PlaceholderImagePath)
- {
- path = apparel.def.apparel.wornGraphicPath;
- }
- else
- {
- path = apparel.def.apparel.wornGraphicPath + "_" + __instance.pawn.story.bodyType.defName;
- }
- Shader shader = ShaderDatabase.Cutout;
- if (apparel.def.apparel.useWornGraphicMask)
- {
- shader = ShaderDatabase.CutoutComplex;
- }
- Graphic graphic = GraphicDatabase.Get(path, shader, apparel.def.graphicData.drawSize, apparel.DrawColor);
- rec = new ApparelGraphicRecord(graphic, apparel);
- //string endstring = (gender == Gender.Female && (ContentFinder.Get(apparel.def.apparel.wornGraphicPath + "_" + bodyType.defName + "_fem_south", false) != null)) ? "_fem" : null;
- //string path = (apparel.def.apparel.LastLayer != ApparelLayerDefOf.Overhead) ? (apparel.def.apparel.wornGraphicPath + "_" + bodyType.defName + endstring) : apparel.def.apparel.wornGraphicPath;
- //path = agr.sourceApparel.def.graphic.path;
-
- //var path = agr.graphic.path;
- var ExtraPath = path;
- string targetPath;
- }
- */
-
-
- string path;
- string extraPath;
- //path = agr.sourceApparel.def.apparel.wornGraphicPath + "_" + __instance.pawn.story.bodyType.defName;
- path = agr.graphic.path;
- if (breastHediff != null)
- {
- extraPath = path + "_" + breastHediff.def.defName;
-
- }
- else
- extraPath = path;
-
-
- int offset = 0;
-
-
- bool validTexture = false;
- Graphic graphic = null;
- bool findBigger = true; // if false : search smaller first
- while (offset < SizedApparelUtility.size.Length)
- {
- if (breastHediff != null)
- {
- if (ContentFinder.Get((extraPath + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity) + "_south"), false) != null) // checking special texture like udder
- {
- minSupportedBreastSizeIndex = Math.Min(currentBreastSizeIndex, minSupportedBreastSizeIndex);
- minSupportedBreastSeverity = Math.Min(currentBreastSeverity, minSupportedBreastSeverity);
- graphic = new Graphic();
- graphic = GraphicDatabase.Get(extraPath + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity), agr.graphic.Shader, agr.graphic.drawSize, agr.graphic.color, agr.graphic.colorTwo, agr.graphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- validTexture = true;
- //Log.Message(extraPath + BreastSeverityString(BreastSeverity, offset, findBigger) + ":Extra Texture Found");
- break;
- }
- //Log.Warning(extraPath + BreastSeverityString(BreastSeverity, offset, findBigger) + ":Extra Texture Not Found.");
- }
-
- if ((ContentFinder.Get((path + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity) + "_south"), false) != null))
- {
- minSupportedBreastSizeIndex = Math.Min(currentBreastSizeIndex, minSupportedBreastSizeIndex);
- minSupportedBreastSeverity = Math.Min(currentBreastSeverity, minSupportedBreastSeverity);
- graphic = GraphicDatabase.Get(path + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity), agr.graphic.Shader, agr.graphic.drawSize, agr.graphic.color, agr.graphic.colorTwo, agr.graphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, findBigger) + ":Texture Found");
- break;
- }
- //Log.Warning(path + BreastSeverityString(BreastSeverity, offset, findBigger) + ":Texture Not Found. Try bigger Texture.");
- offset++;
-
- }
-
- if (validTexture == false)
- {
- //Log.Warning(path + BreastSeverityString(BreastSeverity, offset, findBigger) + ":Texture Not Found. try smaller instead of bigger .");
- }
-
-
- if (validTexture == false)
- {
- offset = 0;
- while (offset < SizedApparelUtility.size.Length)
- {
- if (breastHediff != null)
- {
- if (ContentFinder.Get((extraPath + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, !findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity) + "_south"), false) != null) // checking special texture like udder
- {
- minSupportedBreastSizeIndex = Math.Min(currentBreastSizeIndex, minSupportedBreastSizeIndex);
- minSupportedBreastSeverity = Math.Min(currentBreastSeverity, minSupportedBreastSeverity);
- graphic = new Graphic();
- graphic = GraphicDatabase.Get(extraPath + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, !findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity), agr.graphic.Shader, agr.graphic.drawSize, agr.graphic.color, agr.graphic.colorTwo, agr.graphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- validTexture = true;
- //Log.Message(extraPath + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Extra Texture Found");
- break;
- }
- //Log.Warning(extraPath + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Extra Texture Not Found.");
- }
-
- if ((ContentFinder.Get((path + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, !findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity) + "_south"), false) != null))
- {
- minSupportedBreastSizeIndex = Math.Min(currentBreastSizeIndex, minSupportedBreastSizeIndex);
- minSupportedBreastSeverity = Math.Min(currentBreastSeverity, minSupportedBreastSeverity);
- graphic = GraphicDatabase.Get(path + SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, !findBigger, ref currentBreastSizeIndex, ref currentBreastSeverity), agr.graphic.Shader, agr.graphic.drawSize, agr.graphic.color, agr.graphic.colorTwo, agr.graphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- break;
- }
- //Log.Warning(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Not Found. Try smaller Texture.");
- offset++;
- }
- }
-
- if (validTexture == false)
- {
- //Log.Warning(path + BreastSeverityString(BreastSeverity, offset, findBigger) + ":Texture Not Found. try smaller instead of bigger .");
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //graphic = GraphicDatabase.Get(path, ShaderDatabase.Cutout, agr.graphic.drawSize, agr.graphic.color);
- graphic = agr.graphic;
- }
-
-
- ApparelGraphicRecord _Agr = new ApparelGraphicRecord(graphic, agr.sourceApparel);
-
- //_Agr.sourceApparel.
- newAgr.Add(_Agr);
-
-
- }
- __instance.apparelGraphics = newAgr;
- comp.breastSeverityCapToDraw = minSupportedBreastSeverity;
-
- if (SizedApparelSettings.useBodyTexture == true)
- {
- //Log.Message("useBodyTexture");
- if (__instance.nakedGraphic == null || __instance.rottingGraphic == null)
- {
- __instance.ResolveAllGraphics();
- return;
- }
- string nakedGraphicPath = __instance.nakedGraphic.path;
- //Log.Message("nakedGraphicPath");
- string rottingGraphicPath = __instance.rottingGraphic.path;
- //Log.Message("rottingGraphicPath");
-
- Graphic nakedGraphic;
- Graphic rottingGraphic;
- bool validNakedTexture = false;
- bool validRottingTexture = false;
- int offset = 0;
- if (SizedApparelSettings.DontReplaceBodyTextureOnNude == true && SizedApparelUtility.isPawnNaked(__instance.pawn))
- return;
- if (comp.hasUnsupportedApparel && SizedApparelSettings.useUnsupportedBodyTexture)
- {
- //Log.Message("hasUnsupportedApparel");
- // SetBodyGraphic(__instance, true);
- if (true)
- {
- if ((ContentFinder.Get((nakedGraphicPath + "_UnsupportedApparel" + "_south"), false) != null))
- {
- nakedGraphic = GraphicDatabase.Get(nakedGraphicPath + "_Unsupported", __instance.nakedGraphic.Shader, __instance.nakedGraphic.drawSize, __instance.nakedGraphic.color, __instance.nakedGraphic.colorTwo, __instance.nakedGraphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- __instance.nakedGraphic = nakedGraphic;
- }
- if ((ContentFinder.Get((rottingGraphicPath + "_UnsupportedApparel" + "_south"), false) != null))
- {
- rottingGraphic = GraphicDatabase.Get(rottingGraphicPath + "_UnsupportedApparel", __instance.rottingGraphic.Shader, __instance.rottingGraphic.drawSize, __instance.rottingGraphic.color, __instance.rottingGraphic.colorTwo, __instance.rottingGraphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- __instance.rottingGraphic = rottingGraphic;
- }
-
- }
- }
- else
- {
- while (offset < SizedApparelUtility.size.Length)
- {
- string breastSeverityStringCache = SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, true, ref currentBreastSizeIndex, ref currentBreastSeverity);
- //search bigger
- //SizedApparelSettings.matchBodyTextureToMinimumApparelSize? currentBreastSizeIndex <= minSupportedBreasSizeIndex:true
- if (validNakedTexture == false)
- {
- if ((ContentFinder.Get((nakedGraphicPath + breastSeverityStringCache + "_south"), false) != null))
- {
- if (SizedApparelSettings.matchBodyTextureToMinimumApparelSize ? currentBreastSizeIndex <= minSupportedBreastSizeIndex : true)
- {
- nakedGraphic = GraphicDatabase.Get(nakedGraphicPath + breastSeverityStringCache, __instance.nakedGraphic.Shader, __instance.nakedGraphic.drawSize, __instance.nakedGraphic.color, __instance.nakedGraphic.colorTwo, __instance.nakedGraphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- __instance.nakedGraphic = nakedGraphic;
- validNakedTexture = true;
- }
- }
- }
- if (validRottingTexture == false)
- {
- if ((ContentFinder.Get((rottingGraphicPath + breastSeverityStringCache + "_south"), false) != null))
- {
- if (SizedApparelSettings.matchBodyTextureToMinimumApparelSize ? currentBreastSizeIndex <= minSupportedBreastSizeIndex : true)
- {
- rottingGraphic = GraphicDatabase.Get(rottingGraphicPath + breastSeverityStringCache, __instance.rottingGraphic.Shader, __instance.rottingGraphic.drawSize, __instance.rottingGraphic.color, __instance.rottingGraphic.colorTwo, __instance.rottingGraphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- __instance.rottingGraphic = rottingGraphic;
- validRottingTexture = true;
- }
- }
- }
-
- //search smaller
-
- breastSeverityStringCache = SizedApparelUtility.BreastSeverityString(BreastSeverity, offset, false, ref currentBreastSizeIndex, ref currentBreastSeverity);
-
- if (validNakedTexture == false)
- {
- if ((ContentFinder.Get((nakedGraphicPath + breastSeverityStringCache + "_south"), false) != null))
- {
- if (SizedApparelSettings.matchBodyTextureToMinimumApparelSize ? currentBreastSizeIndex <= minSupportedBreastSizeIndex : true)
- {
- nakedGraphic = GraphicDatabase.Get(nakedGraphicPath + breastSeverityStringCache, __instance.nakedGraphic.Shader, __instance.nakedGraphic.drawSize, __instance.nakedGraphic.color, __instance.nakedGraphic.colorTwo, __instance.nakedGraphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- __instance.nakedGraphic = nakedGraphic;
- validNakedTexture = true;
- }
- }
- }
- if (validRottingTexture == false)
- {
- if ((ContentFinder.Get((rottingGraphicPath + breastSeverityStringCache + "_south"), false) != null))
- {
- if (SizedApparelSettings.matchBodyTextureToMinimumApparelSize ? currentBreastSizeIndex <= minSupportedBreastSizeIndex : true)
- {
- rottingGraphic = GraphicDatabase.Get(rottingGraphicPath + breastSeverityStringCache, __instance.rottingGraphic.Shader, __instance.rottingGraphic.drawSize, __instance.rottingGraphic.color, __instance.rottingGraphic.colorTwo, __instance.rottingGraphic.data);
- //newAgr.Add(new ApparelGraphicRecord(graphic, agr.sourceApparel));
- //validTexture = true;
- //Log.Message(path + BreastSeverityString(BreastSeverity, offset, !findBigger) + ":Texture Found");
- __instance.rottingGraphic = rottingGraphic;
- validRottingTexture = true;
- }
- }
- }
-
- if (validNakedTexture == true && validRottingTexture == true)
- break;
-
- offset++;
- }
- }
-
-
-
- }
- }
- //SetBodyGraphic(__instance, comp.hasUnsupportedApparel);
- }
-
-
- }
-
- return;
- }
-
- /*
- static void Prefix(ref PawnGraphicSet __instance)
- {
- if (!UnityData.IsInMainThread)
- return;
- if (__instance.pawn == null)
- return;
- var comp = __instance.pawn.GetComp();
- if (comp == null)
- return;
- comp.ClearAll();
- comp.Update();
- }*/
-
- static void oldPostfix(ref PawnGraphicSet __instance)
- {
- if (!UnityData.IsInMainThread)
- return;
- if (false&&SizedApparelSettings.useBodyTexture)//TODO
- {
- BodyPatch.SetBodyGraphic(__instance.pawn);
- }
- }
-
- }
-
@@ -1146,7 +604,7 @@ class GeneratePawnPatch
var comp = __instance.parent.GetComp();
if (comp == null)
return;
- comp.SetDirty();
+ comp.SetDirty(false,false,false); // should clear graphicSet....?
}
}
@@ -1243,21 +701,21 @@ class GeneratePawnPatch
if (SizedApparelSettings.drawBodyParts)
BodyPatch.SetBodyGraphic(__instance.pawn);
*/
- apparelRecorder.SetDirty();
+ apparelRecorder.SetDirty(false,false,false,true);
return;
}
if(addedOrRemovedGene.graphicData != null)
{
if(addedOrRemovedGene.graphicData.fur != null)
{
- apparelRecorder.SetDirty();
+ apparelRecorder.SetDirty(false,false,false,true);
return;
}
}
}
}
- //RimWorld 1.3
+ //RimWorld 1.3 , 1.4
[HarmonyPatch(typeof(PawnRenderer), "DrawPawnBody")]
public class DrawPawnBodyPatch
{
@@ -1417,17 +875,18 @@ class GeneratePawnPatch
if(comp.graphicbaseBodyCorpse != null)
sizedApparelBaseBodyMat = comp.graphicbaseBodyCorpse.MatAt(facing, null);
}
- else
+ else if(__instance.nakedGraphic != null && comp.graphicbaseBodyNaked != null)
{
bodyMat = __instance.nakedGraphic.MatAt(facing, null);
- if (comp.graphicbaseBodyNaked != null)
- sizedApparelBaseBodyMat = comp.graphicbaseBodyNaked.MatAt(facing, null);
+ sizedApparelBaseBodyMat = comp.graphicbaseBodyNaked.MatAt(facing, null);
}
break;
case RotDrawMode.Rotting:
- bodyMat = __instance.rottingGraphic.MatAt(facing, null);
- if (comp.graphicbaseBodyRotten != null)
+ if (__instance.rottingGraphic != null && comp.graphicbaseBodyRotten != null)
+ {
+ bodyMat = __instance.rottingGraphic.MatAt(facing, null);
sizedApparelBaseBodyMat = comp.graphicbaseBodyRotten.MatAt(facing, null);
+ }
break;
case RotDrawMode.Dessicated:
return;// //don't inject for Dessicated graphic. it doesn't need to patch for this
@@ -1469,13 +928,27 @@ class GeneratePawnPatch
var comp = ___pawn.GetComp();
float angle;
Vector3 v;
+ //angle = Quaternion.Angle(quat, Quaternion.AngleAxis(0, Vector3.up));
quat.ToAngleAxis(out angle, out v);
+ angle = angle * v.y; // Quaternion only gives 180 degree. but angle needs 360 degree
+
+ /*
+ //for more safe angle calculation, Not need till someone touched pawn's quaternion system. (for now, axis is fixed as Vector.up)
+ angle = angle * new Vector3(0, v.y, 0).normalized.y;
+ //
+
+ */
+
+ //Quaternion.Inverse(quat).ToAngleAxis(out angle, out v);
+ //angle = angle / 57.29578f;
+ //angle = Quaternion.Angle(Quaternion.AngleAxis(0, Vector3.up), quat);
Mesh mesh = HumanlikeMeshPoolUtility.GetHumanlikeBodySetForPawn(___pawn).MeshAt(facing);
Vector3 loc = shellLoc;
loc.y -= 0.009187258f; //rimworld 1.4 add 0.009187258f;
- comp.UpdateTickAnim(loc, angle);
+
+ comp.UpdateTickAnim(loc, angle);
comp.DrawAllBodyParts(loc, angle, facing, RotDrawMode.Fresh, flags, ___pawn, mesh);
}
}
@@ -1529,355 +1002,6 @@ class GeneratePawnPatch
- [Obsolete]
- public class DrawPawnPatch
- {
- public static void TryDrawBodyPart(ref PawnRenderer __instance,Graphic graphic,Graphic hornyGraphic, Vector3 rootLoc, Vector3 drawOffset, float angle, bool renderBody, Rot4 bodyFacing, Rot4 headFacing, RotDrawMode bodyDrawType, bool portrait, bool headStump, bool invisible)
- {
-
- }
-
-
-
- public static void RenderPawnInternalPrefix(ref PawnRenderer __instance, Vector3 rootLoc, float angle, bool renderBody, Rot4 bodyFacing, Rot4 headFacing, RotDrawMode bodyDrawType, bool portrait, bool headStump, bool invisible, Pawn ___pawn)
- {
- if (!__instance.graphics.AllResolved)
- {
- __instance.graphics.ResolveAllGraphics();
- }
-
- if (!SizedApparelSettings.drawBodyParts)
- return;
- if (___pawn == null)
- return;
- ApparelRecorderComp apparelRecorder = ___pawn.GetComp();
- if (apparelRecorder == null)
- return;
- if (!apparelRecorder.hasUpdateBefore || apparelRecorder.isDirty)
- {
- if (SizedApparelSettings.Debug)
- Log.Message("[SizedApparel] trying to draw " + ___pawn.Name + " with unupdated component! Updating it.");
- apparelRecorder.Update(true,false);
- SizedApparelUtility.UpdateAllApparel(___pawn);
- }
- if (apparelRecorder.needToCheckApparelGraphicRecords)
- {
- if(apparelRecorder.isApparelGraphicRecordChanged())
- {
- //apparelRecorder.Update(true, true); //1.3
- //SizedApparelUtility.UpdateAllApparel(___pawn, true);
- }
-
- }
- if (renderBody)
- {
- BodyPatch.SetBodyGraphic(___pawn,true, false);
- }
- }
-
- //Draw Private parts
- public static void RenderPawnInternalPostfix(ref PawnRenderer __instance, Vector3 rootLoc, float angle, bool renderBody, Rot4 bodyFacing, Rot4 headFacing, RotDrawMode bodyDrawType, bool portrait, bool headStump, bool invisible, Pawn ___pawn)
- {
-
-
- if (___pawn == null)
- return;
- ApparelRecorderComp apparelRecorder = ___pawn.GetComp();
- if (apparelRecorder == null)
- return;
- Quaternion quaternion = Quaternion.AngleAxis(angle, Vector3.up);
- Mesh mesh = null;
-
- if (!SizedApparelSettings.drawBodyParts)
- {
- /*
- if (SizedApparelPatch.rimNudeWorldActive && SizedApparelSettings.drawSizedApparelBreastsOnlyWorn && !SizedApparelUtility.isPawnNaked(___pawn))
- {
- //TODO
-
- if (__instance.graphics == null)
- return;
- if (bodyDrawType == RotDrawMode.Dessicated) //don't draw on skeletone
- return;
-
- if (___pawn.RaceProps.Humanlike)//this.pawn.RaceProps.Humanlike
- {
- mesh = MeshPool.humanlikeBodySet.MeshAt(bodyFacing);
- }
- else
- {
- mesh = __instance.graphics.nakedGraphic.MeshAt(bodyFacing);
- }
- string defName = __instance.graphics.pawn.def.defName;
-
-
- Vector3 loc = rootLoc;
- loc.y += 0.009183673f;
-
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.001f;//not sure what to do
- else
- vector.y += 0.012f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = apparelRecorder.graphicBreasts_horny;
- if (graphic == null)
- graphic = apparelRecorder.graphicBreasts;
- if (graphic != null)
- {
- Material breastMat = graphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(breastMat) : breastMat;
- breastMat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, breastMat, portrait);
- }
- }
- */
- return;
-
- }
-
- if (renderBody)
- {
- if (__instance.graphics == null)
- return;
- if (bodyDrawType == RotDrawMode.Dessicated) //don't draw on skeletone
- return;
-
- if (___pawn.RaceProps.Humanlike)//this.pawn.RaceProps.Humanlike
- {
- mesh = MeshPool.humanlikeBodySet.MeshAt(bodyFacing);
- }
- else
- {
- mesh = __instance.graphics.nakedGraphic.MeshAt(bodyFacing);
- }
- string defName = __instance.graphics.pawn.def.defName;
-
-
- Vector3 loc = rootLoc;
- loc.y += 0.009183673f;
-
-
- //breasts are only rendered when all of worn apparels are supported or nude.
- if (!apparelRecorder.hasUnsupportedApparel || SizedApparelUtility.isPawnNaked(___pawn)) //TODO : Move it to CanDraw
- {
- //string bodyPartPath = "SizedApparel/BodyParts";
- //string breastsPath;
-
- //Hediff breastHediff = apparelRecorder.breastHediff;
-
- //float breastHediffSeverityCap = apparelRecorder.breastSeverityCapToDraw;
- //string breastName = breastHediff.def.defName;//Todo
- //breastsPath = "SizedApparel/BodyParts/Breasts/Human/testBodyPart_Female";
- /*
- if ((ContentFinder.Get((breastsPath + "_south"), false) != null))
- {
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector = vector;
- else
- vector.y += 0.0092f;
- Graphic bodyPartGraphic = GraphicDatabase.Get(breastsPath, ShaderDatabase.Cutout);
- Material bodyPartMat = bodyPartGraphic.MatAt(bodyFacing, null);
- //bodyPartMat = __instance.OverrideMaterialIfNeeded_NewTemp(bodyPartMat, __instance.pawn, portrait);//private function and values //for damage mat or somthing more
- Material baseMat = (!portrait && pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(bodyPartMat) : bodyPartMat;
- bodyPartMat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, bodyPartMat, portrait);
- }
- else
- {
- if (SizedApparelSettings.Debug)
- Log.Warning("[Sized Apparel] Missing Breast Tesxture: " + breastsPath);
- //breastName = "Breasts";
- }
- */
- if(SizedApparelSettings.drawBreasts && (SizedApparelSettings.drawSizedApparelBreastsOnlyWorn ? !SizedApparelUtility.isPawnNaked(___pawn): true))
- {
- //Log.Message("DrawBreasts for " + ___pawn.Name);
- //if (SizedApparelSettings.Debug)
- // Log.Message("trying to draw breasts");
- //Draw Breasts. Allways draw
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.001f;//not sure what to do
- else
- vector.y += 0.012f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = apparelRecorder.graphicBreasts_horny;
- if(graphic == null)
- graphic = apparelRecorder.graphicBreasts;
-
- /*
- if(graphic == null)
- {
- apparelRecorder.Update();
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = apparelRecorder.graphicBreasts_horny;
- if (graphic == null)
- graphic = apparelRecorder.graphicBreasts;
- }*/
-
-
- if (graphic != null)
- {
- Material mat = graphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, mat, portrait);
- }
- else
- {
- //Log.Warning("[SizedApparel] Missing Breasts Graphic for: " + ___pawn.Name);
-
- }
-
-
- }
- if(SizedApparelSettings.drawVagina && SizedApparelUtility.CanDrawVagina(___pawn))
- {
- //Draw Vagina. AllwaysDraw
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.0100f;//not sure what to do
- else
- vector.y += 0.0100f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = apparelRecorder.graphicVagina_horny;
- if (graphic == null)
- graphic = apparelRecorder.graphicVagina;
- if (graphic != null)
- {
- Material mat = graphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, mat, portrait);
- }
- }
- if(SizedApparelSettings.drawAnus && SizedApparelUtility.CanDrawAnus(___pawn))
- {
- //Draw Anus. //Allways draw
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.0105f;//not sure what to do
- else
- vector.y += 0.010f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = apparelRecorder.graphicAnus_horny;
- if (graphic == null)
- graphic = apparelRecorder.graphicAnus;
- if (graphic != null)
- {
- Material mat = graphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, mat, portrait);
- }
- }
- if (SizedApparelSettings.drawUdder && SizedApparelUtility.CanDrawUdder(___pawn))
- {
- //Draw Udder. Need Complex Hiding Calculation ->
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.0015f;//not sure what to do
- else
- vector.y += 0.0095f;
- Graphic graphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- graphic = apparelRecorder.graphicUdder_horny;
- if (graphic == null)
- graphic = apparelRecorder.graphicUdder;
- if (graphic != null)
- {
- Material mat = graphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, mat, portrait);
- }
- }
- if(SizedApparelSettings.drawBelly && SizedApparelUtility.CanDrawBelly(___pawn))
- {
- //Draw Belly. Need Complex Hiding Calculation
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.0002f;//not sure what to do
- else
- vector.y += 0.0105f;
- Graphic graphic = apparelRecorder.graphicBelly;
- if (graphic != null)
- {
- Material mat = graphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector, quaternion, mat, portrait);
- }
- }
-
- //Rimworld 1.2 doesn't have PawnRenderFlags!
- if (SizedApparelSettings.drawPenis && SizedApparelUtility.CanDrawPenis(___pawn,PawnRenderFlags.None, false))
- {
- //Render Penis And Balls
- Vector3 vector = rootLoc;
- if (bodyFacing == Rot4.North)
- vector.y += 0.0025f;
- else
- vector.y += 0.015f;
-
- float offsetX = 0;
-
- for (int i = 0; i < apparelRecorder.graphicPenises.Count; i++)
- {
- float t = (i + 1f) / (apparelRecorder.graphicPenises.Count + 1);
- offsetX = Mathf.Lerp(-0.1f, 0.1f, t);
-
-
- Graphic penisGraphic = null;
- Graphic ballGraphic = null;
- if (SizedApparelUtility.IsHorny(___pawn))
- {
- penisGraphic = apparelRecorder.graphicPenises_horny[i];
- }
- if (penisGraphic == null)
- penisGraphic = apparelRecorder.graphicPenises[i];
- ballGraphic = apparelRecorder.graphicBallsOfPenises[i];//Balls Doesn't support HornyVariation
- if (penisGraphic != null)
- {
- //TODO: vector2.y
- Vector3 vector2 = vector;
- vector2.x += offsetX;
- Material mat = penisGraphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector2, quaternion, mat, portrait);
- }
- if (SizedApparelSettings.hideBallOfFuta)
- if (Genital_Helper.is_futa(___pawn))
- continue;//skip rendering ball
- if (ballGraphic != null)
- {
- //TODO: vector2.y
- Vector3 vector2 = vector;
- if (bodyFacing == Rot4.North)
- vector2.y += 0.0080f;
- else
- vector2.y -= 0.002f;
- vector2.x += offsetX;
- Material mat = ballGraphic.MatAt(bodyFacing, null);
- Material baseMat = (!portrait && ___pawn.IsInvisible()) ? InvisibilityMatPool.GetInvisibleMat(mat) : mat;
- mat = __instance.graphics.flasher.GetDamagedMat(baseMat);
- GenDraw.DrawMeshNowOrLater(mesh, vector2, quaternion, mat, portrait);
- }
- }
- }
-
- }
-
- }
- }
- }
}
diff --git a/source/SizedApparel/SizedApparelPubicHair.cs b/source/SizedApparel/SizedApparelPubicHair.cs
index 38a8ec3..a039c84 100644
--- a/source/SizedApparel/SizedApparelPubicHair.cs
+++ b/source/SizedApparel/SizedApparelPubicHair.cs
@@ -14,10 +14,13 @@ namespace SizedApparel
[HarmonyPatch(typeof(PawnGraphicSet), "CalculateHairMats")]
public static class CalculateHairMatsPatch
{
+ public static void Postfix()
+ {
+ }
}
- public abstract class PubicHairDef : StyleItemDef
+ public class PubicHairDef : StyleItemDef
{
}
diff --git a/source/SizedApparel/SizedApparelSettingcs.cs b/source/SizedApparel/SizedApparelSettingcs.cs
index e10c8a0..47baab2 100644
--- a/source/SizedApparel/SizedApparelSettingcs.cs
+++ b/source/SizedApparel/SizedApparelSettingcs.cs
@@ -16,7 +16,7 @@ namespace SizedApparel
{
public string raceName = null;
public bool overrideDef = false;
- public bool asHumanlike = true;
+ public bool asHuman = true;
public float drawMinAge = -1; //pawn's Biological age. -1 to ignore.
public AlienRaceSetting(string raceName)
@@ -32,7 +32,7 @@ namespace SizedApparel
{
Scribe_Values.Look(ref raceName, "raceName", null);
Scribe_Values.Look(ref overrideDef, "overrideDef", false);
- Scribe_Values.Look(ref asHumanlike, "asHumanlike", true);
+ Scribe_Values.Look(ref asHuman, "asHuman", true);
Scribe_Values.Look(ref drawMinAge, "drawMinAge", -1);
}
@@ -43,6 +43,7 @@ namespace SizedApparel
public class SizedApparelSettings : ModSettings
{
+
public static bool Debug = false;
public static bool DetailLog = false;
public static bool autoClearCacheOnWriteSetting = true;
@@ -65,9 +66,9 @@ namespace SizedApparel
//Apply Target Pawn Category
public static bool ApplyHumanlikes = true; //Always true.
- public static bool ApplyAnimals = false;
+ public static bool ApplyAnimals = true;
public static bool ApplyAnimalsPlayerFactionOnly = true; //TODO
- public static bool ApplyMechanoid = false;
+ public static bool ApplyMechanoid = true;
public static bool ApplyApparelPatchForMale = false; //only ApparelServerityWork.
@@ -90,6 +91,7 @@ namespace SizedApparel
public static bool drawAnus = true;
public static bool drawBelly = false;//TODO
public static bool drawUdder = false;//TODO
+ public static bool drawPubicHair = true;
public static bool hideBallOfFuta = false;
public static bool hidePenisOfMale = false;
public static bool matchBreastToSupportedApparelSize = true;//for avoiding breasts cliping
@@ -192,9 +194,9 @@ namespace SizedApparel
//Scribe_Values.Look(ref useBreastSizeCapForApparels, "useBreastSizeCapForApparels", true);
//Apply Categories.
- Scribe_Values.Look(ref ApplyAnimals, "ApplyAnimals", false);
+ Scribe_Values.Look(ref ApplyAnimals, "ApplyAnimals", true);
Scribe_Values.Look(ref ApplyHumanlikes, "ApplyHumanlikes", true);
- Scribe_Values.Look(ref ApplyMechanoid, "ApplyMechanoid", false);
+ Scribe_Values.Look(ref ApplyMechanoid, "ApplyMechanoid", true);
Scribe_Values.Look(ref AnimationPatch, "AnimationPatch", true);
@@ -245,6 +247,7 @@ namespace SizedApparel
Scribe_Values.Look(ref drawAnus, "drawAnus", true);
Scribe_Values.Look(ref drawUdder, "drawUdder", true);
Scribe_Values.Look(ref drawBelly, "drawBelly", true);
+ Scribe_Values.Look(ref drawPubicHair, "drawPubicHair", true);
//force to draw all size type
@@ -269,7 +272,7 @@ namespace SizedApparel
//Scribe_Values.Look(ref alienRacesAllowHumanlikTextures, "alienRacesAllowHumanlikTextures");
//BreastsPhysics
- //Scribe_Values.Look(ref breastsPhysics, "breastsPhysics", false);
+ Scribe_Values.Look(ref breastsPhysics, "breastsPhysics", false);
base.ExposeData();
@@ -311,6 +314,7 @@ namespace SizedApparel
public static void ClearCache(bool clearPawnGraphicSet = true)
{
SizedApparelsDatabase.ClearAll();
+
if (Find.CurrentMap != null)
{
foreach (Pawn pawn in Find.CurrentMap.mapPawns.AllPawns)
@@ -319,11 +323,18 @@ namespace SizedApparel
continue;
var comp = pawn.GetComp();
if (comp != null)
- comp.SetDirty(clearPawnGraphicSet);
+ {
+ comp.UpdateRaceSettingData();
+ comp.SetDirty(clearPawnGraphicSet,true,true,true);
+ }
+
}
}
}
+
+
+
public SizedApparelMod(ModContentPack content) : base(content)
{
this.settings = GetSettings();
@@ -506,7 +517,7 @@ namespace SizedApparel
SizedApparelSettings.alienRaceSettings.Add(raceSetting);
}
- Race_ListingStandard.CheckboxLabeled("If Unsupported, Use Humanlike", ref raceSetting.asHumanlike, "This Race will use Humanlike if it doesn't have own textures. useful for race that Unsupported but simillar to human");
+ Race_ListingStandard.CheckboxLabeled("If Unsupported, As Human race", ref raceSetting.asHuman, "This Race will use Human race if it doesn't have own textures. useful for race that Unsupported but simillar to human");
Race_ListingStandard.Label((raceSetting.drawMinAge <= 100 ? "" : "[overdrive]") + "SA BodyPart Draw Min Age: " + raceSetting.drawMinAge.ToString(), -1, "Lower than this age will not use Sized Apparel. Useful for BnC. -1 for disable");
raceSetting.drawMinAge = Mathf.Round(Race_ListingStandard.Slider(raceSetting.drawMinAge, raceSetting.drawMinAge <= 100 ? -1: 100, raceSetting.drawMinAge >= 100 ? 1000 : 100));
Race_ListingStandard.Gap();
@@ -537,6 +548,7 @@ namespace SizedApparel
SizedApparelSettings.drawVagina = false;
SizedApparelSettings.drawAnus = false;
SizedApparelSettings.drawBelly = false;
+ SizedApparelSettings.drawPubicHair = false;
}
@@ -565,6 +577,7 @@ namespace SizedApparel
SizedApparelSettings.drawVagina = true;
SizedApparelSettings.drawAnus = true;
SizedApparelSettings.drawBelly = true;
+ SizedApparelSettings.drawPubicHair = true;
}
}
listingStandard.Gap(8);
@@ -604,30 +617,30 @@ namespace SizedApparel
listingStandard.Label("Body Part Render Option (wip)",-1,"standalone BodyPart Render System from this mod. It's for user who don't use RimNudeWorld\nIf you use RimNudeWorld, you should turn off this.");
listingStandard.CheckboxLabeled("Use Gender Specific Textures.", ref SizedApparelSettings.useGenderSpecificTexture,"Use Gender Specific texture for body and apparel if it's valid. \nDefault: true");
- listingStandard.GapLine(1);
+ listingStandard.GapLine(5);
listingStandard.CheckboxLabeled("Draw Body Parts", ref SizedApparelSettings.drawBodyParts, "Draw Breasts..etc. when the pawn is wearing supported apparels. \nDefault: true");
if (SizedApparelSettings.drawBodyParts)
{
- listingStandard.CheckboxLabeled(" Use (Sized Apparel) Body Texture", ref SizedApparelSettings.useBodyTexture, "change pawn's body texture when the pawn is wearing supported apparels. Recommanded\nDefault: true");
+ listingStandard.CheckboxLabeled(" Use (Sized Apparel) Base Body Texture", ref SizedApparelSettings.useBodyTexture, "change pawn's body texture when the pawn is wearing supported apparels. Recommanded\nDefault: true");
+ //listingStandard.CheckboxLabeled(" Draw Muscle Overlay (wip)", ref SizedApparelSettings.drawMuscleOverlay, "\nDisable this option when you use RimNudeWorld");
-
- listingStandard.CheckboxLabeled(" Draw Muscle Overlay (wip)", ref SizedApparelSettings.drawMuscleOverlay, "\nDisable this option when you use RimNudeWorld");
-
- listingStandard.CheckboxLabeled(" Draw Breasts", ref SizedApparelSettings.drawBreasts, "this option is why this mod exist.\nDefault: true");
+ listingStandard.CheckboxLabeled(" Draw Breasts", ref SizedApparelSettings.drawBreasts, "this option is why this mod exist.\nDefault: true");
if (SizedApparelSettings.drawBreasts)
{
- listingStandard.CheckboxLabeled(" Match Breasts size to supported apparels",ref SizedApparelSettings.matchBreastToSupportedApparelSize, "to avoid breasts clipping(when breasts are bigger), you need this option.\nDefault: true");
- listingStandard.CheckboxLabeled(" draw Breasts on worn pawn only (RimNudeWorld)", ref SizedApparelSettings.drawSizedApparelBreastsOnlyWorn, "when the pawn is nude, the breasts graphic for sized apparel will be hidden. \nDefault: false" );
- //listingStandard.CheckboxLabeled(" (Wip) Breasts Physics", ref SizedApparelSettings.breastsPhysics, "Breasts can be jiggled from animations. It may be heavy for performance. \ndefault = false");
+ listingStandard.CheckboxLabeled(" Match Breasts size to supported apparels",ref SizedApparelSettings.matchBreastToSupportedApparelSize, "to avoid breasts clipping(when breasts are bigger), you need this option.\nDefault: true");
+ listingStandard.CheckboxLabeled(" draw Breasts on worn pawn only (RimNudeWorld)", ref SizedApparelSettings.drawSizedApparelBreastsOnlyWorn, "when the pawn is nude, the breasts graphic for sized apparel will be hidden. \nDefault: false" );
+ listingStandard.CheckboxLabeled(" (Wip) Breasts Physics", ref SizedApparelSettings.breastsPhysics, "Breasts can be jiggled (for now. it works when nude only). It may be heavy for performance. \n Won't work with RimNudeWorld Breasts Rendering. \ndefault = false");
}
- listingStandard.CheckboxLabeled(" Draw Penis", ref SizedApparelSettings.drawPenis,"Disable this option when you use RimNudeWorld");
- listingStandard.CheckboxLabeled(" Draw Vagina", ref SizedApparelSettings.drawVagina, "Disable this option when you use RimNudeWorld");
- listingStandard.CheckboxLabeled(" Draw Anus", ref SizedApparelSettings.drawAnus, "Disable this option when you use RimNudeWorld");
- listingStandard.CheckboxLabeled(" Draw Belly Buldge", ref SizedApparelSettings.drawBelly, "Disable this option when you use RimNudeWorld");
+ listingStandard.CheckboxLabeled(" Draw Penis", ref SizedApparelSettings.drawPenis,"Disable this option when you use RimNudeWorld");
+ listingStandard.CheckboxLabeled(" Draw Vagina", ref SizedApparelSettings.drawVagina, "Disable this option when you use RimNudeWorld");
+ listingStandard.CheckboxLabeled(" Draw Anus", ref SizedApparelSettings.drawAnus, "Disable this option when you use RimNudeWorld");
+ listingStandard.CheckboxLabeled(" Draw Belly Buldge", ref SizedApparelSettings.drawBelly, "Disable this option when you use RimNudeWorld");
- listingStandard.CheckboxLabeled(" Hide Balls of Futa", ref SizedApparelSettings.hideBallOfFuta, "Hide Balls from penis of Futa.\nDefault: false");
- listingStandard.CheckboxLabeled(" Hide Penis of Man(Not Work yet)", ref SizedApparelSettings.hidePenisOfMale, "this option is for someone who really hate to see male's dick around.\nDefault: false");
+ listingStandard.CheckboxLabeled(" Draw Pubic Hair", ref SizedApparelSettings.drawPubicHair, "Disable this option when you use RimNudeWorld");
+
+ listingStandard.CheckboxLabeled(" Hide Balls of Futa", ref SizedApparelSettings.hideBallOfFuta, "Hide Balls from penis of Futa.\nDefault: false");
+ listingStandard.CheckboxLabeled(" Hide Penis of Man(Not Work yet)", ref SizedApparelSettings.hidePenisOfMale, "this option is for someone who really hate to see male's dick around.\nDefault: false");
//listingStandard.Gap();
//listingStandard.CheckboxLabeled(" Use Body Part Variation", ref SizedApparelSettings.useBodyPartsVariation, "Use graphic variation such as inverted nipple.\nDefault: true");
diff --git a/source/SizedApparel/SizedApparelStyleStationPatch.cs b/source/SizedApparel/SizedApparelStyleStationPatch.cs
index 8e82e3f..278a09e 100644
--- a/source/SizedApparel/SizedApparelStyleStationPatch.cs
+++ b/source/SizedApparel/SizedApparelStyleStationPatch.cs
@@ -5,6 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using RimWorld;
using Verse;
+using Verse.Sound;
using HarmonyLib;
using UnityEngine;
using rjw;
@@ -13,18 +14,37 @@ using System.Reflection.Emit;
namespace SizedApparel
{
- //TODO...?
- //[HarmonyPatch(typeof(Dialog_StylingStation), "DrawTabs")]
+
+ [HarmonyPatch(typeof(Dialog_StylingStation), "DrawTabs")]
public class SizedApparelStyleStationDrawTabsPatch
{
- public static void Postfix(Rect rect, ref Vector2 ___hairScrollPosition, Dialog_StylingStation __instance, List ___tabs, Dialog_StylingStation.StylingTab ___curTab, float ___viewRectHeight, List ___tmpStyleItems, bool ___devEditMode, Pawn ___pawn)
+ public static void Postfix(Rect rect, ref Vector2 ___hairScrollPosition, Dialog_StylingStation __instance, List ___tabs, Dialog_StylingStation.StylingTab ___curTab, float ___viewRectHeight, ref List ___tmpStyleItems, bool ___devEditMode, Pawn ___pawn, float ___colorsHeight, Color ___desiredHairColor)
{
+ if (!SizedApparelSettings.drawPubicHair)
+ return;
+
+
+ //Widgets.DrawMenuSection(rect);
+ //TabDrawer.DrawTabs(rect, ___tabs, 200f);
+ //rect = rect.ContractedBy(18f);
switch (___curTab)
{
case (Dialog_StylingStation.StylingTab)24:
//Draw PubicHair Tab Code here!
+ //rect.yMax -= ___colorsHeight;
+ DrawStylingTypePubicHair(ref __instance, ref ___viewRectHeight, ref ___tmpStyleItems, ___devEditMode, ___pawn, ___colorsHeight, ___desiredHairColor, rect, ref ___hairScrollPosition, delegate (Rect r, PubicHairDef h)
+ {
+ GUI.color = ___desiredHairColor;
+ Widgets.DefIcon(r, h, null, 1.25f, null, false, null, null, null);
+ //Widgets.DrawTextureFitted(r, h.Icon, 1.25f, null);
+ GUI.color = Color.white;
+ }, delegate (PubicHairDef h)
+ {
+ ___pawn.GetComp().pubicHairDef = h;
+ //___pawn.story.hairDef = h;
+ }, (StyleItemDef h) => ___pawn.GetComp().pubicHairDef == h, (StyleItemDef h) => ___pawn.GetComp().initialPubicHairDef == h, null, false);
return;
default:
@@ -32,13 +52,159 @@ namespace SizedApparel
}
}
- static void DrawStylingTypePubicHair(Dialog_StylingStation dialog_StylingStation, Rect rect)
+ //Some Copy Code from Rimnudeworld
+ //maybe Some Var has to be ref
+ static void DrawStylingTypePubicHair(ref Dialog_StylingStation dialog_StylingStation, ref float viewRectHeight, ref List tmpStyleItems, bool devEditMode, Pawn pawn, float colorsHeight, Color desiredHairColor, Rect rect, ref Vector2 scrollPosition, Action drawAction, Action selectAction, Func hasStyleItem, Func hadStyleItem, Func extraValidator = null, bool doColors = false)
{
+ //Color desiredHairColor = AccessTools.FieldRefAccess(dialog_StylingStation, "desiredHairColor");
+
+ int total_pubes_count = 0;
+ total_pubes_count = DefDatabase.AllDefs.Count();
+
+ //need child patch?
+ if (total_pubes_count <= 0)
+ {
+ Widgets.NoneLabelCenteredVertically(rect, "(" + "NoneUsableForPawn".Translate(pawn.Named("PAWN")) + ")");
+ return;
+ }
+
+ ApparelRecorderComp comp = pawn.GetComp();
+
+
+
+ Rect viewRect = new Rect(rect.x, rect.y, rect.width - 16f, viewRectHeight);
+ int num = Mathf.FloorToInt(viewRect.width / 60f) - 1;
+ float num2 = (viewRect.width - (float)num * 60f - (float)(num - 1) * 10f) / 2f;
+ int num3 = 0;
+ int num4 = 0;
+ int num5 = 0;
+ tmpStyleItems.Clear();
+ /*
+ tmpStyleItems.AddRange(from x in DefDatabase.AllDefs
+ where (devEditMode || PawnStyleItemChooser.WantsToUseStyle(pawn, x, null) || hadStyleItem(x)) && (extraValidator == null || extraValidator(x))
+ select x);*/
+ tmpStyleItems.AddRange(DefDatabase.AllDefs);// just add All Pubic Hair def.
+
+ tmpStyleItems.SortBy((StyleItemDef x) => -PawnStyleItemChooser.StyleItemChoiceLikelihoodFor(x, pawn));
+ if (tmpStyleItems.NullOrEmpty())
+ {
+ Widgets.NoneLabelCenteredVertically(rect, "(" + "NoneUsableForPawn".Translate(pawn.Named("PAWN")) + ")");
+ }
+ else
+ {
+ Widgets.BeginScrollView(rect, ref scrollPosition, viewRect, true);
+ foreach (StyleItemDef styleItemDef in tmpStyleItems)
+ {
+ if (num5 >= num - 1)
+ {
+ num5 = 0;
+ num4++;
+ }
+ else if (num3 > 0)
+ {
+ num5++;
+ }
+ Rect rect2 = new Rect(rect.x + num2 + (float)num5 * 60f + (float)num5 * 10f, rect.y + (float)num4 * 60f + (float)num4 * 10f, 60f, 60f);
+ Widgets.DrawHighlight(rect2);
+ if (Mouse.IsOver(rect2))
+ {
+ Widgets.DrawHighlight(rect2);
+ TooltipHandler.TipRegion(rect2, styleItemDef.LabelCap);
+ }
+ if (drawAction != null)
+ {
+ drawAction(rect2, styleItemDef as PubicHairDef);
+ }
+ if (hasStyleItem(styleItemDef))
+ {
+ Widgets.DrawBox(rect2, 2, null);
+ }
+ if (Widgets.ButtonInvisible(rect2, true))
+ {
+ if (selectAction != null)
+ {
+ selectAction(styleItemDef as PubicHairDef);
+ }
+ SoundDefOf.Tick_High.PlayOneShotOnCamera(null);
+ pawn.Drawer.renderer.graphics.SetAllGraphicsDirty();
+ PortraitsCache.SetDirty(pawn);
+ }
+ num3++;
+ }
+ if (Event.current.type == EventType.Layout)
+ {
+ viewRectHeight = (float)(num4 + 1) * 60f + (float)num4 * 10f + 10f;
+ }
+ Widgets.EndScrollView();
+ }
+ if (doColors)
+ {
+ //dialog_StylingStation.DrawHairColors(new Rect(rect.x, rect.yMax + 10f, rect.width, dialog_StylingStation.colorsHeight));
+
+ //Copy From RimnudeWorld
+ Rect newrect = new Rect(rect.x, rect.yMax - 10f, rect.width, colorsHeight);
+
+ Color _desiredHairColor = desiredHairColor;
+
+ float numC = newrect.y;
+ float height;
+ Widgets.ColorSelector(new Rect(newrect.x, numC, newrect.width, 92f), ref _desiredHairColor, AllHairColors, out height, null, 22, 2);
+ if (_desiredHairColor != desiredHairColor)
+ {
+ var desiredHairColor_ = dialog_StylingStation.GetType().GetField("desiredHairColor", System.Reflection.BindingFlags.NonPublic
+ | System.Reflection.BindingFlags.Instance);
+ desiredHairColor_.SetValue(dialog_StylingStation, _desiredHairColor);
+ }
+ numC += 60f;
+ if (desiredHairColor != pawn.story.HairColor && desiredHairColor != pawn.style.nextHairColor)
+ {
+ Widgets.ThingIcon(new Rect(newrect.x, numC, Text.LineHeight, Text.LineHeight), ThingDefOf.Dye, null, null, 1.1f, null);
+ string text = "Required".Translate() + ": 1 " + ThingDefOf.Dye.label;
+ float x = Text.CalcSize(text).x;
+ Widgets.Label(new Rect(newrect.x + Text.LineHeight + 4f, numC, x, Text.LineHeight), text);
+ Rect rect2 = new Rect(newrect.x, numC, x + Text.LineHeight + 8f, Text.LineHeight);
+ if (Mouse.IsOver(rect2))
+ {
+ Widgets.DrawHighlight(rect2);
+ TooltipHandler.TipRegionByKey(rect2, "TooltipDyeExplanation");
+ }
+ numC += Text.LineHeight;
+
+ if (pawn.Map.resourceCounter.GetCount(ThingDefOf.Dye) < 1)
+ {
+ rect2 = new Rect(newrect.x, numC, newrect.width, Text.LineHeight);
+ Color color = GUI.color;
+ GUI.color = ColorLibrary.RedReadable;
+ Widgets.Label(rect2, "NotEnoughDye".Translate() + " " + "NotEnoughDyeWillRecolorHair".Translate());
+ GUI.color = color;
+ numC += rect2.height;
+ }
+ }
+ }
+
}
+ private static List allHairColors;
+ private static List AllHairColors
+ {
+ get
+ {
+ if (allHairColors == null)
+ {
+ allHairColors = (from ic in DefDatabase.AllDefsListForReading
+ select ic.color).ToList();
+ allHairColors.SortByColor((Color x) => x);
+ }
+ return allHairColors;
+ }
+ }
+
static void AddPubicHairTab(Dialog_StylingStation stylingStation, List tabs)
{
+ if (!SizedApparelSettings.drawPubicHair)
+ return;
+
var curTabField = AccessTools.Field(typeof(Dialog_StylingStation), "curTab");
tabs.Add(new TabRecord("PubicHair".Translate().CapitalizeFirst(), delegate ()
{
@@ -98,5 +264,30 @@ namespace SizedApparel
yield break;
}
}
+
+ [HarmonyPatch(typeof(Dialog_StylingStation), "Reset")]
+ public class SizedApparelStyleStationResetPatch
+ {
+ public static void Prefix(Pawn ___pawn)
+ {
+ ApparelRecorderComp comp = ___pawn.GetComp();
+
+ //this.pawn.story.hairDef = this.initialHairDef;
+ comp.pubicHairDef = comp.initialPubicHairDef;
+ comp.initialPubicHairDef = null;
+ }
+ }
+
+ //Patching Constructors
+ [HarmonyPatch(typeof(Dialog_StylingStation), MethodType.Constructor, new Type[] { typeof(Pawn), typeof(Thing) })]
+ public class SizedApparelDialogStylingStationPatch
+ {
+ public static void Postfix(Pawn pawn)
+ {
+ var comp = pawn.GetComp();
+ comp.initialPubicHairDef = comp.pubicHairDef;
+ }
+ }
+
}
diff --git a/source/SizedApparel/SizedApparelTexturePointDef.cs b/source/SizedApparel/SizedApparelTexturePointDef.cs
new file mode 100644
index 0000000..f36b5b1
--- /dev/null
+++ b/source/SizedApparel/SizedApparelTexturePointDef.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Verse;
+
+namespace SizedApparel
+{
+ //Consider Graphic and Graphic_Multi(Graphic with Facing such as south)
+ public class SizedApparelTexturePointDef : Def
+ {
+ //Path must be texture file name with path
+ //Path example: "Things/Pawn/Humanlike/Bodies/Naked_Female_BaseBody"
+ //Facing Text such as "_south" must not be included.
+ //Use "/" instead of "\"
+
+ public string Path;
+
+ public List SouthBodyPartPoints = new List();
+ public List NorthBodyPartPoints = new List();
+ public List EastBodyPartPoints = new List();
+
+ //can be null. then use EastBodyPartPoints
+ public List WestBodyPartPoints = new List();
+
+
+
+ }
+}
diff --git a/source/SizedApparel/SizedApparelUtility.cs b/source/SizedApparel/SizedApparelUtility.cs
index d5375bc..bc36079 100644
--- a/source/SizedApparel/SizedApparelUtility.cs
+++ b/source/SizedApparel/SizedApparelUtility.cs
@@ -32,13 +32,15 @@ namespace SizedApparel
static string Tiny = "_1";
static string Nipples = "_0";
//static String[] size = new string[10] { "_0", "_1", "_2", "_3", "_4", "_5" , "_6", "_7", "_8", "_9"};
- public static string[] size = new string[11] { Nipples, Tiny, Small, Average, Large, Huge, Enormous, Massive, Gargantuan, Colossal, Titanic };
+ public static string[] breastsSizeStrings = new string[11] { Nipples, Tiny, Small, Average, Large, Huge, Enormous, Massive, Gargantuan, Colossal, Titanic };
+ public static string[] commonSizeStrings = new string[6] { Nipples, Tiny, Small, Average, Large, Huge};
+ [Obsolete]
public static int findAvailableSmallerSizeFromSetting(int current)
{
int target = current;
- target = Math.Min(target, size.Length - 1);
+ target = Math.Min(target, breastsSizeStrings.Length - 1);
while (target > 0)
{
if (SizedApparelSettings.getUseSettingFromIndex(target) == false)
@@ -48,21 +50,23 @@ namespace SizedApparel
}
return target;
}
+ [Obsolete]
public static int findAvailableBiggerSizeFromSetting(int current)
{
int target = current;
- while (target < size.Length)
+ while (target < breastsSizeStrings.Length)
{
if (SizedApparelSettings.getUseSettingFromIndex(target) == false)
target++;
else
break;
}
- target = Math.Min(target, size.Length - 1);
+ target = Math.Min(target, breastsSizeStrings.Length - 1);
return target;
}
+ [Obsolete]
public static int findAvailableSizeFromSetting(int current, bool findBigger)
{
if (findBigger)
@@ -195,14 +199,14 @@ namespace SizedApparel
int offset = 0;
-
+ //int offsetLimit = 10;
bool validTexture = false;
Graphic graphic = null;
bool findBigger = true; // if false : search smaller first
string pathString = "";
- while (offset < SizedApparelUtility.size.Length)
+ while (offset < SizedApparelUtility.breastsSizeStrings.Length)
{
if (breastHediffName != null)
{
@@ -281,7 +285,7 @@ namespace SizedApparel
if (validTexture == false)
{
offset = 0;
- while (offset < SizedApparelUtility.size.Length)
+ while (offset < SizedApparelUtility.breastsSizeStrings.Length)
{
if (breastHediffName != null)
{
@@ -393,13 +397,6 @@ namespace SizedApparel
}
- [Obsolete]
- public static SizedApparelBodyPartDef TryGetSizedApparelBodyPart(string bodyPartName)
- {
- return null;
- }
-
-
public static bool isPragnencyHediff(Hediff h)
{
return h.def.defName.ToLower().Contains("pregnancy");
@@ -486,7 +483,7 @@ namespace SizedApparel
else
defName = customDefName;
- string bodyPartsFolderPath = "SizedApparel/BodyParts/";
+ const string bodyPartsFolderPath = "SizedApparel/BodyParts/";
string defaultHediffName = "Breasts";
string graphicFolderPath = bodyPartsFolderPath + defName + "/" + "Breasts" + "/";
string fileName;
@@ -519,7 +516,7 @@ namespace SizedApparel
string pathString = "";
int currentSizeIndex = -1;
float currentSeverity = -1;
- while (offset < SizedApparelUtility.size.Length)
+ while (offset < SizedApparelUtility.breastsSizeStrings.Length)
{
if (hediff != null)
{
@@ -557,7 +554,7 @@ namespace SizedApparel
if (validTexture == false)
{
offset = 0;
- while (offset < SizedApparelUtility.size.Length)
+ while (offset < SizedApparelUtility.breastsSizeStrings.Length)
{
if (hediff != null)
{
@@ -617,7 +614,7 @@ namespace SizedApparel
defName = customRaceDefName;
string bodyType = bodyTypeName;
- string bodyPartsFolderPath = "SizedApparel/BodyParts/";
+ const string bodyPartsFolderPath = "SizedApparel/BodyParts/";
string graphicFolderPath;
string targetFolderName = folderName;
if (hornyGraphic)
@@ -667,20 +664,29 @@ namespace SizedApparel
int offset = 0;
+ int offsetLimit = 10 ; // = SizedApparelUtility.breastsSizeStrings.Length;
+
+
float SeverityCapped;
if (isBreast)
+ {
SeverityCapped = SizedApparelUtility.BreastSizeIndexToSeverity(sizeIndex);
+ offsetLimit = SizedApparelUtility.breastsSizeStrings.Length;
+ }
else
+ {
SeverityCapped = SizedApparelUtility.PrivatePartSizeIndexToSeverity(sizeIndex);
+ offsetLimit = SizedApparelUtility.commonSizeStrings.Length;
+ }
bool validTexture = false;
bool findBigger = true; // if false : search smaller first
string pathString = "";
string pathStringWithVariatione = "";
- while (offset < SizedApparelUtility.size.Length)
+ while (offset < offsetLimit)
{
if (hediffDefName != null)
{
@@ -777,7 +783,7 @@ namespace SizedApparel
if (validTexture == false)
{
offset = 0;
- while (offset < SizedApparelUtility.size.Length)
+ while (offset < offsetLimit)
{
if (hediffDefName != null)
{
@@ -903,134 +909,17 @@ namespace SizedApparel
return graphic;
}
- /*
- public static Graphic GetBodyPartGraphic(Pawn pawn, Hediff hediff, bool isBreast, string folderName, string defaultHediffName, bool hornyGraphic = false, bool updateComp = false, string customRaceDefName = null)
+
+
+ public static PubicHairDef GetRandomPubicHair()
{
- int i = -1;
- string s = null;
- return GetBodyPartGraphic(pawn, hediff, isBreast, folderName, defaultHediffName, out i,out s, hornyGraphic, updateComp, customRaceDefName);
+ return DefDatabase.GetRandom();
+ }
+ public static PubicHairDef GetPubicHairEmpty()
+ {
+ return DefDatabase.GetNamed("None");
}
- public static Graphic GetBodyPartGraphic(Pawn pawn, Hediff hediff, bool isBreast, string folderName, string defaultHediffName, out int indexOut,out string hediffResult, bool hornyGraphic = false, bool updateComp = false, string customRaceDefName = null)
- {
- Graphic graphic = null; //for return
- indexOut = -1;
- hediffResult = null;
- if (pawn == null)
- return null;
- if (hediff == null)
- return null;
- //rec = new ApparelGraphicRecord(null, null);
- Graphic nakedGraphic = pawn.Drawer?.renderer?.graphics?.nakedGraphic;
- if (nakedGraphic == null)
- return null;
- var rotComp = pawn.GetComp();
- if (rotComp!=null)
- {
- if (rotComp.Stage == RotStage.Rotting)
- nakedGraphic = pawn.Drawer.renderer.graphics.rottingGraphic;
- }
-
- ApparelRecorderComp comp = pawn.GetComp();
- string defName = pawn.def.defName;
- if (customRaceDefName != null)
- defName = customRaceDefName;
- string bodyType = null;
- if (pawn.story != null)
- bodyType = pawn.story.bodyType?.defName;
- string bodyPartsFolderPath = "SizedApparel/BodyParts/";
- string graphicFolderPath;
- if (hornyGraphic)
- graphicFolderPath = bodyPartsFolderPath + defName + "/" + folderName + "/Horny/";
- else
- graphicFolderPath = bodyPartsFolderPath + defName + "/" + folderName + "/";
- string fileName;
- string extraFileName;
- if(bodyType != null)
- {
- fileName = defaultHediffName + ("_" + bodyType);
- extraFileName = hediff.def.defName + ("_" + bodyType);
- }
- else
- {
- fileName = defaultHediffName;
- extraFileName = hediff.def.defName;
- }
-
- //if (SizedApparelSettings.matchBodyTextureToMinimumApparelSize)
- // BreastSeverity = comp.BreastSeverityCache;
- //int currentSizeIndex = 0;
- //float currentSeverity = -1;
- //int minSupportedBreastSizeIndex = 1000;
- //float minSupportedBreastSeverity = 1000;
-
- //SizedApparelUtility.GetBreastSeverity(apparel.Wearer, out BreastSeverity, out breastHediff);
- if (comp != null)
- {
-
- if (comp.hasUpdateBefore == false)
- {
- if (updateComp)
- {
- //SizedApparelUtility.GetBreastSeverity(apparel.Wearer, out BreastSeverity, out breastHediff);
- //comp.hasUnsupportedApparel = SizedApparelUtility.hasUnSupportedApparelFromWornData(apparel.Wearer, BreastSeverity, breastHediff);
- //comp.breastSeverity = BreastSeverity;
- //comp.breastHediff = breastHediff;
- //comp.hasUpdateBefore = true;
- //comp.Update(true,true,false);
- }
-
- }
- float SeverityCapped = hediff.Severity; ;
- if (isBreast)
- {
- if (SizedApparelSettings.useBreastSizeCapForApparels) //SizedApparelSettings.useBreastSizeCapForApparels //wip
- SeverityCapped = Math.Min(comp.BreastSeverityCache, SeverityCapped);
- }
-
-
-
-
-
- if (comp.hasUnsupportedApparel == false)
- {
- int index;
- if (isBreast)
- index = SizedApparelUtility.BreastSeverityInt(hediff.Severity);
- else
- index = SizedApparelUtility.PrivatePartSeverityInt(hediff.Severity);
-
- Graphic partGraphic = GetBodyPartGraphic(pawn.def.defName, pawn.story?.bodyType?.defName, hediff.def.defName, hornyGraphic, index, folderName, defaultHediffName,out indexOut, out hediffResult, hornyGraphic, customRaceDefName);
- if(partGraphic != null)
- {
- graphic = GraphicDatabase.Get(partGraphic.path, nakedGraphic.Shader, nakedGraphic.drawSize, nakedGraphic.color, nakedGraphic.colorTwo);
- }
-
-
-
-
-
-
- //minSupportedBreastSizeIndex = Math.Min(currentBreastSizeIndex, minSupportedBreastSizeIndex);
- //comp.breastSeverityCapToDraw = Math.Min(comp.breastSeverityCapToDraw, minSupportedBreastSeverity);
- }
- }
-
- else
- {
- if (SizedApparelSettings.Debug)
- Log.Warning("[Sized Apparel] " + pawn.Name + " doesn't have SizedApparel Compoenet!!");
-
- }
- return graphic;
-
- }*/
-
- //TODO
- public static Graphic GetBodyGraphic()
- {
- return null;
- }
public static bool IsHorny(Pawn pawn)
{
@@ -1280,7 +1169,7 @@ namespace SizedApparel
if (findBigger)
{
- if (size.Length - (targetIndex + offset) > 0)
+ if (breastsSizeStrings.Length - (targetIndex + offset) > 0)
{
//size.Length< targetIndex + offset
@@ -1294,14 +1183,14 @@ namespace SizedApparel
//targetSeverity = BreastSizeIndexToSeverity(result);
targetSeverity = PrivatePartSizeIndexToSeverity(result);
outTargetSeverity = targetSeverity;
- return size[result];
+ return breastsSizeStrings[result];
}
}
else
{
if (targetIndex - offset < 0)
return "_-1";
- if (size.Length - (targetIndex - offset) > 0)
+ if (breastsSizeStrings.Length - (targetIndex - offset) > 0)
{
/*
if (size[targetIndex - offset] != null)
@@ -1313,7 +1202,7 @@ namespace SizedApparel
//targetSeverity = BreastSizeIndexToSeverity(result);
targetSeverity = PrivatePartSizeIndexToSeverity(result);
outTargetSeverity = targetSeverity;
- return size[result];
+ return breastsSizeStrings[result];
}
}
}
@@ -1345,57 +1234,68 @@ namespace SizedApparel
}
else if (BreastSeverity < 0.02f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(0);
+ targetIndex = 0;
+ //targetIndex = findAvailableSmallerSizeFromSetting(0);
targetSeverity = 0.01f;
}
else if (BreastSeverity < 0.2f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(1);
+ targetIndex = 1;
+ //targetIndex = findAvailableSmallerSizeFromSetting(1);
targetSeverity = 0.02f;
}
else if (BreastSeverity < 0.40f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(2);
+ targetIndex = 2;
+ //targetIndex = findAvailableSmallerSizeFromSetting(2);
targetSeverity = 0.2f;
}
else if (BreastSeverity < 0.60f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(3);
+ targetIndex = 3;
+ //targetIndex = findAvailableSmallerSizeFromSetting(3);
targetSeverity = 0.40f;
}
else if (BreastSeverity < 0.80f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(4);
+ targetIndex = 4;
+ //targetIndex = findAvailableSmallerSizeFromSetting(4);
targetSeverity = 0.60f;
}
else if (BreastSeverity < 1.0f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(5);
+ targetIndex = 5;
+ //targetIndex = findAvailableSmallerSizeFromSetting(5);
targetSeverity = 0.80f;
}
else if (BreastSeverity < 1.2f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(6);
+ targetIndex = 6;
+ //targetIndex = findAvailableSmallerSizeFromSetting(6);
targetSeverity = 1.0f;
}
else if (BreastSeverity < 1.4f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(7);
+ targetIndex = 7;
+ //targetIndex = findAvailableSmallerSizeFromSetting(7);
targetSeverity = 1.2f;
}
else if (BreastSeverity < 1.6f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(8);
+ targetIndex = 8;
+ //targetIndex = findAvailableSmallerSizeFromSetting(8);
targetSeverity = 1.4f;
}
else if (BreastSeverity < 1.8f)
{
- targetIndex = findAvailableSmallerSizeFromSetting(9);
+ targetIndex = 9;
+ //targetIndex = findAvailableSmallerSizeFromSetting(9);
targetSeverity = 1.6f;
}
else
{
- targetIndex = findAvailableSmallerSizeFromSetting(10);
+ targetIndex = 10;
+ //targetIndex = findAvailableSmallerSizeFromSetting(10);
targetSeverity = 1.8f;
}
//if (targetIndex - offset < 0)
@@ -1404,7 +1304,7 @@ namespace SizedApparel
if (findBigger)
{
- if (size.Length - (targetIndex + offset) > 0)
+ if (breastsSizeStrings.Length - (targetIndex + offset) > 0)
{
//size.Length< targetIndex + offset
@@ -1416,14 +1316,14 @@ namespace SizedApparel
outTargetIndex = result;
targetSeverity = BreastSizeIndexToSeverity(result);
outTargetSeverity = targetSeverity;
- return size[result];
+ return breastsSizeStrings[result];
}
}
else
{
if (targetIndex - offset < 0)
return "_-1";
- if (size.Length - (targetIndex - offset) > 0)
+ if (breastsSizeStrings.Length - (targetIndex - offset) > 0)
{
/*
if (size[targetIndex - offset] != null)
@@ -1433,7 +1333,7 @@ namespace SizedApparel
outTargetIndex = result;
targetSeverity = BreastSizeIndexToSeverity(result);
outTargetSeverity = targetSeverity;
- return size[result];
+ return breastsSizeStrings[result];
}
}
}
@@ -1540,7 +1440,7 @@ namespace SizedApparel
bool validTexture = false;
bool findBigger = true; // if false : search smaller first
- while (offset < size.Length)
+ while (offset < breastsSizeStrings.Length)
{
if (breastHediff != null)
{
@@ -1579,7 +1479,7 @@ namespace SizedApparel
if (validTexture == false)
{
offset = 0;
- while (offset < size.Length)
+ while (offset < breastsSizeStrings.Length)
{
if (breastHediff != null)
{
@@ -1769,7 +1669,7 @@ namespace SizedApparel
bool validTexture = false;
bool findBigger = true; // if false : search smaller first
- while (offset < size.Length)
+ while (offset < breastsSizeStrings.Length)
{
if (breastHediff != null)
{
@@ -1825,7 +1725,7 @@ namespace SizedApparel
if (validTexture == false)
{
offset = 0;
- while (offset < size.Length)
+ while (offset < breastsSizeStrings.Length)
{
if (breastHediff != null)
{
@@ -1948,7 +1848,7 @@ namespace SizedApparel
return;
}
- pawnGraphicSet.ResolveApparelGraphics();
+ //pawnGraphicSet.ResolveApparelGraphics();
}
@@ -2034,6 +1934,19 @@ namespace SizedApparel
return true;
}
+ public static bool CanDrawPubicHair(Pawn pawn, PawnRenderFlags flags = PawnRenderFlags.None)
+ {
+ if (pawn == null)
+ return false;
+ var comp = pawn.GetComp();
+ if (comp == null)
+ return false;
+
+ if (!flags.FlagSet(PawnRenderFlags.Clothes))
+ return true;
+ return true;
+ }
+
public static bool CanDrawAnus(Pawn pawn, PawnRenderFlags flags = PawnRenderFlags.None)
{
if (pawn == null)
@@ -2148,8 +2061,48 @@ namespace SizedApparel
}
return true;
}
+
+
+ public static bool CanPoseApparels(Pawn pawn, string targetPose, string currentHediffName = null, int currentSeverityInt = 0, int cappedSeverityInt = 1000)
+ {
+ if (pawn == null)
+ return false;
+ foreach (ApparelGraphicRecord agr in pawn.Drawer.renderer.graphics.apparelGraphics)
+ {
+ if (agr.graphic == null)
+ continue;
+ /*
+ if (!agr.sourceApparel.def.apparel.bodyPartGroups.Any(bpgd => bpgd.defName == "Torso" || bpgd.defName == "Chest"))
+ continue;
+
+ if (agr.sourceApparel.def.apparel.tags.Any(s => s.ToLower() == "SizedApparel_IgnorePose".ToLower()))
+ continue;
+ */
+ //Only Check Torso Apparel Only
+ if (!agr.sourceApparel.def.apparel.bodyPartGroups.Contains(BodyPartGroupDefOf.Torso))
+ continue;
+
+ string originalPath = SizedApparelsDatabase.GetSupportedApparelOriginalPath(agr.graphic.path);
+ if (originalPath == null)
+ return false;
+
+ int outInt = -1;
+ float outFloat = -1;
+ SizedApparelsDatabase.SizedApparelDatabaseKey key = new SizedApparelsDatabase.SizedApparelDatabaseKey(originalPath, pawn.def.defName, pawn.story?.bodyType?.defName, pawn.gender, currentHediffName, Math.Min(currentSeverityInt, cappedSeverityInt), false, targetPose);
+ if (SizedApparelSettings.useGenderSpecificTexture)
+ key.gender = Gender.None;
+ var result = SizedApparelsDatabase.GetSupportedApparelSizedPath(key, out outInt, out outFloat);
+ if (!result.isCustomPose)
+ return false;
+ }
+ return true;
+ }
+
+
+
+
+
+
+
}
-
-
-
}
diff --git a/source/SizedApparel/SizedApparelforRJW.csproj b/source/SizedApparel/SizedApparelforRJW.csproj
index 4187908..28c62db 100644
--- a/source/SizedApparel/SizedApparelforRJW.csproj
+++ b/source/SizedApparel/SizedApparelforRJW.csproj
@@ -52,9 +52,11 @@
..\..\..\rimnude-unofficial\Assembly Folders\1.4 Assembly\Assemblies\RimNudeWorld.dll
False
-
+
..\..\..\rimworld-animations\1.4\Assemblies\Rimworld-Animations.dll
+ False
False
+ False
..\..\..\rjw\1.4\Assemblies\RJW.dll
@@ -87,24 +89,27 @@
+
+
-
+
-
-
+
+
+
diff --git a/source/SizedApparel/SizedApparelsDatabase.cs b/source/SizedApparel/SizedApparelsDatabase.cs
index 631a5e0..a5d78dd 100644
--- a/source/SizedApparel/SizedApparelsDatabase.cs
+++ b/source/SizedApparel/SizedApparelsDatabase.cs
@@ -11,6 +11,27 @@ using rjw;
namespace SizedApparel
{
+ public class BodyTypeAndPath
+ {
+ public string BodyType;
+ public string Path;
+ }
+
+ public class ApparelData
+ {
+ public string WornPath;
+ public List Data;
+ }
+ public class PreDefinedApparelDate : Def
+ {
+ public string HediffName;
+ public bool IsBreasts = false;
+ public List Data;
+ }
+ public class PreDefinedBodyPartGraphicDate : Def
+ {
+
+ }
public static class SizedApparelsDatabase
{
@@ -20,6 +41,12 @@ namespace SizedApparel
}
+ public static void LoadPreDefinedData()
+ {
+
+ }
+
+
public struct SizedApparelDatabaseKey
{
@@ -107,9 +134,9 @@ namespace SizedApparel
public bool isUnsupportedHumanlikePath;
public bool isCustomPose;
public string hediffName;
- public Dictionary points;
+ public SizedApparelTexturePointDef points;
- public PathAndSize(string path, int index, bool unsupportedHumanlike = false, bool customPose = false, string hediff = null ,Dictionary pointsInput = null)
+ public PathAndSize(string path, int index, bool unsupportedHumanlike = false, bool customPose = false, string hediff = null , SizedApparelTexturePointDef pointsInput = null)
{
this.pathWithSizeIndex = path;
this.size = index;
@@ -151,7 +178,8 @@ namespace SizedApparel
AlienRaceUseHumanlike.Add(raceDef.defName, true);
}
}
-
+
+ [Obsolete]
public static bool GetAlienRaceUseHumanlike(string raceDef)
{
if (AlienRaceUseHumanlike.NullOrEmpty())
@@ -279,12 +307,18 @@ namespace SizedApparel
public static PathAndSize GetSupportedBodyPartPath(BodyPartDatabaseKey key, bool isBreast, string folderName, string defaultHediffName)
{
+
PathAndSize result;
if (SupportedBodyPartResultPath.ContainsKey(key))
return SupportedBodyPartResultPath.TryGetValue(key);
int currentSize = -1;
string hediffResult;
Graphic graphic = null;
+
+ //Find Points from result's path
+ //TODO: Build SizedApparel DataBase separate?
+
+
if (key.customPose != null)
{
graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, key.bodyTypeName, key.hediffName, isBreast, key.targetSize, folderName+"/CustomPose/"+key.customPose, defaultHediffName, out currentSize, out hediffResult, key.isHorny, null, key.variation, key.gender);
@@ -292,6 +326,11 @@ namespace SizedApparel
{
result = new PathAndSize(graphic.path, currentSize, false, true, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
return result;
}
if (key.bodyTypeName != null)
@@ -300,6 +339,11 @@ namespace SizedApparel
{
result = new PathAndSize(graphic.path, currentSize, false, true, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
return result;
}
@@ -307,8 +351,14 @@ namespace SizedApparel
graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, key.bodyTypeName, key.hediffName, isBreast, key.targetSize, folderName, defaultHediffName, out currentSize, out hediffResult, key.isHorny, null, key.variation, key.gender);
if (graphic != null)
{
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
result = new PathAndSize(graphic.path, currentSize, false, key.customPose == null ? true : false, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
+
return result;
}
@@ -316,6 +366,11 @@ namespace SizedApparel
graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, null, key.hediffName, isBreast, key.targetSize, folderName, defaultHediffName, out currentSize, out hediffResult, key.isHorny, null, key.variation, key.gender);
if (graphic != null)
{
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
result = new PathAndSize(graphic.path, currentSize, false, key.customPose == null ? true : false, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
return result;
@@ -325,7 +380,7 @@ namespace SizedApparel
//SizedApparelMod.CheckAndLoadAlienRaces();
//HumanLike Search
var raceSetting = SizedApparelSettings.alienRaceSettings.FirstOrDefault((AlienRaceSetting s) => s.raceName == key.raceName);
- if (raceSetting !=null && !raceSetting.asHumanlike) //old: !SizedApparelSettings.UnsupportedRaceToUseHumanlike
+ if (raceSetting !=null && key.raceName == "Human" || !raceSetting.asHuman) //old: !SizedApparelSettings.UnsupportedRaceToUseHumanlike
{
//Cannot find Any result
result = new PathAndSize(null, -1);
@@ -335,35 +390,55 @@ namespace SizedApparel
if (key.customPose != null)
{
- graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, key.bodyTypeName, key.hediffName, isBreast, key.targetSize, folderName + "/CustomPose/" + key.customPose, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Humanlike", key.variation, key.gender);
+ graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, key.bodyTypeName, key.hediffName, isBreast, key.targetSize, folderName + "/CustomPose/" + key.customPose, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Human", key.variation, key.gender);
if (graphic != null)
{
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
result = new PathAndSize(graphic.path, currentSize, true, true, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
return result;
}
if (key.bodyTypeName != null)
- graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, null, key.hediffName, isBreast, key.targetSize, folderName + "/CustomPose/" + key.customPose, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Humanlike", key.variation, key.gender);
+ graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, null, key.hediffName, isBreast, key.targetSize, folderName + "/CustomPose/" + key.customPose, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Human", key.variation, key.gender);
if (graphic != null)
{
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
result = new PathAndSize(graphic.path, currentSize, true, true, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
return result;
}
}
- graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, key.bodyTypeName, key.hediffName, isBreast, key.targetSize, folderName, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Humanlike", key.variation, key.gender);
+ graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, key.bodyTypeName, key.hediffName, isBreast, key.targetSize, folderName, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Human", key.variation, key.gender);
if (graphic != null)
{
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
result = new PathAndSize(graphic.path, currentSize, true, key.customPose == null ? true : false, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
return result;
}
if (key.bodyTypeName != null)
- graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, null, key.hediffName, isBreast, key.targetSize, folderName, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Humanlike", key.variation, key.gender);
+ graphic = SizedApparelUtility.GetBodyPartGraphic(key.raceName, null, key.hediffName, isBreast, key.targetSize, folderName, defaultHediffName, out currentSize, out hediffResult, key.isHorny, "Human", key.variation, key.gender);
if (graphic != null)
{
+ //SizedApparelTexturePointDef PointsDef = DefDatabase.AllDefs.FirstOrDefault((SizedApparelTexturePointDef s) => s.Path == graphic.path);
+ //if (SizedApparelSettings.Debug && PointsDef != null)
+ //{
+ // Log.Message("[SizedApparel] : Points Def Found : " + PointsDef.defName);
+ //}
result = new PathAndSize(graphic.path, currentSize, true, key.customPose == null ? true : false, hediffResult);
SupportedBodyPartResultPath.SetOrAdd(key, result);
return result;