mirror of
https://gitgud.io/Stardust3D/rjw-plasticsurgeries.git
synced 2024-08-14 23:57:25 +00:00
Compare commits
No commits in common. "master" and "4945.0.1.5" have entirely different histories.
master
...
4945.0.1.5
49 changed files with 404 additions and 2113 deletions
Binary file not shown.
Binary file not shown.
|
@ -1,43 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Beautify_X" Abstract="True">
|
||||
<defName>Surgery_Beautify</defName>
|
||||
<label>beautify</label>
|
||||
<description>Surgically beautifies the pawn.</description>
|
||||
<jobString>beautifying</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Beautify_X">
|
||||
<defName>Surgery_Beautify_Beautiful</defName>
|
||||
<label>beautify (beautiful)</label>
|
||||
<description>Surgically beautifies the pawn.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Beautify_Beautiful</workerClass>
|
||||
<jobString>beautify the pawn.</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,163 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Mammoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Mammoplasty</defName>
|
||||
<label>mammoplasty</label>
|
||||
<description>Surgically increases the pawn's breast size by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty</workerClass>-->
|
||||
<jobString>increasing breast size</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_A</defName>
|
||||
<label>mammoplasty (A Cup)</label>
|
||||
<description>Surgically gives the pawn an A cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_A</workerClass>
|
||||
<jobString>alter cup size to A</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_B</defName>
|
||||
<label>mammoplasty (B Cup)</label>
|
||||
<description>Surgically gives the pawn an B cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_B</workerClass>
|
||||
<jobString>alter cup size to B</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_C</defName>
|
||||
<label>mammoplasty (C Cup)</label>
|
||||
<description>Surgically gives the pawn an C cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_C</workerClass>
|
||||
<jobString>alter cup size to C</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_D</defName>
|
||||
<label>mammoplasty (D Cup)</label>
|
||||
<description>Surgically gives the pawn an D cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_D</workerClass>
|
||||
<jobString>alter cup size to D</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_E</defName>
|
||||
<label>mammoplasty (E Cup)</label>
|
||||
<description>Surgically gives the pawn an E cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_E</workerClass>
|
||||
<jobString>alter cup size to E</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_F</defName>
|
||||
<label>mammoplasty (F Cup)</label>
|
||||
<description>Surgically gives the pawn an F cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_F</workerClass>
|
||||
<jobString>alter cup size to F</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_G</defName>
|
||||
<label>mammoplasty (G Cup)</label>
|
||||
<description>Surgically gives the pawn an G cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_G</workerClass>
|
||||
<jobString>alter cup size to G</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_H</defName>
|
||||
<label>mammoplasty (H Cup)</label>
|
||||
<description>Surgically gives the pawn an H cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_H</workerClass>
|
||||
<jobString>alter cup size to H</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_J</defName>
|
||||
<label>mammoplasty (J Cup)</label>
|
||||
<description>Surgically gives the pawn an J cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_J</workerClass>
|
||||
<jobString>alter cup size to J</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_K</defName>
|
||||
<label>mammoplasty (K Cup)</label>
|
||||
<description>Surgically gives the pawn an K cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_K</workerClass>
|
||||
<jobString>alter cup size to K</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_L</defName>
|
||||
<label>mammoplasty (L Cup)</label>
|
||||
<description>Surgically gives the pawn an L cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_L</workerClass>
|
||||
<jobString>alter cup size to L</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_M</defName>
|
||||
<label>mammoplasty (M Cup)</label>
|
||||
<description>Surgically gives the pawn an M cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_M</workerClass>
|
||||
<jobString>alter cup size to M</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_N</defName>
|
||||
<label>mammoplasty (N Cup)</label>
|
||||
<description>Surgically gives the pawn an N cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_N</workerClass>
|
||||
<jobString>alter cup size to N</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_O</defName>
|
||||
<label>mammoplasty (O Cup)</label>
|
||||
<description>Surgically gives the pawn an O cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_O</workerClass>
|
||||
<jobString>alter cup size to O</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_P</defName>
|
||||
<label>mammoplasty (P Cup)</label>
|
||||
<description>Surgically gives the pawn an P cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_P</workerClass>
|
||||
<jobString>alter cup size to P</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_Q</defName>
|
||||
<label>mammoplasty (Q Cup)</label>
|
||||
<description>Surgically gives the pawn an Q cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_Q</workerClass>
|
||||
<jobString>alter cup size to Q</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_R</defName>
|
||||
<label>mammoplasty (R Cup)</label>
|
||||
<description>Surgically gives the pawn an R cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_R</workerClass>
|
||||
<jobString>alter cup size to R</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_Unknown</defName>
|
||||
<label>mammoplasty (??? Cup)</label>
|
||||
<description>Surgically gives the pawn an ??? cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_Unknown</workerClass>
|
||||
<jobString>alter cup size to ???</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Penoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Penoplasty</defName>
|
||||
<label>Penoplasty</label>
|
||||
<description>Surgically enlarges the pawn's Penis by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty</workerClass>-->
|
||||
<jobString>enlarging Penis</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Micro</defName>
|
||||
<label>Penoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Micro</workerClass>
|
||||
<jobString>alter Penis size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Small</defName>
|
||||
<label>Penoplasty (small)</label>
|
||||
<description>Surgically gives the pawn an small Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Small</workerClass>
|
||||
<jobString>alter Penis size to small</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Average</defName>
|
||||
<label>Penoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Average</workerClass>
|
||||
<jobString>alter Penis size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Large</defName>
|
||||
<label>Penoplasty (large)</label>
|
||||
<description>Surgically gives the pawn an accomodating Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Large</workerClass>
|
||||
<jobString>alter Penis size to large</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Huge</defName>
|
||||
<label>Penoplasty (huge)</label>
|
||||
<description>Surgically gives the pawn an huge Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Huge</workerClass>
|
||||
<jobString>alter Penis size to huge</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Sphinctoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Sphinctoplasty</defName>
|
||||
<label>sphinctoplasty</label>
|
||||
<description>Surgically tightens the pawn's Sphincter by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty</workerClass>-->
|
||||
<jobString>tightening Sphincter</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Micro</defName>
|
||||
<label>sphinctoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Micro</workerClass>
|
||||
<jobString>alter Sphincter size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Tight</defName>
|
||||
<label>sphinctoplasty (tight)</label>
|
||||
<description>Surgically gives the pawn an tight Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Tight</workerClass>
|
||||
<jobString>alter Sphincter size to tight</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Average</defName>
|
||||
<label>sphinctoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Average</workerClass>
|
||||
<jobString>alter Sphincter size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Accomodating</defName>
|
||||
<label>sphinctoplasty (accomodating)</label>
|
||||
<description>Surgically gives the pawn an accomodating Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Accomodating</workerClass>
|
||||
<jobString>alter Sphincter size to accomodating</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Cavernous</defName>
|
||||
<label>sphinctoplasty (cavernous)</label>
|
||||
<description>Surgically gives the pawn an cavernous Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Cavernous</workerClass>
|
||||
<jobString>alter Sphincter size to cavernous</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Vaginoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Vaginoplasty</defName>
|
||||
<label>vaginoplasty</label>
|
||||
<description>Surgically tightens the pawn's Vagina by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty</workerClass>-->
|
||||
<jobString>tightening Vagina</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Micro</defName>
|
||||
<label>vaginoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Micro</workerClass>
|
||||
<jobString>alter Vagina size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Tight</defName>
|
||||
<label>vaginoplasty (tight)</label>
|
||||
<description>Surgically gives the pawn an tight Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Tight</workerClass>
|
||||
<jobString>alter Vagina size to tight</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Average</defName>
|
||||
<label>vaginoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Average</workerClass>
|
||||
<jobString>alter Vagina size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Accomodating</defName>
|
||||
<label>vaginoplasty (accomodating)</label>
|
||||
<description>Surgically gives the pawn an accomodating Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Accomodating</workerClass>
|
||||
<jobString>alter Vagina size to accomodating</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Cavernous</defName>
|
||||
<label>vaginoplasty (cavernous)</label>
|
||||
<description>Surgically gives the pawn an cavernous Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Cavernous</workerClass>
|
||||
<jobString>alter Vagina size to cavernous</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
Binary file not shown.
|
@ -1,43 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Beautify_X" Abstract="True">
|
||||
<defName>Surgery_Beautify</defName>
|
||||
<label>beautify</label>
|
||||
<description>Surgically beautifies the pawn.</description>
|
||||
<jobString>beautifying</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Beautify_X">
|
||||
<defName>Surgery_Beautify_Beautiful</defName>
|
||||
<label>beautify (beautiful)</label>
|
||||
<description>Surgically beautifies the pawn.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Beautify_Beautiful</workerClass>
|
||||
<jobString>beautify the pawn.</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,163 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Mammoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Mammoplasty</defName>
|
||||
<label>mammoplasty</label>
|
||||
<description>Surgically increases the pawn's breast size by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty</workerClass>-->
|
||||
<jobString>increasing breast size</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_A</defName>
|
||||
<label>mammoplasty (A Cup)</label>
|
||||
<description>Surgically gives the pawn an A cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_A</workerClass>
|
||||
<jobString>alter cup size to A</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_B</defName>
|
||||
<label>mammoplasty (B Cup)</label>
|
||||
<description>Surgically gives the pawn an B cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_B</workerClass>
|
||||
<jobString>alter cup size to B</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_C</defName>
|
||||
<label>mammoplasty (C Cup)</label>
|
||||
<description>Surgically gives the pawn an C cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_C</workerClass>
|
||||
<jobString>alter cup size to C</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_D</defName>
|
||||
<label>mammoplasty (D Cup)</label>
|
||||
<description>Surgically gives the pawn an D cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_D</workerClass>
|
||||
<jobString>alter cup size to D</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_E</defName>
|
||||
<label>mammoplasty (E Cup)</label>
|
||||
<description>Surgically gives the pawn an E cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_E</workerClass>
|
||||
<jobString>alter cup size to E</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_F</defName>
|
||||
<label>mammoplasty (F Cup)</label>
|
||||
<description>Surgically gives the pawn an F cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_F</workerClass>
|
||||
<jobString>alter cup size to F</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_G</defName>
|
||||
<label>mammoplasty (G Cup)</label>
|
||||
<description>Surgically gives the pawn an G cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_G</workerClass>
|
||||
<jobString>alter cup size to G</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_H</defName>
|
||||
<label>mammoplasty (H Cup)</label>
|
||||
<description>Surgically gives the pawn an H cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_H</workerClass>
|
||||
<jobString>alter cup size to H</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_J</defName>
|
||||
<label>mammoplasty (J Cup)</label>
|
||||
<description>Surgically gives the pawn an J cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_J</workerClass>
|
||||
<jobString>alter cup size to J</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_K</defName>
|
||||
<label>mammoplasty (K Cup)</label>
|
||||
<description>Surgically gives the pawn an K cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_K</workerClass>
|
||||
<jobString>alter cup size to K</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_L</defName>
|
||||
<label>mammoplasty (L Cup)</label>
|
||||
<description>Surgically gives the pawn an L cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_L</workerClass>
|
||||
<jobString>alter cup size to L</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_M</defName>
|
||||
<label>mammoplasty (M Cup)</label>
|
||||
<description>Surgically gives the pawn an M cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_M</workerClass>
|
||||
<jobString>alter cup size to M</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_N</defName>
|
||||
<label>mammoplasty (N Cup)</label>
|
||||
<description>Surgically gives the pawn an N cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_N</workerClass>
|
||||
<jobString>alter cup size to N</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_O</defName>
|
||||
<label>mammoplasty (O Cup)</label>
|
||||
<description>Surgically gives the pawn an O cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_O</workerClass>
|
||||
<jobString>alter cup size to O</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_P</defName>
|
||||
<label>mammoplasty (P Cup)</label>
|
||||
<description>Surgically gives the pawn an P cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_P</workerClass>
|
||||
<jobString>alter cup size to P</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_Q</defName>
|
||||
<label>mammoplasty (Q Cup)</label>
|
||||
<description>Surgically gives the pawn an Q cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_Q</workerClass>
|
||||
<jobString>alter cup size to Q</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_R</defName>
|
||||
<label>mammoplasty (R Cup)</label>
|
||||
<description>Surgically gives the pawn an R cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_R</workerClass>
|
||||
<jobString>alter cup size to R</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_Unknown</defName>
|
||||
<label>mammoplasty (??? Cup)</label>
|
||||
<description>Surgically gives the pawn an ??? cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_Unknown</workerClass>
|
||||
<jobString>alter cup size to ???</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Penoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Penoplasty</defName>
|
||||
<label>Penoplasty</label>
|
||||
<description>Surgically enlarges the pawn's Penis by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty</workerClass>-->
|
||||
<jobString>enlarging Penis</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Micro</defName>
|
||||
<label>Penoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Micro</workerClass>
|
||||
<jobString>alter Penis size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Small</defName>
|
||||
<label>Penoplasty (small)</label>
|
||||
<description>Surgically gives the pawn an small Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Small</workerClass>
|
||||
<jobString>alter Penis size to small</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Average</defName>
|
||||
<label>Penoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Average</workerClass>
|
||||
<jobString>alter Penis size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Large</defName>
|
||||
<label>Penoplasty (large)</label>
|
||||
<description>Surgically gives the pawn an accomodating Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Large</workerClass>
|
||||
<jobString>alter Penis size to large</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Huge</defName>
|
||||
<label>Penoplasty (huge)</label>
|
||||
<description>Surgically gives the pawn an huge Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Huge</workerClass>
|
||||
<jobString>alter Penis size to huge</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Sphinctoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Sphinctoplasty</defName>
|
||||
<label>sphinctoplasty</label>
|
||||
<description>Surgically tightens the pawn's Sphincter by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty</workerClass>-->
|
||||
<jobString>tightening Sphincter</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Micro</defName>
|
||||
<label>sphinctoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Micro</workerClass>
|
||||
<jobString>alter Sphincter size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Tight</defName>
|
||||
<label>sphinctoplasty (tight)</label>
|
||||
<description>Surgically gives the pawn an tight Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Tight</workerClass>
|
||||
<jobString>alter Sphincter size to tight</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Average</defName>
|
||||
<label>sphinctoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Average</workerClass>
|
||||
<jobString>alter Sphincter size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Accomodating</defName>
|
||||
<label>sphinctoplasty (accomodating)</label>
|
||||
<description>Surgically gives the pawn an accomodating Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Accomodating</workerClass>
|
||||
<jobString>alter Sphincter size to accomodating</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Cavernous</defName>
|
||||
<label>sphinctoplasty (cavernous)</label>
|
||||
<description>Surgically gives the pawn an cavernous Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Cavernous</workerClass>
|
||||
<jobString>alter Sphincter size to cavernous</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Vaginoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Vaginoplasty</defName>
|
||||
<label>vaginoplasty</label>
|
||||
<description>Surgically tightens the pawn's Vagina by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty</workerClass>-->
|
||||
<jobString>tightening Vagina</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Micro</defName>
|
||||
<label>vaginoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Micro</workerClass>
|
||||
<jobString>alter Vagina size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Tight</defName>
|
||||
<label>vaginoplasty (tight)</label>
|
||||
<description>Surgically gives the pawn an tight Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Tight</workerClass>
|
||||
<jobString>alter Vagina size to tight</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Average</defName>
|
||||
<label>vaginoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Average</workerClass>
|
||||
<jobString>alter Vagina size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Accomodating</defName>
|
||||
<label>vaginoplasty (accomodating)</label>
|
||||
<description>Surgically gives the pawn an accomodating Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Accomodating</workerClass>
|
||||
<jobString>alter Vagina size to accomodating</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Cavernous</defName>
|
||||
<label>vaginoplasty (cavernous)</label>
|
||||
<description>Surgically gives the pawn an cavernous Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Cavernous</workerClass>
|
||||
<jobString>alter Vagina size to cavernous</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -5,8 +5,6 @@
|
|||
<author>Stardust3D</author>
|
||||
<supportedVersions>
|
||||
<li>1.3</li>
|
||||
<li>1.4</li>
|
||||
<li>1.5</li>
|
||||
</supportedVersions>
|
||||
<packageId>Stardust3D.RJW.PlasticSurgeries</packageId>
|
||||
<description>Surgically alter pawn's genitals.</description>
|
||||
|
@ -22,10 +20,15 @@
|
|||
<steamWorkshopUrl>steam://url/CommunityFilePage/2009463077</steamWorkshopUrl>
|
||||
<downloadUrl>https://github.com/pardeike/HarmonyRimWorld/releases/latest</downloadUrl>
|
||||
</li>
|
||||
<li>
|
||||
<packageId>NuttySquabble.Dyspareunia</packageId>
|
||||
<displayName>Dyspareunia</displayName>
|
||||
<downloadUrl>https://gitgud.io/NuttySquabble/Dyspareunia</downloadUrl>
|
||||
</li>
|
||||
</modDependencies>
|
||||
<loadAfter>
|
||||
<li>Ludeon.RimWorld</li>
|
||||
<li>rim.job.world</li>
|
||||
<li>LustLicentia.RJWLabs</li>
|
||||
<li>NuttySquabble.Dyspareunia</li>
|
||||
</loadAfter>
|
||||
</ModMetaData>
|
|
@ -2,5 +2,5 @@
|
|||
|
||||
<Manifest>
|
||||
<identifier>RJW PlasticSurgeries</identifier>
|
||||
<version>5400.0.1.8</version>
|
||||
<version>4945.0.1.5</version>
|
||||
</Manifest>
|
BIN
Assemblies/RJW_PlasticSurgeries.dll
Normal file
BIN
Assemblies/RJW_PlasticSurgeries.dll
Normal file
Binary file not shown.
|
@ -1,13 +1,9 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.4.33110.190
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.31911.196
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RJW_PlasticSurgeries_1.3", "RJW_PlasticSurgeries\RJW_PlasticSurgeries_1.3.csproj", "{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RJW_PlasticSurgeries_1.4", "RJW_PlasticSurgeries\RJW_PlasticSurgeries_1.4.csproj", "{F17C6B3F-BA9D-4133-A201-1265A64BCB72}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RJW_PlasticSurgeries_1.5", "RJW_PlasticSurgeries\RJW_PlasticSurgeries_1.5.csproj", "{02AA6D85-913F-44B8-9C32-6E8024261824}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RJW_PlasticSurgeries", "RJW_PlasticSurgeries\RJW_PlasticSurgeries.csproj", "{F17C6B3F-BA9D-4133-A201-1265A64BCB71}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
@ -15,23 +11,15 @@ Global
|
|||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Debug|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Debug|Any CPU.Build.0 = Release|Any CPU
|
||||
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Debug|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Debug|Any CPU.Build.0 = Release|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB72}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{02AA6D85-913F-44B8-9C32-6E8024261824}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{02AA6D85-913F-44B8-9C32-6E8024261824}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{02AA6D85-913F-44B8-9C32-6E8024261824}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{02AA6D85-913F-44B8-9C32-6E8024261824}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB71}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB71}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F17C6B3F-BA9D-4133-A201-1265A64BCB71}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {15F5DAE6-1B45-498F-879B-03AE78172AD8}
|
||||
SolutionGuid = {DBAFE1CE-D76E-4E7B-9E31-5DBC343D7281}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -1,53 +0,0 @@
|
|||
using System.Collections.Generic;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using Verse;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
public abstract class Recipe_Plastic_Surgery : Recipe_Surgery
|
||||
{
|
||||
protected readonly bool HasLicentia = ModLister.HasActiveModWithName("RimJobWorld - Licentia Labs");
|
||||
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
var part = GetPartCandidate(pawn);
|
||||
if (part != null)
|
||||
{
|
||||
var hediffs = Genital_Helper.get_PartsHediffList(pawn, part);
|
||||
if (HasPart(pawn, hediffs)) yield return part;
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract BodyPartRecord GetPartCandidate(Pawn pawn);
|
||||
protected abstract bool HasPart(Pawn pawn, List<Hediff> hediffs);
|
||||
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void SurgeryResult(Pawn pawn);
|
||||
|
||||
protected void SurgeryX(Pawn pawn, float severity, bool damagePart = false)
|
||||
{
|
||||
GetHediffs(pawn).ForEach(hed =>
|
||||
{
|
||||
hed.Severity = severity;
|
||||
if (damagePart && HasLicentia)
|
||||
{
|
||||
var (type, damage) = GetLicentiaDamage();
|
||||
LicentiaLabs.DamageHelper.ApplyDamage(pawn, hed.Part, type, damage);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected abstract List<Hediff> GetHediffs(Pawn pawn);
|
||||
protected abstract (HediffDef, float) GetLicentiaDamage();
|
||||
}
|
||||
}
|
|
@ -1,61 +0,0 @@
|
|||
using System.Collections.Generic;
|
||||
using RimWorld;
|
||||
using Verse;
|
||||
using static rjw.VanillaTraitDefOf;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public abstract class Recipe_Surgery_Beautify : Recipe_Surgery
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
if (!pawn.story.traits.HasTrait(Beauty) ||
|
||||
pawn.story.traits.HasTrait(Beauty) && pawn.story.traits.GetTrait(Beauty).Degree < 2)
|
||||
yield return pawn.RaceProps.body.corePart;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="pawn"></param>
|
||||
public abstract void SurgeryResult(Pawn pawn);
|
||||
|
||||
/// <summary>
|
||||
/// Setts the severity of the Beautiful trait for the selected pawn.
|
||||
/// If the trait doesn't exist in the pawns traits, it will be added.
|
||||
/// </summary>
|
||||
/// <param name="pawn">the pawn to modify</param>
|
||||
/// <param name="severity">the new severity of the pawn's Beautiful trait</param>
|
||||
protected void SurgeryX(Pawn pawn, int severity)
|
||||
{
|
||||
if (pawn.story.traits.HasTrait(Beauty))
|
||||
{
|
||||
pawn.story.traits.allTraits.FindAll(t => Beauty.ConflictsWith(t))
|
||||
.ForEach(t => pawn.story.traits.RemoveTrait(t));
|
||||
pawn.story.traits.RemoveTrait(pawn.story.traits.allTraits.Find(t => t.def == Beauty));
|
||||
}
|
||||
|
||||
pawn.story.traits.GainTrait(new Trait(Beauty, severity));
|
||||
}
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public class Recipe_Surgery_Beautify_Beautiful : Recipe_Surgery_Beautify
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 2);
|
||||
}
|
||||
}
|
|
@ -1,26 +0,0 @@
|
|||
using Verse;
|
||||
using RimWorld;
|
||||
|
||||
namespace rjw
|
||||
{
|
||||
[DefOf]
|
||||
public static class VanillaTraitDefOf
|
||||
{
|
||||
public static TraitDef Tough;
|
||||
|
||||
public static TraitDef Nerves;
|
||||
|
||||
public static TraitDef Beauty;
|
||||
|
||||
public static TraitDef TooSmart;
|
||||
|
||||
public static TraitDef NaturalMood;
|
||||
|
||||
public static TraitDef Cannibal;
|
||||
|
||||
static VanillaTraitDefOf()
|
||||
{
|
||||
DefOfHelper.EnsureInitializedInCtor(typeof(VanillaTraitDefOf));
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,31 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<ModMetaData>
|
||||
<name>RJW PlasticSurgeries</name>
|
||||
<author>Stardust3D</author>
|
||||
<supportedVersions>
|
||||
<li>1.3</li>
|
||||
<li>1.4</li>
|
||||
<li>1.5</li>
|
||||
</supportedVersions>
|
||||
<packageId>Stardust3D.RJW.PlasticSurgeries</packageId>
|
||||
<description>Surgically alter pawn's genitals.</description>
|
||||
<modDependencies>
|
||||
<li>
|
||||
<packageId>rim.job.world</packageId>
|
||||
<displayName>RimJobWorld</displayName>
|
||||
<downloadUrl>https://gitgud.io/Ed86/rjw</downloadUrl>
|
||||
</li>
|
||||
<li>
|
||||
<packageId>brrainz.harmony</packageId>
|
||||
<displayName>Harmony</displayName>
|
||||
<steamWorkshopUrl>steam://url/CommunityFilePage/2009463077</steamWorkshopUrl>
|
||||
<downloadUrl>https://github.com/pardeike/HarmonyRimWorld/releases/latest</downloadUrl>
|
||||
</li>
|
||||
</modDependencies>
|
||||
<loadAfter>
|
||||
<li>Ludeon.RimWorld</li>
|
||||
<li>rim.job.world</li>
|
||||
<li>LustLicentia.RJWLabs</li>
|
||||
</loadAfter>
|
||||
</ModMetaData>
|
|
@ -1,6 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
|
||||
<Manifest>
|
||||
<identifier>RJW PlasticSurgeries</identifier>
|
||||
<version>5400.0.1.8</version>
|
||||
</Manifest>
|
|
@ -1,43 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Beautify_X" Abstract="True">
|
||||
<defName>Surgery_Beautify</defName>
|
||||
<label>beautify</label>
|
||||
<description>Surgically beautifies the pawn.</description>
|
||||
<jobString>beautifying</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Beautify_X">
|
||||
<defName>Surgery_Beautify_Beautiful</defName>
|
||||
<label>beautify (beautiful)</label>
|
||||
<description>Surgically beautifies the pawn.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Beautify_Beautiful</workerClass>
|
||||
<jobString>beautify the pawn.</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,163 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Mammoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Mammoplasty</defName>
|
||||
<label>mammoplasty</label>
|
||||
<description>Surgically increases the pawn's breast size by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty</workerClass>-->
|
||||
<jobString>increasing breast size</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_A</defName>
|
||||
<label>mammoplasty (A Cup)</label>
|
||||
<description>Surgically gives the pawn an A cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_A</workerClass>
|
||||
<jobString>alter cup size to A</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_B</defName>
|
||||
<label>mammoplasty (B Cup)</label>
|
||||
<description>Surgically gives the pawn an B cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_B</workerClass>
|
||||
<jobString>alter cup size to B</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_C</defName>
|
||||
<label>mammoplasty (C Cup)</label>
|
||||
<description>Surgically gives the pawn an C cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_C</workerClass>
|
||||
<jobString>alter cup size to C</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_D</defName>
|
||||
<label>mammoplasty (D Cup)</label>
|
||||
<description>Surgically gives the pawn an D cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_D</workerClass>
|
||||
<jobString>alter cup size to D</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_E</defName>
|
||||
<label>mammoplasty (E Cup)</label>
|
||||
<description>Surgically gives the pawn an E cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_E</workerClass>
|
||||
<jobString>alter cup size to E</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_F</defName>
|
||||
<label>mammoplasty (F Cup)</label>
|
||||
<description>Surgically gives the pawn an F cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_F</workerClass>
|
||||
<jobString>alter cup size to F</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_G</defName>
|
||||
<label>mammoplasty (G Cup)</label>
|
||||
<description>Surgically gives the pawn an G cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_G</workerClass>
|
||||
<jobString>alter cup size to G</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_H</defName>
|
||||
<label>mammoplasty (H Cup)</label>
|
||||
<description>Surgically gives the pawn an H cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_H</workerClass>
|
||||
<jobString>alter cup size to H</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_J</defName>
|
||||
<label>mammoplasty (J Cup)</label>
|
||||
<description>Surgically gives the pawn an J cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_J</workerClass>
|
||||
<jobString>alter cup size to J</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_K</defName>
|
||||
<label>mammoplasty (K Cup)</label>
|
||||
<description>Surgically gives the pawn an K cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_K</workerClass>
|
||||
<jobString>alter cup size to K</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_L</defName>
|
||||
<label>mammoplasty (L Cup)</label>
|
||||
<description>Surgically gives the pawn an L cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_L</workerClass>
|
||||
<jobString>alter cup size to L</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_M</defName>
|
||||
<label>mammoplasty (M Cup)</label>
|
||||
<description>Surgically gives the pawn an M cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_M</workerClass>
|
||||
<jobString>alter cup size to M</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_N</defName>
|
||||
<label>mammoplasty (N Cup)</label>
|
||||
<description>Surgically gives the pawn an N cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_N</workerClass>
|
||||
<jobString>alter cup size to N</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_O</defName>
|
||||
<label>mammoplasty (O Cup)</label>
|
||||
<description>Surgically gives the pawn an O cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_O</workerClass>
|
||||
<jobString>alter cup size to O</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_P</defName>
|
||||
<label>mammoplasty (P Cup)</label>
|
||||
<description>Surgically gives the pawn an P cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_P</workerClass>
|
||||
<jobString>alter cup size to P</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_Q</defName>
|
||||
<label>mammoplasty (Q Cup)</label>
|
||||
<description>Surgically gives the pawn an Q cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_Q</workerClass>
|
||||
<jobString>alter cup size to Q</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_R</defName>
|
||||
<label>mammoplasty (R Cup)</label>
|
||||
<description>Surgically gives the pawn an R cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_R</workerClass>
|
||||
<jobString>alter cup size to R</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Mammoplasty_X">
|
||||
<defName>Surgery_Mammoplasty_Unknown</defName>
|
||||
<label>mammoplasty (??? Cup)</label>
|
||||
<description>Surgically gives the pawn an ??? cup.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Mammoplasty_Unknown</workerClass>
|
||||
<jobString>alter cup size to ???</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Penoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Penoplasty</defName>
|
||||
<label>Penoplasty</label>
|
||||
<description>Surgically enlarges the pawn's Penis by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty</workerClass>-->
|
||||
<jobString>enlarging Penis</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Micro</defName>
|
||||
<label>Penoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Micro</workerClass>
|
||||
<jobString>alter Penis size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Small</defName>
|
||||
<label>Penoplasty (small)</label>
|
||||
<description>Surgically gives the pawn an small Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Small</workerClass>
|
||||
<jobString>alter Penis size to small</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Average</defName>
|
||||
<label>Penoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Average</workerClass>
|
||||
<jobString>alter Penis size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Large</defName>
|
||||
<label>Penoplasty (large)</label>
|
||||
<description>Surgically gives the pawn an accomodating Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Large</workerClass>
|
||||
<jobString>alter Penis size to large</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Penoplasty_X">
|
||||
<defName>Surgery_Penoplasty_Huge</defName>
|
||||
<label>Penoplasty (huge)</label>
|
||||
<description>Surgically gives the pawn an huge Penis.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Penoplasty_Huge</workerClass>
|
||||
<jobString>alter Penis size to huge</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Sphinctoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Sphinctoplasty</defName>
|
||||
<label>sphinctoplasty</label>
|
||||
<description>Surgically tightens the pawn's Sphincter by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty</workerClass>-->
|
||||
<jobString>tightening Sphincter</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Micro</defName>
|
||||
<label>sphinctoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Micro</workerClass>
|
||||
<jobString>alter Sphincter size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Tight</defName>
|
||||
<label>sphinctoplasty (tight)</label>
|
||||
<description>Surgically gives the pawn an tight Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Tight</workerClass>
|
||||
<jobString>alter Sphincter size to tight</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Average</defName>
|
||||
<label>sphinctoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Average</workerClass>
|
||||
<jobString>alter Sphincter size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Accomodating</defName>
|
||||
<label>sphinctoplasty (accomodating)</label>
|
||||
<description>Surgically gives the pawn an accomodating Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Accomodating</workerClass>
|
||||
<jobString>alter Sphincter size to accomodating</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Sphinctoplasty_X">
|
||||
<defName>Surgery_Sphinctoplasty_Cavernous</defName>
|
||||
<label>sphinctoplasty (cavernous)</label>
|
||||
<description>Surgically gives the pawn an cavernous Sphincter.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Sphinctoplasty_Cavernous</workerClass>
|
||||
<jobString>alter Sphincter size to cavernous</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Defs>
|
||||
<RecipeDef Name="Surgery_Vaginoplasty_X" Abstract="True">
|
||||
<defName>Surgery_Vaginoplasty</defName>
|
||||
<label>vaginoplasty</label>
|
||||
<description>Surgically tightens the pawn's Vagina by 25%.</description>
|
||||
<!--<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty</workerClass>-->
|
||||
<jobString>tightening Vagina</jobString>
|
||||
<effectWorking>Surgery</effectWorking>
|
||||
<soundWorking>Recipe_Surgery</soundWorking>
|
||||
<workSpeedStat>MedicalOperationSpeed</workSpeedStat>
|
||||
<workSkill>Medicine</workSkill>
|
||||
<workSkillLearnFactor>0.2</workSkillLearnFactor>
|
||||
<workAmount>400</workAmount>
|
||||
<anesthetize>true</anesthetize>
|
||||
<recipeUsers>
|
||||
<li>Human</li>
|
||||
</recipeUsers>
|
||||
<surgerySuccessChanceFactor>95</surgerySuccessChanceFactor>
|
||||
<ingredients>
|
||||
<li>
|
||||
<filter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</filter>
|
||||
<count>1</count>
|
||||
</li>
|
||||
</ingredients>
|
||||
<fixedIngredientFilter>
|
||||
<categories>
|
||||
<li>Medicine</li>
|
||||
</categories>
|
||||
</fixedIngredientFilter>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Micro</defName>
|
||||
<label>vaginoplasty (micro)</label>
|
||||
<description>Surgically gives the pawn an micro Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Micro</workerClass>
|
||||
<jobString>alter Vagina size to micro</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Tight</defName>
|
||||
<label>vaginoplasty (tight)</label>
|
||||
<description>Surgically gives the pawn an tight Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Tight</workerClass>
|
||||
<jobString>alter Vagina size to tight</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Average</defName>
|
||||
<label>vaginoplasty (average)</label>
|
||||
<description>Surgically gives the pawn an average Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Average</workerClass>
|
||||
<jobString>alter Vagina size to average</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Accomodating</defName>
|
||||
<label>vaginoplasty (accomodating)</label>
|
||||
<description>Surgically gives the pawn an accomodating Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Accomodating</workerClass>
|
||||
<jobString>alter Vagina size to accomodating</jobString>
|
||||
</RecipeDef>
|
||||
<RecipeDef ParentName="Surgery_Vaginoplasty_X">
|
||||
<defName>Surgery_Vaginoplasty_Cavernous</defName>
|
||||
<label>vaginoplasty (cavernous)</label>
|
||||
<description>Surgically gives the pawn an cavernous Vagina.</description>
|
||||
<workerClass>RJW_PlasticSurgeries.Recipe_Surgery_Vaginoplasty_Cavernous</workerClass>
|
||||
<jobString>alter Vagina size to cavernous</jobString>
|
||||
</RecipeDef>
|
||||
</Defs>
|
35
Source/RJW_PlasticSurgeries/Properties/AssemblyInfo.cs
Normal file
35
Source/RJW_PlasticSurgeries/Properties/AssemblyInfo.cs
Normal file
|
@ -0,0 +1,35 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("RJW PlasticSurgeries")]
|
||||
[assembly: AssemblyDescription("Surgically alter pawn's genitals.")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("RJW_PlasticSurgeries")]
|
||||
[assembly: AssemblyCopyright("©2022 Stardust3D")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("eefbb469-e5e0-48be-bf4d-c5e838d1362b")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("4945.0.1.5")]
|
||||
[assembly: AssemblyFileVersion("4945.0.1.5")]
|
106
Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries.csproj
Normal file
106
Source/RJW_PlasticSurgeries/RJW_PlasticSurgeries.csproj
Normal file
|
@ -0,0 +1,106 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{F17C6B3F-BA9D-4133-A201-1265A64BCB71}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RJW_PlasticSurgeries</RootNamespace>
|
||||
<AssemblyName>RJW_PlasticSurgeries</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>portable</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\Assemblies\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<DocumentationFile>
|
||||
</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>portable</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\Assemblies\</OutputPath>
|
||||
<DefineConstants>
|
||||
</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<DocumentationFile>..\..\Assemblies\RJW_PlasticSurgeries.xml</DocumentationFile>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<DelaySign>false</DelaySign>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Assembly-CSharp">
|
||||
<HintPath>..\..\..\..\RimWorldWin64_Data\Managed\Assembly-CSharp.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Dyspareunia">
|
||||
<HintPath>..\..\..\dyspareunia\Assemblies\Dyspareunia.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="HugsLib">
|
||||
<HintPath>..\..\..\..\..\..\workshop\content\294100\818773962\Assemblies\HugsLib.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="RJW">
|
||||
<HintPath>..\..\..\rjw-base\1.3\Assemblies\RJW.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Core" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Mod.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Recipe_Surgery_Mammoplasty.cs" />
|
||||
<Compile Include="Recipe_Surgery_Penoplasty.cs" />
|
||||
<Compile Include="Recipe_Surgery_Sphinctoplasty.cs" />
|
||||
<Compile Include="Recipe_Surgery_Beautify.cs" />
|
||||
<Compile Include="Recipe_Surgery_Vaginoplasty.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="..\..\About\About.xml">
|
||||
<Link>About\About.xml</Link>
|
||||
</Content>
|
||||
<Content Include="..\..\About\Manifest.xml">
|
||||
<Link>About\Manifest.xml</Link>
|
||||
</Content>
|
||||
<Content Include="..\..\Defs\Recipe_Surgery\Recipes_Surgery_Beautify.xml">
|
||||
<Link>Defs\Recipe_Surgery\Recipes_Surgery_Beautify.xml</Link>
|
||||
</Content>
|
||||
<Content Include="..\..\Defs\Recipe_Surgery\Recipes_Surgery_Mammoplasty.xml">
|
||||
<Link>Defs\Recipe_Surgery\Recipes_Surgery_Mammoplasty.xml</Link>
|
||||
</Content>
|
||||
<Content Include="..\..\Defs\Recipe_Surgery\Recipes_Surgery_Penoplasty.xml">
|
||||
<Link>Defs\Recipe_Surgery\Recipes_Surgery_Penoplasty.xml</Link>
|
||||
</Content>
|
||||
<Content Include="..\..\Defs\Recipe_Surgery\Recipes_Surgery_Sphinctoplasty.xml">
|
||||
<Link>Defs\Recipe_Surgery\Recipes_Surgery_Sphinctoplasty.xml</Link>
|
||||
</Content>
|
||||
<Content Include="..\..\Defs\Recipe_Surgery\Recipes_Surgery_Vaginoplasty.xml">
|
||||
<Link>Defs\Recipe_Surgery\Recipes_Surgery_Vaginoplasty.xml</Link>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="RJW_PlasticSurgeries.snk" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,54 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{EB363145-6DB4-42CB-B2CB-82DA7AE02A97}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RJW_PlasticSurgeries</RootNamespace>
|
||||
<AssemblyName>RJW_PlasticSurgeries</AssemblyName>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
<LangVersion>11</LangVersion>
|
||||
<Copyright>©2024 Stardust3D</Copyright>
|
||||
<Company>Stardust3D</Company>
|
||||
<AssemblyVersion>5400.0.1.8</AssemblyVersion>
|
||||
<FileVersion>5400.0.1.8</FileVersion>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
|
||||
<Description>Surgically alter pawn's genitals.</Description>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<OutputPath>bin\Release\1.3\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<None Include="RJW_PlasticSurgeries.snk" />
|
||||
<None Remove="1.4\**" />
|
||||
<None Remove="1.5\**" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Lib.Harmony" Version="2.3.3" />
|
||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||
<PackageReference Include="Krafs.Rimworld.Ref" Version="1.3.3389" />
|
||||
<PackageReference Include="UnlimitedHugs.Rimworld.HugsLib" Version="11.0.3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="LicentiaLabs">
|
||||
<HintPath>..\..\..\licentia-labs\Assemblies\LicentiaLabs.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="RJW">
|
||||
<HintPath>..\..\..\rjw-base\1.3\Assemblies\RJW.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Remove="1.4\**" />
|
||||
<Compile Remove="1.5\**" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Remove="1.4\**" />
|
||||
<EmbeddedResource Remove="1.5\**" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,55 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{F17C6B3F-BA9D-4133-A201-1265A64BCB72}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RJW_PlasticSurgeries</RootNamespace>
|
||||
<AssemblyName>RJW_PlasticSurgeries</AssemblyName>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
<LangVersion>11</LangVersion>
|
||||
<Copyright>©2024 Stardust3D</Copyright>
|
||||
<Company>Stardust3D</Company>
|
||||
<AssemblyVersion>5400.0.1.8</AssemblyVersion>
|
||||
<FileVersion>5400.0.1.8</FileVersion>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
|
||||
<Description>Surgically alter pawn's genitals.</Description>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<OutputPath>bin\Release\1.4\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<None Include="RJW_PlasticSurgeries.snk" />
|
||||
<None Remove="1.3\**" />
|
||||
<None Remove="1.5\**" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Lib.Harmony" Version="2.3.3" />
|
||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||
<PackageReference Include="Krafs.Rimworld.Ref" Version="1.4.3901" />
|
||||
<PackageReference Include="UnlimitedHugs.Rimworld.HugsLib" Version="11.0.3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="LicentiaLabs">
|
||||
<HintPath>..\..\..\licentia-labs\Assemblies\LicentiaLabs.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="RJW">
|
||||
<HintPath>..\..\..\rjw-base\1.4\Assemblies\RJW.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Remove="1.3\**" />
|
||||
<Compile Remove="1.5\**" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Remove="1.3\**" />
|
||||
<EmbeddedResource Remove="1.5\**" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -1,56 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{02aa6d85-913f-44b8-9c32-6e8024261824}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RJW_PlasticSurgeries</RootNamespace>
|
||||
<AssemblyName>RJW_PlasticSurgeries</AssemblyName>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
<LangVersion>11</LangVersion>
|
||||
<Copyright>©2024 Stardust3D</Copyright>
|
||||
<Company>Stardust3D</Company>
|
||||
<AssemblyVersion>5400.0.1.8</AssemblyVersion>
|
||||
<FileVersion>5400.0.1.8</FileVersion>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>RJW_PlasticSurgeries.snk</AssemblyOriginatorKeyFile>
|
||||
<Description>Surgically alter pawn's genitals.</Description>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<OutputPath>bin\Release\1.5\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<None Include="RJW_PlasticSurgeries.snk" />
|
||||
<None Remove="1.3\**" />
|
||||
<None Remove="1.4\**" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Lib.Harmony" Version="2.3.3" />
|
||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||
<PackageReference Include="Krafs.Rimworld.Ref" Version="1.5.4104" />
|
||||
<PackageReference Include="UnlimitedHugs.Rimworld.HugsLib" Version="11.0.3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="LicentiaLabs">
|
||||
<HintPath>..\..\..\licentia-labs\Assemblies\LicentiaLabs.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="RJW">
|
||||
<HintPath>..\..\..\rjw-base\1.5\Assemblies\RJW.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Remove="1.3\**" />
|
||||
<Compile Remove="1.4\**" />
|
||||
<Compile Remove="Recipe_Plastic_Surgery.cs" />
|
||||
<Compile Remove="Recipe_Surgery_Beautify.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Remove="1.3\**" />
|
||||
<EmbeddedResource Remove="1.4\**" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,53 +0,0 @@
|
|||
using System.Collections.Generic;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using Verse;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
public abstract class Recipe_Plastic_Surgery : Recipe_Surgery
|
||||
{
|
||||
protected readonly bool HasLicentia = ModLister.HasActiveModWithName("RimJobWorld - Licentia Labs");
|
||||
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
var part = GetPartCandidate(pawn);
|
||||
if (part != null)
|
||||
{
|
||||
var hediffs = Genital_Helper.get_PartsHediffList(pawn, part);
|
||||
if (HasPart(pawn, hediffs)) yield return part;
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract BodyPartRecord GetPartCandidate(Pawn pawn);
|
||||
protected abstract bool HasPart(Pawn pawn, List<Hediff> hediffs);
|
||||
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract void SurgeryResult(Pawn pawn);
|
||||
|
||||
protected void SurgeryX(Pawn pawn, float severity, bool damagePart = false)
|
||||
{
|
||||
GetHediffs(pawn).ForEach(hed =>
|
||||
{
|
||||
hed.Severity = severity;
|
||||
if (damagePart && HasLicentia)
|
||||
{
|
||||
var (type, damage) = GetLicentiaDamage();
|
||||
LicentiaLabs.DamageHelper.ApplyDamage(pawn, hed.Part, type, damage);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected abstract List<Hediff> GetHediffs(Pawn pawn);
|
||||
protected abstract (HediffDef, float) GetLicentiaDamage();
|
||||
}
|
||||
}
|
|
@ -1,39 +1,57 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using Verse;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
public abstract class Recipe_Surgery_Mammoplasty : Recipe_Plastic_Surgery
|
||||
public abstract class Recipe_Surgery_Mammoplasty : Recipe_Surgery
|
||||
{
|
||||
protected override BodyPartRecord GetPartCandidate(Pawn pawn)
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
return Genital_Helper.get_genitalsBPR(pawn);
|
||||
var part = Genital_Helper.get_genitalsBPR(pawn);
|
||||
if (part != null)
|
||||
{
|
||||
var hediffs = Genital_Helper.get_PartsHediffList(pawn, part);
|
||||
if (Genital_Helper.has_breasts(pawn, hediffs) && pawn.GetBreastList().Any(hed => hed.Severity >= 0.02f))
|
||||
yield return part;
|
||||
}
|
||||
}
|
||||
|
||||
protected override bool HasPart(Pawn pawn, List<Hediff> hediffs)
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
return Genital_Helper.has_breasts(pawn, hediffs) &&
|
||||
pawn.GetBreastList().Any(hed => hed.Severity >= 0.02f);
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
protected override List<Hediff> GetHediffs(Pawn pawn)
|
||||
{
|
||||
throw new NotSupportedException();
|
||||
}
|
||||
public abstract void SurgeryResult(Pawn pawn);
|
||||
/*{
|
||||
pawn.GetBreastList().ForEach(hed => hed.Severity = Math.Min(1.0f, hed.Severity * 1.25f));
|
||||
//Log.Message($"Cup sizes: {pawn.GetBreastList().SelectMany(hed => hed.def.GetModExtension<PartSizeExtension>().cupSizes.Join()).Join(delimiter: ";")}");
|
||||
float val = 0;
|
||||
PartSizeExtension.TryGetCupSize(pawn.GetBreastList().First(), out val);
|
||||
pawn.GetBreastList().First().def.stages.First();
|
||||
Log.Message($"Cup size: {val}");
|
||||
}*/
|
||||
|
||||
protected void SurgeryCupX(Pawn pawn, int stage)
|
||||
{
|
||||
pawn.GetBreastList().ForEach(hed =>
|
||||
{
|
||||
float severity;
|
||||
if (TryGetSeverityFromSize(hed, stage, out severity)) hed.Severity = severity;
|
||||
if (TryGetSeverityFromSize(hed, stage, out severity))
|
||||
{
|
||||
hed.Severity = severity;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private static bool TryGetSeverityFromSize(Hediff hediff, float cupSize, out float severity)
|
||||
static bool TryGetSeverityFromSize(Hediff hediff, float cupSize, out float severity)
|
||||
{
|
||||
if (!hediff.def.HasModExtension<PartSizeExtension>())
|
||||
{
|
||||
|
@ -55,151 +73,95 @@ namespace RJW_PlasticSurgeries
|
|||
severity = curve.Evaluate(cupSize);
|
||||
return true;
|
||||
}
|
||||
|
||||
protected override (HediffDef, float) GetLicentiaDamage() => throw new NotSupportedException();
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_A : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 1);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 1);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_B : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 2);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 2);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_C : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 3);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 3);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_D : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 4);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 4);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_E : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 6);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 6);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_F : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 7);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 7);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_G : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 9);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 9);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_H : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 11);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 11);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_J : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 13);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 13);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_K : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 15);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 15);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_L : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 17);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 17);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_M : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 19);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 19);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_N : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 21);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 21);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_O : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 23);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 23);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_P : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 25);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 25);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_Q : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 27);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 27);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_R : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 29);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 29);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Mammoplasty_Unknown : Recipe_Surgery_Mammoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryCupX(pawn, 31);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryCupX(pawn, 31);
|
||||
}
|
||||
}
|
|
@ -1,77 +1,78 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using LicentiaLabs;
|
||||
using Dyspareunia;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using Verse;
|
||||
using DamageDefOf = Dyspareunia.DamageDefOf;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
public abstract class Recipe_Surgery_Penoplasty : Recipe_Plastic_Surgery
|
||||
public abstract class Recipe_Surgery_Penoplasty : Recipe_Surgery
|
||||
{
|
||||
protected override BodyPartRecord GetPartCandidate(Pawn pawn)
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
return Genital_Helper.get_genitalsBPR(pawn);
|
||||
}
|
||||
|
||||
protected override bool HasPart(Pawn pawn, List<Hediff> hediffs)
|
||||
{
|
||||
return Genital_Helper.has_penis_fertile(pawn, hediffs) ||
|
||||
Genital_Helper.has_penis_infertile(pawn, hediffs);
|
||||
}
|
||||
|
||||
protected override List<Hediff> GetHediffs(Pawn pawn)
|
||||
{
|
||||
return pawn.GetGenitalsList().FindAll(Genital_Helper.is_penis);
|
||||
}
|
||||
|
||||
protected override (HediffDef, float) GetLicentiaDamage()
|
||||
{
|
||||
if (HasLicentia)
|
||||
var part = Genital_Helper.get_genitalsBPR(pawn);
|
||||
if (part != null)
|
||||
{
|
||||
return (Licentia.HediffDefs.StretchTear, 0.2f);
|
||||
var hediffs = Genital_Helper.get_PartsHediffList(pawn, part);
|
||||
if (Genital_Helper.has_penis_fertile(pawn, hediffs) ||
|
||||
Genital_Helper.has_penis_infertile(pawn, hediffs)) yield return part;
|
||||
}
|
||||
}
|
||||
|
||||
throw new NotSupportedException();
|
||||
/// <inheritdoc />
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
public abstract void SurgeryResult(Pawn pawn);
|
||||
|
||||
protected void SurgeryX(Pawn pawn, float severity)
|
||||
{
|
||||
pawn.GetGenitalsList().FindAll(Genital_Helper.is_penis).ForEach(hed =>
|
||||
{
|
||||
hed.Severity = severity;
|
||||
try
|
||||
{
|
||||
PenetrationUtility.AddDamageHediff(DamageDefOf.SexStretch, 0.5f, hed, null);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.Error("Try enabling Dyspareunia for sore genitals");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Penoplasty_Micro : Recipe_Surgery_Penoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.1f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.1f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Penoplasty_Small : Recipe_Surgery_Penoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.3f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.3f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Penoplasty_Average : Recipe_Surgery_Penoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.5f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.5f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Penoplasty_Large : Recipe_Surgery_Penoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.7f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.7f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Penoplasty_Huge : Recipe_Surgery_Penoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.9f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.9f);
|
||||
}
|
||||
}
|
|
@ -1,76 +1,80 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using LicentiaLabs;
|
||||
using Dyspareunia;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using Verse;
|
||||
using DamageDefOf = Dyspareunia.DamageDefOf;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
public abstract class Recipe_Surgery_Sphinctoplasty : Recipe_Plastic_Surgery
|
||||
public abstract class Recipe_Surgery_Sphinctoplasty : Recipe_Surgery
|
||||
{
|
||||
protected override BodyPartRecord GetPartCandidate(Pawn pawn)
|
||||
{
|
||||
return Genital_Helper.get_anusBPR(pawn);
|
||||
}
|
||||
private readonly bool hasDyspareunia = ModLister.HasActiveModWithName("Dyspareunia");
|
||||
|
||||
protected override bool HasPart(Pawn pawn, List<Hediff> hediffs)
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
return Genital_Helper.has_anus(pawn, hediffs);
|
||||
}
|
||||
|
||||
protected override List<Hediff> GetHediffs(Pawn pawn)
|
||||
{
|
||||
return pawn.GetAnusList();
|
||||
}
|
||||
|
||||
protected override (HediffDef, float) GetLicentiaDamage()
|
||||
{
|
||||
if (HasLicentia)
|
||||
var part = Genital_Helper.get_anusBPR(pawn);
|
||||
if (part != null)
|
||||
{
|
||||
return (Licentia.HediffDefs.StretchTear, 0.2f);
|
||||
var hediffs = Genital_Helper.get_PartsHediffList(pawn, part);
|
||||
if (Genital_Helper.has_anus(pawn, hediffs)) yield return part;
|
||||
}
|
||||
}
|
||||
|
||||
throw new NotSupportedException();
|
||||
/// <inheritdoc />
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
public abstract void SurgeryResult(Pawn pawn);
|
||||
|
||||
protected void SurgeryX(Pawn pawn, float severity)
|
||||
{
|
||||
pawn.GetAnusList().ForEach(hed =>
|
||||
{
|
||||
hed.Severity = severity;
|
||||
if (hasDyspareunia)
|
||||
{
|
||||
DamageHediff(hed);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private static void DamageHediff(Hediff hed)
|
||||
{
|
||||
PenetrationUtility.AddDamageHediff(DamageDefOf.SexStretch, 0.5f, hed, null);
|
||||
}
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Sphinctoplasty_Micro : Recipe_Surgery_Sphinctoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.1f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.1f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Sphinctoplasty_Tight : Recipe_Surgery_Sphinctoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.3f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.3f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Sphinctoplasty_Average : Recipe_Surgery_Sphinctoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.5f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.5f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Sphinctoplasty_Accomodating : Recipe_Surgery_Sphinctoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.7f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.7f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Sphinctoplasty_Cavernous : Recipe_Surgery_Sphinctoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.9f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.9f);
|
||||
}
|
||||
}
|
|
@ -1,76 +1,80 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using LicentiaLabs;
|
||||
using Dyspareunia;
|
||||
using RimWorld;
|
||||
using rjw;
|
||||
using Verse;
|
||||
using DamageDefOf = Dyspareunia.DamageDefOf;
|
||||
|
||||
namespace RJW_PlasticSurgeries
|
||||
{
|
||||
public abstract class Recipe_Surgery_Vaginoplasty : Recipe_Plastic_Surgery
|
||||
public abstract class Recipe_Surgery_Vaginoplasty : Recipe_Surgery
|
||||
{
|
||||
protected override BodyPartRecord GetPartCandidate(Pawn pawn)
|
||||
{
|
||||
return Genital_Helper.get_genitalsBPR(pawn);
|
||||
}
|
||||
private readonly bool hasDyspareunia = ModLister.HasActiveModWithName("Dyspareunia");
|
||||
|
||||
protected override bool HasPart(Pawn pawn, List<Hediff> hediffs)
|
||||
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
|
||||
{
|
||||
return Genital_Helper.has_vagina(pawn, hediffs);
|
||||
}
|
||||
|
||||
protected override List<Hediff> GetHediffs(Pawn pawn)
|
||||
{
|
||||
return pawn.GetGenitalsList().FindAll(Genital_Helper.is_vagina);
|
||||
}
|
||||
|
||||
protected override (HediffDef, float) GetLicentiaDamage()
|
||||
{
|
||||
if (HasLicentia)
|
||||
var part = Genital_Helper.get_genitalsBPR(pawn);
|
||||
if (part != null)
|
||||
{
|
||||
return (Licentia.HediffDefs.StretchTear, 0.2f);
|
||||
var hediffs = Genital_Helper.get_PartsHediffList(pawn, part);
|
||||
if (Genital_Helper.has_vagina(pawn, hediffs)) yield return part;
|
||||
}
|
||||
}
|
||||
|
||||
throw new NotSupportedException();
|
||||
/// <inheritdoc />
|
||||
public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients,
|
||||
Bill bill)
|
||||
{
|
||||
if (billDoer != null)
|
||||
{
|
||||
TaleRecorder.RecordTale(TaleDefOf.DidSurgery, billDoer, pawn);
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
}
|
||||
|
||||
public abstract void SurgeryResult(Pawn pawn);
|
||||
|
||||
protected void SurgeryX(Pawn pawn, float severity)
|
||||
{
|
||||
pawn.GetGenitalsList().FindAll(Genital_Helper.is_vagina).ForEach(hed =>
|
||||
{
|
||||
hed.Severity = severity;
|
||||
if (hasDyspareunia)
|
||||
{
|
||||
DamageHediff(hed);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private static void DamageHediff(Hediff hed)
|
||||
{
|
||||
PenetrationUtility.AddDamageHediff(DamageDefOf.SexStretch, 0.5f, hed, null);
|
||||
}
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Vaginoplasty_Micro : Recipe_Surgery_Vaginoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.1f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.1f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Vaginoplasty_Tight : Recipe_Surgery_Vaginoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.3f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.3f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Vaginoplasty_Average : Recipe_Surgery_Vaginoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.5f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.5f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Vaginoplasty_Accomodating : Recipe_Surgery_Vaginoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.7f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.7f);
|
||||
}
|
||||
|
||||
public class Recipe_Surgery_Vaginoplasty_Cavernous : Recipe_Surgery_Vaginoplasty
|
||||
{
|
||||
protected override void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
SurgeryX(pawn, 0.9f, true);
|
||||
}
|
||||
public override void SurgeryResult(Pawn pawn) => SurgeryX(pawn, 0.9f);
|
||||
}
|
||||
}
|
|
@ -1,16 +1,24 @@
|
|||
/*
|
||||
* This file was generated by the Gradle "init" task.
|
||||
*
|
||||
* This is a general purpose Gradle build.
|
||||
* Learn more about Gradle by exploring our samples at https://docs.gradle.org/7.3/samples
|
||||
* This project uses @Incubating APIs which are subject to change.
|
||||
*/
|
||||
|
||||
plugins {
|
||||
alias(libs.plugins.msbuild)
|
||||
alias(libs.plugins.versions)
|
||||
id("com.ullink.msbuild") version "3.15"
|
||||
//id("com.ullink.nunit") version "1.12"
|
||||
}
|
||||
|
||||
version = "5400.0.1.8"
|
||||
version = "4945.0.1.5"
|
||||
val friendlyName = "rjw-plasticsurgeries"
|
||||
|
||||
tasks.register<com.ullink.Msbuild>("buildC#_1.3") {
|
||||
tasks.register<com.ullink.Msbuild>("buildC#") {
|
||||
// either a solution file
|
||||
// solutionFile = "${rootProject.name}.sln"
|
||||
// or a project file (.csproj or .vbproj)
|
||||
projectFile = file("${rootProject.name}/${rootProject.name}_1.3.csproj")
|
||||
projectFile = file("${rootProject.name}/${rootProject.name}.csproj")
|
||||
|
||||
targets = listOf("Clean", "Rebuild")
|
||||
configuration = "Release"
|
||||
|
@ -18,34 +26,10 @@ tasks.register<com.ullink.Msbuild>("buildC#_1.3") {
|
|||
// destinationDir = "build/msbuild/bin"
|
||||
}
|
||||
|
||||
tasks.register<com.ullink.Msbuild>("buildC#_1.4") {
|
||||
// either a solution file
|
||||
// solutionFile = "${rootProject.name}.sln"
|
||||
// or a project file (.csproj or .vbproj)
|
||||
projectFile = file("${rootProject.name}/${rootProject.name}_1.4.csproj")
|
||||
|
||||
targets = listOf("Clean", "Rebuild")
|
||||
configuration = "Release"
|
||||
|
||||
// destinationDir = "build/msbuild/bin"
|
||||
}
|
||||
|
||||
tasks.register<com.ullink.Msbuild>("buildC#_1.5") {
|
||||
// either a solution file
|
||||
// solutionFile = "${rootProject.name}.sln"
|
||||
// or a project file (.csproj or .vbproj)
|
||||
projectFile = file("${rootProject.name}/${rootProject.name}_1.5.csproj")
|
||||
|
||||
targets = listOf("Clean", "Rebuild")
|
||||
configuration = "Release"
|
||||
|
||||
// destinationDir = "build/msbuild/bin"
|
||||
}
|
||||
|
||||
tasks.register<Exec>("sign_1.3") {
|
||||
dependsOn("buildC#_1.3")
|
||||
workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.3/net472")
|
||||
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe"
|
||||
tasks.register<Exec>("sign") {
|
||||
dependsOn("buildC#")
|
||||
workingDir = project.projectDir.resolve("${rootProject.name}/obj/Release")
|
||||
executable = "H:\\Windows Kits\\10\\bin\\10.0.22000.0\\x64\\signtool.exe"
|
||||
args = listOf(
|
||||
"sign",
|
||||
"/seal",
|
||||
|
@ -60,143 +44,46 @@ tasks.register<Exec>("sign_1.3") {
|
|||
)
|
||||
}
|
||||
|
||||
tasks.register<Exec>("sign_1.4") {
|
||||
dependsOn("buildC#_1.4")
|
||||
workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.4/net472")
|
||||
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe"
|
||||
args = listOf(
|
||||
"sign",
|
||||
"/seal",
|
||||
"/t",
|
||||
"http://timestamp.digicert.com",
|
||||
"/a",
|
||||
"/n",
|
||||
"Stardust3D",
|
||||
"/fd",
|
||||
"certHash",
|
||||
"${rootProject.name}.dll"
|
||||
)
|
||||
tasks.register("copyDll") {
|
||||
dependsOn("copyDll_Assemblies", "copyDll_1.3")
|
||||
}
|
||||
|
||||
tasks.register<Exec>("sign_1.5") {
|
||||
dependsOn("buildC#_1.5")
|
||||
workingDir = project.projectDir.resolve("${rootProject.name}/bin/Release/1.5/net472")
|
||||
executable = "H:\\Windows Kits\\10\\bin\\10.0.22621.0\\x64\\signtool.exe"
|
||||
args = listOf(
|
||||
"sign",
|
||||
"/seal",
|
||||
"/t",
|
||||
"http://timestamp.digicert.com",
|
||||
"/a",
|
||||
"/n",
|
||||
"Stardust3D",
|
||||
"/fd",
|
||||
"certHash",
|
||||
"${rootProject.name}.dll"
|
||||
)
|
||||
}
|
||||
|
||||
tasks.register("copy") {
|
||||
dependsOn("copy_1.3", "copy_1.4", "copy_1.5", "copy_about")
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copy_about") {
|
||||
from(project.projectDir.resolve("${rootProject.name}/About"))
|
||||
into(project.projectDir.parentFile.resolve("About"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copy_1.3") {
|
||||
dependsOn("copyDll_1.3")
|
||||
dependsOn("copyDefs_1.3")
|
||||
|
||||
from(project.projectDir.resolve("${rootProject.name}/1.3")){
|
||||
exclude("**/*.cs")
|
||||
}
|
||||
into(project.projectDir.parentFile.resolve("1.3"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copy_1.4") {
|
||||
dependsOn("copyDll_1.4")
|
||||
dependsOn("copyDefs_1.4")
|
||||
|
||||
from(project.projectDir.resolve("${rootProject.name}/1.4")){
|
||||
exclude("**/*.cs")
|
||||
}
|
||||
into(project.projectDir.parentFile.resolve("1.4"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copy_1.5") {
|
||||
dependsOn("copyDll_1.5")
|
||||
dependsOn("copyDefs_1.5")
|
||||
|
||||
from(project.projectDir.resolve("${rootProject.name}/1.5")){
|
||||
exclude("**/*.cs")
|
||||
}
|
||||
into(project.projectDir.parentFile.resolve("1.5"))
|
||||
tasks.register<Copy>("copyDll_Assemblies") {
|
||||
dependsOn("sign", "clean")
|
||||
from(project.projectDir.resolve("${rootProject.name}/obj/Release/${rootProject.name}.dll"))
|
||||
into(project.projectDir.parentFile.resolve("Assemblies"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copyDll_1.3") {
|
||||
dependsOn("sign_1.3")
|
||||
from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.3/net472/${rootProject.name}.dll"))
|
||||
dependsOn("sign", "clean")
|
||||
from(project.projectDir.resolve("${rootProject.name}/obj/Release/${rootProject.name}.dll"))
|
||||
into(project.projectDir.parentFile.resolve("1.3/Assemblies"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copyDll_1.4") {
|
||||
dependsOn("sign_1.4")
|
||||
from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.4/net472/${rootProject.name}.dll"))
|
||||
into(project.projectDir.parentFile.resolve("1.4/Assemblies"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copyDll_1.5") {
|
||||
dependsOn("sign_1.5")
|
||||
from(project.projectDir.resolve("${rootProject.name}/bin/Release/1.5/net472/${rootProject.name}.dll"))
|
||||
into(project.projectDir.parentFile.resolve("1.5/Assemblies"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copyDefs_1.3") {
|
||||
from(project.projectDir.resolve("${rootProject.name}/Defs"))
|
||||
into(project.projectDir.parentFile.resolve("1.3/Defs"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copyDefs_1.4") {
|
||||
from(project.projectDir.resolve("${rootProject.name}/Defs"))
|
||||
into(project.projectDir.parentFile.resolve("1.4/Defs"))
|
||||
}
|
||||
|
||||
tasks.register<Copy>("copyDefs_1.5") {
|
||||
from(project.projectDir.resolve("${rootProject.name}/Defs"))
|
||||
into(project.projectDir.parentFile.resolve("1.5/Defs"))
|
||||
}
|
||||
|
||||
tasks.register<Zip>("buildZip") {
|
||||
dependsOn("clean", ":copy")
|
||||
dependsOn(":copyDll")
|
||||
into("$friendlyName/1.3") {
|
||||
from(project.projectDir.parentFile.resolve("1.3"))
|
||||
}
|
||||
into("$friendlyName/1.4") {
|
||||
from(project.projectDir.parentFile.resolve("1.4"))
|
||||
}
|
||||
into("$friendlyName/1.5") {
|
||||
from(project.projectDir.parentFile.resolve("1.5"))
|
||||
}
|
||||
into("$friendlyName/About") {
|
||||
from(project.projectDir.parentFile.resolve("About"))
|
||||
}
|
||||
into("$friendlyName/Assemblies") {
|
||||
from(project.projectDir.parentFile.resolve("Assemblies"))
|
||||
}
|
||||
into("$friendlyName/Defs") {
|
||||
from(project.projectDir.parentFile.resolve("Defs"))
|
||||
}
|
||||
into("$friendlyName/Source/${rootProject.name}") {
|
||||
from(project.projectDir.parentFile.resolve("Source/${rootProject.name}"))
|
||||
excludes.add("**/obj/**")
|
||||
excludes.add("**/bin/**")
|
||||
}
|
||||
}
|
||||
|
||||
tasks.clean {
|
||||
delete.add(project.projectDir.parentFile.resolve("1.3"))
|
||||
delete.add(project.projectDir.parentFile.resolve("1.4"))
|
||||
delete.add(project.projectDir.parentFile.resolve("1.5"))
|
||||
delete.add(project.projectDir.parentFile.resolve("About"))
|
||||
dependsOn("buildC#")
|
||||
delete.add(project.projectDir.parentFile.resolve("Assemblies"))
|
||||
delete.add(project.projectDir.parentFile.resolve("1.3/Assemblies"))
|
||||
}
|
||||
|
||||
tasks.build {
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
{
|
||||
"sdk": {
|
||||
"version": "8.0.0",
|
||||
"rollForward": "latestMinor",
|
||||
"allowPrerelease": false
|
||||
}
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
[versions]
|
||||
versions = "0.51.0"
|
||||
msbuild = "4.6"
|
||||
|
||||
[libraries]
|
||||
|
||||
[bundles]
|
||||
|
||||
[plugins]
|
||||
versions = { id = "com.github.ben-manes.versions", version.ref = "versions" }
|
||||
msbuild = { id = "com.ullink.msbuild", version.ref = "msbuild" }
|
BIN
Source/gradle/wrapper/gradle-wrapper.jar
vendored
BIN
Source/gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
|
@ -1,7 +1,5 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
|
||||
networkTimeout=10000
|
||||
validateDistributionUrl=true
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
|
51
Source/gradlew
vendored
51
Source/gradlew
vendored
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Copyright © 2015-2021 the original authors.
|
||||
# Copyright © 2015-2021 the original authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
|
@ -32,10 +32,10 @@
|
|||
# Busybox and similar reduced shells will NOT work, because this script
|
||||
# requires all of these POSIX shell features:
|
||||
# * functions;
|
||||
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
|
||||
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
|
||||
# * compound commands having a testable exit status, especially «case»;
|
||||
# * various built-in commands including «command», «set», and «ulimit».
|
||||
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
|
||||
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
|
||||
# * compound commands having a testable exit status, especially «case»;
|
||||
# * various built-in commands including «command», «set», and «ulimit».
|
||||
#
|
||||
# Important for patching:
|
||||
#
|
||||
|
@ -55,7 +55,7 @@
|
|||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
|
@ -80,11 +80,13 @@ do
|
|||
esac
|
||||
done
|
||||
|
||||
# This is normally unused
|
||||
# shellcheck disable=SC2034
|
||||
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=${0##*/}
|
||||
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
|
||||
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD=maximum
|
||||
|
@ -131,29 +133,22 @@ location of your Java installation."
|
|||
fi
|
||||
else
|
||||
JAVACMD=java
|
||||
if ! command -v java >/dev/null 2>&1
|
||||
then
|
||||
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
case $MAX_FD in #(
|
||||
max*)
|
||||
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC2039,SC3045
|
||||
MAX_FD=$( ulimit -H -n ) ||
|
||||
warn "Could not query maximum file descriptor limit"
|
||||
esac
|
||||
case $MAX_FD in #(
|
||||
'' | soft) :;; #(
|
||||
*)
|
||||
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC2039,SC3045
|
||||
ulimit -n "$MAX_FD" ||
|
||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||
esac
|
||||
|
@ -198,15 +193,11 @@ if "$cygwin" || "$msys" ; then
|
|||
done
|
||||
fi
|
||||
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Collect all arguments for the java command:
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
|
||||
# and any embedded shellness will be escaped.
|
||||
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
|
||||
# treated as '${Hostname}' itself on the command line.
|
||||
# Collect all arguments for the java command;
|
||||
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
|
||||
# shell script including quotes and variable substitutions, so put them in
|
||||
# double quotes to make sure that they get re-expanded; and
|
||||
# * put everything else in single quotes, so that it's not re-expanded.
|
||||
|
||||
set -- \
|
||||
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
||||
|
@ -214,12 +205,6 @@ set -- \
|
|||
org.gradle.wrapper.GradleWrapperMain \
|
||||
"$@"
|
||||
|
||||
# Stop when "xargs" is not available.
|
||||
if ! command -v xargs >/dev/null 2>&1
|
||||
then
|
||||
die "xargs is not available"
|
||||
fi
|
||||
|
||||
# Use "xargs" to parse quoted args.
|
||||
#
|
||||
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
|
||||
|
|
35
Source/gradlew.bat
vendored
35
Source/gradlew.bat
vendored
|
@ -14,7 +14,7 @@
|
|||
@rem limitations under the License.
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
|
@ -25,8 +25,7 @@
|
|||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%"=="" set DIRNAME=.
|
||||
@rem This is normally unused
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
|
@ -41,13 +40,13 @@ if defined JAVA_HOME goto findJavaFromJavaHome
|
|||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if %ERRORLEVEL% equ 0 goto execute
|
||||
if "%ERRORLEVEL%" == "0" goto execute
|
||||
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
|
@ -57,11 +56,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
|||
|
||||
if exist "%JAVA_EXE%" goto execute
|
||||
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
|
@ -76,15 +75,13 @@ set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
|||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if %ERRORLEVEL% equ 0 goto mainEnd
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
set EXIT_CODE=%ERRORLEVEL%
|
||||
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
||||
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
||||
exit /b %EXIT_CODE%
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
|
Loading…
Reference in a new issue