Decompiled source of VanillaFlavour v1.3.3

plugins\VanillaFlavour.dll

Decompiled a month ago
using System;
using System.CodeDom.Compiler;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using HarmonyLib;
using Photon.Pun;
using Sonigon;
using SoundImplementation;
using UnboundLib.Cards;
using UnityEngine;
using VanillaFlavour.Extensions;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
[assembly: AssemblyVersion("0.0.0.0")]
internal class ThisAssembly
{
	[GeneratedCode("ThisAssembly.Project", "1.0.0")]
	[CompilerGenerated]
	public static class Project
	{
		public const string RootNamespace = "VanillaFlavour";

		public const string AssemblyName = "VanillaFlavour";

		public const string TargetFrameworkVersion = "v4.7.2";

		public const string TargetFrameworkIdentifier = ".NETFramework";

		public const string TargetFrameworkMoniker = ".NETFramework,Version=v4.7.2";

		public const string Version = "1.3.3";
	}
}
namespace VanillaFlavour
{
	[AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)]
	public sealed class CardAttribute : Attribute
	{
	}
	public enum CardInfoStatType
	{
		Positive,
		Negative
	}
	public sealed class CustomBombsAway : MonoBehaviour
	{
		private Gun _bombSpawnerGun;

		private void Start()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0020: Unknown result type (might be due to invalid IL or missing references)
			//IL_0030: Expected O, but got Unknown
			GameObject val = Object.Instantiate<GameObject>((GameObject)VanillaFlavour.RoundsResources["A_BombsAway"], ((Component)this).transform.position, Quaternion.identity, ((Component)this).transform);
			_bombSpawnerGun = ((Component)val.transform.Find("Rotator/Gun")).GetComponent<Gun>();
			ObjectsToSpawnAdditionalData additionalData = _bombSpawnerGun.objectsToSpawn[0].GetAdditionalData();
			additionalData.SpawnedObjectAction = (Action<GameObject[]>)Delegate.Combine(additionalData.SpawnedObjectAction, new Action<GameObject[]>(HandleBombObjectSpawns));
		}

		private void OnDestroy()
		{
			ObjectsToSpawnAdditionalData additionalData = _bombSpawnerGun.objectsToSpawn[0].GetAdditionalData();
			additionalData.SpawnedObjectAction = (Action<GameObject[]>)Delegate.Remove(additionalData.SpawnedObjectAction, new Action<GameObject[]>(HandleBombObjectSpawns));
		}

		private void HandleBombObjectSpawns(GameObject[] spawnedObjects)
		{
			foreach (GameObject val in spawnedObjects)
			{
				SpawnObjects component = val.GetComponent<SpawnObjects>();
				component.SpawnedAction = (Action<GameObject>)Delegate.Combine(component.SpawnedAction, new Action<GameObject>(HandleBombExplosionSpawn));
			}
		}

		private void HandleBombExplosionSpawn(GameObject spawnedObject)
		{
			spawnedObject.GetComponent<Explosion>().ignoreTeam = true;
		}
	}
	public class CustomBounceEffectRetarget : BounceEffect
	{
		private const float Range = 8f;

		[SerializeField]
		private SoundEvent _soundTargetBounceTargetPlayer = null;

		private MoveTransform _move;

		private PhotonView _view;

		private void Start()
		{
			_view = ((Component)this).GetComponentInParent<PhotonView>();
			_move = ((Component)this).GetComponentInParent<MoveTransform>();
			((Component)this).GetComponentInParent<ChildRPC>().childRPCsVector2.Add("TargetBounce", SetNewVel);
			((Component)this).GetComponentInParent<ChildRPC>().childRPCsInt.Add("TargetBounceLine", DrawLineTo);
		}

		public override void DoBounce(HitInfo hit)
		{
			((MonoBehaviour)this).StartCoroutine(DelayMove(hit));
		}

		private void SetNewVel(Vector2 newVel)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0015: Unknown result type (might be due to invalid IL or missing references)
			//IL_001a: Unknown result type (might be due to invalid IL or missing references)
			((Behaviour)_move).enabled = true;
			_move.velocity = Vector2.op_Implicit(newVel);
		}

		private Player FindTarget(HitInfo hit)
		{
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_000c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0021: Unknown result type (might be due to invalid IL or missing references)
			//IL_0026: Unknown result type (might be due to invalid IL or missing references)
			//IL_0062: Unknown result type (might be due to invalid IL or missing references)
			//IL_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0080: Unknown result type (might be due to invalid IL or missing references)
			Vector2 val = Vector2.op_Implicit(((Component)this).transform.position) + hit.normal * 0.1f;
			Player result = null;
			float num = float.PositiveInfinity;
			foreach (Player player in PlayerManager.instance.players)
			{
				if (!player.data.dead)
				{
					float num2 = Vector2.Distance(val, player.data.playerVel.position);
					if (PlayerManager.instance.CanSeePlayer(val, player).canSee && num2 < num && num2 <= 8f)
					{
						num = num2;
						result = player;
					}
				}
			}
			return result;
		}

		private IEnumerator DelayMove(HitInfo hit)
		{
			Player targetPlayer = FindTarget(hit);
			if (Object.op_Implicit((Object)(object)targetPlayer) && _view.IsMine)
			{
				((Component)this).GetComponentInParent<ChildRPC>().CallFunction("TargetBounceLine", targetPlayer.playerID);
			}
			((Behaviour)_move).enabled = false;
			if (Object.op_Implicit((Object)(object)hit.rigidbody))
			{
				((Component)_move).GetComponent<RayCastTrail>().IgnoreRigFor(hit.rigidbody, 0.5f);
			}
			yield return (object)new WaitForSeconds(0.1f);
			if (_view.IsMine)
			{
				ActuallyDoBounce(targetPlayer?.playerID ?? (-1));
			}
		}

		private void ActuallyDoBounce(int playerId)
		{
			//IL_006b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0070: Unknown result type (might be due to invalid IL or missing references)
			//IL_007d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0082: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008e: Unknown result type (might be due to invalid IL or missing references)
			//IL_008f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0095: Unknown result type (might be due to invalid IL or missing references)
			//IL_009a: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00af: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_004b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0050: Unknown result type (might be due to invalid IL or missing references)
			Player val = ((IEnumerable<Player>)PlayerManager.instance.players).FirstOrDefault((Func<Player, bool>)((Player p) => p.playerID == playerId));
			if (!Object.op_Implicit((Object)(object)val))
			{
				((Component)this).GetComponentInParent<ChildRPC>().CallFunction("TargetBounce", Vector2.op_Implicit(_move.velocity));
				return;
			}
			Vector2 position = val.data.playerVel.position;
			float upwardsCompensation = _move.GetUpwardsCompensation(Vector2.op_Implicit(((Component)this).transform.position), position);
			Vector2 val2 = position + Vector2.up * upwardsCompensation - Vector2.op_Implicit(((Component)this).transform.position);
			Vector2 val3 = ((Vector2)(ref val2)).normalized * ((Vector3)(ref _move.velocity)).magnitude;
			((Component)this).GetComponentInParent<ChildRPC>().CallFunction("TargetBounce", val3);
			SoundManager.Instance.PlayAtPosition(_soundTargetBounceTargetPlayer, SoundManager.Instance.GetTransform(), ((Component)this).transform);
		}

		private void DrawLineTo(int playerId)
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			Player val = ((IEnumerable<Player>)PlayerManager.instance.players).FirstOrDefault((Func<Player, bool>)((Player p) => p.playerID == playerId));
			if (Object.op_Implicit((Object)(object)val))
			{
				((MonoBehaviour)this).StartCoroutine(DrawLine(((Component)val).transform.position));
			}
		}

		private IEnumerator DrawLine(Vector3 position)
		{
			//IL_000e: Unknown result type (might be due to invalid IL or missing references)
			//IL_000f: Unknown result type (might be due to invalid IL or missing references)
			LineEffect line = ((Component)this).GetComponentInChildren<LineEffect>(true);
			line.StartDraw();
			while (Object.op_Implicit((Object)(object)line))
			{
				line.DrawLine(((Component)this).transform.position, position);
				yield return null;
			}
		}
	}
	public class CustomImplosion : MonoBehaviour
	{
		[SerializeField]
		private float _force = 0f;

		[SerializeField]
		private float _drag = 0f;

		[SerializeField]
		private float _time = 0f;

		[SerializeField]
		private float _clampDist = 0f;

		[SerializeField]
		private float _dmgPer100Hp = 0f;

		private void Start()
		{
			//IL_0035: Unknown result type (might be due to invalid IL or missing references)
			//IL_0052: Unknown result type (might be due to invalid IL or missing references)
			Explosion component = ((Component)this).GetComponent<Explosion>();
			component.HitTargetAction = (Action<Damagable, float>)Delegate.Combine(component.HitTargetAction, new Action<Damagable, float>(HitTarget));
			_clampDist *= ((Component)this).transform.localScale.x;
			_force *= ((Component)this).transform.localScale.x;
		}

		public void HitTarget(Damagable damageable, float distance)
		{
			//IL_0045: Unknown result type (might be due to invalid IL or missing references)
			//IL_0052: Unknown result type (might be due to invalid IL or missing references)
			//IL_0058: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_00bf: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c4: Unknown result type (might be due to invalid IL or missing references)
			SpawnedAttack component = ((Component)this).GetComponent<SpawnedAttack>();
			if (component.IsMine())
			{
				HealthHandler component2 = ((Component)damageable).GetComponent<HealthHandler>();
				float num = component.spawner.data.maxHealth * _dmgPer100Hp * 0.01f * ((Component)this).transform.localScale.x;
				((Damagable)component2).CallTakeDamage(Vector2.up * num, Vector2.op_Implicit(((Component)this).transform.position), (GameObject)null, component.spawner, true);
				((Component)component2).GetComponent<PhotonView>().RPC("RPCA_SendForceTowardsPointOverTime", (RpcTarget)0, new object[8]
				{
					_force,
					_drag,
					_clampDist,
					Vector2.op_Implicit(((Component)this).transform.position),
					_time,
					0,
					false,
					false
				});
			}
		}
	}
	[Card]
	public sealed class RapidFire : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.attackSpeed = 0.5f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.CustomResources["C_RapidFire"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+100%", "ATKSPD", CardInfoStatType.Positive, (SimpleAmount)3) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Rapid fire";
		}
	}
	public abstract class VanillaFlavourCard : CustomCard
	{
		public override string GetModName()
		{
			return "Vanilla Flavour";
		}
	}
	[Card]
	public sealed class AbyssalCountdown : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_AbyssalCountdown"];
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Abyssal"];
		}

		protected override string GetDescription()
		{
			return "Stand still to summon dark powers";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[0];
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)4;
		}

		protected override string GetTitle()
		{
			return "Abyssal countdown";
		}
	}
	[Card]
	public sealed class Barrage : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.damage = 0.3f;
			gun.ammo = 5;
			gun.numberOfProjectiles = 4;
			gun.spread = 0.13f;
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Barrage"];
		}

		protected override string GetDescription()
		{
			return "Fire many bullets at the same time";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[4]
			{
				Utils.CreateCardInfoStat("+4", "Bullets", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+5", "Ammo", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("-70%", "DMG", CardInfoStatType.Negative, (SimpleAmount)7),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Barrage";
		}
	}
	[Card]
	public sealed class BigBullet : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0054: Unknown result type (might be due to invalid IL or missing references)
			//IL_0059: Unknown result type (might be due to invalid IL or missing references)
			//IL_0069: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: Expected O, but got Unknown
			//IL_0073: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Big_Bullet_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Big_Bullet_SoundImpactModifier"];
			gun.size = 0.5f;
			gun.reloadTimeAdd = 0.25f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["E_BigBullet"],
					scaleStacks = true,
					scaleStackM = 0f
				}
			};
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_BigBullet"];
		}

		protected override string GetDescription()
		{
			return "Bigger bullets";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Big bullet";
		}
	}
	[Card]
	public sealed class BombsAway : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			statModifiers.health = 1.3f;
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
			//IL_0019: Unknown result type (might be due to invalid IL or missing references)
			//IL_001f: Expected O, but got Unknown
			//IL_0037: Unknown result type (might be due to invalid IL or missing references)
			GameObject val = new GameObject("A_CustomBombsAway", new Type[1] { typeof(CustomBombsAway) });
			val.transform.SetParent(((Component)player).transform);
			val.transform.localPosition = Vector3.zero;
		}

		public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
			GameObject gameObject = ((Component)((Component)player).transform.Find("A_CustomBombsAway")).gameObject;
			if ((Object)(object)gameObject != (Object)null)
			{
				Object.Destroy((Object)(object)gameObject);
			}
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_BombsAway"];
		}

		protected override string GetDescription()
		{
			return "Spawn a bunch of small bombs around you when you block";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Bombs away";
		}
	}
	[Card]
	public sealed class Bouncy : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0032: Unknown result type (might be due to invalid IL or missing references)
			//IL_0037: Unknown result type (might be due to invalid IL or missing references)
			//IL_0047: Unknown result type (might be due to invalid IL or missing references)
			//IL_0051: Expected O, but got Unknown
			//IL_0052: Expected O, but got Unknown
			gun.damage = 1.25f;
			gun.overheatMultiplier = 0.2f;
			gun.reflects = 2;
			gun.reloadTimeAdd = 0.25f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_ScreenEdge"]
				}
			};
			gun.attackID = 0;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Bouncy"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+2", "Bullet bounces", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+25%", "DMG", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Bouncy";
		}
	}
	[Card]
	public sealed class Brawler : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_Brawler"];
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Brawler"];
		}

		protected override string GetDescription()
		{
			return "+200% HP 3s after dealing DMG";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[0];
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)2;
		}

		protected override string GetTitle()
		{
			return "Brawler";
		}
	}
	[Card]
	public sealed class Buckshot : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.damage = 0.4f;
			gun.knockback = 2.5f;
			gun.projectileSpeed = 3.5f;
			gun.gravity = 0f;
			gun.ammo = 5;
			gun.numberOfProjectiles = 4;
			gun.drag = 10f;
			gun.spread = 0.5f;
			gun.destroyBulletAfter = 0.2f;
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Buckshot"];
		}

		protected override string GetDescription()
		{
			return "Adds a shotgun vibe to your attack";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[4]
			{
				Utils.CreateCardInfoStat("+4 ", "Bullets", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+5", "AMMO", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("-60%", "DMG", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Buckshot";
		}
	}
	[Card]
	public sealed class Burst : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.damage = 0.6f;
			gun.ammo = 3;
			gun.bursts = 3;
			gun.timeBetweenBullets = 0.025f;
			gun.spread = 0.04f;
			gun.attackID = 0;
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Burst"];
		}

		protected override string GetDescription()
		{
			return "Multiple bullets are fired in a sequence";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[4]
			{
				Utils.CreateCardInfoStat("+2", "Bullets", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+3", "AMMO", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("-60%", "DMG", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Burst";
		}
	}
	[Card]
	public sealed class CarefulPlanning : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.damage = 2f;
			gun.reloadTimeAdd = 0.5f;
			gun.attackSpeed = 2.5f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Careful_Planning"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+100%", "DMG", CardInfoStatType.Positive, (SimpleAmount)3),
				Utils.CreateCardInfoStat("-60%", "ATKSPD", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("+0.5s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Careful planning";
		}
	}
	[Card]
	public sealed class Chase : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_Chase"];
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Chase"];
		}

		protected override string GetDescription()
		{
			return "+60% movement when moving towards the opponent";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+30%", "Health", CardInfoStatType.Positive, (SimpleAmount)2) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Chase";
		}
	}
	[Card]
	public sealed class ChillingPresence : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_ChillingPresence"];
			statModifiers.health = 1.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_ChillingPresence"];
		}

		protected override string GetDescription()
		{
			return "Slightly slow nearby enemies";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+25%", "HP", CardInfoStatType.Positive, (SimpleAmount)2) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)7;
		}

		protected override string GetTitle()
		{
			return "Chilling presence";
		}
	}
	[Card]
	public sealed class ColdBullets : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0049: Unknown result type (might be due to invalid IL or missing references)
			//IL_004e: Unknown result type (might be due to invalid IL or missing references)
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Expected O, but got Unknown
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_00a0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a5: Unknown result type (might be due to invalid IL or missing references)
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Cold_Bullets_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Cold_Bullets_SoundImpactModifier"];
			gun.slow = 0.7f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["E_Cold"],
					scaleStacks = true,
					scaleStackM = 0.3f,
					scaleFromDamage = 0.5f
				}
			};
			gun.projectileColor = new Color(0.2122642f, 0.9246516f, 1f, 1f);
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_ColdBullets"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+70%", "Bullet slow", CardInfoStatType.Positive, (SimpleAmount)3),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)7;
		}

		protected override string GetTitle()
		{
			return "Cold bullets";
		}
	}
	[Card]
	public sealed class Combine : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.damage = 2f;
			gun.reloadTimeAdd = 0.5f;
			gun.ammo = -2;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Combine"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+100%", "DMG", CardInfoStatType.Positive, (SimpleAmount)3),
				Utils.CreateCardInfoStat("-2", "AMMO", CardInfoStatType.Negative, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+0.5s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Combine";
		}
	}
	[Card]
	public sealed class Dazzle : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_000a: Unknown result type (might be due to invalid IL or missing references)
			//IL_000f: Unknown result type (might be due to invalid IL or missing references)
			//IL_001f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Expected O, but got Unknown
			//IL_0029: Unknown result type (might be due to invalid IL or missing references)
			//IL_0030: Unknown result type (might be due to invalid IL or missing references)
			//IL_0037: Unknown result type (might be due to invalid IL or missing references)
			//IL_0042: Unknown result type (might be due to invalid IL or missing references)
			//IL_004e: Expected O, but got Unknown
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_006d: Unknown result type (might be due to invalid IL or missing references)
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					effect = (GameObject)VanillaFlavour.RoundsResources["E_StunOverTime"],
					spawnAsChild = true,
					scaleStacks = true,
					scaleStackM = 1f,
					scaleFromDamage = 0.5f
				}
			};
			gun.projectileColor = new Color(0f, 1f, 0.7739825f, 1f);
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Dazzle"];
		}

		protected override string GetDescription()
		{
			return "Bullets stun the oponent multiple times";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)8;
		}

		protected override string GetTitle()
		{
			return "Dazzle";
		}
	}
	[Card]
	public sealed class Decay : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			statModifiers.health = 1.5f;
			statModifiers.secondsToTakeDamageOver = 4f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Decay"];
		}

		protected override string GetDescription()
		{
			return "Damage done to you is dealt over 4 seconds";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+50%", "HP", CardInfoStatType.Positive, (SimpleAmount)2) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)4;
		}

		protected override string GetTitle()
		{
			return "Decay";
		}
	}
	[Card]
	public sealed class Defender : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			block.cdMultiplier = 0.75f;
			statModifiers.health = 1.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Defender"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+25%", "HP", CardInfoStatType.Positive, (SimpleAmount)1),
				Utils.CreateCardInfoStat("-25%", "Block cooldown", CardInfoStatType.Positive, (SimpleAmount)5)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)2;
		}

		protected override string GetTitle()
		{
			return "Defender";
		}
	}
	[Card]
	public sealed class DemonicPact : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0058: Unknown result type (might be due to invalid IL or missing references)
			//IL_005d: Unknown result type (might be due to invalid IL or missing references)
			//IL_006d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0077: Expected O, but got Unknown
			//IL_0077: Unknown result type (might be due to invalid IL or missing references)
			//IL_0082: Unknown result type (might be due to invalid IL or missing references)
			//IL_0092: Unknown result type (might be due to invalid IL or missing references)
			//IL_009c: Expected O, but got Unknown
			//IL_009c: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ba: Expected O, but got Unknown
			//IL_00d4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f9: Expected O, but got Unknown
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Demonic_Pact_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Demonic_Pact_SoundImpactModifier"];
			gun.attackSpeed = 0.025f;
			gun.ammo = 9;
			gun.dontAllowAutoFire = true;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					effect = (GameObject)VanillaFlavour.RoundsResources["A_DemonicExplosion"],
					normalOffset = 0.1f,
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_DemonSpark"],
					scaleStacks = true,
					scaleStackM = 0.7f,
					scaleFromDamage = 0.5f
				}
			};
			gun.projectileColor = new Color(0.6471141f, 0.4575472f, 1f, 1f);
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_DemonicPact"];
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_DemonicPact"];
		}

		protected override string GetDescription()
		{
			return "Shooting costs 10HP\nRemoves shooting cooldown";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+9", "Bullets", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+2", "Splash DMG", CardInfoStatType.Positive, (SimpleAmount)1),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)4;
		}

		protected override string GetTitle()
		{
			return "Demonic pact";
		}
	}
	[Card]
	public sealed class DrillAmmo : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_000a: Unknown result type (might be due to invalid IL or missing references)
			//IL_000f: Unknown result type (might be due to invalid IL or missing references)
			//IL_001f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Expected O, but got Unknown
			//IL_0029: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_DrillAmmo"],
					scaleStackM = 0.7f
				}
			};
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_DrillAmmo"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+7m", "Bullets drill through walls", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Drill ammo";
		}
	}
	[Card]
	public sealed class Echo : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			statModifiers.health = 1.3f;
			block.additionalBlocks = 1;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Echo"];
		}

		protected override string GetDescription()
		{
			return "Blocking triggers another, delayed block";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Echo";
		}
	}
	[Card]
	public sealed class Emp : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_EMP"];
			statModifiers.health = 1.3f;
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_EMP"];
		}

		protected override string GetDescription()
		{
			return "Blocking spawns a ring of slowing projectiles";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)3;
		}

		protected override string GetTitle()
		{
			return "Emp";
		}
	}
	[Card]
	public sealed class Empower : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0019: Unknown result type (might be due to invalid IL or missing references)
			//IL_0023: Expected O, but got Unknown
			gun.attackID = 0;
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_Empower"];
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Empower"];
		}

		protected override string GetDescription()
		{
			return "Blocking increases the damage and speed of your next shot.\nThe shot also triggers any on block abilities where it lands.";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)3;
		}

		protected override string GetTitle()
		{
			return "Empower";
		}
	}
	[Card]
	public sealed class ExplosiveBullet : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0049: Unknown result type (might be due to invalid IL or missing references)
			//IL_004e: Unknown result type (might be due to invalid IL or missing references)
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Expected O, but got Unknown
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: Unknown result type (might be due to invalid IL or missing references)
			//IL_0083: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ab: Expected O, but got Unknown
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Explosive_Bullet_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Explosive_Bullet_SoundImpactModifier"];
			gun.attackSpeed = 2f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					effect = (GameObject)VanillaFlavour.RoundsResources["A_Explosion"],
					normalOffset = 0.1f,
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_ExplosionSpark"],
					scaleStacks = true,
					scaleStackM = 0.7f,
					scaleFromDamage = 0.5f
				}
			};
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Explosive_Bullet"];
		}

		protected override string GetDescription()
		{
			return "Bullet explodes on impact";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("-50%", "ATKSPD", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Explosive bullet";
		}
	}
	[Card]
	public sealed class FastBall : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0054: Unknown result type (might be due to invalid IL or missing references)
			//IL_0059: Unknown result type (might be due to invalid IL or missing references)
			//IL_0069: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: Expected O, but got Unknown
			//IL_0073: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Quick_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Quick_SoundImpactModifier"];
			gun.attackSpeed = 1.5f;
			gun.projectileSpeed = 3.5f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_FastBall"],
					scaleStacks = true,
					scaleStackM = 0.3f
				}
			};
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Fastballer"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+250%", "Bullet speed ", CardInfoStatType.Positive, (SimpleAmount)4),
				Utils.CreateCardInfoStat("-33%", "ATKSPD", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Fast ball";
		}
	}
	[Card]
	public sealed class FastForward : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.reloadTime = 0.7f;
			gun.projectielSimulatonSpeed = 2f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Fast Forwards"];
		}

		protected override string GetDescription()
		{
			return "Bullets keep the default trajectory";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+100%", "Projectile speed", CardInfoStatType.Positive, (SimpleAmount)3),
				Utils.CreateCardInfoStat("-30%", "Reload time", CardInfoStatType.Positive, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Fast forward";
		}
	}
	[Card]
	public sealed class FrostSlam : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_FrostSlam"];
			statModifiers.health = 1.3f;
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_FrostSlam"];
		}

		protected override string GetDescription()
		{
			return "Slows enemies around you when you block";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)7;
		}

		protected override string GetTitle()
		{
			return "Frost slam";
		}
	}
	[Card]
	public sealed class Glasscannon : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.damage = 2f;
			gun.reloadTimeAdd = 0.25f;
			statModifiers.health = 0.5f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Glasscannon"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+100%", "DMG", CardInfoStatType.Positive, (SimpleAmount)3),
				Utils.CreateCardInfoStat("-50%", "HP", CardInfoStatType.Negative, (SimpleAmount)7),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Glasscannon";
		}
	}
	[Card]
	public sealed class Grow : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_0024: Unknown result type (might be due to invalid IL or missing references)
			//IL_0029: Unknown result type (might be due to invalid IL or missing references)
			//IL_0039: Unknown result type (might be due to invalid IL or missing references)
			//IL_0043: Expected O, but got Unknown
			//IL_0043: Unknown result type (might be due to invalid IL or missing references)
			//IL_004a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0056: Expected O, but got Unknown
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Grow_SoundShotModifier"];
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_Grow"],
					scaleStacks = true,
					scaleStackM = 1f
				}
			};
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Grow"];
		}

		protected override string GetDescription()
		{
			return "Bullets gets more damage over time when travelling";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Grow";
		}
	}
	[Card]
	public sealed class HealingField : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_Healing Field"];
			statModifiers.health = 1.5f;
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_HealingField"];
		}

		protected override string GetDescription()
		{
			return "Blocking creates a healing field";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+50%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)6;
		}

		protected override string GetTitle()
		{
			return "Healing field";
		}
	}
	[Card]
	public sealed class Homing : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0041: Unknown result type (might be due to invalid IL or missing references)
			//IL_0046: Unknown result type (might be due to invalid IL or missing references)
			//IL_0056: Unknown result type (might be due to invalid IL or missing references)
			//IL_0060: Expected O, but got Unknown
			//IL_0061: Expected O, but got Unknown
			gun.damage = 0.75f;
			gun.attackSpeed = 1.5f;
			gun.projectileSpeed = 0.7f;
			gun.reloadTimeAdd = 0.25f;
			gun.gravity = 0.5f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_Homing"]
				}
			};
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Homing"];
		}

		protected override string GetDescription()
		{
			return "Bullets home towards visible targets";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("-25%", "DMG", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("-33%", "ATKSPD", CardInfoStatType.Negative, (SimpleAmount)6),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)3;
		}

		protected override string GetTitle()
		{
			return "Homing";
		}
	}
	[Card]
	public sealed class Huge : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			statModifiers.health = 1.8f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Huge"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+80%", "HP", CardInfoStatType.Positive, (SimpleAmount)3) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)2;
		}

		protected override string GetTitle()
		{
			return "Huge";
		}
	}
	[Card]
	public sealed class Implode : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.CustomResources["A_Implode"];
			statModifiers.health = 1.3f;
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Implode 1"];
		}

		protected override string GetDescription()
		{
			return "Deal 10% of your max HP and pull enemies towards you when you block";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)3;
		}

		protected override string GetTitle()
		{
			return "Implode";
		}
	}
	[Card]
	public sealed class Leach : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			statModifiers.health = 1.3f;
			statModifiers.lifeSteal = 0.75f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Leach"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+75%", "Life steal", CardInfoStatType.Positive, (SimpleAmount)3),
				Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)2;
		}

		protected override string GetTitle()
		{
			return "Leach";
		}
	}
	[Card]
	public sealed class Lifestealer : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_Lifestealer"];
			statModifiers.health = 1.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Lifestealer"];
		}

		protected override string GetDescription()
		{
			return "Steal hp from your opponent when near ";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("+25%", "HP", CardInfoStatType.Positive, (SimpleAmount)1) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)4;
		}

		protected override string GetTitle()
		{
			return "Lifestealer";
		}
	}
	[Card]
	public sealed class Mayhem : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0032: Unknown result type (might be due to invalid IL or missing references)
			//IL_0037: Unknown result type (might be due to invalid IL or missing references)
			//IL_0047: Unknown result type (might be due to invalid IL or missing references)
			//IL_0051: Expected O, but got Unknown
			//IL_0052: Expected O, but got Unknown
			gun.damage = 0.85f;
			gun.reloadTimeAdd = 0.5f;
			gun.overheatMultiplier = 0.5f;
			gun.reflects = 5;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_ScreenEdge"]
				}
			};
			gun.attackID = 0;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Mayhem"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+5", "Bullet bounces", CardInfoStatType.Positive, (SimpleAmount)0),
				Utils.CreateCardInfoStat("-15%", "DMG", CardInfoStatType.Negative, (SimpleAmount)5),
				Utils.CreateCardInfoStat("+0.5s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Mayhem";
		}
	}
	[Card]
	public sealed class Overpower : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_OverPower"];
			statModifiers.health = 1.3f;
			block.cdAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Overpower"];
		}

		protected override string GetDescription()
		{
			return "Deal 15% of your max HP to enemies around you when you block";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[2]
			{
				Utils.CreateCardInfoStat("+30%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Block cooldown", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)0;
		}

		protected override string GetTitle()
		{
			return "Overpower";
		}
	}
	[Card]
	public sealed class Parasite : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0054: Unknown result type (might be due to invalid IL or missing references)
			//IL_0059: Unknown result type (might be due to invalid IL or missing references)
			//IL_0069: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: Expected O, but got Unknown
			//IL_0073: Unknown result type (might be due to invalid IL or missing references)
			//IL_007e: Unknown result type (might be due to invalid IL or missing references)
			//IL_008a: Expected O, but got Unknown
			//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a9: Unknown result type (might be due to invalid IL or missing references)
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Parasite_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Parasite_SoundImpactModifier"];
			gun.damage = 1.25f;
			gun.reloadTimeAdd = 0.25f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_Parasite"],
					scaleStackM = 0.7f,
					scaleFromDamage = 1f
				}
			};
			gun.projectileColor = new Color(0.5928641f, 0.1254902f, 1f, 1f);
			statModifiers.health = 1.25f;
			statModifiers.lifeSteal = 0.5f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Parasite"];
		}

		protected override string GetDescription()
		{
			return "Bullets deal damage over 5 seconds";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[4]
			{
				Utils.CreateCardInfoStat("+50%", "Life steal", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+25%", "HP", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+25%", "DMG", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("+0.25s", "Reload time", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)4;
		}

		protected override string GetTitle()
		{
			return "Parasite";
		}
	}
	[Card]
	public sealed class Phoenix : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			statModifiers.health = 0.65f;
			statModifiers.respawns = 1;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Phoenix"];
		}

		protected override string GetDescription()
		{
			return "Respawn once on death";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("-35%", "HP", CardInfoStatType.Negative, (SimpleAmount)6) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)2;
		}

		protected override string GetTitle()
		{
			return "Phoenix";
		}
	}
	[Card]
	public sealed class PoisonBullets : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_005b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0060: Unknown result type (might be due to invalid IL or missing references)
			//IL_0070: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Expected O, but got Unknown
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0081: Unknown result type (might be due to invalid IL or missing references)
			//IL_008c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0098: Expected O, but got Unknown
			//IL_00b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b7: Unknown result type (might be due to invalid IL or missing references)
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Poison_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Poison_SoundImpactModifier"];
			gun.damage = 1.7f;
			gun.reloadTime = 0.7f;
			gun.ammo = -1;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_Poison"],
					scaleStacks = true,
					scaleStackM = 0.7f,
					scaleFromDamage = 1f
				}
			};
			gun.projectileColor = new Color(0.5842636f, 1f, 0.1254902f, 1f);
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_PoisonBullet"];
		}

		protected override string GetDescription()
		{
			return "Bullets deal damage over 3 seconds";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)1;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[3]
			{
				Utils.CreateCardInfoStat("+70%", "DMG", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("-30%", "Reload time", CardInfoStatType.Positive, (SimpleAmount)2),
				Utils.CreateCardInfoStat("-1", "Bullet", CardInfoStatType.Negative, (SimpleAmount)0)
			};
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)5;
		}

		protected override string GetTitle()
		{
			return "Poison bullets";
		}
	}
	[Card]
	public sealed class PristinePerseverence : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0012: Unknown result type (might be due to invalid IL or missing references)
			//IL_001c: Expected O, but got Unknown
			statModifiers.AddObjectToPlayer = (GameObject)VanillaFlavour.RoundsResources["A_PristinePerseverence"];
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_Pristince_Perserverence"];
		}

		protected override string GetDescription()
		{
			return "+400% HP when above 90% HP";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)2;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[0];
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)2;
		}

		protected override string GetTitle()
		{
			return "Pristine perseverence";
		}
	}
	[Card]
	public sealed class QuickReload : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			gun.reloadTime = 0.5f;
		}

		public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
		{
		}

		protected override GameObject GetCardArt()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0016: Expected O, but got Unknown
			return (GameObject)VanillaFlavour.RoundsResources["C_QuickReload"];
		}

		protected override string GetDescription()
		{
			return "";
		}

		protected override Rarity GetRarity()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (Rarity)0;
		}

		protected override CardInfoStat[] GetStats()
		{
			return (CardInfoStat[])(object)new CardInfoStat[1] { Utils.CreateCardInfoStat("-50%", "Reload time", CardInfoStatType.Positive, (SimpleAmount)6) };
		}

		protected override CardThemeColorType GetTheme()
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0005: Unknown result type (might be due to invalid IL or missing references)
			return (CardThemeColorType)1;
		}

		protected override string GetTitle()
		{
			return "Quick reload";
		}
	}
	[Card]
	public sealed class QuickShot : VanillaFlavourCard
	{
		public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
		{
			//IL_0011: Unknown result type (might be due to invalid IL or missing references)
			//IL_001b: Expected O, but got Unknown
			//IL_002b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0035: Expected O, but got Unknown
			//IL_0049: Unknown result type (might be due to invalid IL or missing references)
			//IL_004e: Unknown result type (might be due to invalid IL or missing references)
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Expected O, but got Unknown
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007b: Expected O, but got Unknown
			gun.soundShotModifier = (SoundShotModifier)VanillaFlavour.RoundsResources["Quick_SoundShotModifier"];
			gun.soundImpactModifier = (SoundImpactModifier)VanillaFlavour.RoundsResources["Quick_SoundImpactModifier"];
			gun.projectileSpeed = 2.5f;
			gun.objectsToSpawn = (ObjectsToSpawn[])(object)new ObjectsToSpawn[1]
			{
				new ObjectsToSpawn
				{
					AddToProjectile = (GameObject)VanillaFlavour.RoundsResources["A_Quickshot"],
					scaleStacks = true,
					scaleStackM = 0.3f
				}
			};
			gun.reloadTimeAdd = 0.25f;
		}

		public override void OnAddCard(Player player, Gun gu