2020-04-21 03:07:15 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using Verse;
|
|
|
|
|
using UnityEngine;
|
2020-05-30 06:10:31 +00:00
|
|
|
|
using RimWorld;
|
2020-04-21 03:07:15 +00:00
|
|
|
|
|
|
|
|
|
namespace Rimworld_Animations {
|
2020-06-01 17:48:19 +00:00
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
public class AnimationSettings : ModSettings {
|
|
|
|
|
|
2020-05-05 20:31:42 +00:00
|
|
|
|
public static bool orgasmQuiver, rapeShiver, soundOverride = true, hearts = true, controlGenitalRotation = false, applySemenOnAnimationOrgasm = false, fastAnimForQuickie = false;
|
2020-06-01 17:48:19 +00:00
|
|
|
|
public static bool offsetTab = false;
|
2020-04-21 04:59:09 +00:00
|
|
|
|
public static float shiverIntensity = 2f;
|
2020-04-21 03:07:15 +00:00
|
|
|
|
|
2020-05-31 19:03:30 +00:00
|
|
|
|
public static Dictionary<string, Vector2> offsets = new Dictionary<string, Vector2>();
|
|
|
|
|
public static Dictionary<string, float> rotation = new Dictionary<string, float>();
|
2020-05-30 06:10:31 +00:00
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
public override void ExposeData() {
|
2020-04-25 18:08:00 +00:00
|
|
|
|
|
|
|
|
|
base.ExposeData();
|
|
|
|
|
|
2020-06-01 17:48:19 +00:00
|
|
|
|
Scribe_Values.Look(ref offsetTab, "EnableOffsetTab", false);
|
2020-04-29 03:42:53 +00:00
|
|
|
|
Scribe_Values.Look(ref controlGenitalRotation, "controlGenitalRotation", false);
|
2020-04-21 03:07:15 +00:00
|
|
|
|
Scribe_Values.Look(ref orgasmQuiver, "orgasmQuiver");
|
2020-05-05 20:31:42 +00:00
|
|
|
|
Scribe_Values.Look(ref fastAnimForQuickie, "fastAnimForQuickie");
|
2020-04-21 04:59:09 +00:00
|
|
|
|
Scribe_Values.Look(ref rapeShiver, "rapeShiver");
|
2020-04-22 19:35:03 +00:00
|
|
|
|
Scribe_Values.Look(ref hearts, "heartsOnLovin");
|
2020-04-29 06:32:40 +00:00
|
|
|
|
Scribe_Values.Look(ref applySemenOnAnimationOrgasm, "applySemenOnOrgasm", false);
|
2020-04-22 18:12:06 +00:00
|
|
|
|
Scribe_Values.Look(ref soundOverride, "rjwAnimSoundOverride", true);
|
2020-04-21 04:59:09 +00:00
|
|
|
|
Scribe_Values.Look(ref shiverIntensity, "shiverIntensity", 2f);
|
2020-05-30 06:10:31 +00:00
|
|
|
|
//todo: save offsetsByDefName
|
2020-05-31 19:03:30 +00:00
|
|
|
|
|
|
|
|
|
Scribe_Collections.Look(ref offsets, "animationOffsets");
|
|
|
|
|
Scribe_Collections.Look(ref rotation, "rotationOffsets");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//needs to be rewritten
|
|
|
|
|
//probably somewhere in options?
|
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class RJW_Animations : Mod {
|
|
|
|
|
|
|
|
|
|
public RJW_Animations(ModContentPack content) : base(content) {
|
2020-04-25 18:08:00 +00:00
|
|
|
|
GetSettings<AnimationSettings>();
|
2020-05-31 19:03:30 +00:00
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void DoSettingsWindowContents(Rect inRect) {
|
|
|
|
|
|
|
|
|
|
Listing_Standard listingStandard = new Listing_Standard();
|
|
|
|
|
listingStandard.Begin(inRect);
|
|
|
|
|
|
2020-04-22 18:12:06 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Enable Sound Override", ref AnimationSettings.soundOverride);
|
2020-04-29 03:42:53 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Control Genital Rotation", ref AnimationSettings.controlGenitalRotation);
|
2020-05-05 20:31:42 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Play Fast Animation for Quickie", ref AnimationSettings.fastAnimForQuickie);
|
2020-04-29 06:37:12 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Apply Semen on Animation Orgasm", ref AnimationSettings.applySemenOnAnimationOrgasm);
|
2020-04-30 04:34:15 +00:00
|
|
|
|
|
|
|
|
|
if(AnimationSettings.applySemenOnAnimationOrgasm) {
|
|
|
|
|
listingStandard.Label("Recommended--turn down \"Cum on body percent\" in RJW settings to about 33%");
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Enable Orgasm Quiver", ref AnimationSettings.orgasmQuiver);
|
2020-04-21 04:59:09 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Enable Rape Shiver", ref AnimationSettings.rapeShiver);
|
2020-04-22 19:35:03 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Enable hearts during lovin'", ref AnimationSettings.hearts);
|
2020-04-21 04:59:09 +00:00
|
|
|
|
|
2020-06-01 17:48:19 +00:00
|
|
|
|
listingStandard.CheckboxLabeled("Enable Offset Tab", ref AnimationSettings.offsetTab);
|
2020-05-30 06:10:31 +00:00
|
|
|
|
|
2020-04-21 04:59:09 +00:00
|
|
|
|
listingStandard.Label("Shiver/Quiver Intensity (default 2): " + AnimationSettings.shiverIntensity);
|
|
|
|
|
AnimationSettings.shiverIntensity = listingStandard.Slider(AnimationSettings.shiverIntensity, 0.0f, 12f);
|
|
|
|
|
|
2020-05-30 06:10:31 +00:00
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
listingStandard.End();
|
|
|
|
|
base.DoSettingsWindowContents(inRect);
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-01 17:48:19 +00:00
|
|
|
|
public override void WriteSettings() {
|
|
|
|
|
base.WriteSettings();
|
|
|
|
|
OffsetMainButtonDefOf.OffsetManager.buttonVisible = AnimationSettings.offsetTab;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-21 03:07:15 +00:00
|
|
|
|
public override string SettingsCategory() {
|
|
|
|
|
return "RJW Animation Settings";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|