Decompiled source of Bullpapa v1.3.0

Bulpapa.dll

Decompiled a month ago
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.Unity.IL2CPP;
using GTFO.API;
using GameData;
using Microsoft.CodeAnalysis;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
[assembly: AssemblyCompany("Bulpapa")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("Bulpapa")]
[assembly: AssemblyTitle("Bulpapa")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableAttribute : Attribute
	{
		public readonly byte[] NullableFlags;

		public NullableAttribute(byte P_0)
		{
			NullableFlags = new byte[1] { P_0 };
		}

		public NullableAttribute(byte[] P_0)
		{
			NullableFlags = P_0;
		}
	}
}
internal class bulpapa : MonoBehaviour
{
	public static void Initialize()
	{
		//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
		//IL_011b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0179: Unknown result type (might be due to invalid IL or missing references)
		//IL_020b: Unknown result type (might be due to invalid IL or missing references)
		//IL_02e7: Unknown result type (might be due to invalid IL or missing references)
		//IL_03bd: Unknown result type (might be due to invalid IL or missing references)
		//IL_0416: Unknown result type (might be due to invalid IL or missing references)
		//IL_04cd: Unknown result type (might be due to invalid IL or missing references)
		ArchetypeDataBlock block = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(38u);
		block.Damage = 10f;
		block.DefaultClipSize = 6;
		block.ShotDelay = 0.15f;
		Vector2 val = default(Vector2);
		((Vector2)(ref val))..ctor(15f, 80f);
		ArchetypeDataBlock block2 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(25u);
		block2.Damage = 9.01f;
		block2.DefaultReloadTime = 2.6f;
		ArchetypeDataBlock block3 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(42u);
		block3.Damage = 4f;
		block3.DefaultReloadTime = 1.3f;
		block3.StaggerDamageMulti = 1.6f;
		ArchetypeDataBlock block4 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(77u);
		block4.Damage = 2.45f;
		Vector2 damageFalloff = default(Vector2);
		((Vector2)(ref damageFalloff))..ctor(8f, 65f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(77u).DamageFalloff = damageFalloff;
		ArchetypeDataBlock block5 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(49u);
		block5.DefaultClipSize = 44;
		block5.Damage = 2.41f;
		block5.DefaultReloadTime = 1.35f;
		block5.ShotDelay = 0.064f;
		block5.PrecisionDamageMulti = 0.8f;
		Vector2 damageFalloff2 = default(Vector2);
		((Vector2)(ref damageFalloff2))..ctor(12f, 65f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(49u).DamageFalloff = damageFalloff2;
		ArchetypeDataBlock block6 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(19u);
		block6.Damage = 2.45f;
		ArchetypeDataBlock block7 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(69u);
		block7.PiercingBullets = true;
		block7.PiercingDamageCountLimit = 2;
		block7.Damage = 3.2f;
		Vector2 damageFalloff3 = default(Vector2);
		((Vector2)(ref damageFalloff3))..ctor(10f, 65f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(69u).DamageFalloff = damageFalloff3;
		ArchetypeDataBlock block8 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(5u);
		block8.Damage = 2.45f;
		block8.DefaultClipSize = 40;
		block8.DefaultReloadTime = 1.6f;
		ArchetypeDataBlock block9 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(78u);
		block9.Damage = 2f;
		block9.DefaultReloadTime = 2.8f;
		block9.StaggerDamageMulti = 2.5f;
		ArchetypeDataBlock block10 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(81u);
		block10.ShotDelay = 0.55f;
		Vector2 damageFalloff4 = default(Vector2);
		((Vector2)(ref damageFalloff4))..ctor(10f, 40f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(81u).DamageFalloff = damageFalloff4;
		ArchetypeDataBlock block11 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(1u);
		block11.DefaultClipSize = 20;
		block11.Damage = 6f;
		block11.StaggerDamageMulti = 1.5f;
		block11.CostOfBullet = 3f;
		ArchetypeDataBlock block12 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(23u);
		block12.Damage = 6.15f;
		ArchetypeDataBlock block13 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(59u);
		block13.Damage = 4.2f;
		block13.DefaultReloadTime = 3.6f;
		block13.ShotDelay = 0.065f;
		block13.SpecialChargetupTime = 0.25f;
		block13.StaggerDamageMulti = 1.8f;
		ArchetypeDataBlock block14 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(35u);
		block14.Damage = 3f;
		block14.DefaultReloadTime = 2.5f;
		Vector2 damageFalloff5 = default(Vector2);
		((Vector2)(ref damageFalloff5))..ctor(6.5f, 45f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(35u).DamageFalloff = damageFalloff5;
		ArchetypeDataBlock block15 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(33u);
		block15.Damage = 4f;
		ArchetypeDataBlock block16 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(34u);
		block16.DefaultClipSize = 5;
		block16.DefaultReloadTime = 2.2f;
		ArchetypeDataBlock block17 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(73u);
		block17.Damage = 5.45f;
		block17.DefaultClipSize = 20;
		block17.DefaultReloadTime = 3.25f;
		block17.PrecisionDamageMulti = 0.7f;
		block17.CostOfBullet = 1.8f;
		RecoilDataBlock block18 = GameDataBlockBase<RecoilDataBlock>.GetBlock(42u);
		block18.power.Min = 0.45f;
		block18.power.Max = 0.6f;
		block18.recoilAimingWeight = 0.6f;
		Vector2 damageFalloff6 = default(Vector2);
		((Vector2)(ref damageFalloff6))..ctor(15f, 80f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(73u).DamageFalloff = damageFalloff6;
		ArchetypeDataBlock block19 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(17u);
		block19.CostOfBullet = 1.24f;
		block19.FireMode = (eWeaponFireMode)2;
		block19.ShotDelay = 0.1f;
		block19.DefaultReloadTime = 2.3f;
		Vector2 damageFalloff7 = default(Vector2);
		((Vector2)(ref damageFalloff7))..ctor(10f, 58f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(17u).DamageFalloff = damageFalloff7;
		RecoilDataBlock block20 = GameDataBlockBase<RecoilDataBlock>.GetBlock(15u);
		block20.power.Min = 0.25f;
		block20.power.Max = 0.35f;
		ArchetypeDataBlock block21 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(37u);
		block21.Damage = 16f;
		block21.CostOfBullet = 4.2f;
		block21.PrecisionDamageMulti = 0.8f;
		RecoilDataBlock block22 = GameDataBlockBase<RecoilDataBlock>.GetBlock(47u);
		block22.power.Min = 8f;
		block22.power.Max = 10f;
		block22.recoilAimingWeight = 0.7f;
		Vector2 damageFalloff8 = default(Vector2);
		((Vector2)(ref damageFalloff8))..ctor(20f, 65f);
		GameDataBlockBase<ArchetypeDataBlock>.GetBlock(80u).DamageFalloff = damageFalloff8;
		ArchetypeDataBlock block23 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(21u);
		block23.SpecialChargetupTime = 0.1f;
		ArchetypeDataBlock block24 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(79u);
		block24.DefaultReloadTime = 2.5f;
		block24.CostOfBullet = 3.5f;
		block24.Damage = 16f;
		RecoilDataBlock block25 = GameDataBlockBase<RecoilDataBlock>.GetBlock(49u);
		block25.recoilAimingWeight = 1.1f;
		ArchetypeDataBlock block26 = GameDataBlockBase<ArchetypeDataBlock>.GetBlock(29u);
		block26.PrecisionDamageMulti = 2.1f;
		block26.DefaultClipSize = 3;
		block26.CostOfBullet = 12.5f;
		block26.ShotDelay = 0.5f;
		block26.HipFireSpread = 3f;
		RecoilDataBlock block27 = GameDataBlockBase<RecoilDataBlock>.GetBlock(9u);
		block27.dampening = 20f;
		block27.hipFireCrosshairSizeDefault = 100f;
		block27.hipFireCrosshairRecoilPop = 180f;
		block27.hipFireCrosshairSizeMax = 180f;
		block27.horizontalScale.Min = 0.13f;
		block27.horizontalScale.Max = 0.23f;
		block27.verticalScale.Min = 0.7f;
		block27.verticalScale.Max = 0.8f;
	}
}
namespace Bulpapa
{
	[BepInPlugin("Caera.BetterGuns", "BetterGuns", "1.3")]
	internal sealed class EntryPoint : BasePlugin
	{
		public const string MODNAME = "BetterGuns";

		public override void Load()
		{
			((BasePlugin)this).Log.LogMessage((object)"Loading BetterGuns");
			((BasePlugin)this).AddComponent<bulpapa>();
			EventAPI.OnAssetsLoaded += bulpapa.Initialize;
			((BasePlugin)this).Log.LogMessage((object)"Loaded BetterGuns");
		}
	}
}