public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } Predicate <Tale_DoublePawn> validator = delegate(Tale_DoublePawn tale) { return(otherPawn == tale.secondPawnData?.pawn && OpinionOf(tale.firstPawnData.pawn) >= 20); }; Tale latestTale = VSIE_Utils.GetLatestDoublePawnTale(def.taleDef, validator); if (latestTale != null) { float num = 1f; if (latestTale.def.type == TaleType.Expirable) { float value = (float)latestTale.AgeTicks / (latestTale.def.expireDays * 60000f); num = Mathf.InverseLerp(1f, def.lerpOpinionToZeroAfterDurationPct, value); } var value2 = base.CurStage.baseOpinionOffset * num; return(value2); } return(0f); }
public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } return(LovePartnerRelationUtility.IncestOpinionOffsetFor(otherPawn, pawn)); }
public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } if (otherPawn.story.traits.HasTrait(MyDefOf.MLRP_BronyTrait)) { return(25f); } return(0f); }
public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } int num = pawn.story.traits.DegreeOfTrait(TraitDefOf.DrugDesire); if (otherPawn.story.traits.DegreeOfTrait(TraitDefOf.DrugDesire) >= 0) { return(0f); } if (num == 1) { return(-20f); } return(-30f); }
public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } int num = otherPawn.story.traits.DegreeOfTrait(TraitDefOf.Industriousness); if (num > 0) { return(0f); } return(num switch { 0 => - 5f, -1 => - 20f, _ => - 30f, });
public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } Predicate <Tale> validator = delegate(Tale tale) { return(tale.DominantPawn == otherPawn); }; Tale latestTale = VSIE_Utils.GetLatestTale(def.taleDef, validator); if (latestTale != null) { float num = 1f; if (latestTale.def.type == TaleType.Expirable) { float value = (float)latestTale.AgeTicks / (latestTale.def.expireDays * 60000f); num = Mathf.InverseLerp(1f, def.lerpOpinionToZeroAfterDurationPct, value); } return(base.CurStage.baseOpinionOffset * num); } return(0f); }
public override float OpinionOffset() { if (ThoughtUtility.ThoughtNullified(pawn, def)) { return(0f); } int num = otherPawn.story.traits.DegreeOfTrait(TraitDefOf.Industriousness); if (num > 0) { return(0f); } switch (num) { case 0: return(-5f); case -1: return(-20f); default: return(-30f); } }