From d6629f12d7da75eb6a1e0b71f97778beede79fee Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 16 Feb 2018 00:11:34 +0200
Subject: [PATCH] Init and backward compatibility added

---
 src/js/wombJS.tw                            | 4 ++--
 src/pregmod/widgets/pregmodWidgets.tw       | 6 ++++++
 src/uncategorized/BackwardsCompatibility.tw | 3 +++
 src/uncategorized/generateXXSlave.tw        | 1 +
 src/uncategorized/generateXYSlave.tw        | 1 +
 5 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/js/wombJS.tw b/src/js/wombJS.tw
index a1dbe68df29..c5c326fb375 100644
--- a/src/js/wombJS.tw
+++ b/src/js/wombJS.tw
@@ -32,11 +32,11 @@ window.WombInit = function(actor) //Init womb system.
 	   actor.womb = [];
     }
 
-    if (actor.womb.length != actor.pregType && actor.broodmother == 0) //backward compatibility setup. Fully accurate for normal pregnancy only.
+    if (actor.womb.length == 0 && actor.pregType != 0 && actor.broodmother == 0) //backward compatibility setup. Fully accurate for normal pregnancy only.
     {
         WombImpregnate(actor, actor.pregType, 0, actor.preg);
     }
-    elseif (actor.womb.length != actor.pregType && actor.broodmother == 1) //sorry but for already present broodmothers it's impossible to calculate fully, aproximation used.
+    elseif (actor.womb.length == 0 && actor.pregType != 0 && actor.broodmother == 1) //sorry but for already present broodmothers it's impossible to calculate fully, aproximation used.
     {
         var i, pw = actor.preg;
         if (pw > 40)
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index 7ee7df53857..ce0c079f686 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -2,9 +2,15 @@
 
 <<widget "initPC">>
 	<<set $PC = {name: "Anonymous", surname: 0, title: 1, ID: -1, dick: 1, vagina: 0, preg: 0, pregType: 0, pregWeek: 0, pregKnown: 0, belly: 0, bellyPreg: 0, mpreg: 0, pregSource: 0, pregMood: 0, labor: 0, births: 0, boobsBonus: 0, degeneracy: 0, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, career: "capitalist", rumor: "wealth", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), age: 2, sexualEnergy: 4, refreshment: "cigar", refreshmentType: 0, trading: 0, warfare: 0, slaving: 0, engineering: 0, medicine: 0, cumTap: 0, race: "white", origRace: "white", skin: "white", origSkin: "white", markings: "none", eyeColor: "blue", origEye: "blue", hColor: "blonde", origHColor: "blonde", nationality: "Stateless", father: 0, mother: 0, sisters: 0, daughters: 0, birthElite: 0, birthMaster: 0, birthDegenerate: 0, birthClient: 0, birthOther: 0, birthArcOwner: 0, birthCitizen: 0, birthSelf: 0, slavesFathered: 0, slavesKnockedUp: 0, intelligence: 3, face: 100, actualAge: 35, physicalAge: 35, visualAge: 35, birthWeek: 0, boobsImplant: 0, butt: 0, buttImplant: 0, balls: 0, ballsImplant: 0, ageImplant: 0, newVag: 0, reservedChildren: 0, fertDrugs: 0, forcedFertDrugs: 0, staminaPills: 0, ovaryAge: 35}>>
+
+	<<set WombInit($PC)>>
+
 <</widget>>
  
 <<widget "PMODinit">>
+
+<<set WombInit($args[0])>>
+
 <<if ndef $args[0].actualAge>>
 	<<set $args[0].actualAge = $args[0].age>>
 <</if>>
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index bc4dc271925..b9ef7c54185 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2265,6 +2265,7 @@ Setting missing global variables:
 		<<set $PC.refreshmentType = 1>>
 	<</if>>
 <</if>>
+<<set WombInit($PC)>>
 
 Done!
 
@@ -2275,6 +2276,8 @@ Setting missing slave variables:
 
 <<PMODinit _Slave>>
 
+<<set WombInit($PC)>>
+
 <<if ndef _Slave.publicCount>>
 	<<set _Slave.publicCount = 0>>
 <</if>>
diff --git a/src/uncategorized/generateXXSlave.tw b/src/uncategorized/generateXXSlave.tw
index 7e29696e92e..a2f1a1b49e4 100644
--- a/src/uncategorized/generateXXSlave.tw
+++ b/src/uncategorized/generateXXSlave.tw
@@ -2,6 +2,7 @@
 
 <<BaseSlave>>
 /*missed variables - getting tired of this shit */
+<<WombInit($activeSlave)>>
 <<set $activeSlave.vaginaLube = 1, $activeSlave.ovaries = 1, $activeSlave.canRecruit = 1>>
 
 <<if $activeSlaveOneTimeMaxAge > 998>>
diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw
index 7740c8fb538..42391ab1e01 100644
--- a/src/uncategorized/generateXYSlave.tw
+++ b/src/uncategorized/generateXYSlave.tw
@@ -2,6 +2,7 @@
 
 <<BaseSlave>>
 /% Defaults that differ from the old template %/
+<<WombInit($activeSlave)>>
 <<set $activeSlave.genes = "XY", $activeSlave.hLength = 10, $activeSlave.prostate = 1, $activeSlave.canRecruit = 1>>
 
 <<set $activeSlave.publicCount = 0>>
-- 
GitLab