Decompiled source of No Blasphemy Beam Shader v1.0.0

GungeonNoBlasphemyBeamShader.dll

Decompiled a week ago
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("GungeonNoBlasphemyBeamShader")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("N/A")]
[assembly: AssemblyProduct("GungeonNoBlasphemyBeamShader")]
[assembly: AssemblyCopyright("Copyright © N/A 2025")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("428f294c-7037-4ddf-8967-9de5788453bb")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace GungeonNoBlasphemyBeamShader;

[BepInPlugin("spapi.etg.noblasphemybeamshader", "No Blasphemy Beam Shader", "1.0.0")]
public class Plugin : BaseUnityPlugin
{
	public const string GUID = "spapi.etg.noblasphemybeamshader";

	public const string NAME = "No Blasphemy Beam Shader";

	public const string VERSION = "1.0.0";

	public void Awake()
	{
		//IL_014c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0151: Unknown result type (might be due to invalid IL or missing references)
		//IL_0169: Expected O, but got Unknown
		//IL_0180: Unknown result type (might be due to invalid IL or missing references)
		//IL_0185: Unknown result type (might be due to invalid IL or missing references)
		//IL_019d: Expected O, but got Unknown
		int[] array = new int[2] { 417, 813 };
		int[] array2 = array;
		foreach (int num in array2)
		{
			PickupObject byId = PickupObjectDatabase.GetById(num);
			Gun val = (Gun)(object)((byId is Gun) ? byId : null);
			Projectile val2 = val.DefaultModule.projectiles[0];
			tk2dBaseSprite component = ((Component)((BraveBehaviour)val2).transform.Find("Sprite")).GetComponent<tk2dBaseSprite>();
			tk2dSpriteCollectionData collection = component.Collection;
			Material val3 = collection.materials[0];
			HashSet<tk2dSpriteDefinition> hashSet = new HashSet<tk2dSpriteDefinition> { component.CurrentSprite };
			tk2dSpriteAnimator component2 = ((Component)component).GetComponent<tk2dSpriteAnimator>();
			if (Object.op_Implicit((Object)(object)component2) && component2.DefaultClip != null)
			{
				tk2dSpriteAnimationFrame[] frames = component2.DefaultClip.frames;
				foreach (tk2dSpriteAnimationFrame val4 in frames)
				{
					if (val4 != null && !((Object)(object)val4.spriteCollection == (Object)null) && val4.spriteId >= 0)
					{
						hashSet.Add(val4.spriteCollection.spriteDefinitions[val4.spriteId]);
					}
				}
			}
			foreach (tk2dSpriteDefinition item in hashSet)
			{
				if ((Object)(object)item.material != (Object)null)
				{
					item.material = new Material(val3)
					{
						mainTexture = item.material.mainTexture
					};
				}
				if ((Object)(object)item.materialInst != (Object)null)
				{
					item.materialInst = new Material(val3)
					{
						mainTexture = item.materialInst.mainTexture
					};
				}
			}
		}
	}
}