testing Licentia stuff

This commit is contained in:
Stardust3D 2022-10-19 19:46:54 +02:00
parent 9f85f3bd33
commit b3df4f7314
9 changed files with 27 additions and 2 deletions

View file

@ -10,6 +10,7 @@ namespace RJW_PlasticSurgeries
public abstract class Recipe_Plastic_Surgery : Recipe_Surgery
{
protected readonly bool HasDyspareunia = ModLister.HasActiveModWithName("Dyspareunia");
protected readonly bool HasLicentia = ModLister.HasActiveModWithName("RimJobWorld - Licentia Labs");
public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
{
@ -41,15 +42,21 @@ namespace RJW_PlasticSurgeries
PenetrationUtility.AddDamageHediff(DamageDefOf.SexStretch, 0.5f, hed, null);
}
protected void SurgeryX(Pawn pawn, float severity, bool useDyspareunia = false)
protected void SurgeryX(Pawn pawn, float severity, bool damagePart = false)
{
GetHediffs(pawn).ForEach(hed =>
{
hed.Severity = severity;
if (useDyspareunia && HasDyspareunia) DamageHediff(hed);
if (damagePart && HasDyspareunia) DamageHediff(hed);
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();
}
}