using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Verse; using RimWorld; namespace RJWSexperience { public class VariousDefOf { public static readonly RecordDef NumofEatenCum = DefDatabase.GetNamed("NumofEatenCum"); public static readonly RecordDef Lust = DefDatabase.GetNamed("Lust"); public static readonly SkillDef SexSkill = DefDatabase.GetNamed("Sex"); public static readonly ThoughtDef_Recordbased AteCum = DefDatabase.GetNamed("AteCum"); public static readonly JobDef RapeVictim = DefDatabase.GetNamed("RapeVictim"); public static readonly JobDef DrugSex = DefDatabase.GetNamed("DrugSex"); public static readonly JobDef GettinDrugSex = DefDatabase.GetNamed("GettinDrugSex"); public static readonly JobDef DrugMasturbate = DefDatabase.GetNamed("DrugMasturbate"); public static readonly PawnRelationDef Bastard = DefDatabase.GetNamed("Bastard"); public static readonly ThingDef GatheredCum = DefDatabase.GetNamed("GatheredCum"); public static readonly HediffDef CumAddiction = DefDatabase.GetNamed("CumAddiction"); public static readonly HediffDef CumTolerance = DefDatabase.GetNamed("CumTolerance"); public static readonly ChemicalDef Cum = DefDatabase.GetNamed("Cum"); public static readonly NeedDef Chemical_Cum = DefDatabase.GetNamed("Chemical_Cum"); public static float CumneedLevelOffset { get { if (cumneedLevelOffsetcache == null) { CreateCumCompCache(); } return cumneedLevelOffsetcache ?? 1.0f; } } public static float CumexistingAddictionSeverityOffset { get { if (cumexistingAddictionSeverityOffsetcache == null) { CreateCumCompCache(); } return cumexistingAddictionSeverityOffsetcache ?? 1.0f; } } private static void CreateCumCompCache() { CompProperties_Drug comp = (CompProperties_Drug)GatheredCum.comps.FirstOrDefault(x => x is CompProperties_Drug); cumneedLevelOffsetcache = comp.needLevelOffset; cumexistingAddictionSeverityOffsetcache = comp.existingAddictionSeverityOffset; } protected static float? cumneedLevelOffsetcache = null; protected static float? cumexistingAddictionSeverityOffsetcache = null; [MayRequireIdeology] public static readonly MemeDef Zoophile = DefDatabase.GetNamed("Zoophile"); [MayRequireIdeology] public static readonly MemeDef Rapist = DefDatabase.GetNamed("Rapist"); [MayRequireIdeology] public static readonly MemeDef Lewd = DefDatabase.GetNamed("Lewd"); [MayRequireIdeology] public static readonly MemeDef Necrophile = DefDatabase.GetNamed("Necrophile"); [MayRequireIdeology] public static readonly HistoryEventDef SexWithAnimal = DefDatabase.GetNamed("SexWithAnimal"); [MayRequireIdeology] public static readonly HistoryEventDef SexWithVeneratedAnimal = DefDatabase.GetNamed("SexWithVeneratedAnimal"); [MayRequireIdeology] public static readonly HistoryEventDef Raped = DefDatabase.GetNamed("Raped"); [MayRequireIdeology] public static readonly HistoryEventDef RapedSlave = DefDatabase.GetNamed("RapedSlave"); [MayRequireIdeology] public static readonly HistoryEventDef RapedPrisoner = DefDatabase.GetNamed("RapedPrisoner"); [MayRequireIdeology] public static readonly HistoryEventDef WasRaped = DefDatabase.GetNamed("WasRaped"); [MayRequireIdeology] public static readonly HistoryEventDef WasRapedSlave = DefDatabase.GetNamed("WasRapedSlave"); [MayRequireIdeology] public static readonly HistoryEventDef WasRapedPrisoner = DefDatabase.GetNamed("WasRapedPrisoner"); [MayRequireIdeology] public static readonly HistoryEventDef VaginalSex = DefDatabase.GetNamed("VaginalSex"); [MayRequireIdeology] public static readonly HistoryEventDef AnalSex = DefDatabase.GetNamed("AnalSex"); [MayRequireIdeology] public static readonly HistoryEventDef OralSex = DefDatabase.GetNamed("OralSex"); [MayRequireIdeology] public static readonly HistoryEventDef MiscSex = DefDatabase.GetNamed("MiscSex"); [MayRequireIdeology] public static readonly HistoryEventDef PromiscuousSex = DefDatabase.GetNamed("PromiscuousSex"); [MayRequireIdeology] public static readonly HistoryEventDef Incestuos_Marriage = DefDatabase.GetNamed("Incestuos_Marriage"); [MayRequireIdeology] public static readonly HistoryEventDef SexWithCorpse = DefDatabase.GetNamed("SexWithCorpse"); [MayRequireIdeology] public static readonly PreceptDef Bestiality_Abhorrent = DefDatabase.GetNamed("Bestiality_Abhorrent"); [MayRequireIdeology] public static readonly PreceptDef Bestiality_Horrible = DefDatabase.GetNamed("Bestiality_Horrible"); [MayRequireIdeology] public static readonly PreceptDef Bestiality_Disapproved = DefDatabase.GetNamed("Bestiality_Disapproved"); [MayRequireIdeology] public static readonly PreceptDef Bestiality_Acceptable = DefDatabase.GetNamed("Bestiality_Acceptable"); [MayRequireIdeology] public static readonly PreceptDef Bestiality_OnlyVenerated = DefDatabase.GetNamed("Bestiality_OnlyVenerated"); [MayRequireIdeology] public static readonly PreceptDef Bestiality_Honorable = DefDatabase.GetNamed("Bestiality_Honorable"); [MayRequireIdeology] public static readonly PreceptDef Rape_Abhorrent = DefDatabase.GetNamed("Rape_Abhorrent"); [MayRequireIdeology] public static readonly PreceptDef Rape_Horrible = DefDatabase.GetNamed("Rape_Horrible"); [MayRequireIdeology] public static readonly PreceptDef Rape_Disapproved = DefDatabase.GetNamed("Rape_Disapproved"); [MayRequireIdeology] public static readonly PreceptDef Rape_Acceptable = DefDatabase.GetNamed("Rape_Acceptable"); [MayRequireIdeology] public static readonly PreceptDef Rape_Honorable = DefDatabase.GetNamed("Rape_Honorable"); [MayRequireIdeology] public static readonly PreceptDef Sex_Free = DefDatabase.GetNamed("Sex_Free"); [MayRequireIdeology] public static readonly PreceptDef Sex_VaginalOnly = DefDatabase.GetNamed("Sex_VaginalOnly"); [MayRequireIdeology] public static readonly PreceptDef Sex_AnalOnly = DefDatabase.GetNamed("Sex_AnalOnly"); [MayRequireIdeology] public static readonly PreceptDef Sex_OralOnly = DefDatabase.GetNamed("Sex_OralOnly"); [MayRequireIdeology] public static readonly PreceptDef Sex_Promiscuous = DefDatabase.GetNamed("Sex_Promiscuous"); [MayRequireIdeology] public static readonly PreceptDef Incestuos_Free = DefDatabase.GetNamed("Incestuos_Free"); [MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved = DefDatabase.GetNamed("Incestuos_Disapproved"); [MayRequireIdeology] public static readonly PreceptDef Incestuos_Forbidden = DefDatabase.GetNamed("Incestuos_Forbidden"); [MayRequireIdeology] public static readonly PreceptDef Incestuos_IncestOnly = DefDatabase.GetNamed("Incestuos_IncestOnly"); [MayRequireIdeology] public static readonly PreceptDef Incestuos_Disapproved_CloseOnly = DefDatabase.GetNamed("Incestuos_Disapproved_CloseOnly"); [MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysMother = DefDatabase.GetNamed("BabyFaction_AlwaysMother"); [MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysFather = DefDatabase.GetNamed("BabyFaction_AlwaysFather"); [MayRequireIdeology] public static readonly PreceptDef BabyFaction_AlwaysColony = DefDatabase.GetNamed("BabyFaction_AlwaysColony"); [MayRequireIdeology] public static readonly PreceptDef Submissive_None = DefDatabase.GetNamed("Submissive_None"); [MayRequireIdeology] public static readonly PreceptDef Submissive_Male = DefDatabase.GetNamed("Submissive_Male"); [MayRequireIdeology] public static readonly PreceptDef Submissive_Female = DefDatabase.GetNamed("Submissive_Female"); [MayRequireIdeology] public static readonly PreceptDef Necrophilia_Abhorrent = DefDatabase.GetNamed("Necrophilia_Abhorrent"); [MayRequireIdeology] public static readonly PreceptDef Necrophilia_Horrible = DefDatabase.GetNamed("Necrophilia_Horrible"); [MayRequireIdeology] public static readonly PreceptDef Necrophilia_Disapproved = DefDatabase.GetNamed("Necrophilia_Disapproved"); [MayRequireIdeology] public static readonly PreceptDef Necrophilia_Acceptable = DefDatabase.GetNamed("Necrophilia_Acceptable"); [MayRequireIdeology] public static readonly PreceptDef Necrophilia_Approved = DefDatabase.GetNamed("Necrophilia_Approved"); } }