using System.ComponentModel;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Logging;
using FistVR;
using HarmonyLib;
using OtherLoader;
using UnityEngine;
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.0.0")]
[module: UnverifiableCode]
public class FlickerLight : MonoBehaviour
{
public float MinLightIntensity = 0.5f;
public float MaxLightIntensity = 2.3f;
public float AccelerateTime = 0.15f;
private float _targetIntensity = 1f;
private float _lastIntensity = 1f;
private float _timePassed = 0f;
private Light _lt;
private const double Tolerance = 0.0001;
private void Start()
{
_lt = ((Component)this).GetComponent<Light>();
_lastIntensity = _lt.intensity;
FixedUpdate();
}
private void FixedUpdate()
{
_timePassed += Time.deltaTime;
_lt.intensity = Mathf.Lerp(_lastIntensity, _targetIntensity, _timePassed / AccelerateTime);
if ((double)Mathf.Abs(_lt.intensity - _targetIntensity) < 0.0001)
{
_lastIntensity = _lt.intensity;
_targetIntensity = Random.Range(MinLightIntensity, MaxLightIntensity);
_timePassed = 0f;
}
}
}
[RequireComponent(typeof(MeshRenderer))]
public class UVOffset : MonoBehaviour
{
public float scrollSpeed = 0.5f;
public bool scrollY = true;
private MeshRenderer renderer;
private void Start()
{
renderer = ((Component)this).GetComponent<MeshRenderer>();
}
private void Update()
{
//IL_003f: Unknown result type (might be due to invalid IL or missing references)
//IL_002f: Unknown result type (might be due to invalid IL or missing references)
float num = Time.time * scrollSpeed;
((Renderer)renderer).material.SetTextureOffset("_MainTex", (!scrollY) ? new Vector2(0f, num) : new Vector2(num, 0f));
}
}
namespace Storymods.Trenchbuster;
[BepInPlugin("Storymods.Trenchbuster", "Trenchbuster", "1.0.0")]
[BepInProcess("h3vr.exe")]
[Description("Built with MeatKit")]
[BepInDependency("h3vr.otherloader", "1.3.0")]
public class TrenchbusterPlugin : BaseUnityPlugin
{
private static readonly string BasePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
internal static ManualLogSource Logger;
private void Awake()
{
Logger = ((BaseUnityPlugin)this).Logger;
LoadAssets();
}
private void LoadAssets()
{
Harmony.CreateAndPatchAll(Assembly.GetExecutingAssembly(), "Storymods.Trenchbuster");
OtherLoader.RegisterDirectLoad(BasePath, "Storymods.Trenchbuster", "", "", "trenchbuster", "");
}
}
public class Cabernade : MonoBehaviour
{
public GameObject caberUnexploded;
public GameObject caberExploded;
public bool isCaberKablooey;
public void OnCollisionEnter(Collision col)
{
if (!isCaberKablooey)
{
CaberBlowUp();
}
}
public void CaberBlowUp()
{
caberUnexploded.SetActive(false);
caberExploded.SetActive(true);
isCaberKablooey = true;
}
}
public class SosigRangeEditor : MonoBehaviour
{
public GameObject sosigParent;
public float modifierNumber = 1f;
public bool doesHavePerfectFOV = false;
private void Start()
{
sosigParent = ((Component)((Component)this).transform.root).gameObject;
Sosig component = ((Component)((Component)this).transform).GetComponent<Sosig>();
component.MaxSightRange *= modifierNumber;
if (doesHavePerfectFOV)
{
component.MaxFOV = 360f;
}
else
{
component.MaxFOV *= modifierNumber;
}
}
}