mirror of
https://gitgud.io/lutepickle/rjw_menstruation.git
synced 2024-08-14 22:46:52 +00:00
1.0.4.1
This commit is contained in:
parent
cb898a5bc2
commit
96bca993c7
17 changed files with 113 additions and 50 deletions
Binary file not shown.
|
@ -11,7 +11,7 @@
|
|||
<li>
|
||||
<label>dripping fluids</label>
|
||||
<description>It bothers me.</description>
|
||||
<baseMoodEffect>-1</baseMoodEffect>
|
||||
<baseMoodEffect>-2</baseMoodEffect>
|
||||
</li>
|
||||
</stages>
|
||||
</ThoughtDef>
|
||||
|
|
|
@ -90,12 +90,14 @@
|
|||
<Option27_Desc>Set speed of transition of nipples/areolas. 1 = instant transition</Option27_Desc>
|
||||
<Option28_Label>Customize Hybrids</Option28_Label>
|
||||
<Option28_Tooltip>Open custom hybrid editor. This will overrides hybrid definitions of XML files.</Option28_Tooltip>
|
||||
<Option29_Label>Allow shrink icon</Option29_Label>
|
||||
<Option29_Desc>Let icon become smaller If needed.</Option29_Desc>
|
||||
|
||||
<FloatMenu_CleanSelf>Vaginal washing</FloatMenu_CleanSelf>
|
||||
|
||||
<CustomHybrid_List_Title>Custom Hybrid Editor</CustomHybrid_List_Title>
|
||||
<CustomHybrid_Title>Hybrids of {0}</CustomHybrid_Title>
|
||||
<CustomHybrid_Tooltip>When {0} breed with {1}, {2} will be born at {3}% of chance. If both races have hybrid definitions for each other, the father's definition will be used.</CustomHybrid_Tooltip>
|
||||
<CustomHybrid_Tooltip>When {0} breed with {1}, {2} will be born at {3} chance. If both races have hybrid definitions for each other, the father's definition will be used.</CustomHybrid_Tooltip>
|
||||
|
||||
|
||||
</LanguageData>
|
|
@ -90,11 +90,13 @@
|
|||
<Option27_Desc>유두가 얼마나 빨리 변하는지 설정합니다.</Option27_Desc>
|
||||
<Option28_Label>잡종 정의 변경하기</Option28_Label>
|
||||
<Option28_Tooltip>사용자 지정 잡종 편집기를 엽니다. 이 설정은 XML파일의 잡종 정의를 대체합니다.</Option28_Tooltip>
|
||||
<Option29_Label>아이콘 축소 허용</Option29_Label>
|
||||
<Option29_Desc>아이콘 축소를 허용합니다.</Option29_Desc>
|
||||
|
||||
<FloatMenu_CleanSelf>질세척</FloatMenu_CleanSelf>
|
||||
|
||||
<CustomHybrid_List_Title>사용자 지정 잡종 편집기</CustomHybrid_List_Title>
|
||||
<CustomHybrid_Title>{0}의 잡종설정</CustomHybrid_Title>
|
||||
<CustomHybrid_Tooltip>{0}이(가) {1}와(과) 교미했을 때, {2}이(가) {3}%의 확률로 태어납니다. 만약 두 종족이 서로에 대한 잡종 정의가 있을경우 아버지 쪽의 정의가 우선적으로 사용됩니다.</CustomHybrid_Tooltip>
|
||||
<CustomHybrid_Tooltip>{0}이(가) {1}와(과) 교미했을 때, {2}이(가) {3}의 확률로 태어납니다. 만약 두 종족이 서로에 대한 잡종 정의가 있을경우 아버지 쪽의 정의가 우선적으로 사용됩니다.</CustomHybrid_Tooltip>
|
||||
|
||||
</LanguageData>
|
|
@ -184,6 +184,19 @@
|
|||
</value>
|
||||
</Operation>
|
||||
|
||||
<Operation Class="PatchOperationAddModExtension">
|
||||
<xpath>Defs/ThingDef[defName="WildBoar"]</xpath>
|
||||
<value>
|
||||
<li Class="RJW_Menstruation.PawnDNAModExtension">
|
||||
<fetusTexPath>Fetus/Livestocks/Fetus_Pig</fetusTexPath>
|
||||
<cumColor>(255,255,255,255)</cumColor>
|
||||
<cumThickness>0.8</cumThickness>
|
||||
<hybridExtension>
|
||||
</hybridExtension>
|
||||
</li>
|
||||
</value>
|
||||
</Operation>
|
||||
|
||||
<Operation Class="PatchOperationAddModExtension">
|
||||
<xpath>Defs/ThingDef[@Name="BaseInsect"]</xpath>
|
||||
<value>
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
Version 1.0.4.1
|
||||
- fixed errors when the race mods are uninstalled
|
||||
- minor bug fixes
|
||||
- removed mechanoids from hybrid table
|
||||
- increased probability weight range of custom hybrid
|
||||
- breasts size increase gradually after pregnancy about one cup
|
||||
|
||||
Version 1.0.4.0
|
||||
- minor bug fixes
|
||||
- cums will get maximum thickness initially and become thinner gradually
|
||||
|
|
|
@ -53,6 +53,7 @@ namespace RJW_Menstruation
|
|||
public static PawnFlags ShowFlag = PawnFlags.Colonist | PawnFlags.Prisoner;
|
||||
public static bool UseHybridExtention = true;
|
||||
public static bool MotherFirst = false;
|
||||
public static bool AllowShrinkIcon = false;
|
||||
|
||||
public static float NippleTransitionVariance = NippleTransitionVarianceDefault;
|
||||
public static float NipplePermanentTransitionVariance = NipplePermanentTransitionVarianceDefault;
|
||||
|
@ -65,6 +66,8 @@ namespace RJW_Menstruation
|
|||
return NippleTransitionVariance * NippleTransitionSpeed;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static List<HybridInformations> HybridOverride = new List<HybridInformations>();
|
||||
|
||||
|
@ -169,6 +172,7 @@ namespace RJW_Menstruation
|
|||
Scribe_Values.Look(ref NipplePermanentTransitionVariance, "NipplePermanentTransitionVariance", NipplePermanentTransitionVariance, true);
|
||||
Scribe_Values.Look(ref NippleMaximumTransition, "NippleMaximumTransition", NippleMaximumTransition, true);
|
||||
Scribe_Values.Look(ref NippleTransitionSpeed, "NippleTransitionSpeed", NippleTransitionSpeed, true);
|
||||
Scribe_Values.Look(ref AllowShrinkIcon, "AllowShrinkIcon", AllowShrinkIcon, true);
|
||||
Scribe_Collections.Look(ref HybridOverride, saveDestroyedThings: true, label: "HybridOverride", lookMode: LookMode.Deep, ctorArgs: new object[0]);
|
||||
base.ExposeData();
|
||||
}
|
||||
|
@ -233,13 +237,14 @@ namespace RJW_Menstruation
|
|||
//listmain.CheckboxLabeled(Translations.Option1_Label, ref Configurations.EnableWombIcon, Translations.Option1_Desc);
|
||||
if (Configurations.EnableWombIcon || Configurations.EnableButtonInHT)
|
||||
{
|
||||
Listing_Standard wombsection = listmain.BeginSection_NewTemp(376);
|
||||
Listing_Standard wombsection = listmain.BeginSection_NewTemp(400);
|
||||
wombsection.CheckboxLabeled(Translations.Option9_Label, ref Configurations.DrawWombStatus, Translations.Option9_Desc);
|
||||
if (Configurations.DrawWombStatus)
|
||||
{
|
||||
wombsection.CheckboxLabeled(Translations.Option18_Label, ref Configurations.DrawEggOverlay, Translations.Option18_Desc);
|
||||
}
|
||||
wombsection.CheckboxLabeled(Translations.Option10_Label, ref Configurations.DrawVaginaStatus, Translations.Option10_Desc);
|
||||
wombsection.CheckboxLabeled(Translations.Option29_Label, ref Configurations.AllowShrinkIcon, Translations.Option29_Desc);
|
||||
if (wombsection.ButtonText(Translations.Option11_Label + ": " + Configurations.LevelString(Configurations.InfoDetail)))
|
||||
{
|
||||
if (Configurations.InfoDetail == Configurations.DetailLevel.Hide) Configurations.InfoDetail = Configurations.DetailLevel.All;
|
||||
|
@ -354,6 +359,7 @@ namespace RJW_Menstruation
|
|||
Dialog_HybridCustom.ToggleWindow();
|
||||
//Configurations.MotherFirst = !Configurations.MotherFirst;
|
||||
}
|
||||
TooltipHandler.TipRegion(hybridrect, Translations.Option28_Tooltip);
|
||||
|
||||
twinsection.CheckboxLabeled(Translations.Option14_Label, ref Configurations.EnableHeteroOvularTwins, Translations.Option14_Desc);
|
||||
twinsection.CheckboxLabeled(Translations.Option15_Label, ref Configurations.EnableEnzygoticTwins, Translations.Option15_Desc);
|
||||
|
|
|
@ -34,11 +34,12 @@ namespace RJW_Menstruation
|
|||
|
||||
public class HediffComp_Breast : HediffComp
|
||||
{
|
||||
public const float defaultalpha = -1;
|
||||
public const float defaultareola = -1;
|
||||
public const float defaultnipple = -1;
|
||||
public const float variation = 0.2f;
|
||||
public const int tickinterval = 3750;
|
||||
public const float DEFAULTALPHA = -1;
|
||||
public const float DEFAULTAREOLA = -1;
|
||||
public const float DEFAULTNIPPLE = -1;
|
||||
public const float VARIANT = 0.2f;
|
||||
public const int TICKINTERVAL = 3750;
|
||||
public const float MAX_BREAST_INCREMENT = 0.10f;
|
||||
|
||||
public CompProperties_Breast Props;
|
||||
|
||||
|
@ -57,7 +58,7 @@ namespace RJW_Menstruation
|
|||
protected float originnipple = -1f;
|
||||
protected Color cachedcolor;
|
||||
protected bool loaded = false;
|
||||
|
||||
protected bool pregnant = false;
|
||||
public Action action;
|
||||
|
||||
public float MaxAlpha
|
||||
|
@ -117,19 +118,20 @@ namespace RJW_Menstruation
|
|||
public override void CompExposeData()
|
||||
{
|
||||
base.CompExposeData();
|
||||
Scribe_Values.Look(ref alphaPermanent, "alphaPermanent", defaultalpha, true);
|
||||
Scribe_Values.Look(ref alphaCurrent, "alphaCurrent", defaultalpha, true);
|
||||
Scribe_Values.Look(ref alpha, "alpha", defaultalpha, true);
|
||||
Scribe_Values.Look(ref areolaSizePermanent, "areolaSizePermanent", defaultareola, true);
|
||||
Scribe_Values.Look(ref areolaSizeCurrent, "areolaSizeCurrent", defaultareola, true);
|
||||
Scribe_Values.Look(ref areolaSize, "areolaSize", defaultareola, true);
|
||||
Scribe_Values.Look(ref nippleSizePermanent, "nippleSizePermanent", defaultnipple, true);
|
||||
Scribe_Values.Look(ref nippleSizeCurrent, "nippleSizeCurrent", defaultnipple, true);
|
||||
Scribe_Values.Look(ref nippleSize, "nippleSize", defaultnipple, true);
|
||||
Scribe_Values.Look(ref alphaPermanent, "alphaPermanent", DEFAULTALPHA, true);
|
||||
Scribe_Values.Look(ref alphaCurrent, "alphaCurrent", DEFAULTALPHA, true);
|
||||
Scribe_Values.Look(ref alpha, "alpha", DEFAULTALPHA, true);
|
||||
Scribe_Values.Look(ref areolaSizePermanent, "areolaSizePermanent", DEFAULTAREOLA, true);
|
||||
Scribe_Values.Look(ref areolaSizeCurrent, "areolaSizeCurrent", DEFAULTAREOLA, true);
|
||||
Scribe_Values.Look(ref areolaSize, "areolaSize", DEFAULTAREOLA, true);
|
||||
Scribe_Values.Look(ref nippleSizePermanent, "nippleSizePermanent", DEFAULTNIPPLE, true);
|
||||
Scribe_Values.Look(ref nippleSizeCurrent, "nippleSizeCurrent", DEFAULTNIPPLE, true);
|
||||
Scribe_Values.Look(ref nippleSize, "nippleSize", DEFAULTNIPPLE, true);
|
||||
Scribe_Values.Look(ref breastSizeIncreased, "breastSizeIncreased", breastSizeIncreased, true);
|
||||
Scribe_Values.Look(ref originalpha, "originalpha", originalpha, true);
|
||||
Scribe_Values.Look(ref originareola, "originareola", originareola, true);
|
||||
Scribe_Values.Look(ref originnipple, "originnipple", originnipple, true);
|
||||
Scribe_Values.Look(ref pregnant, "pregnant", pregnant, true);
|
||||
|
||||
}
|
||||
|
||||
|
@ -174,7 +176,7 @@ namespace RJW_Menstruation
|
|||
}
|
||||
UpdateColor();
|
||||
loaded = true;
|
||||
HugsLibController.Instance.TickDelayScheduler.ScheduleCallback(action, tickinterval, parent.pawn);
|
||||
HugsLibController.Instance.TickDelayScheduler.ScheduleCallback(action, TICKINTERVAL, parent.pawn);
|
||||
}
|
||||
|
||||
|
||||
|
@ -185,7 +187,24 @@ namespace RJW_Menstruation
|
|||
areolaSizeCurrent = Mathf.Lerp(areolaSizeCurrent, areolaSize, Configurations.NippleTransitionRatio);
|
||||
nippleSizeCurrent = Mathf.Lerp(nippleSizeCurrent, nippleSize, Configurations.NippleTransitionRatio);
|
||||
UpdateColor();
|
||||
HugsLibController.Instance.TickDelayScheduler.ScheduleCallback(action, tickinterval, parent.pawn);
|
||||
HugsLibController.Instance.TickDelayScheduler.ScheduleCallback(action, TICKINTERVAL, parent.pawn);
|
||||
if (pregnant)
|
||||
{
|
||||
if (breastSizeIncreased < MAX_BREAST_INCREMENT)
|
||||
{
|
||||
breastSizeIncreased += 0.02f;
|
||||
parent.Severity += 0.02f;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (breastSizeIncreased > 0)
|
||||
{
|
||||
breastSizeIncreased -= 0.02f;
|
||||
parent.Severity -= 0.02f;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void ChangeColorFermanant(float alpha)
|
||||
|
@ -200,12 +219,13 @@ namespace RJW_Menstruation
|
|||
|
||||
public void PregnancyTransition()
|
||||
{
|
||||
alphaPermanent = Math.Min(MaxAlpha, alphaPermanent + Configurations.NipplePermanentTransitionVariance.VariationRange(variation));
|
||||
areolaSizePermanent = Math.Min(MaxAreola, areolaSizePermanent + Configurations.NipplePermanentTransitionVariance.VariationRange(variation));
|
||||
nippleSizePermanent = Math.Min(MaxNipple, nippleSizePermanent + Configurations.NipplePermanentTransitionVariance.VariationRange(variation));
|
||||
alpha = Math.Min(MaxAlpha, alpha + Configurations.NippleTransitionVariance.VariationRange(variation));
|
||||
areolaSize = Math.Min(MaxAreola, areolaSize + Configurations.NippleTransitionVariance.VariationRange(variation));
|
||||
nippleSize = Math.Min(MaxNipple, nippleSize + Configurations.NippleTransitionVariance.VariationRange(variation));
|
||||
alphaPermanent = Math.Min(MaxAlpha, alphaPermanent + Configurations.NipplePermanentTransitionVariance.VariationRange(VARIANT));
|
||||
areolaSizePermanent = Math.Min(MaxAreola, areolaSizePermanent + Configurations.NipplePermanentTransitionVariance.VariationRange(VARIANT));
|
||||
nippleSizePermanent = Math.Min(MaxNipple, nippleSizePermanent + Configurations.NipplePermanentTransitionVariance.VariationRange(VARIANT));
|
||||
alpha = Math.Min(MaxAlpha, alpha + Configurations.NippleTransitionVariance.VariationRange(VARIANT));
|
||||
areolaSize = Math.Min(MaxAreola, areolaSize + Configurations.NippleTransitionVariance.VariationRange(VARIANT));
|
||||
nippleSize = Math.Min(MaxNipple, nippleSize + Configurations.NippleTransitionVariance.VariationRange(VARIANT));
|
||||
pregnant = true;
|
||||
}
|
||||
|
||||
public void BirthTransition()
|
||||
|
@ -213,6 +233,7 @@ namespace RJW_Menstruation
|
|||
alpha = alphaPermanent;
|
||||
areolaSize = areolaSizePermanent;
|
||||
nippleSize = nippleSizePermanent;
|
||||
pregnant = false;
|
||||
}
|
||||
|
||||
|
||||
|
@ -244,7 +265,7 @@ namespace RJW_Menstruation
|
|||
|
||||
public void UpdateColor()
|
||||
{
|
||||
cachedcolor = Colors.CMYKLerp(parent.pawn.story.SkinColor, Props.BlackNippleColor, Alpha);
|
||||
cachedcolor = Colors.CMYKLerp(parent?.pawn?.story?.SkinColor ?? Color.white, Props.BlackNippleColor, Alpha);
|
||||
}
|
||||
|
||||
public string DebugInfo()
|
||||
|
|
|
@ -345,7 +345,7 @@ namespace RJW_Menstruation
|
|||
updateTraits(baby, traitpool);
|
||||
|
||||
}
|
||||
else
|
||||
else if (baby.relations != null)
|
||||
{
|
||||
baby.relations.AddDirectRelation(VariousDefOf.Relation_birthgiver, mother);
|
||||
mother.relations.AddDirectRelation(VariousDefOf.Relation_spawn, baby);
|
||||
|
@ -419,7 +419,7 @@ namespace RJW_Menstruation
|
|||
if (FatherRaceName != "" && Configurations.UseHybridExtention)
|
||||
{
|
||||
spawn_kind_def = GetHybrid(father, mother);
|
||||
Log.Message("pawnkind: " + spawn_kind_def?.defName);
|
||||
//Log.Message("pawnkind: " + spawn_kind_def?.defName);
|
||||
}
|
||||
|
||||
if (MotherRaceName != FatherRaceName && FatherRaceName != "")
|
||||
|
@ -490,10 +490,10 @@ namespace RJW_Menstruation
|
|||
{
|
||||
PawnKindDef res = null;
|
||||
Pawn opposite = second;
|
||||
HybridInformations info = Configurations.HybridOverride.FirstOrDefault(x => x.defName == first.def.defName);
|
||||
HybridInformations info = Configurations.HybridOverride.FirstOrDefault(x => x.defName == first.def.defName && x.hybridExtension.Exists(y => y.defName == second.def.defName));
|
||||
if (info == null)
|
||||
{
|
||||
info = Configurations.HybridOverride.FirstOrDefault(x => x.defName == second.def.defName);
|
||||
info = Configurations.HybridOverride.FirstOrDefault(x => x.defName == second.def.defName && x.hybridExtension.Exists(y => y.defName == first.def.defName));
|
||||
opposite = first;
|
||||
}
|
||||
|
||||
|
|
|
@ -95,6 +95,7 @@ namespace RJW_Menstruation
|
|||
defaultDesc = description,
|
||||
icon = icon,
|
||||
icon_overay = icon_overay,
|
||||
shrinkable = Configurations.AllowShrinkIcon,
|
||||
cumcolor = c,
|
||||
comp = comp,
|
||||
order = 100,
|
||||
|
|
|
@ -57,8 +57,8 @@
|
|||
<ItemGroup>
|
||||
<Compile Include="Configurations.cs" />
|
||||
<Compile Include="Cum.cs" />
|
||||
<Compile Include="Dialog_HybridCustom.cs" />
|
||||
<Compile Include="Dialog_WombStatus.cs" />
|
||||
<Compile Include="UI\Dialog_HybridCustom.cs" />
|
||||
<Compile Include="UI\Dialog_WombStatus.cs" />
|
||||
<Compile Include="DrugOutcomDoers.cs" />
|
||||
<Compile Include="FilthMaker_Colored.cs" />
|
||||
<Compile Include="HARCompatibility.cs" />
|
||||
|
@ -67,7 +67,7 @@
|
|||
<Compile Include="Hediff_MultiplePregnancy.cs" />
|
||||
<Compile Include="JobDrivers.cs" />
|
||||
<Compile Include="Patch\GetGizmos.cs" />
|
||||
<Compile Include="Gizmo_Womb.cs" />
|
||||
<Compile Include="UI\Gizmo_Womb.cs" />
|
||||
<Compile Include="Patch\Harmony.cs" />
|
||||
<Compile Include="HediffComps\HediffComp_Menstruation.cs" />
|
||||
<Compile Include="Patch\Pawn_Patch.cs" />
|
||||
|
|
|
@ -9,6 +9,7 @@ using UnityEngine;
|
|||
|
||||
namespace RJW_Menstruation
|
||||
{
|
||||
[StaticConstructorOnStartup]
|
||||
public static class TextureCache
|
||||
{
|
||||
|
||||
|
|
|
@ -96,11 +96,13 @@ namespace RJW_Menstruation
|
|||
public static readonly string Option27_Desc = "Option27_Desc".Translate();
|
||||
public static readonly string Option28_Label = "Option28_Label".Translate();
|
||||
public static readonly string Option28_Tooltip = "Option28_Tooltip".Translate();
|
||||
public static readonly string Option29_Label = "Option29_Label".Translate();
|
||||
public static readonly string Option29_Desc = "Option29_Desc".Translate();
|
||||
|
||||
public static readonly string FloatMenu_CleanSelf = "FloatMenu_CleanSelf".Translate();
|
||||
|
||||
public static readonly string CustomHybrid_List_Title = "CustomHybrid_List_Title".Translate();
|
||||
static public string CustomHybrid_Title(string label) { return TranslatorFormattedStringExtensions.Translate("CustomHybrid_Title", label); }
|
||||
static public string CustomHybrid_Tooltip(string label, string breedee, string baby, float chance) { return TranslatorFormattedStringExtensions.Translate("CustomHybrid_Tooltip", label, breedee, baby, chance); }
|
||||
static public string CustomHybrid_Tooltip(string label, string breedee, string baby, string chance) { return TranslatorFormattedStringExtensions.Translate("CustomHybrid_Tooltip", label, breedee, baby, chance); }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ namespace RJW_Menstruation
|
|||
Configurations.HybridOverride = new List<HybridInformations>();
|
||||
}
|
||||
Configurations.HybridOverride.Add(new HybridInformations(def));
|
||||
Configurations.HybridOverride.SortBy(x => x.GetDef?.label);
|
||||
Configurations.HybridOverride.SortBy(x => x.GetDef?.label ?? "Undefined");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -126,7 +126,7 @@ namespace RJW_Menstruation
|
|||
{
|
||||
var element = removeList.Last();
|
||||
Configurations.HybridOverride.Add(element);
|
||||
Configurations.HybridOverride.SortBy(x => x.GetDef.label);
|
||||
Configurations.HybridOverride.SortBy(x => x.GetDef?.label ?? "Undefined");
|
||||
removeList.Remove(element);
|
||||
}
|
||||
|
||||
|
@ -160,7 +160,7 @@ namespace RJW_Menstruation
|
|||
protected void DoRow(Rect rect, HybridInformations extension, int index)
|
||||
{
|
||||
Rect buttonRect = new Rect(rect.xMax - 90f, rect.y, 80f, rect.height);
|
||||
Widgets.Label(rect, extension.GetDef.label);
|
||||
Widgets.Label(rect, extension.GetDef?.label ?? "Undefined");
|
||||
if (Widgets.ButtonText(buttonRect, "Delete"))
|
||||
{
|
||||
removeList.Add(extension);
|
||||
|
@ -310,7 +310,7 @@ namespace RJW_Menstruation
|
|||
Rect labelRect = new Rect(inRect.xMin, inRect.yMin, 300, 24);
|
||||
Rect buttonRect = new Rect(inRect.xMax - 120, 0, 100, 30);
|
||||
|
||||
Widgets.Label(labelRect, Translations.CustomHybrid_Title(info.GetDef.label));
|
||||
Widgets.Label(labelRect, Translations.CustomHybrid_Title(info.GetDef?.label ?? "Undefined"));
|
||||
Widgets.DrawLineHorizontal(inRect.x, labelRect.yMax, inRect.width);
|
||||
if (Widgets.ButtonText(buttonRect, "Add"))
|
||||
{
|
||||
|
@ -367,7 +367,7 @@ namespace RJW_Menstruation
|
|||
Rect mainRect = new Rect(rect.x, rect.y, rect.width, rowH);
|
||||
Rect subRect = new Rect(rect.x, rect.y + rowH, rect.width, rect.height - rowH);
|
||||
Rect buttonRect = new Rect(rect.xMax - 90f, rect.y, 80f, rowH);
|
||||
Widgets.Label(mainRect, extension.GetDef.label);
|
||||
Widgets.Label(mainRect, extension.GetDef?.label ?? "Undefined");
|
||||
|
||||
if (Widgets.ButtonText(buttonRect, "Delete"))
|
||||
{
|
||||
|
@ -388,7 +388,12 @@ namespace RJW_Menstruation
|
|||
}
|
||||
}
|
||||
}
|
||||
if (!list.NullOrEmpty()) Find.WindowStack.Add(new FloatMenu(list));
|
||||
if (!list.NullOrEmpty())
|
||||
{
|
||||
list.SortBy(x => x.Label);
|
||||
Find.WindowStack.Add(new FloatMenu(list));
|
||||
}
|
||||
|
||||
}
|
||||
buttonRect.x -= 80f;
|
||||
|
||||
|
@ -424,13 +429,13 @@ namespace RJW_Menstruation
|
|||
protected void DoSubRow(Rect rect, string key, HybridExtensionExposable extension , List<string> removeelements)
|
||||
{
|
||||
bool isPawnKind = false;
|
||||
float value = extension.hybridInfo.TryGetValue(key);
|
||||
int value = (int)extension.hybridInfo.TryGetValue(key);
|
||||
string valuestr = value.ToString();
|
||||
string label = null;
|
||||
label = DefDatabase<ThingDef>.GetNamedSilentFail(key)?.label;
|
||||
if (label == null)
|
||||
{
|
||||
label = DefDatabase<PawnKindDef>.GetNamedSilentFail(key)?.label;
|
||||
label = DefDatabase<PawnKindDef>.GetNamedSilentFail(key)?.label ?? "Undefined";
|
||||
isPawnKind = true;
|
||||
}
|
||||
Rect buttonRect = new Rect(rect.xMax - 90f, rect.y, 80f, rect.height);
|
||||
|
@ -462,17 +467,17 @@ namespace RJW_Menstruation
|
|||
}
|
||||
else
|
||||
{
|
||||
label += ": " + key;
|
||||
Widgets.Label(buttonRect, "PawnKind");
|
||||
Widgets.Label(buttonRect, " PawnKind");
|
||||
buttonRect.x -= 80f;
|
||||
}
|
||||
label += ": " + key;
|
||||
Widgets.Label(rect, " - " + label);
|
||||
Widgets.TextFieldNumeric(buttonRect, ref value, ref valuestr,0,10000);
|
||||
Widgets.TextFieldNumeric(buttonRect, ref value, ref valuestr,0,9999999);
|
||||
extension.hybridInfo.SetOrAdd(key, value);
|
||||
buttonRect.x -= 80f;
|
||||
Widgets.Label(buttonRect, String.Format("{0,0:P2}", value / totalWeight));
|
||||
Widgets.DrawHighlightIfMouseover(rect);
|
||||
TooltipHandler.TipRegion(rect, Translations.CustomHybrid_Tooltip(info.GetDef.label, extension.GetDef.label, label, value/totalWeight*100));
|
||||
TooltipHandler.TipRegion(rect, Translations.CustomHybrid_Tooltip(info.GetDef?.label ?? "Undefined", extension.GetDef?.label ?? "Undefined", label, String.Format("{0,0:0.########%}", value/totalWeight)));
|
||||
}
|
||||
|
||||
|
|
@ -110,6 +110,8 @@ namespace RJW_Menstruation
|
|||
{
|
||||
Close();
|
||||
}
|
||||
closeRect.x -= 20f;
|
||||
|
||||
}
|
||||
|
||||
private void MainContents(Rect mainRect)
|
|
@ -33,7 +33,7 @@ namespace RJW_Menstruation
|
|||
if (Configurations.DrawEggOverlay) comp.DrawEggOverlay(rect);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -53,8 +53,9 @@ namespace RJW_Menstruation
|
|||
{
|
||||
if (allraces == null)
|
||||
{
|
||||
|
||||
List<ThingDef> allThings = DefDatabase<ThingDef>.AllDefsListForReading;
|
||||
allraces = allThings.FindAll(x => x.race != null);
|
||||
allraces = allThings.FindAll(x => x.race != null && x.race.IsFlesh);
|
||||
}
|
||||
return allraces;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue