using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using BepInEx.Configuration;
using BepInEx.Logging;
using HarmonyLib;
using UnityEngine;
using UnityEngine.SceneManagement;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("NoTelegraphClockwork")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("NoTelegraphClockwork")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("456811a0-3b2f-4025-aa6c-7a2717ec486a")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace NoTelegraphClockwork
{
[BepInPlugin("com.AquaEther.NoTelegraphCogwork", "NoTelegraphCogwork", "1.0.0")]
public class NoTelegraphCogworkPlugin : BaseUnityPlugin
{
private const string MyGUID = "com.AquaEther.NoTelegraphCogwork";
private const string PluginName = "NoTelegraphCogwork";
private const string VersionString = "1.0.0";
private static readonly Harmony Harmony = new Harmony("com.AquaEther.NoTelegraphCogwork");
public static ManualLogSource Log = new ManualLogSource("NoTelegraphCogwork");
public ConfigEntry<bool> clover;
public ConfigEntry<bool> cogwork;
public void Awake()
{
cogwork = ((BaseUnityPlugin)this).Config.Bind<bool>("Cogwork/Clover Dancer Settings", "Disable Cogwork Telegraphs", true, "");
clover = ((BaseUnityPlugin)this).Config.Bind<bool>("Cogwork/Clover Dancer Settings", "Disable Clover Telegraphs", true, "");
((BaseUnityPlugin)this).Logger.LogInfo((object)"PluginName: NoTelegraphCogwork, VersionString: 1.0.0 is loading...");
Harmony.PatchAll();
((BaseUnityPlugin)this).Logger.LogInfo((object)"PluginName: NoTelegraphCogwork, VersionString: 1.0.0 is loaded.");
Log = ((BaseUnityPlugin)this).Logger;
SceneManager.sceneLoaded -= OnSceneLoaded;
SceneManager.sceneLoaded += OnSceneLoaded;
}
public void OnSceneLoaded(Scene scene, LoadSceneMode mode)
{
if (((Scene)(ref scene)).name == "Cog_Dancers_boss" && cogwork.Value)
{
GameObject val = GameObject.Find("Dancer Control");
GameObject val2 = GameObject.Find("Dancer Control/Dancer A");
GameObject val3 = GameObject.Find("Dancer Control/Dancer B");
SpriteRenderer[] componentsInChildren = val.GetComponentsInChildren<SpriteRenderer>(true);
MeshRenderer[] componentsInChildren2 = val3.GetComponentsInChildren<MeshRenderer>(true);
MeshRenderer[] componentsInChildren3 = val2.GetComponentsInChildren<MeshRenderer>(true);
((Renderer)componentsInChildren3[1]).enabled = false;
((Renderer)componentsInChildren3[2]).enabled = false;
((Renderer)componentsInChildren3[3]).enabled = false;
((Renderer)componentsInChildren2[1]).enabled = false;
((Renderer)componentsInChildren2[2]).enabled = false;
((Renderer)componentsInChildren2[3]).enabled = false;
SpriteRenderer[] array = componentsInChildren;
foreach (SpriteRenderer val4 in array)
{
if (((Object)((Component)val4).gameObject).name == "beam")
{
((Renderer)val4).enabled = false;
}
if (((Object)((Component)val4).gameObject).name == "haze2")
{
((Renderer)val4).forceRenderingOff = true;
}
if (((Object)((Component)val4).gameObject).name == "Join Glow")
{
((Renderer)val4).enabled = false;
}
if (((Object)((Component)val4).gameObject).name == "Join Ring")
{
((Renderer)val4).enabled = false;
}
if (((Object)((Component)val4).gameObject).name == "White Flash R")
{
((Renderer)val4).enabled = false;
}
}
}
if (!(((Scene)(ref scene)).name == "Clover_10") || !clover.Value)
{
return;
}
GameObject val5 = GameObject.Find("Boss Scene/Dancer Control");
GameObject val6 = GameObject.Find("Boss Scene/Dancer Control/Dancer A");
GameObject val7 = GameObject.Find("Boss Scene/Dancer Control/Dancer B");
SpriteRenderer[] componentsInChildren4 = val5.GetComponentsInChildren<SpriteRenderer>(true);
MeshRenderer[] componentsInChildren5 = val7.GetComponentsInChildren<MeshRenderer>(true);
MeshRenderer[] componentsInChildren6 = val6.GetComponentsInChildren<MeshRenderer>(true);
((Renderer)componentsInChildren6[1]).enabled = false;
((Renderer)componentsInChildren6[2]).enabled = false;
((Renderer)componentsInChildren6[3]).enabled = false;
((Renderer)componentsInChildren5[1]).enabled = false;
((Renderer)componentsInChildren5[2]).enabled = false;
((Renderer)componentsInChildren5[3]).enabled = false;
SpriteRenderer[] array2 = componentsInChildren4;
foreach (SpriteRenderer val8 in array2)
{
if (((Object)((Component)val8).gameObject).name == "beam")
{
((Renderer)val8).enabled = false;
}
if (((Object)((Component)val8).gameObject).name == "haze2")
{
((Renderer)val8).forceRenderingOff = true;
}
if (((Object)((Component)val8).gameObject).name == "Join Glow")
{
((Renderer)val8).enabled = false;
}
if (((Object)((Component)val8).gameObject).name == "Join Ring")
{
((Renderer)val8).enabled = false;
}
if (((Object)((Component)val8).gameObject).name == "White Flash R")
{
((Renderer)val8).enabled = false;
}
}
}
}
}
namespace NoTelegraphClockwork.MonoBehaviours
{
internal class NoTelegraphClockworkComponent : MonoBehaviour
{
public void Awake()
{
}
public void Start()
{
}
public void Update()
{
}
public void LateUpdate()
{
}
}
}