mirror of
https://github.com/amevarashi/RJW-Sexperience.git
synced 2024-08-14 23:54:08 +00:00
Separate method to add trait on generation
This commit is contained in:
parent
81794f752c
commit
bb65120dd9
4 changed files with 24 additions and 14 deletions
|
@ -14,7 +14,7 @@ namespace RJWSexperience
|
|||
if (virgin != null) p.story.traits.RemoveTrait(virgin);
|
||||
ResetRecord(p, true);
|
||||
if (ResetRecord(p, false))
|
||||
Virginity.TraitHandler.AddVirginTrait(p);
|
||||
Virginity.TraitHandler.GenerateVirginTrait(p);
|
||||
MoteMaker.ThrowText(p.TrueCenter(), p.Map, "Records resetted!");
|
||||
}
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ namespace RJWSexperience
|
|||
doVirginTrait = SexHistory.RecordRandomizer.Randomize(__result);
|
||||
|
||||
if (doVirginTrait)
|
||||
Virginity.TraitHandler.AddVirginTrait(__result);
|
||||
Virginity.TraitHandler.GenerateVirginTrait(__result);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,16 +31,7 @@ namespace RJWSexperience.Virginity
|
|||
billDoer,
|
||||
pawn
|
||||
});
|
||||
SurgeryResult(pawn);
|
||||
}
|
||||
|
||||
protected void SurgeryResult(Pawn pawn)
|
||||
{
|
||||
int degree = TraitDegree.FemaleAfterSurgery;
|
||||
if (pawn.IsVirgin())
|
||||
degree = TraitDegree.FemaleVirgin;
|
||||
Trait virgin = new Trait(VariousDefOf.Virgin, degree, true);
|
||||
pawn.story.traits.GainTrait(virgin);
|
||||
TraitHandler.AddVirginTrait(pawn);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,24 @@ namespace RJWSexperience.Virginity
|
|||
{
|
||||
private const float hymenSurgeryChance = 0.05f;
|
||||
|
||||
public static void GenerateVirginTrait(Pawn pawn)
|
||||
{
|
||||
if (pawn.story?.traits == null)
|
||||
return;
|
||||
|
||||
if (pawn.gender == Gender.Female && !pawn.IsVirgin())
|
||||
{
|
||||
if (Rand.Chance(hymenSurgeryChance))
|
||||
{
|
||||
Trait virgin = new Trait(VariousDefOf.Virgin, TraitDegree.FemaleAfterSurgery, true);
|
||||
pawn.story.traits.GainTrait(virgin);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
AddVirginTrait(pawn);
|
||||
}
|
||||
|
||||
public static void AddVirginTrait(Pawn pawn)
|
||||
{
|
||||
if (pawn.story?.traits == null)
|
||||
|
@ -16,11 +34,12 @@ namespace RJWSexperience.Virginity
|
|||
if (pawn.IsVirgin())
|
||||
{
|
||||
int degree = TraitDegree.MaleVirgin;
|
||||
if (pawn.gender == Gender.Female) degree = TraitDegree.FemaleVirgin;
|
||||
if (pawn.gender == Gender.Female)
|
||||
degree = TraitDegree.FemaleVirgin;
|
||||
Trait virgin = new Trait(VariousDefOf.Virgin, degree, true);
|
||||
pawn.story.traits.GainTrait(virgin);
|
||||
}
|
||||
else if (pawn.gender == Gender.Female && Rand.Chance(hymenSurgeryChance))
|
||||
else if (pawn.gender == Gender.Female)
|
||||
{
|
||||
Trait virgin = new Trait(VariousDefOf.Virgin, TraitDegree.FemaleAfterSurgery, true);
|
||||
pawn.story.traits.GainTrait(virgin);
|
||||
|
|
Loading…
Reference in a new issue