using System;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using BepInEx.Core.Logging.Interpolation;
using BepInEx.Logging;
using BepInEx.Unity.IL2CPP;
using Bossa.Cinematika;
using Bossa.Cinematika.Controllers;
using Bossa.Dynamika.Character;
using Bossa.Dynamika.MovementModules;
using Bossa.Dynamika.MovementModules.Extensions;
using Bossa.Dynamika.Utilities;
using HarmonyLib;
using Il2CppInterop.Runtime.InteropTypes;
using Microsoft.CodeAnalysis;
using UnityEngine;
using WildSkies.Camera;
using WildSkies.Player;
using WildSkies.Service;
using WildSkies.Ship;
using WildSkies.ShipParts;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
[assembly: AssemblyCompany("DynamikaCameraSettings")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyCopyright("Nines (Natives)")]
[assembly: AssemblyFileVersion("1.0.1.0")]
[assembly: AssemblyInformationalVersion("1.0.1")]
[assembly: AssemblyProduct("DynamikaCameraSettings")]
[assembly: AssemblyTitle("DynamikaCameraSettings")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.1.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
[CompilerGenerated]
[Embedded]
internal sealed class EmbeddedAttribute : Attribute
{
}
}
namespace System.Runtime.CompilerServices
{
[CompilerGenerated]
[Embedded]
[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
internal sealed class RefSafetyRulesAttribute : Attribute
{
public readonly int Version;
public RefSafetyRulesAttribute(int P_0)
{
Version = P_0;
}
}
}
namespace DynamikaCameraSettings
{
[BepInPlugin("DynamikaCameraSettings", "DynamikaCameraSettings", "1.0.1")]
public class Plugin : BasePlugin
{
private class DynamikaCameraSettingsSimpleChatCommands
{
public static string Default_TargetDistance(float value)
{
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
//IL_0010: Unknown result type (might be due to invalid IL or missing references)
//IL_0023: Unknown result type (might be due to invalid IL or missing references)
DynamikaCameraRecoil controller = Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>();
CameraSetting defaultSettings = ((DynamikaCamera)controller)._defaultSettings;
defaultSettings._targetDistance = (defaultSettings._targetDistanceAtVerticalLimits = value);
((DynamikaCamera)controller)._defaultSettings = defaultSettings;
Plugin.Default_TargetDistance.Value = value;
return $"Default TargetDistance now set to {value}";
}
public static string Default_ShoulderModifier(float value)
{
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
//IL_0010: Unknown result type (might be due to invalid IL or missing references)
//IL_0019: Unknown result type (might be due to invalid IL or missing references)
DynamikaCameraRecoil controller = Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>();
CameraSetting defaultSettings = ((DynamikaCamera)controller)._defaultSettings;
defaultSettings._shoulderModifier = value;
((DynamikaCamera)controller)._defaultSettings = defaultSettings;
Plugin.Default_ShoulderModifier.Value = value;
return $"Default ShoulderModifier now set to {value}";
}
public static string Default_UpModifier(float value)
{
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
//IL_0010: Unknown result type (might be due to invalid IL or missing references)
//IL_0019: Unknown result type (might be due to invalid IL or missing references)
DynamikaCameraRecoil controller = Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>();
CameraSetting defaultSettings = ((DynamikaCamera)controller)._defaultSettings;
defaultSettings._upModifier = value;
((DynamikaCamera)controller)._defaultSettings = defaultSettings;
Plugin.Default_UpModifier.Value = value;
return $"Default UpModifier now set to {value}";
}
public static string Sprinting_TargetDistance(float value)
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
//IL_0032: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter.GetMovementModule<Sprinting>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = value);
extension._settingsOverride = settingsOverride;
Plugin.Sprinting_TargetDistance.Value = value;
return $"Sprinting TargetDistance now set to {value}";
}
public static string Sprinting_ShoulderModifier(float value)
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
//IL_0028: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter.GetMovementModule<Sprinting>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._shoulderModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.Sprinting_ShoulderModifier.Value = value;
return $"Sprinting ShoulderModifier now set to {value}";
}
public static string Sprinting_UpModifier(float value)
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
//IL_0028: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter.GetMovementModule<Sprinting>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._upModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.Sprinting_UpModifier.Value = value;
return $"Sprinting UpModifier now set to {value}";
}
public static string Climbing_TargetDistance(float value)
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
//IL_0032: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter.GetMovementModule<Climbing>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = value);
extension._settingsOverride = settingsOverride;
Plugin.Climbing_TargetDistance.Value = value;
return $"Climbing TargetDistance now set to {value}";
}
public static string Climbing_ShoulderModifier(float value)
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
//IL_0028: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter.GetMovementModule<Climbing>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._shoulderModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.Climbing_ShoulderModifier.Value = value;
return $"Climbing ShoulderModifier now set to {value}";
}
public static string Climbing_UpModifier(float value)
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
//IL_0028: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter.GetMovementModule<Climbing>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._upModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.Climbing_UpModifier.Value = value;
return $"Climbing UpModifier now set to {value}";
}
public static string GrapplingHook_TargetDistance(float value)
{
//IL_0043: Unknown result type (might be due to invalid IL or missing references)
//IL_0048: Unknown result type (might be due to invalid IL or missing references)
//IL_005b: Unknown result type (might be due to invalid IL or missing references)
UtilityItem val = default(UtilityItem);
((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter._utilityItems.TryGetValue((UtilitySlot)0, ref val);
if ((Object)(object)((val != null) ? ((Il2CppObjectBase)val).TryCast<GrapplingHook>() : null) == (Object)null)
{
return "Grappling hook is not equipped.";
}
CinematikaSettingsOverride extension = val._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = value);
extension._settingsOverride = settingsOverride;
Plugin.GrapplingHook_TargetDistance.Value = value;
return $"GrapplingHook TargetDistance now set to {value}";
}
public static string GrapplingHook_ShoulderModifier(float value)
{
//IL_0043: Unknown result type (might be due to invalid IL or missing references)
//IL_0048: Unknown result type (might be due to invalid IL or missing references)
//IL_0051: Unknown result type (might be due to invalid IL or missing references)
UtilityItem val = default(UtilityItem);
((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter._utilityItems.TryGetValue((UtilitySlot)0, ref val);
if ((Object)(object)((val != null) ? ((Il2CppObjectBase)val).TryCast<GrapplingHook>() : null) == (Object)null)
{
return "Grappling hook is not equipped.";
}
CinematikaSettingsOverride extension = val._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._shoulderModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.GrapplingHook_ShoulderModifier.Value = value;
return $"GrapplingHook ShoulderModifier now set to {value}";
}
public static string GrapplingHook_UpModifier(float value)
{
//IL_0043: Unknown result type (might be due to invalid IL or missing references)
//IL_0048: Unknown result type (might be due to invalid IL or missing references)
//IL_0051: Unknown result type (might be due to invalid IL or missing references)
UtilityItem val = default(UtilityItem);
((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter._utilityItems.TryGetValue((UtilitySlot)0, ref val);
if ((Object)(object)((val != null) ? ((Il2CppObjectBase)val).TryCast<GrapplingHook>() : null) == (Object)null)
{
return "Grappling hook is not equipped.";
}
CinematikaSettingsOverride extension = val._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._upModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.GrapplingHook_UpModifier.Value = value;
return $"GrapplingHook UpModifier now set to {value}";
}
public static string WingGliderItem_TargetDistance(float value)
{
//IL_0043: Unknown result type (might be due to invalid IL or missing references)
//IL_0048: Unknown result type (might be due to invalid IL or missing references)
//IL_005b: Unknown result type (might be due to invalid IL or missing references)
UtilityItem val = default(UtilityItem);
((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter._utilityItems.TryGetValue((UtilitySlot)4, ref val);
if ((Object)(object)((val != null) ? ((Il2CppObjectBase)val).TryCast<WingGliderItem>() : null) == (Object)null)
{
return "Wing Glider is not equipped.";
}
CinematikaSettingsOverride extension = val._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = value);
extension._settingsOverride = settingsOverride;
Plugin.WingGliderItem_TargetDistance.Value = value;
return $"WingGliderItem TargetDistance now set to {value}";
}
public static string WingGliderItem_ShoulderModifier(float value)
{
//IL_0043: Unknown result type (might be due to invalid IL or missing references)
//IL_0048: Unknown result type (might be due to invalid IL or missing references)
//IL_0051: Unknown result type (might be due to invalid IL or missing references)
UtilityItem val = default(UtilityItem);
((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter._utilityItems.TryGetValue((UtilitySlot)4, ref val);
if ((Object)(object)((val != null) ? ((Il2CppObjectBase)val).TryCast<WingGliderItem>() : null) == (Object)null)
{
return "Wing Glider is not equipped.";
}
CinematikaSettingsOverride extension = val._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._shoulderModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.WingGliderItem_ShoulderModifier.Value = value;
return $"WingGliderItem ShoulderModifier now set to {value}";
}
public static string WingGliderItem_UpModifier(float value)
{
//IL_0043: Unknown result type (might be due to invalid IL or missing references)
//IL_0048: Unknown result type (might be due to invalid IL or missing references)
//IL_0051: Unknown result type (might be due to invalid IL or missing references)
UtilityItem val = default(UtilityItem);
((DynamikaCamera)Object.FindObjectOfType<CameraManager>().GetController<DynamikaCameraRecoil>())._dynamikaCharacter._utilityItems.TryGetValue((UtilitySlot)4, ref val);
if ((Object)(object)((val != null) ? ((Il2CppObjectBase)val).TryCast<WingGliderItem>() : null) == (Object)null)
{
return "Wing Glider is not equipped.";
}
CinematikaSettingsOverride extension = val._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._upModifier = value;
extension._settingsOverride = settingsOverride;
Plugin.WingGliderItem_UpModifier.Value = value;
return $"WingGliderItem UpModifier now set to {value}";
}
public static string Helm_X(float value)
{
//IL_0034: Unknown result type (might be due to invalid IL or missing references)
//IL_0039: Unknown result type (might be due to invalid IL or missing references)
//IL_0042: Unknown result type (might be due to invalid IL or missing references)
IPilotable currentlyPiloting = SceneContextInstaller.ResolveObject<PlayersService>().LocalPlayer.CurrentlyPiloting;
if ((Object)(object)((currentlyPiloting != null) ? ((Il2CppObjectBase)currentlyPiloting).TryCast<Helm>() : null) == (Object)null)
{
return "Not on a helm.";
}
Transform target = Object.FindObjectOfType<CameraManager>()._target;
Vector3 localPosition = target.localPosition;
localPosition.x = value;
target.localPosition = localPosition;
Plugin.Helm_X.Value = value;
return $"Helm X now set to {value}";
}
public static string Helm_Y(float value)
{
//IL_0034: Unknown result type (might be due to invalid IL or missing references)
//IL_0039: Unknown result type (might be due to invalid IL or missing references)
//IL_0042: Unknown result type (might be due to invalid IL or missing references)
IPilotable currentlyPiloting = SceneContextInstaller.ResolveObject<PlayersService>().LocalPlayer.CurrentlyPiloting;
if ((Object)(object)((currentlyPiloting != null) ? ((Il2CppObjectBase)currentlyPiloting).TryCast<Helm>() : null) == (Object)null)
{
return "Not on a helm.";
}
Transform target = Object.FindObjectOfType<CameraManager>()._target;
Vector3 localPosition = target.localPosition;
localPosition.y = value;
target.localPosition = localPosition;
Plugin.Helm_Y.Value = value;
return $"Helm Y now set to {value}";
}
public static string Helm_Z(float value)
{
//IL_0049: Unknown result type (might be due to invalid IL or missing references)
//IL_004e: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
IPilotable currentlyPiloting = SceneContextInstaller.ResolveObject<PlayersService>().LocalPlayer.CurrentlyPiloting;
if ((Object)(object)((currentlyPiloting != null) ? ((Il2CppObjectBase)currentlyPiloting).TryCast<Helm>() : null) == (Object)null)
{
return "Not on a helm.";
}
CameraManager val = Object.FindObjectOfType<CameraManager>();
if (val.GetController<PilotCinematikaController>().ThirdPerson)
{
return "Leave third person before adjusting helm view settings.";
}
Transform target = val._target;
Vector3 localPosition = target.localPosition;
localPosition.z = value;
target.localPosition = localPosition;
Plugin.Helm_Z.Value = value;
return $"Helm Z now set to {value}";
}
public static string ShipWeapon_X(float value)
{
//IL_0034: Unknown result type (might be due to invalid IL or missing references)
//IL_0039: Unknown result type (might be due to invalid IL or missing references)
//IL_0042: Unknown result type (might be due to invalid IL or missing references)
IPilotable currentlyPiloting = SceneContextInstaller.ResolveObject<PlayersService>().LocalPlayer.CurrentlyPiloting;
if ((Object)(object)((currentlyPiloting != null) ? ((Il2CppObjectBase)currentlyPiloting).TryCast<ShipWeapon>() : null) == (Object)null)
{
return "Not on a turret.";
}
Transform target = Object.FindObjectOfType<CameraManager>()._target;
Vector3 localPosition = target.localPosition;
localPosition.x = value;
target.localPosition = localPosition;
Plugin.ShipWeapon_X.Value = value;
return $"ShipWeapon X now set to {value}";
}
public static string ShipWeapon_Y(float value)
{
//IL_0034: Unknown result type (might be due to invalid IL or missing references)
//IL_0039: Unknown result type (might be due to invalid IL or missing references)
//IL_0042: Unknown result type (might be due to invalid IL or missing references)
IPilotable currentlyPiloting = SceneContextInstaller.ResolveObject<PlayersService>().LocalPlayer.CurrentlyPiloting;
if ((Object)(object)((currentlyPiloting != null) ? ((Il2CppObjectBase)currentlyPiloting).TryCast<ShipWeapon>() : null) == (Object)null)
{
return "Not on a turret.";
}
Transform target = Object.FindObjectOfType<CameraManager>()._target;
Vector3 localPosition = target.localPosition;
localPosition.y = value;
target.localPosition = localPosition;
Plugin.ShipWeapon_Y.Value = value;
return $"ShipWeapon Y now set to {value}";
}
public static string ShipWeapon_Z(float value)
{
//IL_0034: Unknown result type (might be due to invalid IL or missing references)
//IL_0039: Unknown result type (might be due to invalid IL or missing references)
//IL_0042: Unknown result type (might be due to invalid IL or missing references)
IPilotable currentlyPiloting = SceneContextInstaller.ResolveObject<PlayersService>().LocalPlayer.CurrentlyPiloting;
if ((Object)(object)((currentlyPiloting != null) ? ((Il2CppObjectBase)currentlyPiloting).TryCast<ShipWeapon>() : null) == (Object)null)
{
return "Not on a turret.";
}
Transform target = Object.FindObjectOfType<CameraManager>()._target;
Vector3 localPosition = target.localPosition;
localPosition.z = value;
target.localPosition = localPosition;
Plugin.ShipWeapon_Z.Value = value;
return $"ShipWeapon Z now set to {value}";
}
}
internal static ManualLogSource Log;
internal static Harmony harmonyInstance;
private static ConfigEntry<float> Default_TargetDistance;
private static ConfigEntry<float> Default_ShoulderModifier;
private static ConfigEntry<float> Default_UpModifier;
private static ConfigEntry<float> Sprinting_TargetDistance;
private static ConfigEntry<float> Sprinting_ShoulderModifier;
private static ConfigEntry<float> Sprinting_UpModifier;
private static ConfigEntry<float> Climbing_TargetDistance;
private static ConfigEntry<float> Climbing_ShoulderModifier;
private static ConfigEntry<float> Climbing_UpModifier;
private static ConfigEntry<float> GrapplingHook_TargetDistance;
private static ConfigEntry<float> GrapplingHook_ShoulderModifier;
private static ConfigEntry<float> GrapplingHook_UpModifier;
private static ConfigEntry<float> WingGliderItem_TargetDistance;
private static ConfigEntry<float> WingGliderItem_ShoulderModifier;
private static ConfigEntry<float> WingGliderItem_UpModifier;
private static ConfigEntry<float> Helm_X;
private static ConfigEntry<float> Helm_Y;
private static ConfigEntry<float> Helm_Z;
private static ConfigEntry<float> ShipWeapon_X;
private static ConfigEntry<float> ShipWeapon_Y;
private static ConfigEntry<float> ShipWeapon_Z;
public override void Load()
{
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_001b: Expected O, but got Unknown
Log = ((BasePlugin)this).Log;
ManualLogSource log = Log;
bool flag = default(bool);
BepInExInfoLogInterpolatedStringHandler val = new BepInExInfoLogInterpolatedStringHandler(18, 1, ref flag);
if (flag)
{
((BepInExLogInterpolatedStringHandler)val).AppendLiteral("Plugin ");
((BepInExLogInterpolatedStringHandler)val).AppendFormatted<string>("DynamikaCameraSettings");
((BepInExLogInterpolatedStringHandler)val).AppendLiteral(" is loaded!");
}
log.LogInfo(val);
Default_TargetDistance = ((BasePlugin)this).Config.Bind<float>("Default", "TargetDistance", 0.8f, "Default.TargetDistance");
Default_ShoulderModifier = ((BasePlugin)this).Config.Bind<float>("Default", "ShoulderModifier", 0.55f, "Default.ShoulderModifier");
Default_UpModifier = ((BasePlugin)this).Config.Bind<float>("Sprinting", "UpModifier", 0.67f, "Default.UpModifier");
Sprinting_TargetDistance = ((BasePlugin)this).Config.Bind<float>("Sprinting", "TargetDistance", 0.8f, "Sprinting.TargetDistance");
Sprinting_ShoulderModifier = ((BasePlugin)this).Config.Bind<float>("Sprinting", "ShoulderModifier", 0.55f, "Sprinting.ShoulderModifier");
Sprinting_UpModifier = ((BasePlugin)this).Config.Bind<float>("Sprinting", "UpModifier", 0.67f, "Sprinting.UpModifier");
Climbing_TargetDistance = ((BasePlugin)this).Config.Bind<float>("Climbing", "TargetDistance", 1.15f, "Climbing.TargetDistance");
Climbing_ShoulderModifier = ((BasePlugin)this).Config.Bind<float>("Climbing", "ShoulderModifier", 0.55f, "Climbing.ShoulderModifier");
Climbing_UpModifier = ((BasePlugin)this).Config.Bind<float>("Climbing", "UpModifier", 0.67f, "Climbing.UpModifier");
GrapplingHook_TargetDistance = ((BasePlugin)this).Config.Bind<float>("GrapplingHook", "TargetDistance", 1.15f, "GrapplingHook.TargetDistance");
GrapplingHook_ShoulderModifier = ((BasePlugin)this).Config.Bind<float>("GrapplingHook", "ShoulderModifier", 0.55f, "GrapplingHook.ShoulderModifier");
GrapplingHook_UpModifier = ((BasePlugin)this).Config.Bind<float>("GrapplingHook", "UpModifier", 0.67f, "GrapplingHook.UpModifier");
WingGliderItem_TargetDistance = ((BasePlugin)this).Config.Bind<float>("WingGliderItem", "TargetDistance", 0.8f, "WingGliderItem.TargetDistance");
WingGliderItem_ShoulderModifier = ((BasePlugin)this).Config.Bind<float>("WingGliderItem", "ShoulderModifier", 0.55f, "WingGliderItem.ShoulderModifier");
WingGliderItem_UpModifier = ((BasePlugin)this).Config.Bind<float>("WingGliderItem", "UpModifier", 0.67f, "WingGliderItem.UpModifier");
Helm_X = ((BasePlugin)this).Config.Bind<float>("Helm", "X", 0.7f, "Helm.X");
Helm_Y = ((BasePlugin)this).Config.Bind<float>("Helm", "Y", 1.71f, "Helm.Y");
Helm_Z = ((BasePlugin)this).Config.Bind<float>("Helm", "Z", -1.75f, "Helm.Z");
ShipWeapon_X = ((BasePlugin)this).Config.Bind<float>("ShipWeapon", "X", 1f, "ShipWeapon.X");
ShipWeapon_Y = ((BasePlugin)this).Config.Bind<float>("ShipWeapon", "Y", -0.6f, "ShipWeapon.Y");
ShipWeapon_Z = ((BasePlugin)this).Config.Bind<float>("ShipWeapon", "Z", -0.8f, "ShipWeapon.Z");
harmonyInstance = Harmony.CreateAndPatchAll(typeof(Plugin), (string)null);
}
public override bool Unload()
{
Harmony obj = harmonyInstance;
if (obj != null)
{
obj.UnpatchSelf();
}
return true;
}
[HarmonyPatch(typeof(CameraManager), "Awake")]
[HarmonyPostfix]
public static void CameraManager_Awake(CameraManager __instance)
{
//IL_0007: Unknown result type (might be due to invalid IL or missing references)
//IL_000c: Unknown result type (might be due to invalid IL or missing references)
//IL_004a: Unknown result type (might be due to invalid IL or missing references)
DynamikaCameraRecoil controller = __instance.GetController<DynamikaCameraRecoil>();
CameraSetting defaultSettings = ((DynamikaCamera)controller)._defaultSettings;
defaultSettings._targetDistance = (defaultSettings._targetDistanceAtVerticalLimits = Default_TargetDistance.Value);
defaultSettings._shoulderModifier = Default_ShoulderModifier.Value;
defaultSettings._upModifier = Default_UpModifier.Value;
((DynamikaCamera)controller)._defaultSettings = defaultSettings;
}
[HarmonyPatch(typeof(DynamikaCharacter), "Awake")]
[HarmonyPostfix]
public static void DynamikaCharacter_Awake(DynamikaCharacter __instance)
{
//IL_000c: Unknown result type (might be due to invalid IL or missing references)
//IL_0011: Unknown result type (might be due to invalid IL or missing references)
//IL_004f: Unknown result type (might be due to invalid IL or missing references)
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((MovementModule)__instance.GetMovementModule<Sprinting>()).GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = Sprinting_TargetDistance.Value);
settingsOverride._shoulderModifier = Sprinting_ShoulderModifier.Value;
settingsOverride._upModifier = Sprinting_UpModifier.Value;
extension._settingsOverride = settingsOverride;
CinematikaSettingsOverride extension2 = ((MovementModule)__instance.GetMovementModule<Climbing>()).GetExtension<CinematikaSettingsOverride>();
settingsOverride = extension2._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = Climbing_TargetDistance.Value);
settingsOverride._shoulderModifier = Climbing_ShoulderModifier.Value;
settingsOverride._upModifier = Climbing_UpModifier.Value;
extension2._settingsOverride = settingsOverride;
}
[HarmonyPatch(typeof(GrapplingHook), "Awake")]
[HarmonyPostfix]
public static void GrapplingHook_Awake(GrapplingHook __instance)
{
//IL_000c: Unknown result type (might be due to invalid IL or missing references)
//IL_0011: Unknown result type (might be due to invalid IL or missing references)
//IL_004f: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((UtilityItem)__instance)._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = GrapplingHook_TargetDistance.Value);
settingsOverride._shoulderModifier = GrapplingHook_ShoulderModifier.Value;
settingsOverride._upModifier = GrapplingHook_UpModifier.Value;
extension._settingsOverride = settingsOverride;
}
[HarmonyPatch(typeof(WingGliderItem), "Awake")]
[HarmonyPostfix]
public static void WingGliderItem_Awake(WingGliderItem __instance)
{
//IL_000c: Unknown result type (might be due to invalid IL or missing references)
//IL_0011: Unknown result type (might be due to invalid IL or missing references)
//IL_004f: Unknown result type (might be due to invalid IL or missing references)
CinematikaSettingsOverride extension = ((UtilityItem)__instance)._movementModule.GetExtension<CinematikaSettingsOverride>();
CameraSetting settingsOverride = extension._settingsOverride;
settingsOverride._targetDistance = (settingsOverride._targetDistanceAtVerticalLimits = WingGliderItem_TargetDistance.Value);
settingsOverride._shoulderModifier = WingGliderItem_ShoulderModifier.Value;
settingsOverride._upModifier = WingGliderItem_UpModifier.Value;
extension._settingsOverride = settingsOverride;
}
[HarmonyPatch(typeof(LocalPlayer), "TakeControlOfShip")]
[HarmonyPrefix]
public static void LocalPlayer_TakeControlOfShip(Helm helm)
{
//IL_0006: Unknown result type (might be due to invalid IL or missing references)
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
//IL_0045: Unknown result type (might be due to invalid IL or missing references)
Vector3 localPosition = helm._cameraTarget.localPosition;
localPosition.x = Helm_X.Value;
localPosition.y = Helm_Y.Value;
localPosition.z = Helm_Z.Value;
helm._cameraTarget.localPosition = localPosition;
}
[HarmonyPatch(typeof(LocalPlayer), "PilotTurret")]
[HarmonyPrefix]
public static void LocalPlayer_PilotTurret(ShipWeapon turret, bool isRemotePiloting)
{
//IL_0006: Unknown result type (might be due to invalid IL or missing references)
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
//IL_0063: Unknown result type (might be due to invalid IL or missing references)
Vector3 localPosition = turret._cameraTarget.localPosition;
localPosition.x = (isRemotePiloting ? 0f : ShipWeapon_X.Value);
localPosition.y = (isRemotePiloting ? 0f : ShipWeapon_Y.Value);
localPosition.z = (isRemotePiloting ? 0f : ShipWeapon_Z.Value);
turret._cameraTarget.localPosition = localPosition;
}
[HarmonyPatch(typeof(PilotCinematikaController), "UpdateTransform")]
[HarmonyPostfix]
public static void PilotCinematikaController_UpdateTransform(PilotCinematikaController __instance)
{
//IL_0026: Unknown result type (might be due to invalid IL or missing references)
if (!((Object)(object)((CinematikaController)__instance)._manager.Target == (Object)null) && !__instance.ThirdPerson && ((CinematikaController)__instance)._manager.Target.localPosition.z < -1.25f)
{
Camera camera = ((CinematikaController)__instance)._manager.Camera;
camera.cullingMask |= 1 << LayerMask.NameToLayer("PlayerHiddenFirstPerson");
}
}
[HarmonyPatch(typeof(PilotCinematikaController), "ThirdPersonToggle")]
[HarmonyPostfix]
public static void PilotCinematikaController_ThirdPersonToggle(PilotCinematikaController __instance)
{
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
//IL_0010: Unknown result type (might be due to invalid IL or missing references)
//IL_007c: Unknown result type (might be due to invalid IL or missing references)
Vector3 localPosition = ((CinematikaController)__instance)._manager.Target.localPosition;
localPosition.x = (__instance.ThirdPerson ? 0f : Helm_X.Value);
localPosition.y = (__instance.ThirdPerson ? 1.71f : Helm_Y.Value);
localPosition.z = (__instance.ThirdPerson ? (-1f) : Helm_Z.Value);
((CinematikaController)__instance)._manager.Target.localPosition = localPosition;
}
}
public static class MyPluginInfo
{
public const string PLUGIN_GUID = "DynamikaCameraSettings";
public const string PLUGIN_NAME = "DynamikaCameraSettings";
public const string PLUGIN_VERSION = "1.0.1";
}
}