This commit is contained in:
moreoreganostodump 2021-07-30 23:06:05 +09:00
parent cdfde8cea5
commit 595ad1318c
17 changed files with 34 additions and 31 deletions

Binary file not shown.

View File

@ -39,7 +39,7 @@
<Option6_Label>cum fertility decay ratio per hour</Option6_Label>
<Option6_Desc>cum will lose fertility about this ratio&#10;this value affects on the fertility chance indirectly&#10;estimated sperm lifespan: cum lose most of fertility at this time.</Option6_Desc>
<Option7_Label>cycle accelerate</Option7_Label>
<Option7_Desc>accelerate menstrution cycle</Option7_Desc>
<Option7_Desc>accelerate menstrution cycle&#10;This can cause early menopause and infertility.&#10;Setting this lower than x12 is recommended.&#10;Rimworld's timescale: x6(default)&#10;</Option7_Desc>
<Option8_Label>Debug</Option8_Label>
<Option8_Desc>show debug informations.</Option8_Desc>
<Option9_Label>womb status</Option9_Label>
@ -54,7 +54,7 @@
<Option12_Label>enable menopause</Option12_Label>
<Option12_Desc>enable menopause effect that makes pawn infertile in time progress&#10;if you have problems with long life races, turn off this option.&#10;this option will apply after save loaded</Option12_Desc>
<Option13_Label>use multiple pregnancy</Option13_Label>
<Option13_Desc>use multiple pregnancy instead RJW's default pregnancy&#10;disable this option if you are in trouble with impregnation</Option13_Desc>
<Option13_Desc>use multiple pregnancy instead RJW's default pregnancy&#10;disable this option if you are in trouble with impregnation&#10;RJW pregnancy should be turned on.</Option13_Desc>
<Option14_Label>enable hetero ovular twins</Option14_Label>
<Option14_Desc>enable multiple eggs can get pregnant</Option14_Desc>
<Option15_Label>enable enzygotic twins</Option15_Label>
@ -93,7 +93,7 @@
<Option29_Label>Allow shrink icon</Option29_Label>
<Option29_Desc>Let icon become smaller If needed.</Option29_Desc>
<EstimatedCumLifespan>estimated sperm lifespan</EstimatedCumLifespan>
<FertilityDesc>The chance of pregnancy of fertilized egg.&#10;The white overlay is indicates fertilization chance of sperms in womb.</FertilityDesc>
<FertilityDesc>Chance of fertilization within an hour: {0}%&#10;The chance of pregnancy of fertilized egg.&#10;The white overlay is indicates fertilization chance of sperms in womb.</FertilityDesc>
<FloatMenu_CleanSelf>Vaginal washing</FloatMenu_CleanSelf>

View File

@ -39,7 +39,7 @@
<Option6_Label>시간당 정자 사망비율</Option6_Label>
<Option6_Desc>이 비율만큼 매 시간마다 정자가 사망해 정액이 생식능력을 잃습니다.&#10;정자 예상수명: 정액이 대부분의 생식능력을 잃는 시간입니다.</Option6_Desc>
<Option7_Label>주기 가속</Option7_Label>
<Option7_Desc>월경주기를 더 빠르게합니다.</Option7_Desc>
<Option7_Desc>월경주기를 더 빠르게합니다.&#10;이 설정은 조기폐경과 난임을 유발할수도 있습니다.&#10;12배속 이하로 설정하는것을 권장합니다.&#10;림월드의 시간배율: x6(default)</Option7_Desc>
<Option8_Label>Debug</Option8_Label>
<Option8_Desc>디버그정보를 보여줍니다.</Option8_Desc>
<Option9_Label>자궁 그림</Option9_Label>
@ -54,7 +54,7 @@
<Option12_Label>폐경기 활성화</Option12_Label>
<Option12_Desc>시간이 지남에따라 불임상태로 만드는 폐경기를 활성화합니다.&#10;수명이 긴 종족을 사용할때 문제가 있으면 이 옵션을 끄세요.&#10;변경한후에 세이브로드가 필요합니다.</Option12_Desc>
<Option13_Label>다중임신</Option13_Label>
<Option13_Desc>RJW의 기본임신 대신 다중임신을 사용합니다.</Option13_Desc>
<Option13_Desc>RJW의 기본임신 대신 다중임신을 사용합니다.&#10;임신에 문제가 있다면 이 기능을 끄는것으로 해결될수도 있습니다.&#10;RJW 임신이 활성화 되어야 합니다.</Option13_Desc>
<Option14_Label>이란성 쌍둥이 활성화</Option14_Label>
<Option14_Desc>다수의 난자가 임신으로 이어지게 합니다.</Option14_Desc>
<Option15_Label>일란성 쌍둥이 활성화</Option15_Label>
@ -93,7 +93,7 @@
<Option29_Label>아이콘 축소 허용</Option29_Label>
<Option29_Desc>아이콘 축소를 허용합니다.</Option29_Desc>
<EstimatedCumLifespan>정자 예상수명</EstimatedCumLifespan>
<FertilityDesc>수정란이 임신으로 진행될 확률입니다.&#10;흰색 오버레이는 정자가 난자를 수정시킬 확률을 표시하는 것입니다.</FertilityDesc>
<FertilityDesc>한시간 안에 수정될 확률: {0}%&#10;수정란이 임신으로 진행될 확률입니다.&#10;흰색 오버레이는 정자가 난자를 수정시킬 확률을 표시하는 것입니다.</FertilityDesc>
<FloatMenu_CleanSelf>질세척</FloatMenu_CleanSelf>

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<JobDef>
<defName>LactateSelf_MC</defName>
<driverClass>MilkModule.JobDriver_MilkSelf_MC</driverClass>
<reportString>lactating self</reportString>
<allowOpportunisticPrefix>true</allowOpportunisticPrefix>
</JobDef>
</Defs>

Binary file not shown.

View File

@ -20,7 +20,7 @@ namespace MilkModule
{
get
{
return comp.Fullness;
return comp?.Fullness ?? 0f;
}
}
@ -32,7 +32,7 @@ namespace MilkModule
protected override void Gathered()
{
comp.Gathered(pawn);
comp?.Gathered(pawn);
}
protected override void PostTickAction()
@ -47,7 +47,7 @@ namespace MilkModule
public static HumanCompHasGatherableBodyResource GetMilkComp(Pawn pawn)
{
HumanCompHasGatherableBodyResource result;
HumanCompHasGatherableBodyResource result = null;
if (pawn.health.hediffSet.HasHediff(VariousDefOf.Hediff_Heavy_Lactating_Permanent))
{
result = pawn.TryGetComp<CompHyperMilkableHuman>();

View File

@ -40,7 +40,7 @@
<Private>False</Private>
</Reference>
<Reference Include="Milk">
<HintPath>..\..\..\..\..\rjw-mc-master\1.2\Assemblies\Milk.dll</HintPath>
<HintPath>..\..\..\..\..\rjw-mc-master\1.3\Assemblies\Milk.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="RJW">

View File

@ -165,10 +165,7 @@ namespace RJW_Menstruation
public void MakeThinner(int speed)
{
for (int i=0; i<speed; i++)
{
cumthickness = Mathf.Lerp(cumthickness, decayresist, 0.4f);
}
cumthickness = cumthickness.LerpMultiple(decayresist, 0.3f, speed);
}
public void MergeWithCum(float volumein, float fertility, ThingDef updatefilthDef = null)

View File

@ -1204,6 +1204,7 @@ namespace RJW_Menstruation
}
else
{
eggs.Clear();
if (Props.bleedingIntervalDays == 0)
{
follicularIntervalhours = PeriodRandomizer(follicularIntervalhours, Props.deviationFactor);
@ -1442,6 +1443,7 @@ namespace RJW_Menstruation
}
else
{
eggs.Clear();
if (Props.bleedingIntervalDays == 0)
{
follicularIntervalhours = PeriodRandomizer(follicularIntervalhours, Props.deviationFactor * 6);

View File

@ -89,6 +89,7 @@ namespace RJW_Menstruation
string res = Translations.Dialog_WombInfo03 + ": ";
if (!babies.NullOrEmpty())
{
var babiesdistinct = babies.Distinct(new FatherComparer(pawn));
int iteration = 0;
foreach (Pawn baby in babiesdistinct)
@ -158,7 +159,7 @@ namespace RJW_Menstruation
if (mother.Faction != baby.Faction)
baby.SetFaction(mother.Faction);
}
foreach (Pawn sibling in siblings)
{

View File

@ -100,7 +100,7 @@ namespace RJW_Menstruation
public static readonly string Option29_Desc = "Option29_Desc".Translate();
public static readonly string EstimatedCumLifespan = "EstimatedCumLifespan".Translate();
public static readonly string FertilityDesc = "FertilityDesc".Translate();
public static string FertilityDesc(string value) => "FertilityDesc".Translate(value);
public static readonly string FloatMenu_CleanSelf = "FloatMenu_CleanSelf".Translate();

View File

@ -399,8 +399,9 @@ namespace RJW_Menstruation
}
statvalue = Configurations.ImplantationChance * comp.Props.baseImplantationChanceFactor * comp.ImplantFactor;
FillableBarLabeled(lineRect, " " + xxx.reproduction.LabelCap.CapitalizeFirst() + " " + statvalue.ToStringPercent(), statvalue, TextureCache.fertilityTexture, Texture2D.blackTexture, Translations.FertilityDesc);
Rect overayRect = new Rect(lineRect.x, lineRect.y, lineRect.width * Math.Min(1.0f, comp.GetFertilityChance()), lineRect.height);
float fertchance = comp.GetFertilityChance();
FillableBarLabeled(lineRect, " " + xxx.reproduction.LabelCap.CapitalizeFirst() + " " + statvalue.ToStringPercent(), statvalue, TextureCache.fertilityTexture, Texture2D.blackTexture, Translations.FertilityDesc(String.Format("{0:0.##}", fertchance*100)));
Rect overayRect = new Rect(lineRect.x, lineRect.y, lineRect.width * Math.Min(1.0f, fertchance), lineRect.height);
GUI.DrawTexture(overayRect, TextureCache.FertChanceTex);
lineRect.y += height;
}

View File

@ -436,7 +436,9 @@ namespace RJW_Menstruation
if (res != null) return res;
else
{
res = pawn.relations?.GetFirstDirectRelationPawn(VariousDefOf.Relation_birthgiver, x => !x.Equals(mother)) ?? null;
res = pawn.relations?.GetFirstDirectRelationPawn(PawnRelationDefOf.Parent, x => x != mother) ?? null;
if (res == null) res = pawn.relations?.GetFirstDirectRelationPawn(VariousDefOf.Relation_birthgiver, x => x != mother) ?? null;
return res;
}
}
@ -454,6 +456,12 @@ namespace RJW_Menstruation
}
public static float LerpMultiple(this float a, float b, float t, int num)
{
float tmult = Mathf.Pow(1 - t, num);
return tmult * a + (1 - tmult) * b;
}
public static float VariationRange(this float num, float variant)
{
return num * Rand.Range(1.0f - variant, 1.0f + variant);

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Manifest>
<identifier>RJW Menstruation</identifier>
<version>1.0.5.1</version>
<version>1.0.5.2</version>
<dependencies>
</dependencies>
<incompatibleWith />

View File

@ -1,8 +1,11 @@
Version 1.1.0.0
Version 1.0.5.2
- 1.3 support
- added tooltips on status window
-
- clicking pawn in status window will show naked body
- removed duplicated dll
- more descriptions for mod settings
----Last update for 1.2----
Version 1.0.4.4a
- added records