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
};
}
}
}
}
}