Decompiled source of Internet Meme Cards v1.0.1

Internet_Meme_Cards.dll

Decompiled 2 months ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using BepInEx;
using Jotunn.Utils;
using ModdingUtils.Extensions;
using ModdingUtils.Utils;
using UnboundLib.Cards;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyVersion("0.0.0.0")]
public class CardHolder : MonoBehaviour
{
	public List<GameObject> Cards;

	public List<GameObject> HiddenCards;

	internal void RegisterCards()
	{
		foreach (GameObject card in Cards)
		{
			CustomCard.RegisterUnityCard(card, Meme.modInitials, card.GetComponent<CardInfo>().cardName, true, (Action<CardInfo>)null);
		}
		foreach (GameObject hiddenCard in HiddenCards)
		{
			CustomCard.RegisterUnityCard(hiddenCard, Meme.modInitials, hiddenCard.GetComponent<CardInfo>().cardName, false, (Action<CardInfo>)null);
			Cards.instance.AddHiddenCard(hiddenCard.GetComponent<CardInfo>());
		}
	}
}
public class Dewritos : MonoBehaviour
{
	private void Start()
	{
	}

	private void Update()
	{
	}
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("memevoid", "Meme", "1.0.0")]
[BepInProcess("Rounds.exe")]
public class Meme : BaseUnityPlugin
{
	public static string modInitials = "mv";

	internal static AssetBundle assets;

	private void Awake()
	{
		assets = AssetUtils.LoadAssetBundleFromResources("asset", typeof(Meme).Assembly);
		assets.LoadAsset<GameObject>("ModCards").GetComponent<CardHolder>().RegisterCards();
	}

	private void Start()
	{
	}
}
public class NewBehaviourScript : MonoBehaviour
{
	private void Start()
	{
	}

	private void Update()
	{
	}
}
namespace ModdingUtils.MonoBehaviours;

public class Bekfast : ReversibleEffect
{
	public float MaxPlayerHealth;

	public float ThresholdHealth;

	public float CurrentHealth;

	public override void OnStart()
	{
		CharacterStatModifiers stats = base.stats;
		stats.movementSpeed += base.data.maxHealth / 100f * 0f;
	}
}
public class EggDog : ReversibleEffect
{
	public override void OnUpdate()
	{
		base.stats.lifeSteal = 25f / base.data.maxHealth;
	}
}
public class Frog : ReversibleEffect
{
	public override void OnStart()
	{
		List<CardInfo> currentCards = base.player.data.currentCards;
		foreach (CardInfo item in currentCards)
		{
			if (item.cardDestription.Contains("Frogs"))
			{
				CharacterDataModifier characterDataModifier = base.characterDataModifier;
				characterDataModifier.numberOfJumps_add++;
			}
		}
	}
}
public class Froge : ReversibleEffect
{
	public override void OnStart()
	{
		List<CardInfo> currentCards = base.player.data.currentCards;
		foreach (CardInfo item in currentCards)
		{
			if (item.cardDestription.Contains("Frogs"))
			{
				Block block = base.data.block;
				block.additionalBlocks++;
			}
		}
	}
}
public class FrogTwo : ReversibleEffect
{
	public override void OnStart()
	{
		List<CardInfo> currentCards = base.player.data.currentCards;
		foreach (CardInfo item in currentCards)
		{
			if (item.cardDestription.Contains("Frogs"))
			{
				CharacterStatModifiers stats = base.player.data.stats;
				stats.movementSpeed += 1f;
			}
		}
	}
}
public class Morbius : ReversibleEffect
{
	public float lifeAdder = 1f;

	private void OnStart()
	{
		CharacterStatModifiers stats = base.data.stats;
		stats.lifeSteal += lifeAdder;
	}

	private void OnOnDestroy()
	{
		CharacterStatModifiers stats = base.data.stats;
		stats.lifeSteal -= lifeAdder;
	}
}
public class PrefabOnePiece : ReversibleEffect
{
	public override void OnStart()
	{
		List<CardInfo> currentCards = base.player.data.currentCards;
		int num = 0;
		bool flag = false;
		string[] array = Array.Empty<string>();
		foreach (CardInfo item in currentCards)
		{
			if (!array.Contains(item.cardName))
			{
				array[num] = item.cardName;
				num++;
			}
			else
			{
				flag = true;
			}
		}
		if (!flag)
		{
			Block block = base.block;
			block.additionalBlocks += 3;
		}
	}
}
public class Rat : ReversibleEffect
{
	public override void OnStart()
	{
		Gun gun = base.gun;
		gun.damage += base.stats.movementSpeed / 2f;
	}

	public override void OnOnDestroy()
	{
		Gun gun = base.gun;
		gun.damage -= base.stats.movementSpeed / 2f;
	}
}