Decompiled source of RealerEliteVariety v1.0.5

EliteVariety.dll

Decompiled a month ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using System.Text;
using BepInEx;
using BepInEx.Bootstrap;
using BepInEx.Configuration;
using BepInEx.Logging;
using EliteVariety.Buffs;
using EntityStates;
using EntityStates.AI.Walker;
using EntityStates.Drone;
using HG;
using KinematicCharacterController;
using Microsoft.CodeAnalysis;
using MysticsRisky2Utils;
using MysticsRisky2Utils.BaseAssetTypes;
using MysticsRisky2Utils.ContentManagement;
using MysticsRisky2Utils.MonoBehaviours;
using On.RoR2;
using On.RoR2.UI;
using R2API;
using R2API.Networking;
using R2API.Networking.Interfaces;
using RoR2;
using RoR2.Audio;
using RoR2.CharacterAI;
using RoR2.ContentManagement;
using RoR2.Navigation;
using RoR2.Orbs;
using RoR2.Skills;
using RoR2.UI;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.Rendering;
using UnityEngine.Rendering.PostProcessing;

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

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

		public NullableAttribute(byte[] P_0)
		{
			NullableFlags = P_0;
		}
	}
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
namespace EliteVariety
{
	public class EliteVarietyBodyFields : MonoBehaviour
	{
		public bool eliteRampReplaced = false;
	}
	public class EliteVarietyContent : IContentPackProvider
	{
		public static class Resources
		{
			public static List<GameObject> bodyPrefabs = new List<GameObject>();

			public static List<GameObject> masterPrefabs = new List<GameObject>();

			public static List<GameObject> projectilePrefabs = new List<GameObject>();

			public static List<GameObject> effectPrefabs = new List<GameObject>();

			public static List<NetworkSoundEventDef> networkSoundEventDefs = new List<NetworkSoundEventDef>();

			public static List<UnlockableDef> unlockableDefs = new List<UnlockableDef>();

			public static List<Type> entityStateTypes = new List<Type>();

			public static List<SkillDef> skillDefs = new List<SkillDef>();

			public static List<SkillFamily> skillFamilies = new List<SkillFamily>();
		}

		public static class Items
		{
			public static ItemDef AllItemDisplaysItem;

			public static ItemDef TinkererDroneStatBonus;
		}

		public static class Equipment
		{
			public static EquipmentDef AffixArmored;

			public static EquipmentDef AffixBuffing;

			public static EquipmentDef AffixImpPlane;

			public static EquipmentDef AffixPillaging;

			public static EquipmentDef AffixSandstorm;

			public static EquipmentDef AffixTinkerer;
		}

		public static class Buffs
		{
			public static BuffDef AffixArmored;

			public static BuffDef AffixBuffing;

			public static BuffDef AffixImpPlane;

			public static BuffDef AffixPillaging;

			public static BuffDef AffixSandstorm;

			public static BuffDef AffixTinkerer;

			public static BuffDef ArmoredHeavyStun;

			public static BuffDef ArmoredSelfBuff;

			public static BuffDef ImpPlaneImpaled;

			public static BuffDef ImpPlaneStare;

			public static BuffDef SandstormBlind;
		}

		public static class Elites
		{
			public static EliteDef Armored;

			public static EliteDef Buffing;

			public static EliteDef ImpPlane;

			public static EliteDef Pillaging;

			public static EliteDef Sandstorm;

			public static EliteDef Tinkerer;
		}

		private ContentPack contentPack = new ContentPack();

		public string identifier => "EliteVariety";

		public IEnumerator LoadStaticContentAsync(LoadStaticContentAsyncArgs args)
		{
			contentPack.identifier = identifier;
			ContentLoadHelper contentLoadHelper = new ContentLoadHelper();
			Action[] loadDispatchers = new Action[6]
			{
				delegate
				{
					contentLoadHelper.DispatchLoad<ItemDef>(Main.executingAssembly, typeof(BaseItem), (Action<ItemDef[]>)delegate(ItemDef[] x)
					{
						contentPack.itemDefs.Add(x);
					});
				},
				delegate
				{
					contentLoadHelper.DispatchLoad<EquipmentDef>(Main.executingAssembly, typeof(BaseEquipment), (Action<EquipmentDef[]>)delegate(EquipmentDef[] x)
					{
						contentPack.equipmentDefs.Add(x);
					});
				},
				delegate
				{
					contentLoadHelper.DispatchLoad<BuffDef>(Main.executingAssembly, typeof(BaseBuff), (Action<BuffDef[]>)delegate(BuffDef[] x)
					{
						contentPack.buffDefs.Add(x);
					});
				},
				delegate
				{
					contentLoadHelper.DispatchLoad<EliteDef>(Main.executingAssembly, typeof(BaseElite), (Action<EliteDef[]>)delegate(EliteDef[] x)
					{
						contentPack.eliteDefs.Add(x);
					});
				},
				delegate
				{
					contentLoadHelper.DispatchLoad<GameObject>(Main.executingAssembly, typeof(BaseCharacterBody), (Action<GameObject[]>)delegate(GameObject[] x)
					{
						contentPack.bodyPrefabs.Add(x);
					});
				},
				delegate
				{
					contentLoadHelper.DispatchLoad<GameObject>(Main.executingAssembly, typeof(BaseCharacterMaster), (Action<GameObject[]>)delegate(GameObject[] x)
					{
						contentPack.masterPrefabs.Add(x);
					});
				}
			};
			int i = 0;
			while (i < loadDispatchers.Length)
			{
				loadDispatchers[i]();
				args.ReportProgress(Util.Remap((float)(i + 1), 0f, (float)loadDispatchers.Length, 0f, 0.05f));
				yield return null;
				int num = i + 1;
				i = num;
			}
			while (contentLoadHelper.coroutine.MoveNext())
			{
				args.ReportProgress(Util.Remap(contentLoadHelper.progress.value, 0f, 1f, 0.05f, 0.9f));
				yield return contentLoadHelper.coroutine.Current;
			}
			loadDispatchers = new Action[13]
			{
				delegate
				{
					ContentLoadHelper.PopulateTypeFields<ItemDef>(typeof(Items), contentPack.itemDefs, (Func<string, string>)((string x) => identifier + "_" + x));
				},
				delegate
				{
					ContentLoadHelper.PopulateTypeFields<EquipmentDef>(typeof(Equipment), contentPack.equipmentDefs, (Func<string, string>)((string x) => identifier + "_" + x));
				},
				delegate
				{
					ContentLoadHelper.PopulateTypeFields<BuffDef>(typeof(Buffs), contentPack.buffDefs, (Func<string, string>)((string x) => identifier + "_" + x));
				},
				delegate
				{
					ContentLoadHelper.PopulateTypeFields<EliteDef>(typeof(Elites), contentPack.eliteDefs, (Func<string, string>)((string x) => identifier + "_" + x));
				},
				delegate
				{
					contentPack.bodyPrefabs.Add(Resources.bodyPrefabs.ToArray());
				},
				delegate
				{
					contentPack.masterPrefabs.Add(Resources.masterPrefabs.ToArray());
				},
				delegate
				{
					contentPack.projectilePrefabs.Add(Resources.projectilePrefabs.ToArray());
				},
				delegate
				{
					contentPack.effectDefs.Add(Resources.effectPrefabs.ConvertAll((Converter<GameObject, EffectDef>)((GameObject x) => new EffectDef(x))).ToArray());
				},
				delegate
				{
					contentPack.networkSoundEventDefs.Add(Resources.networkSoundEventDefs.ToArray());
				},
				delegate
				{
					contentPack.unlockableDefs.Add(Resources.unlockableDefs.ToArray());
				},
				delegate
				{
					contentPack.entityStateTypes.Add(Resources.entityStateTypes.ToArray());
				},
				delegate
				{
					contentPack.skillDefs.Add(Resources.skillDefs.ToArray());
				},
				delegate
				{
					contentPack.skillFamilies.Add(Resources.skillFamilies.ToArray());
				}
			};
			int j = 0;
			while (j < loadDispatchers.Length)
			{
				loadDispatchers[j]();
				args.ReportProgress(Util.Remap((float)(j + 1), 0f, (float)loadDispatchers.Length, 0.9f, 0.95f));
				yield return null;
				int num = j + 1;
				j = num;
			}
			loadDispatchers = new Action[6]
			{
				delegate
				{
					ContentLoadHelper.InvokeAfterContentPackLoaded<BaseItem>(Main.executingAssembly);
				},
				delegate
				{
					ContentLoadHelper.InvokeAfterContentPackLoaded<BaseEquipment>(Main.executingAssembly);
				},
				delegate
				{
					ContentLoadHelper.InvokeAfterContentPackLoaded<BaseBuff>(Main.executingAssembly);
				},
				delegate
				{
					ContentLoadHelper.InvokeAfterContentPackLoaded<BaseElite>(Main.executingAssembly);
				},
				delegate
				{
					ContentLoadHelper.InvokeAfterContentPackLoaded<BaseCharacterBody>(Main.executingAssembly);
				},
				delegate
				{
					ContentLoadHelper.InvokeAfterContentPackLoaded<BaseCharacterMaster>(Main.executingAssembly);
				}
			};
			int k = 0;
			while (k < loadDispatchers.Length)
			{
				loadDispatchers[k]();
				args.ReportProgress(Util.Remap((float)(k + 1), 0f, (float)loadDispatchers.Length, 0.95f, 0.99f));
				yield return null;
				int num = k + 1;
				k = num;
			}
		}

		public IEnumerator GenerateContentPackAsync(GetContentPackAsyncArgs args)
		{
			ContentPack.Copy(contentPack, args.output);
			args.ReportProgress(1f);
			yield break;
		}

		public IEnumerator FinalizeAsync(FinalizeAsyncArgs args)
		{
			args.ReportProgress(1f);
			yield break;
		}

		public static void AddPrefixToAssets<T>(NamedAssetCollection<T> namedAssetCollection, string prefix) where T : Object
		{
			//IL_0002: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_0041: Unknown result type (might be due to invalid IL or missing references)
			AssetEnumerator<T> enumerator = namedAssetCollection.GetEnumerator();
			try
			{
				while (enumerator.MoveNext())
				{
					T current = enumerator.Current;
					((Object)current).name = prefix + ((Object)current).name;
				}
			}
			finally
			{
				((IDisposable)enumerator).Dispose();
			}
		}
	}
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInPlugin("com.themysticsword.elitevariety", "EliteVariety", "1.0.5")]
	public class EliteVarietyPlugin : BaseUnityPlugin
	{
		public const string PluginGUID = "com.themysticsword.elitevariety";

		public const string PluginName = "EliteVariety";

		public const string PluginVersion = "1.0.5";

		internal static ManualLogSource logger;

		internal static ConfigFile config;

		internal static PluginInfo pluginInfo;

		public void Awake()
		{
			pluginInfo = ((BaseUnityPlugin)this).Info;
			logger = ((BaseUnityPlugin)this).Logger;
			config = ((BaseUnityPlugin)this).Config;
			Main.Init();
		}
	}
	public static class Main
	{
		[Serializable]
		[CompilerGenerated]
		private sealed class <>c
		{
			public static readonly <>c <>9 = new <>c();

			public static CollectContentPackProvidersDelegate <>9__10_0;

			public static hook_Awake <>9__10_1;

			internal void <Init>b__10_0(AddContentPackProviderDelegate addContentPackProvider)
			{
				addContentPackProvider.Invoke((IContentPackProvider)(object)new EliteVarietyContent());
			}

			internal void <Init>b__10_1(orig_Awake orig, CharacterBody self)
			{
				//IL_000a: Unknown result type (might be due to invalid IL or missing references)
				orig.Invoke(self);
				((Component)self).gameObject.AddComponent<EliteVarietyBodyFields>();
			}
		}

		public const string TokenPrefix = "EliteVariety_";

		internal const BindingFlags bindingFlagAll = (BindingFlags)(-1);

		private static AssetBundle _assetBundle;

		public static ManualLogSource logger;

		public static Assembly executingAssembly;

		internal static bool aspectAbilitiesEnabled = false;

		internal static StringBuilder sharedStringBuilder = new StringBuilder();

		private static object pluginInfo;

		public static AssetBundle AssetBundle
		{
			get
			{
				if ((Object)(object)_assetBundle == (Object)null)
				{
					_assetBundle = AssetBundle.LoadFromFile(Path.Combine(Path.GetDirectoryName(EliteVarietyPlugin.pluginInfo.Location), "EliteVariety.elitevarietyunityassetbundle"));
				}
				return _assetBundle;
			}
		}

		public static void Init()
		{
			//IL_007f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0084: 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)
			//IL_00af: Expected O, but got Unknown
			logger = EliteVarietyPlugin.logger;
			executingAssembly = Assembly.GetExecutingAssembly();
			aspectAbilitiesEnabled = Chainloader.PluginInfos.ContainsKey("com.TheMysticSword.AspectAbilities");
			ContentLoadHelper.PluginAwakeLoad<BaseBuff>(executingAssembly);
			ContentLoadHelper.PluginAwakeLoad<BaseItem>(executingAssembly);
			ContentLoadHelper.PluginAwakeLoad<BaseEquipment>(executingAssembly);
			ContentLoadHelper.PluginAwakeLoad<BaseElite>(executingAssembly);
			ContentLoadHelper.PluginAwakeLoad<BaseCharacterBody>(executingAssembly);
			ContentLoadHelper.PluginAwakeLoad<BaseCharacterMaster>(executingAssembly);
			object obj = <>c.<>9__10_0;
			if (obj == null)
			{
				CollectContentPackProvidersDelegate val = delegate(AddContentPackProviderDelegate addContentPackProvider)
				{
					addContentPackProvider.Invoke((IContentPackProvider)(object)new EliteVarietyContent());
				};
				<>c.<>9__10_0 = val;
				obj = (object)val;
			}
			ContentManager.collectContentPackProviders += (CollectContentPackProvidersDelegate)obj;
			object obj2 = <>c.<>9__10_1;
			if (obj2 == null)
			{
				hook_Awake val2 = delegate(orig_Awake orig, CharacterBody self)
				{
					//IL_000a: Unknown result type (might be due to invalid IL or missing references)
					orig.Invoke(self);
					((Component)self).gameObject.AddComponent<EliteVarietyBodyFields>();
				};
				<>c.<>9__10_1 = val2;
				obj2 = (object)val2;
			}
			CharacterBody.Awake += (hook_Awake)obj2;
		}
	}
}
namespace EliteVariety.Items
{
	public class AllItemDisplaysItem : BaseItem
	{
		public override void OnLoad()
		{
			((BaseLoadableAsset)this).OnLoad();
			base.itemDef = ScriptableObject.CreateInstance<ItemDef>();
			((Object)base.itemDef).name = "EliteVariety_AllItemDisplaysItem";
			base.itemDef.canRemove = false;
			base.itemDef.hidden = true;
			ItemDef itemDef = base.itemDef;
			ItemTag[] array = new ItemTag[3];
			RuntimeHelpers.InitializeArray(array, (RuntimeFieldHandle)/*OpCode not supported: LdMemberToken*/);
			itemDef.tags = (ItemTag[])(object)array;
			((BaseItem)this).SetItemTierWhenAvailable((ItemTier)5);
			BaseItemLike.onSetupIDRS += delegate
			{
				//IL_0025: 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_004d: Unknown result type (might be due to invalid IL or missing references)
				//IL_007c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0090: Unknown result type (might be due to invalid IL or missing references)
				//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
				//IL_00d3: Unknown result type (might be due to invalid IL or missing references)
				//IL_00e7: Unknown result type (might be due to invalid IL or missing references)
				//IL_00fb: Unknown result type (might be due to invalid IL or missing references)
				//IL_012a: Unknown result type (might be due to invalid IL or missing references)
				//IL_013e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0152: Unknown result type (might be due to invalid IL or missing references)
				//IL_0181: Unknown result type (might be due to invalid IL or missing references)
				//IL_0195: Unknown result type (might be due to invalid IL or missing references)
				//IL_01a9: Unknown result type (might be due to invalid IL or missing references)
				//IL_01d8: Unknown result type (might be due to invalid IL or missing references)
				//IL_01ec: Unknown result type (might be due to invalid IL or missing references)
				//IL_0200: Unknown result type (might be due to invalid IL or missing references)
				//IL_022f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0243: Unknown result type (might be due to invalid IL or missing references)
				//IL_0257: Unknown result type (might be due to invalid IL or missing references)
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Head", GetEliteFollowerPrefab("Armored"), new Vector3(0f, 0.34403f, 0.37159f), new Vector3(0f, 90f, 112.8398f), new Vector3(0.25041f, 0.25041f, 0.25041f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Chest", GetEliteFollowerPrefab("Armored"), new Vector3(0f, 0.19652f, -0.61841f), new Vector3(0f, 90f, 2.51592f), new Vector3(0.25041f, 0.25041f, 0.25041f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Chest", GetEliteFollowerPrefab("Buffing"), new Vector3(0f, 0.13316f, -0.65895f), new Vector3(0f, 270f, 37.27843f), new Vector3(0.80709f, 0.80709f, 0.80709f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Head", GetEliteFollowerPrefab("Pillaging"), new Vector3(0f, 0.60674f, 0.47416f), new Vector3(27.76727f, 0f, 0f), new Vector3(0.48181f, 0.48181f, 0.48181f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Head", GetEliteFollowerPrefab("Sandstorm"), new Vector3(0.00703f, 0.43691f, 0.35467f), new Vector3(28.91702f, 319.116f, 341.4145f), new Vector3(0.62749f, 0.62749f, 0.62749f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Head", GetEliteFollowerPrefab("Tinkerer"), new Vector3(0.08712f, 0.48435f, -0.71049f), new Vector3(333.6425f, 178.0887f, 357.6602f), new Vector3(0.43294f, 0.43294f, 0.43294f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Head", GetEliteFollowerPrefab("ImpPlane"), new Vector3(0.01635f, 0.78858f, 0.44616f), new Vector3(333.6425f, 178.0887f, 357.6602f), new Vector3(2.17542f, 2.17542f, 1.86206f));
			};
		}

		public static GameObject GetEliteFollowerPrefab(string eliteName)
		{
			return Main.AssetBundle.LoadAsset<GameObject>("Assets/EliteVariety/Elites/" + eliteName + "/FollowerModel.prefab");
		}
	}
	public class TinkererDroneStatBonus : BaseItem
	{
		public float TinkererDroneStatBonusModifierTimes(GenericCharacterInfo genericCharacterInfo)
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_0011: Expected O, but got Unknown
			//IL_0013: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: Unknown result type (might be due to invalid IL or missing references)
			//IL_0023: Expected O, but got Unknown
			//IL_002b: 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_004c: Unknown result type (might be due to invalid IL or missing references)
			if (Object.op_Implicit((Object)genericCharacterInfo.inventory) && Object.op_Implicit((Object)genericCharacterInfo.master))
			{
				int itemCount = genericCharacterInfo.inventory.GetItemCount(base.itemDef);
				if (itemCount > 0)
				{
					AffixTinkerer.EliteVarietyAffixTinkererBehavior.EliteVarietyAffixTinkererRecipientBehavior component = ((Component)genericCharacterInfo.master).GetComponent<AffixTinkerer.EliteVarietyAffixTinkererBehavior.EliteVarietyAffixTinkererRecipientBehavior>();
					if (Object.op_Implicit((Object)(object)component))
					{
						return component.droneStatBonus * itemCount;
					}
				}
			}
			return 0f;
		}

		public override void OnLoad()
		{
			//IL_0067: 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_008c: Expected O, but got Unknown
			//IL_008c: 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_00b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00bf: Expected O, but got Unknown
			//IL_00bf: 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_00e8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f2: Expected O, but got Unknown
			//IL_00f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0100: Unknown result type (might be due to invalid IL or missing references)
			//IL_011b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0125: Expected O, but got Unknown
			//IL_0125: Unknown result type (might be due to invalid IL or missing references)
			//IL_0133: Unknown result type (might be due to invalid IL or missing references)
			//IL_014e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0158: Expected O, but got Unknown
			//IL_0158: Unknown result type (might be due to invalid IL or missing references)
			//IL_0166: Unknown result type (might be due to invalid IL or missing references)
			//IL_0181: Unknown result type (might be due to invalid IL or missing references)
			//IL_018b: Expected O, but got Unknown
			//IL_018b: Unknown result type (might be due to invalid IL or missing references)
			((BaseLoadableAsset)this).OnLoad();
			base.itemDef = ScriptableObject.CreateInstance<ItemDef>();
			((Object)base.itemDef).name = "EliteVariety_TinkererDroneStatBonus";
			base.itemDef.canRemove = false;
			base.itemDef.hidden = true;
			ItemDef itemDef = base.itemDef;
			ItemTag[] array = new ItemTag[3];
			RuntimeHelpers.InitializeArray(array, (RuntimeFieldHandle)/*OpCode not supported: LdMemberToken*/);
			itemDef.tags = (ItemTag[])(object)array;
			((BaseItem)this).SetItemTierWhenAvailable((ItemTier)5);
			CharacterStats.armorModifiers.Add(new FlatStatModifier
			{
				amount = 2f,
				times = new StatModifierApplyTimes(TinkererDroneStatBonusModifierTimes)
			});
			CharacterStats.attackSpeedModifiers.Add(new StatModifier
			{
				flat = 0.1f,
				times = new StatModifierApplyTimes(TinkererDroneStatBonusModifierTimes)
			});
			CharacterStats.cooldownModifiers.Add(new StatModifier
			{
				multiplier = 0.95f,
				times = new StatModifierApplyTimes(TinkererDroneStatBonusModifierTimes)
			});
			CharacterStats.damageModifiers.Add(new StatModifier
			{
				multiplier = 0.1f,
				times = new StatModifierApplyTimes(TinkererDroneStatBonusModifierTimes)
			});
			CharacterStats.healthModifiers.Add(new StatModifier
			{
				flat = 10f,
				times = new StatModifierApplyTimes(TinkererDroneStatBonusModifierTimes)
			});
			CharacterStats.regenModifiers.Add(new FlatStatModifier
			{
				amount = 0.1f,
				times = new StatModifierApplyTimes(TinkererDroneStatBonusModifierTimes)
			});
		}
	}
}
namespace EliteVariety.Equipment
{
	public class AffixArmored : BaseEliteAffix
	{
		public class EliteVarietyAffixArmoredEquipmentBehavior : ItemBehavior
		{
			public List<List<Renderer>> shieldProgressBarList;

			public MaterialPropertyBlock materialPropertyBlock;

			public void Awake()
			{
				//IL_000d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0017: Expected O, but got Unknown
				shieldProgressBarList = new List<List<Renderer>>();
				materialPropertyBlock = new MaterialPropertyBlock();
			}

			public void Start()
			{
				//IL_008c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0091: Unknown result type (might be due to invalid IL or missing references)
				ModelLocator component = ((Component)this).GetComponent<ModelLocator>();
				if (!Object.op_Implicit((Object)(object)component))
				{
					return;
				}
				Transform modelTransform = component.modelTransform;
				if (!Object.op_Implicit((Object)(object)modelTransform))
				{
					return;
				}
				CharacterModel component2 = ((Component)modelTransform).GetComponent<CharacterModel>();
				if (!Object.op_Implicit((Object)(object)component2))
				{
					return;
				}
				foreach (ParentedPrefabDisplay item2 in component2.parentedPrefabDisplays.FindAll((ParentedPrefabDisplay x) => x.equipmentIndex == EliteVarietyContent.Equipment.AffixArmored.equipmentIndex))
				{
					ParentedPrefabDisplay current = item2;
					Transform val = ((ParentedPrefabDisplay)(ref current)).instance.transform.Find("ShieldProgressBar");
					if (Object.op_Implicit((Object)(object)val))
					{
						List<Renderer> list = new List<Renderer>();
						Renderer[] componentsInChildren = ((Component)val).gameObject.GetComponentsInChildren<Renderer>();
						Renderer[] array = componentsInChildren;
						foreach (Renderer item in array)
						{
							list.Add(item);
						}
						shieldProgressBarList.Add(list);
					}
				}
			}

			public void FixedUpdate()
			{
				float num = base.body.healthComponent.Networkbarrier / Mathf.Max(base.body.maxBarrier, 1f);
				foreach (List<Renderer> shieldProgressBar in shieldProgressBarList)
				{
					for (int i = 0; i < shieldProgressBar.Count; i++)
					{
						Renderer val = shieldProgressBar[i];
						if (Object.op_Implicit((Object)(object)val))
						{
							val.GetPropertyBlock(materialPropertyBlock);
							materialPropertyBlock.SetFloat("_EmPower", 2f * Mathf.Clamp01((num - (float)i / (float)shieldProgressBar.Count) / (1f / (float)shieldProgressBar.Count)));
							val.SetPropertyBlock(materialPropertyBlock);
						}
					}
				}
			}
		}

		public static GameObject selfBuffUseEffect;

		public override void OnLoad()
		{
			//IL_004a: Unknown result type (might be due to invalid IL or missing references)
			//IL_004f: Unknown result type (might be due to invalid IL or missing references)
			//IL_009c: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e0: Expected O, but got Unknown
			//IL_00e8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0112: Unknown result type (might be due to invalid IL or missing references)
			//IL_0120: Unknown result type (might be due to invalid IL or missing references)
			//IL_014a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0158: Unknown result type (might be due to invalid IL or missing references)
			//IL_0182: Unknown result type (might be due to invalid IL or missing references)
			//IL_0190: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ba: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_01f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0200: Unknown result type (might be due to invalid IL or missing references)
			//IL_022a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0238: Unknown result type (might be due to invalid IL or missing references)
			//IL_0262: Unknown result type (might be due to invalid IL or missing references)
			//IL_0270: Unknown result type (might be due to invalid IL or missing references)
			//IL_029a: Unknown result type (might be due to invalid IL or missing references)
			//IL_02a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_02d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_02e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_030a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0318: Unknown result type (might be due to invalid IL or missing references)
			//IL_0342: Unknown result type (might be due to invalid IL or missing references)
			//IL_0350: Unknown result type (might be due to invalid IL or missing references)
			//IL_037a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0388: Unknown result type (might be due to invalid IL or missing references)
			//IL_03b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_03c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_03ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_0436: Unknown result type (might be due to invalid IL or missing references)
			//IL_043d: Unknown result type (might be due to invalid IL or missing references)
			base.OnLoad();
			((Object)((BaseEquipment)this).equipmentDef).name = "EliteVariety_AffixArmored";
			((BaseEquipment)this).equipmentDef.cooldown = 30f;
			SetAssets("Armored");
			AdjustElitePickupMaterial(Color32.op_Implicit(new Color32((byte)229, (byte)172, (byte)172, byte.MaxValue)), 7f, smoothFresnelRamp: true);
			Material sharedMaterial = ((Renderer)followerModel.GetComponentInChildren<MeshRenderer>()).sharedMaterial;
			sharedMaterial.SetTexture("_EmTex", sharedMaterial.GetTexture("_EmissionMap"));
			sharedMaterial.SetColor("_EmColor", Color32.op_Implicit(new Color32((byte)200, (byte)37, (byte)51, byte.MaxValue)));
			sharedMaterial.SetFloat("_EmPower", 0f);
			BaseItemLike.onSetupIDRS += delegate
			{
				//IL_001b: Unknown result type (might be due to invalid IL or missing references)
				//IL_002f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0043: 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_007c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0090: Unknown result type (might be due to invalid IL or missing references)
				//IL_00b5: Unknown result type (might be due to invalid IL or missing references)
				//IL_00c9: Unknown result type (might be due to invalid IL or missing references)
				//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0102: Unknown result type (might be due to invalid IL or missing references)
				//IL_0116: Unknown result type (might be due to invalid IL or missing references)
				//IL_012a: Unknown result type (might be due to invalid IL or missing references)
				//IL_014f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0163: Unknown result type (might be due to invalid IL or missing references)
				//IL_0177: Unknown result type (might be due to invalid IL or missing references)
				//IL_019c: Unknown result type (might be due to invalid IL or missing references)
				//IL_01b0: Unknown result type (might be due to invalid IL or missing references)
				//IL_01c4: Unknown result type (might be due to invalid IL or missing references)
				//IL_01e9: Unknown result type (might be due to invalid IL or missing references)
				//IL_01fd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0211: Unknown result type (might be due to invalid IL or missing references)
				//IL_0236: Unknown result type (might be due to invalid IL or missing references)
				//IL_024a: Unknown result type (might be due to invalid IL or missing references)
				//IL_025e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0283: Unknown result type (might be due to invalid IL or missing references)
				//IL_0297: Unknown result type (might be due to invalid IL or missing references)
				//IL_02ab: Unknown result type (might be due to invalid IL or missing references)
				//IL_02d0: Unknown result type (might be due to invalid IL or missing references)
				//IL_02e4: Unknown result type (might be due to invalid IL or missing references)
				//IL_02f8: Unknown result type (might be due to invalid IL or missing references)
				//IL_031d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0331: Unknown result type (might be due to invalid IL or missing references)
				//IL_0345: Unknown result type (might be due to invalid IL or missing references)
				//IL_036a: Unknown result type (might be due to invalid IL or missing references)
				//IL_037e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0392: Unknown result type (might be due to invalid IL or missing references)
				//IL_03b7: Unknown result type (might be due to invalid IL or missing references)
				//IL_03cb: Unknown result type (might be due to invalid IL or missing references)
				//IL_03df: Unknown result type (might be due to invalid IL or missing references)
				//IL_0404: Unknown result type (might be due to invalid IL or missing references)
				//IL_0418: Unknown result type (might be due to invalid IL or missing references)
				//IL_042c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0451: Unknown result type (might be due to invalid IL or missing references)
				//IL_0465: Unknown result type (might be due to invalid IL or missing references)
				//IL_0479: Unknown result type (might be due to invalid IL or missing references)
				//IL_049e: Unknown result type (might be due to invalid IL or missing references)
				//IL_04b2: Unknown result type (might be due to invalid IL or missing references)
				//IL_04c6: Unknown result type (might be due to invalid IL or missing references)
				//IL_04eb: Unknown result type (might be due to invalid IL or missing references)
				//IL_04ff: Unknown result type (might be due to invalid IL or missing references)
				//IL_0513: Unknown result type (might be due to invalid IL or missing references)
				//IL_0538: Unknown result type (might be due to invalid IL or missing references)
				//IL_054c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0560: Unknown result type (might be due to invalid IL or missing references)
				//IL_0585: Unknown result type (might be due to invalid IL or missing references)
				//IL_0599: Unknown result type (might be due to invalid IL or missing references)
				//IL_05ad: Unknown result type (might be due to invalid IL or missing references)
				//IL_05d2: Unknown result type (might be due to invalid IL or missing references)
				//IL_05e6: Unknown result type (might be due to invalid IL or missing references)
				//IL_05fa: Unknown result type (might be due to invalid IL or missing references)
				//IL_061f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0633: Unknown result type (might be due to invalid IL or missing references)
				//IL_0647: Unknown result type (might be due to invalid IL or missing references)
				//IL_066c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0680: Unknown result type (might be due to invalid IL or missing references)
				//IL_0694: Unknown result type (might be due to invalid IL or missing references)
				//IL_06b9: Unknown result type (might be due to invalid IL or missing references)
				//IL_06cd: Unknown result type (might be due to invalid IL or missing references)
				//IL_06e1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0706: Unknown result type (might be due to invalid IL or missing references)
				//IL_071a: Unknown result type (might be due to invalid IL or missing references)
				//IL_072e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0753: Unknown result type (might be due to invalid IL or missing references)
				//IL_0767: Unknown result type (might be due to invalid IL or missing references)
				//IL_077b: Unknown result type (might be due to invalid IL or missing references)
				//IL_07a0: Unknown result type (might be due to invalid IL or missing references)
				//IL_07b4: Unknown result type (might be due to invalid IL or missing references)
				//IL_07c8: Unknown result type (might be due to invalid IL or missing references)
				//IL_07ed: Unknown result type (might be due to invalid IL or missing references)
				//IL_0801: Unknown result type (might be due to invalid IL or missing references)
				//IL_0815: Unknown result type (might be due to invalid IL or missing references)
				//IL_083a: Unknown result type (might be due to invalid IL or missing references)
				//IL_084e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0862: Unknown result type (might be due to invalid IL or missing references)
				//IL_0887: Unknown result type (might be due to invalid IL or missing references)
				//IL_089b: Unknown result type (might be due to invalid IL or missing references)
				//IL_08af: Unknown result type (might be due to invalid IL or missing references)
				//IL_08d4: Unknown result type (might be due to invalid IL or missing references)
				//IL_08e8: Unknown result type (might be due to invalid IL or missing references)
				//IL_08fc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0921: Unknown result type (might be due to invalid IL or missing references)
				//IL_0935: Unknown result type (might be due to invalid IL or missing references)
				//IL_0949: Unknown result type (might be due to invalid IL or missing references)
				//IL_096e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0982: Unknown result type (might be due to invalid IL or missing references)
				//IL_0996: Unknown result type (might be due to invalid IL or missing references)
				//IL_09bb: Unknown result type (might be due to invalid IL or missing references)
				//IL_09cf: Unknown result type (might be due to invalid IL or missing references)
				//IL_09e3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a08: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a1c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a30: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a55: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a69: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a7d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aa2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ab6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aca: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aef: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b03: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b17: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b3c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b50: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b64: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b89: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b9d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bb1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bd6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bea: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bfe: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c23: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c37: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c4b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c70: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c84: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c98: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cbd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cd1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ce5: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d0a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d1e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d32: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d57: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d6b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d7f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0da4: Unknown result type (might be due to invalid IL or missing references)
				//IL_0db8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dcc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0df1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e05: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e19: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e3e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e52: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e66: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e8b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e9f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0eb3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ed8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0eec: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f00: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f25: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f39: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f4d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f72: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f86: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f9a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fbf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fd3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fe7: Unknown result type (might be due to invalid IL or missing references)
				//IL_100c: Unknown result type (might be due to invalid IL or missing references)
				//IL_1020: Unknown result type (might be due to invalid IL or missing references)
				//IL_1034: Unknown result type (might be due to invalid IL or missing references)
				//IL_1059: Unknown result type (might be due to invalid IL or missing references)
				//IL_106d: Unknown result type (might be due to invalid IL or missing references)
				//IL_1081: Unknown result type (might be due to invalid IL or missing references)
				//IL_10a6: Unknown result type (might be due to invalid IL or missing references)
				//IL_10ba: Unknown result type (might be due to invalid IL or missing references)
				//IL_10ce: Unknown result type (might be due to invalid IL or missing references)
				//IL_1119: Unknown result type (might be due to invalid IL or missing references)
				//IL_112d: Unknown result type (might be due to invalid IL or missing references)
				//IL_1141: Unknown result type (might be due to invalid IL or missing references)
				//IL_1163: Unknown result type (might be due to invalid IL or missing references)
				//IL_1177: Unknown result type (might be due to invalid IL or missing references)
				//IL_118b: Unknown result type (might be due to invalid IL or missing references)
				//IL_1375: Unknown result type (might be due to invalid IL or missing references)
				//IL_1389: Unknown result type (might be due to invalid IL or missing references)
				//IL_139d: Unknown result type (might be due to invalid IL or missing references)
				//IL_13c2: Unknown result type (might be due to invalid IL or missing references)
				//IL_13d6: Unknown result type (might be due to invalid IL or missing references)
				//IL_13ea: Unknown result type (might be due to invalid IL or missing references)
				//IL_140f: Unknown result type (might be due to invalid IL or missing references)
				//IL_1423: Unknown result type (might be due to invalid IL or missing references)
				//IL_1437: Unknown result type (might be due to invalid IL or missing references)
				//IL_145c: Unknown result type (might be due to invalid IL or missing references)
				//IL_1470: Unknown result type (might be due to invalid IL or missing references)
				//IL_1484: Unknown result type (might be due to invalid IL or missing references)
				//IL_14a9: Unknown result type (might be due to invalid IL or missing references)
				//IL_14bd: Unknown result type (might be due to invalid IL or missing references)
				//IL_14d1: Unknown result type (might be due to invalid IL or missing references)
				//IL_14f6: Unknown result type (might be due to invalid IL or missing references)
				//IL_150a: Unknown result type (might be due to invalid IL or missing references)
				//IL_151e: Unknown result type (might be due to invalid IL or missing references)
				//IL_1543: Unknown result type (might be due to invalid IL or missing references)
				//IL_1557: Unknown result type (might be due to invalid IL or missing references)
				//IL_156b: Unknown result type (might be due to invalid IL or missing references)
				//IL_1590: Unknown result type (might be due to invalid IL or missing references)
				//IL_15a4: Unknown result type (might be due to invalid IL or missing references)
				//IL_15b8: Unknown result type (might be due to invalid IL or missing references)
				//IL_15dd: Unknown result type (might be due to invalid IL or missing references)
				//IL_15f1: Unknown result type (might be due to invalid IL or missing references)
				//IL_1605: Unknown result type (might be due to invalid IL or missing references)
				//IL_162a: Unknown result type (might be due to invalid IL or missing references)
				//IL_163e: Unknown result type (might be due to invalid IL or missing references)
				//IL_1652: Unknown result type (might be due to invalid IL or missing references)
				//IL_1677: Unknown result type (might be due to invalid IL or missing references)
				//IL_168b: Unknown result type (might be due to invalid IL or missing references)
				//IL_169f: Unknown result type (might be due to invalid IL or missing references)
				//IL_119f: Unknown result type (might be due to invalid IL or missing references)
				//IL_11a9: Unknown result type (might be due to invalid IL or missing references)
				//IL_11bd: Unknown result type (might be due to invalid IL or missing references)
				//IL_11c2: Unknown result type (might be due to invalid IL or missing references)
				//IL_11ff: Unknown result type (might be due to invalid IL or missing references)
				//IL_1213: Unknown result type (might be due to invalid IL or missing references)
				//IL_1218: Unknown result type (might be due to invalid IL or missing references)
				//IL_125b: Unknown result type (might be due to invalid IL or missing references)
				//IL_126f: Unknown result type (might be due to invalid IL or missing references)
				//IL_1274: Unknown result type (might be due to invalid IL or missing references)
				//IL_12b7: Unknown result type (might be due to invalid IL or missing references)
				//IL_12cb: Unknown result type (might be due to invalid IL or missing references)
				//IL_12d0: Unknown result type (might be due to invalid IL or missing references)
				//IL_1313: Unknown result type (might be due to invalid IL or missing references)
				//IL_1327: Unknown result type (might be due to invalid IL or missing references)
				//IL_132c: Unknown result type (might be due to invalid IL or missing references)
				((BaseItemLike)this).AddDisplayRule("CommandoBody", "LowerArmL", new Vector3(-0.0146f, 0.10142f, -0.09926f), new Vector3(80.81804f, 73.87079f, 352.0796f), new Vector3(0.09507f, 0.09507f, 0.09507f));
				((BaseItemLike)this).AddDisplayRule("HuntressBody", "LowerArmL", new Vector3(0.00453f, 0.18608f, -0.0794f), new Vector3(74.06459f, 247.7539f, 163.7938f), new Vector3(0.07896f, 0.07896f, 0.07896f));
				((BaseItemLike)this).AddDisplayRule("Bandit2Body", "LowerArmL", new Vector3(0.07384f, 0.02959f, -0.0921f), new Vector3(54.54504f, 309.9253f, 201.8698f), new Vector3(0.09507f, 0.09507f, 0.09507f));
				((BaseItemLike)this).AddDisplayRule("ToolbotBody", "LowerArmR", new Vector3(-0.05586f, 1.84315f, 0.81928f), new Vector3(282.2477f, 259.3919f, 1.76163f), new Vector3(1.04621f, 1.04621f, 1.04621f));
				((BaseItemLike)this).AddDisplayRule("EngiBody", "LowerArmR", new Vector3(-0.02242f, 0.11966f, -0.07493f), new Vector3(343.2251f, 261.9322f, 178.5142f), new Vector3(0.109f, 0.109f, 0.109f));
				((BaseItemLike)this).AddDisplayRule("EngiTurretBody", "Head", new Vector3(0f, 0.68505f, 0f), new Vector3(0f, 270f, 90f), new Vector3(0.29954f, 0.29954f, 0.29954f));
				((BaseItemLike)this).AddDisplayRule("EngiWalkerTurretBody", "Head", new Vector3(0f, 1.41667f, -0.21911f), new Vector3(0f, 270f, 90f), new Vector3(0.31666f, 0.31666f, 0.31666f));
				((BaseItemLike)this).AddDisplayRule("MageBody", "LowerArmR", new Vector3(-0.05743f, 0.16793f, 0.08284f), new Vector3(282.7379f, 277.4919f, 344.0832f), new Vector3(0.09507f, 0.09507f, 0.09507f));
				((BaseItemLike)this).AddDisplayRule("MercBody", "LowerArmR", new Vector3(-0.02357f, 0.29074f, -0.12531f), new Vector3(283.4819f, 272.5186f, 168.9351f), new Vector3(0.09507f, 0.09507f, 0.09507f));
				((BaseItemLike)this).AddDisplayRule("TreebotBody", "PlatformBase", new Vector3(0f, 1.92666f, -0.97747f), new Vector3(-8E-05f, 89.99995f, 338.9332f), new Vector3(0.23693f, 0.23693f, 0.23693f));
				((BaseItemLike)this).AddDisplayRule("TreebotBody", "PlatformBase", new Vector3(-0.95428f, 1.92644f, -0.15987f), new Vector3(-7E-05f, 170.9057f, 338.9332f), new Vector3(0.23693f, 0.23693f, 0.23693f));
				((BaseItemLike)this).AddDisplayRule("TreebotBody", "PlatformBase", new Vector3(0.12647f, 1.82997f, 0.83765f), new Vector3(-0.00015f, 277.5678f, 338.9332f), new Vector3(0.23693f, 0.23693f, 0.23693f));
				((BaseItemLike)this).AddDisplayRule("TreebotBody", "PlatformBase", new Vector3(0.91269f, 1.92139f, -0.00786f), new Vector3(-0.00022f, 1.56418f, 338.9333f), new Vector3(0.23693f, 0.23693f, 0.23693f));
				((BaseItemLike)this).AddDisplayRule("LoaderBody", "MechBase", new Vector3(-0.0029f, 0.09235f, 0.4434f), new Vector3(0f, 270f, 0f), new Vector3(0.11442f, 0.11442f, 0.11442f));
				((BaseItemLike)this).AddDisplayRule("CrocoBody", "UpperArmL", new Vector3(-1.53705f, -0.49132f, 0.35113f), new Vector3(19.10361f, 27.51384f, 188.1016f), new Vector3(0.66791f, 0.66791f, 0.66791f));
				((BaseItemLike)this).AddDisplayRule("CrocoBody", "UpperArmR", new Vector3(1.30091f, 0.7689f, 0.42121f), new Vector3(341.9067f, 153.8942f, 172.765f), new Vector3(0.66791f, 0.66791f, 0.66791f));
				((BaseItemLike)this).AddDisplayRule("CaptainBody", "ClavicleL", new Vector3(0.07978f, 0.17095f, -0.1458f), new Vector3(344.9297f, 240.0269f, 175.6339f), new Vector3(0.08304f, 0.08304f, 0.08304f));
				((BaseItemLike)this).AddDisplayRule("CaptainBody", "ClavicleR", new Vector3(-0.03803f, 0.18421f, -0.14963f), new Vector3(6.35989f, 291.6088f, 176.4272f), new Vector3(0.08304f, 0.08304f, 0.08304f));
				((BaseItemLike)this).AddDisplayRule("WispBody", "Head", new Vector3(0f, 0.21494f, 0.57267f), new Vector3(0f, 90.00002f, 112.6696f), new Vector3(0.28338f, 0.28338f, 0.28338f));
				((BaseItemLike)this).AddDisplayRule("JellyfishBody", "Hull2", new Vector3(-0.66769f, 0.5537f, -0.38737f), new Vector3(352.1283f, 330.5081f, 147.708f), new Vector3(0.27148f, 0.27148f, 0.27148f));
				((BaseItemLike)this).AddDisplayRule("JellyfishBody", "Hull2", new Vector3(0.74791f, 0.19783f, -0.53016f), new Vector3(354.2131f, 220.0504f, 167.8046f), new Vector3(0.27148f, 0.27148f, 0.27148f));
				((BaseItemLike)this).AddDisplayRule("JellyfishBody", "Hull2", new Vector3(-0.08774f, -0.09304f, 1.00823f), new Vector3(355.0139f, 86.40502f, 178.2649f), new Vector3(0.27148f, 0.27148f, 0.27148f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Head", new Vector3(0f, 0.34403f, 0.37159f), new Vector3(0f, 90f, 112.8398f), new Vector3(0.25041f, 0.25041f, 0.25041f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Chest", new Vector3(0f, 0.19652f, -0.61841f), new Vector3(0f, 90f, 2.51592f), new Vector3(0.25041f, 0.25041f, 0.25041f));
				((BaseItemLike)this).AddDisplayRule("LemurianBody", "LowerArmL", new Vector3(-0.28231f, -1.43541f, -0.90572f), new Vector3(5.52779f, 286.69f, 183.0832f), new Vector3(1.5576f, 1.5576f, 1.5576f));
				((BaseItemLike)this).AddDisplayRule("HermitCrabBody", "Base", new Vector3(-0.35249f, 0.58269f, 0.35845f), new Vector3(358.8646f, 225.772f, 31.04556f), new Vector3(0.17834f, 0.17834f, 0.17834f));
				((BaseItemLike)this).AddDisplayRule("HermitCrabBody", "Base", new Vector3(0.00685f, 0.55719f, -0.51574f), new Vector3(344.942f, 83.88705f, 25.03429f), new Vector3(0.17834f, 0.17834f, 0.17834f));
				((BaseItemLike)this).AddDisplayRule("ImpBody", "LowerArmL", new Vector3(0.06972f, 0.11975f, -0.03627f), new Vector3(23.06966f, 280.1783f, 174.6163f), new Vector3(0.12856f, 0.12856f, 0.12856f));
				((BaseItemLike)this).AddDisplayRule("VultureBody", "LowerArmL", new Vector3(0.99875f, 1.2198f, -0.07211f), new Vector3(346.7694f, 18.99189f, 353.5514f), new Vector3(1.6618f, 1.6618f, 1.6618f));
				((BaseItemLike)this).AddDisplayRule("RoboBallMiniBody", "ROOT", new Vector3(0.81676f, 0.00111f, -0.02604f), new Vector3(0f, 0f, 0f), new Vector3(0.26827f, 0.26827f, 0.26827f));
				((BaseItemLike)this).AddDisplayRule("RoboBallMiniBody", "ROOT", new Vector3(-0.84845f, -0.00118f, -0.01821f), new Vector3(0f, 180f, 0f), new Vector3(0.26827f, 0.26827f, 0.26827f));
				((BaseItemLike)this).AddDisplayRule("MiniMushroomBody", "Head", new Vector3(-0.11137f, -0.70176f, -0.00532f), new Vector3(2.31515f, 179.125f, 332.3143f), new Vector3(0.27659f, 0.27216f, 0.27659f));
				((BaseItemLike)this).AddDisplayRule("BellBody", "Chain", new Vector3(-1.54561f, 2.68301f, -0.88636f), new Vector3(359.0105f, 327.1622f, 186.3831f), new Vector3(0.51058f, 0.51058f, 0.51058f));
				((BaseItemLike)this).AddDisplayRule("BeetleGuardBody", "UpperArmL", new Vector3(0.70768f, 0.08173f, -0.65703f), new Vector3(296.3565f, 38.50573f, 359.3476f), new Vector3(0.53579f, 0.53579f, 0.53579f));
				((BaseItemLike)this).AddDisplayRule("BeetleGuardBody", "UpperArmR", new Vector3(-0.46761f, -0.5243f, -0.96396f), new Vector3(66.01485f, 102.1822f, 316.7295f), new Vector3(0.53579f, 0.53579f, 0.53579f));
				((BaseItemLike)this).AddDisplayRule("BeetleGuardBody", "Chest", new Vector3(-0.04737f, 0.46906f, -2.27501f), new Vector3(0f, 90f, 338.564f), new Vector3(0.69074f, 0.69074f, 0.69074f));
				((BaseItemLike)this).AddDisplayRule("BisonBody", "Head", new Vector3(-0.01011f, 0.11968f, 0.81293f), new Vector3(359.9691f, 90.42268f, 96.09669f), new Vector3(0.17392f, 0.17392f, 0.17392f));
				((BaseItemLike)this).AddDisplayRule("BisonBody", "Chest", new Vector3(-0.72052f, 0.35763f, 0.20302f), new Vector3(289.3813f, 2.77055f, 216.4511f), new Vector3(0.17392f, 0.17392f, 0.17392f));
				((BaseItemLike)this).AddDisplayRule("BisonBody", "Chest", new Vector3(0.67709f, 0.41002f, 0.23429f), new Vector3(58.92508f, 166.8929f, 200.6828f), new Vector3(0.17392f, 0.17392f, 0.17392f));
				((BaseItemLike)this).AddDisplayRule("GolemBody", "Chest", new Vector3(0f, 0.23156f, 0.5453f), new Vector3(0f, 270f, 2.80391f), new Vector3(0.42934f, 0.42934f, 0.42934f));
				((BaseItemLike)this).AddDisplayRule("ParentBody", "Chest", new Vector3(110.5298f, -126.4879f, -0.57111f), new Vector3(0.00012f, 4E-05f, 0.62143f), new Vector3(35.59922f, 35.59922f, 35.59922f));
				((BaseItemLike)this).AddDisplayRule("ClayBruiserBody", "Muzzle", new Vector3(0.01772f, -0.96556f, -0.22935f), new Vector3(0.2352f, 273.3438f, 358.8563f), new Vector3(0.17276f, 0.17276f, 0.17276f));
				((BaseItemLike)this).AddDisplayRule("ClayBruiserBody", "UpperArmL", new Vector3(-0.13775f, 0.27827f, -0.23297f), new Vector3(77.3063f, 174.8385f, 82.23293f), new Vector3(0.18463f, 0.18463f, 0.18463f));
				((BaseItemLike)this).AddDisplayRule("GreaterWispBody", "MaskBase", new Vector3(0.00844f, 0.86168f, 0.53122f), new Vector3(0.85633f, 266.8001f, 29.95748f), new Vector3(0.21107f, 0.21107f, 0.21107f));
				((BaseItemLike)this).AddDisplayRule("LemurianBruiserBody", "LowerArmL", new Vector3(-0.63009f, 3.8933f, -0.49942f), new Vector3(15.7766f, 355.9879f, 166.7924f), new Vector3(1.62279f, 1.62279f, 1.62279f));
				((BaseItemLike)this).AddDisplayRule("NullifierBody", "Muzzle", new Vector3(0f, -2.22915f, 0.72636f), new Vector3(0f, 270f, 336.7043f), new Vector3(0.60054f, 0.60054f, 0.60054f));
				((BaseItemLike)this).AddDisplayRule("BeetleQueen2Body", "Head", new Vector3(0f, 3.39523f, 0.11428f), new Vector3(0f, 90f, 60.1568f), new Vector3(0.84575f, 0.84575f, 0.84575f));
				((BaseItemLike)this).AddDisplayRule("BeetleQueen2Body", "Butt", new Vector3(1E-05f, -2.28304f, -4.30972f), new Vector3(0f, 90f, 277.3143f), new Vector3(0.99843f, 0.99843f, 0.99843f));
				((BaseItemLike)this).AddDisplayRule("ClayBossBody", "PotBase", new Vector3(1.47037f, 0.14472f, 1.15155f), new Vector3(356.2741f, 328.1895f, 8.26984f), new Vector3(0.24784f, 0.24784f, 0.24784f));
				((BaseItemLike)this).AddDisplayRule("ClayBossBody", "PotBase", new Vector3(-1.42564f, 0.14467f, 1.15156f), new Vector3(3.53829f, 214.9017f, 8.46569f), new Vector3(0.24784f, 0.24784f, 0.24784f));
				((BaseItemLike)this).AddDisplayRule("ClayBossBody", "PotBase", new Vector3(0f, 0.15405f, -1.82541f), new Vector3(0f, 90f, 14.66357f), new Vector3(0.24784f, 0.24784f, 0.24784f));
				((BaseItemLike)this).AddDisplayRule("TitanBody", "UpperArmL", new Vector3(1.86778f, 0.0468f, -0.43658f), new Vector3(354.5138f, 195.9479f, 182.7553f), new Vector3(2.25074f, 2.25074f, 2.25074f));
				((BaseItemLike)this).AddDisplayRule("TitanGoldBody", "UpperArmL", new Vector3(1.86778f, 0.0468f, -0.43658f), new Vector3(354.5138f, 195.9479f, 182.7553f), new Vector3(2.25074f, 2.25074f, 2.25074f));
				((BaseItemLike)this).AddDisplayRule("VagrantBody", "Hull", new Vector3(0f, 0.95729f, 1.16298f), new Vector3(0f, 270f, 29.51815f), new Vector3(0.24784f, 0.24784f, 0.24784f));
				((BaseItemLike)this).AddDisplayRule("VagrantBody", "Hull", new Vector3(-0.98958f, 0.95724f, -0.58474f), new Vector3(9E-05f, 152.7161f, 29.51817f), new Vector3(0.24784f, 0.24784f, 0.24784f));
				((BaseItemLike)this).AddDisplayRule("VagrantBody", "Hull", new Vector3(0.98958f, 0.95708f, -0.58468f), new Vector3(0.00012f, 36.37237f, 29.51816f), new Vector3(0.24784f, 0.24784f, 0.24784f));
				string[] array = new string[2] { "MagmaWormBody", "ElectricWormBody" };
				string[] array2 = array;
				string[] array3 = array2;
				foreach (string text in array3)
				{
					((BaseItemLike)this).AddDisplayRule(text, "Head", new Vector3(1E-05f, 0.20321f, 0.35653f), new Vector3(0f, 270f, 338.4637f), new Vector3(0.50219f, 0.50219f, 0.50219f));
					((BaseItemLike)this).AddDisplayRule(text, "Head", new Vector3(-4E-05f, 0.21744f, -1.24892f), new Vector3(0f, 90f, 350.3356f), new Vector3(0.50219f, 0.50219f, 0.50219f));
					for (int j = 1; j <= 16; j++)
					{
						Vector3 val3 = Vector3.one * 0.38363f * Mathf.Pow(43f / 46f, (float)(j - 1));
						((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(0f, 0.67666f + 0.03293f * (float)(j - 1), 0.75189f - 0.02657f * (float)(j - 1)), new Vector3(0f, 270f, 350.3946f), val3);
						((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(1.05941f - 0.02657f * (float)(j - 1), 0.66706f + 0.03293f * (float)(j - 1), -0.30037f), new Vector3(0f, 0f, 350.3946f), val3);
						((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(0f, 0.67666f + 0.03293f * (float)(j - 1), -1.298979f + 0.02657f * (float)(j - 1)), new Vector3(0f, 90f, 350.3946f), val3);
						((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(-1.05941f + 0.02657f * (float)(j - 1), 0.66706f + 0.03293f * (float)(j - 1), -0.30037f), new Vector3(0f, 180f, 350.3946f), val3);
					}
				}
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "MainEyeMuzzle", new Vector3(-0.54958f, 0.32175f, -0.28987f), new Vector3(297.4961f, 98.16615f, 145.5536f), new Vector3(0.1247f, 0.1247f, 0.1247f));
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "MainEyeMuzzle", new Vector3(0.56366f, 0.31158f, -0.30237f), new Vector3(63.15763f, 91.27869f, 163.8493f), new Vector3(0.1247f, 0.1247f, 0.1247f));
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "MainEyeMuzzle", new Vector3(0.0067f, -0.67212f, -0.41237f), new Vector3(0f, 270f, 321.6538f), new Vector3(0.1247f, 0.1247f, 0.1247f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "MainEyeMuzzle", new Vector3(-0.54958f, 0.32175f, -0.28987f), new Vector3(297.4961f, 98.16615f, 145.5536f), new Vector3(0.1247f, 0.1247f, 0.1247f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "MainEyeMuzzle", new Vector3(0.56366f, 0.31158f, -0.30237f), new Vector3(63.15763f, 91.27869f, 163.8493f), new Vector3(0.1247f, 0.1247f, 0.1247f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "MainEyeMuzzle", new Vector3(0.0067f, -0.67212f, -0.41237f), new Vector3(0f, 270f, 321.6538f), new Vector3(0.1247f, 0.1247f, 0.1247f));
				((BaseItemLike)this).AddDisplayRule("GravekeeperBody", "DanglingRope4L", new Vector3(0.0001f, 1.80608f, 3E-05f), new Vector3(0f, 0f, 180f), new Vector3(0.75697f, 0.75697f, 0.75697f));
				((BaseItemLike)this).AddDisplayRule("GravekeeperBody", "DanglingRope4R", new Vector3(0.0001f, 1.80608f, 3E-05f), new Vector3(-1E-05f, 180f, 180f), new Vector3(0.75697f, 0.75697f, 0.75697f));
				((BaseItemLike)this).AddDisplayRule("ImpBossBody", "LowerArmL", new Vector3(0.24444f, 0.45194f, -0.22689f), new Vector3(0f, 270f, 174.7788f), new Vector3(0.66607f, 0.66607f, 0.66607f));
				((BaseItemLike)this).AddDisplayRule("GrandParentBody", "Head", new Vector3(0f, 8.3197f, 1E-05f), new Vector3(0f, 270f, 0f), new Vector3(1.8948f, 1.8948f, 1.8948f));
				((BaseItemLike)this).AddDisplayRule("ScavBody", "Stomach", new Vector3(0.23239f, 4.35636f, -8.43252f), new Vector3(9.37492f, 90.28594f, 11.99715f), new Vector3(1.72618f, 1.72618f, 1.72618f));
				IDRSBackup();
			};
			CharacterBody.OnInventoryChanged += (hook_OnInventoryChanged)delegate(orig_OnInventoryChanged orig, CharacterBody self)
			{
				//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)
				orig.Invoke(self);
				self.AddItemBehavior<EliteVarietyAffixArmoredEquipmentBehavior>((self.inventory.currentEquipmentIndex == ((BaseEquipment)this).equipmentDef.equipmentIndex) ? 1 : 0);
			};
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlLemurian",
				transformLocation = "LemurianArm/ROOT/base/stomach/chest/shoulder.l/upper_arm.l/lower_arm.l",
				childName = "LowerArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlImp",
				transformLocation = "ImpArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l",
				childName = "LowerArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlVulture",
				transformLocation = "VultureArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l",
				childName = "LowerArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlBeetleGuard",
				transformLocation = "BeetleGuardArmature/ROOT/base/chest",
				childName = "Chest"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlBeetleGuard",
				transformLocation = "BeetleGuardArmature/ROOT/base/chest/upper_arm.l",
				childName = "UpperArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlBeetleGuard",
				transformLocation = "BeetleGuardArmature/ROOT/base/chest/upper_arm.r",
				childName = "UpperArmR"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlBison",
				transformLocation = "BisonArmature/ROOT/Base/stomach/chest",
				childName = "Chest"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlClayBruiser",
				transformLocation = "ClayBruiserArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l",
				childName = "UpperArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlLemurianBruiser",
				transformLocation = "LemurianBruiserArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l",
				childName = "LowerArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlClayBoss",
				transformLocation = "ClayBossArmature/ROOT/PotBase",
				childName = "PotBase"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlTitan",
				transformLocation = "TitanArmature/ROOT/base/stomach/chest/upper_arm.l",
				childName = "UpperArmL"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlGravekeeper",
				transformLocation = "GravekeeperArmature/ROOT/base/stomach/chest/neck.1/neck.2/head/danglingrope.1.1.l/danglingrope.1.2.l/danglingrope.1.3.l/danglingrope.1.4.l",
				childName = "DanglingRope4L"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlGravekeeper",
				transformLocation = "GravekeeperArmature/ROOT/base/stomach/chest/neck.1/neck.2/head/danglingrope.1.1.r/danglingrope.1.2.r/danglingrope.1.3.r/danglingrope.1.4.r",
				childName = "DanglingRope4R"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlImpBoss",
				transformLocation = "ImpBossArmature/ROOT/base/stomach/chest/clavicle.l/upper_arm.l/lower_arm.l",
				childName = "LowerArmL"
			});
			selfBuffUseEffect = Main.AssetBundle.LoadAsset<GameObject>("Assets/EliteVariety/Elites/Armored/SelfBuffInflictSFX.prefab");
			EffectComponent val = selfBuffUseEffect.AddComponent<EffectComponent>();
			val.applyScale = true;
			val.parentToReferencedTransform = true;
			val.soundName = "EliteVariety_Play_item_use_affixarmored";
			VFXAttributes val2 = selfBuffUseEffect.AddComponent<VFXAttributes>();
			val2.vfxIntensity = (VFXIntensity)1;
			val2.vfxPriority = (VFXPriority)1;
			EliteVarietyContent.Resources.effectPrefabs.Add(selfBuffUseEffect);
		}

		public override void AfterContentPackLoaded()
		{
			((BaseLoadableAsset)this).AfterContentPackLoaded();
			((BaseEquipment)this).equipmentDef.passiveBuffDef = EliteVarietyContent.Buffs.AffixArmored;
		}
	}
	public class AffixBuffing : BaseEliteAffix
	{
		public static NetworkSoundEventDef useSound;

		public override void OnLoad()
		{
			//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_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_014d: Unknown result type (might be due to invalid IL or missing references)
			//IL_015b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0185: Unknown result type (might be due to invalid IL or missing references)
			//IL_0193: Unknown result type (might be due to invalid IL or missing references)
			//IL_01bd: Unknown result type (might be due to invalid IL or missing references)
			//IL_01cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_01f5: Unknown result type (might be due to invalid IL or missing references)
			base.OnLoad();
			((Object)((BaseEquipment)this).equipmentDef).name = "EliteVariety_AffixBuffing";
			((BaseEquipment)this).equipmentDef.cooldown = 60f;
			SetAssets("Buffing");
			AdjustElitePickupMaterial(Color32.op_Implicit(new Color32((byte)40, (byte)40, (byte)40, byte.MaxValue)), 0.5f, Main.AssetBundle.LoadAsset<Texture>("Assets/EliteVariety/Elites/Buffing/texRampEliteBuffing.png"));
			Material sharedMaterial = ((Component)followerModel.transform.Find("mdlEliteBuffingBanner/Cloth")).gameObject.GetComponent<Renderer>().sharedMaterial;
			sharedMaterial.shader = Resources.Load<Shader>("shaders/deferred/hgwavycloth");
			sharedMaterial.EnableKeyword("CUTOUT");
			sharedMaterial.EnableKeyword("DITHER");
			sharedMaterial.EnableKeyword("_ALPHATEST_ON");
			sharedMaterial.SetFloat("_Cutoff", 0.5f);
			MysticsRisky2UtilsClothReenabler val = followerModel.AddComponent<MysticsRisky2UtilsClothReenabler>();
			val.clothToReenable = (Cloth[])(object)new Cloth[1] { ((Component)followerModel.transform.Find("mdlEliteBuffingBanner/Cloth")).gameObject.GetComponent<Cloth>() };
			BaseItemLike.onSetupIDRS += delegate
			{
				//IL_001b: Unknown result type (might be due to invalid IL or missing references)
				//IL_002f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0043: 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_007c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0090: Unknown result type (might be due to invalid IL or missing references)
				//IL_00b5: Unknown result type (might be due to invalid IL or missing references)
				//IL_00c9: Unknown result type (might be due to invalid IL or missing references)
				//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0102: Unknown result type (might be due to invalid IL or missing references)
				//IL_0116: Unknown result type (might be due to invalid IL or missing references)
				//IL_012a: Unknown result type (might be due to invalid IL or missing references)
				//IL_014f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0163: Unknown result type (might be due to invalid IL or missing references)
				//IL_0177: Unknown result type (might be due to invalid IL or missing references)
				//IL_019c: Unknown result type (might be due to invalid IL or missing references)
				//IL_01b0: Unknown result type (might be due to invalid IL or missing references)
				//IL_01c4: Unknown result type (might be due to invalid IL or missing references)
				//IL_01e9: Unknown result type (might be due to invalid IL or missing references)
				//IL_01fd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0211: Unknown result type (might be due to invalid IL or missing references)
				//IL_0236: Unknown result type (might be due to invalid IL or missing references)
				//IL_024a: Unknown result type (might be due to invalid IL or missing references)
				//IL_025e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0283: Unknown result type (might be due to invalid IL or missing references)
				//IL_0297: Unknown result type (might be due to invalid IL or missing references)
				//IL_02ab: Unknown result type (might be due to invalid IL or missing references)
				//IL_02d0: Unknown result type (might be due to invalid IL or missing references)
				//IL_02e4: Unknown result type (might be due to invalid IL or missing references)
				//IL_02f8: Unknown result type (might be due to invalid IL or missing references)
				//IL_031d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0331: Unknown result type (might be due to invalid IL or missing references)
				//IL_0345: Unknown result type (might be due to invalid IL or missing references)
				//IL_036a: Unknown result type (might be due to invalid IL or missing references)
				//IL_037e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0392: Unknown result type (might be due to invalid IL or missing references)
				//IL_03b7: Unknown result type (might be due to invalid IL or missing references)
				//IL_03cb: Unknown result type (might be due to invalid IL or missing references)
				//IL_03df: Unknown result type (might be due to invalid IL or missing references)
				//IL_0404: Unknown result type (might be due to invalid IL or missing references)
				//IL_0418: Unknown result type (might be due to invalid IL or missing references)
				//IL_042c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0451: Unknown result type (might be due to invalid IL or missing references)
				//IL_0465: Unknown result type (might be due to invalid IL or missing references)
				//IL_0479: Unknown result type (might be due to invalid IL or missing references)
				//IL_049e: Unknown result type (might be due to invalid IL or missing references)
				//IL_04b2: Unknown result type (might be due to invalid IL or missing references)
				//IL_04c6: Unknown result type (might be due to invalid IL or missing references)
				//IL_04eb: Unknown result type (might be due to invalid IL or missing references)
				//IL_04ff: Unknown result type (might be due to invalid IL or missing references)
				//IL_0513: Unknown result type (might be due to invalid IL or missing references)
				//IL_0538: Unknown result type (might be due to invalid IL or missing references)
				//IL_054c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0560: Unknown result type (might be due to invalid IL or missing references)
				//IL_0585: Unknown result type (might be due to invalid IL or missing references)
				//IL_0599: Unknown result type (might be due to invalid IL or missing references)
				//IL_05ad: Unknown result type (might be due to invalid IL or missing references)
				//IL_05d2: Unknown result type (might be due to invalid IL or missing references)
				//IL_05e6: Unknown result type (might be due to invalid IL or missing references)
				//IL_05fa: Unknown result type (might be due to invalid IL or missing references)
				//IL_061f: Unknown result type (might be due to invalid IL or missing references)
				//IL_0633: Unknown result type (might be due to invalid IL or missing references)
				//IL_0647: Unknown result type (might be due to invalid IL or missing references)
				//IL_066c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0680: Unknown result type (might be due to invalid IL or missing references)
				//IL_0694: Unknown result type (might be due to invalid IL or missing references)
				//IL_06b9: Unknown result type (might be due to invalid IL or missing references)
				//IL_06cd: Unknown result type (might be due to invalid IL or missing references)
				//IL_06e1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0706: Unknown result type (might be due to invalid IL or missing references)
				//IL_071a: Unknown result type (might be due to invalid IL or missing references)
				//IL_072e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0753: Unknown result type (might be due to invalid IL or missing references)
				//IL_0767: Unknown result type (might be due to invalid IL or missing references)
				//IL_077b: Unknown result type (might be due to invalid IL or missing references)
				//IL_07a0: Unknown result type (might be due to invalid IL or missing references)
				//IL_07b4: Unknown result type (might be due to invalid IL or missing references)
				//IL_07c8: Unknown result type (might be due to invalid IL or missing references)
				//IL_07ed: Unknown result type (might be due to invalid IL or missing references)
				//IL_0801: Unknown result type (might be due to invalid IL or missing references)
				//IL_0815: Unknown result type (might be due to invalid IL or missing references)
				//IL_083a: Unknown result type (might be due to invalid IL or missing references)
				//IL_084e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0862: Unknown result type (might be due to invalid IL or missing references)
				//IL_0887: Unknown result type (might be due to invalid IL or missing references)
				//IL_089b: Unknown result type (might be due to invalid IL or missing references)
				//IL_08af: Unknown result type (might be due to invalid IL or missing references)
				//IL_08d4: Unknown result type (might be due to invalid IL or missing references)
				//IL_08e8: Unknown result type (might be due to invalid IL or missing references)
				//IL_08fc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0921: Unknown result type (might be due to invalid IL or missing references)
				//IL_0935: Unknown result type (might be due to invalid IL or missing references)
				//IL_0949: Unknown result type (might be due to invalid IL or missing references)
				//IL_096e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0982: Unknown result type (might be due to invalid IL or missing references)
				//IL_0996: Unknown result type (might be due to invalid IL or missing references)
				//IL_09bb: Unknown result type (might be due to invalid IL or missing references)
				//IL_09cf: Unknown result type (might be due to invalid IL or missing references)
				//IL_09e3: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a08: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a1c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a30: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a55: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a69: Unknown result type (might be due to invalid IL or missing references)
				//IL_0a7d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aa2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ab6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aca: Unknown result type (might be due to invalid IL or missing references)
				//IL_0aef: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b03: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b17: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b62: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b76: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b8a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0db0: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dc4: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dd8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0dfd: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e11: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e25: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e4a: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e5e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e72: Unknown result type (might be due to invalid IL or missing references)
				//IL_0e97: Unknown result type (might be due to invalid IL or missing references)
				//IL_0eab: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ebf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ee4: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ef8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f0c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f31: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f45: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f59: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f7e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0f92: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fa6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fcb: Unknown result type (might be due to invalid IL or missing references)
				//IL_0fdf: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ff3: Unknown result type (might be due to invalid IL or missing references)
				//IL_1018: Unknown result type (might be due to invalid IL or missing references)
				//IL_102c: Unknown result type (might be due to invalid IL or missing references)
				//IL_1040: Unknown result type (might be due to invalid IL or missing references)
				//IL_1065: Unknown result type (might be due to invalid IL or missing references)
				//IL_1079: Unknown result type (might be due to invalid IL or missing references)
				//IL_108d: Unknown result type (might be due to invalid IL or missing references)
				//IL_10b2: Unknown result type (might be due to invalid IL or missing references)
				//IL_10c6: Unknown result type (might be due to invalid IL or missing references)
				//IL_10da: Unknown result type (might be due to invalid IL or missing references)
				//IL_10ff: Unknown result type (might be due to invalid IL or missing references)
				//IL_1113: Unknown result type (might be due to invalid IL or missing references)
				//IL_1127: Unknown result type (might be due to invalid IL or missing references)
				//IL_0b9e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ba8: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bbc: Unknown result type (might be due to invalid IL or missing references)
				//IL_0bc1: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c0c: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c20: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c25: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c77: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c8b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0c90: Unknown result type (might be due to invalid IL or missing references)
				//IL_0ce2: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cf6: Unknown result type (might be due to invalid IL or missing references)
				//IL_0cfb: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d4d: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d61: Unknown result type (might be due to invalid IL or missing references)
				//IL_0d66: Unknown result type (might be due to invalid IL or missing references)
				((BaseItemLike)this).AddDisplayRule("CommandoBody", "Chest", new Vector3(0.00102f, 0.17669f, -0.12973f), new Vector3(0.07531f, 90f, 359.3813f), new Vector3(0.36256f, 0.36256f, 0.36256f));
				((BaseItemLike)this).AddDisplayRule("HuntressBody", "Chest", new Vector3(2E-05f, -0.02979f, -0.04754f), new Vector3(358.6577f, 86.58627f, 338.5598f), new Vector3(0.38563f, 0.38563f, 0.38563f));
				((BaseItemLike)this).AddDisplayRule("Bandit2Body", "Chest", new Vector3(0f, 0.03892f, -0.14487f), new Vector3(0f, 90f, 344.5243f), new Vector3(0.27982f, 0.27982f, 0.27982f));
				((BaseItemLike)this).AddDisplayRule("ToolbotBody", "Chest", new Vector3(1E-05f, 0.01734f, -1.24409f), new Vector3(0f, 90f, 344.6589f), new Vector3(1.95547f, 1.95547f, 1.95547f));
				((BaseItemLike)this).AddDisplayRule("EngiBody", "Chest", new Vector3(0f, 0.11143f, -0.24884f), new Vector3(0f, 90f, 342.4611f), new Vector3(0.28191f, 0.28191f, 0.28191f));
				((BaseItemLike)this).AddDisplayRule("EngiTurretBody", "Neck", new Vector3(0f, 0.48752f, -0.03041f), new Vector3(0f, 270f, 0f), new Vector3(1.05434f, 1.05655f, 1.05655f));
				((BaseItemLike)this).AddDisplayRule("EngiWalkerTurretBody", "Head", new Vector3(0f, 0.37199f, -0.82251f), new Vector3(0f, 90f, 340f), new Vector3(1.05434f, 1.05655f, 1.05655f));
				((BaseItemLike)this).AddDisplayRule("MageBody", "Chest", new Vector3(0f, -0.14577f, -0.1979f), new Vector3(0f, 90f, 0f), new Vector3(0.29608f, 0.29608f, 0.29608f));
				((BaseItemLike)this).AddDisplayRule("MercBody", "Chest", new Vector3(0f, -0.13038f, -0.05179f), new Vector3(0f, 90f, 350.5615f), new Vector3(0.2856f, 0.2856f, 0.2856f));
				((BaseItemLike)this).AddDisplayRule("TreebotBody", "PlatformBase", new Vector3(0f, 1.24573f, -0.64632f), new Vector3(-8E-05f, 89.99994f, 338.9332f), new Vector3(0.61149f, 0.61149f, 0.61149f));
				((BaseItemLike)this).AddDisplayRule("LoaderBody", "MechBase", new Vector3(-0.0029f, 0.09242f, -0.04496f), new Vector3(0f, 90f, 0f), new Vector3(0.28298f, 0.28298f, 0.28298f));
				((BaseItemLike)this).AddDisplayRule("CrocoBody", "Chest", new Vector3(0.67265f, -1.71814f, 3.68666f), new Vector3(321.8149f, 111.5687f, 359.7997f), new Vector3(2.11805f, 2.11805f, 2.11805f));
				((BaseItemLike)this).AddDisplayRule("CaptainBody", "Chest", new Vector3(0f, 0.1173f, -0.00825f), new Vector3(0f, 90f, 335.0094f), new Vector3(0.24446f, 0.24446f, 0.24446f));
				((BaseItemLike)this).AddDisplayRule("WispBody", "Head", new Vector3(0f, 0.00348f, -0.6174f), new Vector3(0f, 90f, 90f), new Vector3(1.18934f, 1.18934f, 1.18934f));
				((BaseItemLike)this).AddDisplayRule("JellyfishBody", "Hull2", new Vector3(0.00906f, -0.0899f, 0.01635f), new Vector3(0f, 273.5969f, 0f), new Vector3(0.76511f, 0.76511f, 0.76511f));
				((BaseItemLike)this).AddDisplayRule("BeetleBody", "Chest", new Vector3(0f, 0.13316f, -0.65895f), new Vector3(0f, 270f, 37.27843f), new Vector3(0.80709f, 0.80709f, 0.80709f));
				((BaseItemLike)this).AddDisplayRule("LemurianBody", "Chest", new Vector3(0f, -2.10492f, 0.69056f), new Vector3(0f, 90f, 23.17685f), new Vector3(4.47252f, 4.47252f, 4.47252f));
				((BaseItemLike)this).AddDisplayRule("HermitCrabBody", "Base", new Vector3(1E-05f, 1.1429f, -1E-05f), new Vector3(0f, 270f, 0f), new Vector3(0.8978f, 0.8978f, 0.8978f));
				((BaseItemLike)this).AddDisplayRule("ImpBody", "Neck", new Vector3(0f, -0.38947f, 0.10343f), new Vector3(0f, 90f, 0.68676f), new Vector3(0.35844f, 0.35844f, 0.35844f));
				((BaseItemLike)this).AddDisplayRule("VultureBody", "Chest", new Vector3(-5E-05f, -0.79747f, 1.95463f), new Vector3(6.13429f, 269.3485f, 83.92575f), new Vector3(3.8124f, 3.8124f, 3.8124f));
				((BaseItemLike)this).AddDisplayRule("RoboBallMiniBody", "ROOT", new Vector3(0.81676f, 0.00111f, -0.02604f), new Vector3(0f, 0f, 347.2889f), new Vector3(0.97745f, 0.97745f, 0.97745f));
				((BaseItemLike)this).AddDisplayRule("RoboBallMiniBody", "ROOT", new Vector3(-0.81676f, 0.00111f, -0.02604f), new Vector3(0f, 0f, -347.2889f), new Vector3(0.97745f, 0.97745f, 0.97745f));
				((BaseItemLike)this).AddDisplayRule("MiniMushroomBody", "Head", new Vector3(1.00691f, 0.36443f, 0f), new Vector3(-1E-05f, 180f, 264.1599f), new Vector3(1.10492f, 1.08723f, 1.10492f));
				((BaseItemLike)this).AddDisplayRule("BellBody", "Chain", new Vector3(0f, 1.12031f, 0f), new Vector3(0f, 335.945f, 180f), new Vector3(1.593f, 1.593f, 1.593f));
				((BaseItemLike)this).AddDisplayRule("BeetleGuardBody", "Chest", new Vector3(-0.10637f, 0.34776f, -1.87907f), new Vector3(355.6954f, 274.0369f, 21.01935f), new Vector3(2.50349f, 2.50349f, 2.50349f));
				((BaseItemLike)this).AddDisplayRule("BisonBody", "Chest", new Vector3(0f, -0.23085f, 0.17051f), new Vector3(0f, 90f, 58.0866f), new Vector3(0.74749f, 0.74749f, 0.74749f));
				((BaseItemLike)this).AddDisplayRule("GolemBody", "Chest", new Vector3(0f, 0.11769f, -0.18732f), new Vector3(0f, 90f, 352.168f), new Vector3(1.19599f, 1.19599f, 1.19599f));
				((BaseItemLike)this).AddDisplayRule("ParentBody", "Chest", new Vector3(-49.4163f, -39.60241f, -0.57086f), new Vector3(0.00012f, 4E-05f, 353.1383f), new Vector3(133.9619f, 133.9619f, 133.9619f));
				((BaseItemLike)this).AddDisplayRule("ClayBruiserBody", "Chest", new Vector3(0.10359f, 0.57035f, -0.36894f), new Vector3(18.0352f, 223.9352f, 342.147f), new Vector3(0.52213f, 0.52213f, 0.52213f));
				((BaseItemLike)this).AddDisplayRule("GreaterWispBody", "MaskBase", new Vector3(0f, -0.53085f, 0.35565f), new Vector3(0f, 270f, 351.6115f), new Vector3(0.97508f, 0.97508f, 0.97508f));
				((BaseItemLike)this).AddDisplayRule("LemurianBruiserBody", "Chest", new Vector3(0f, -1.65961f, 0.42276f), new Vector3(0f, 90f, 41.72485f), new Vector3(3.70022f, 3.70022f, 3.70022f));
				((BaseItemLike)this).AddDisplayRule("NullifierBody", "Muzzle", new Vector3(1.61304f, -0.89677f, -0.60892f), new Vector3(350.7634f, 280.3142f, 306.2213f), new Vector3(1.7403f, 1.7403f, 1.7403f));
				((BaseItemLike)this).AddDisplayRule("BeetleQueen2Body", "Head", new Vector3(0f, 0.66384f, 2.77533f), new Vector3(0f, 90f, 324.9953f), new Vector3(1.8373f, 1.8373f, 1.8373f));
				((BaseItemLike)this).AddDisplayRule("ClayBossBody", "PotBase", new Vector3(0f, -0.21454f, -1.78393f), new Vector3(0f, 270f, 354.0653f), new Vector3(1.20857f, 1.20857f, 1.20857f));
				((BaseItemLike)this).AddDisplayRule("TitanBody", "Chest", new Vector3(0.89643f, 3.32113f, -2.67202f), new Vector3(0f, 270f, 0f), new Vector3(3.64626f, 3.64626f, 3.64626f));
				((BaseItemLike)this).AddDisplayRule("TitanGoldBody", "Chest", new Vector3(0.89643f, 3.32113f, -2.67202f), new Vector3(0f, 270f, 0f), new Vector3(3.64626f, 3.64626f, 3.64626f));
				((BaseItemLike)this).AddDisplayRule("VagrantBody", "Hull", new Vector3(0f, 0.98831f, -0.73006f), new Vector3(0f, 270f, 337.7484f), new Vector3(0.72348f, 0.72348f, 0.72348f));
				string[] array = new string[2] { "MagmaWormBody", "ElectricWormBody" };
				string[] array2 = array;
				string[] array3 = array2;
				foreach (string text in array3)
				{
					((BaseItemLike)this).AddDisplayRule(text, "Head", new Vector3(-0.04405f, 1.49652f, 0.59592f), new Vector3(6.87863f, 90f, 48.29213f), new Vector3(1.05666f, 1.05666f, 1.05666f));
					for (int j = 1; j <= 16; j++)
					{
						Vector3 val2 = Vector3.one * 0.5777f * Mathf.Pow(43f / 46f, (float)(j - 1));
						if (j % 4 == 0)
						{
							((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(0f, 0.70959f + 0.03293f * (float)(j - 1), 0.72532f - 0.02657f * (float)(j - 1)), new Vector3(0f, 90f, 42.11422f), val2);
						}
						if (j % 4 == 1)
						{
							((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(1.05941f - 0.02657f * (float)(j - 1), 0.69999f + 0.03293f * (float)(j - 1), -0.2738f), new Vector3(0f, 0f, 317.7116f), val2);
						}
						if (j % 4 == 2)
						{
							((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(0f, 0.70959f + 0.03293f * (float)(j - 1), -1.27241f + 0.02657f * (float)(j - 1)), new Vector3(0f, 270f, 40.70816f), val2);
						}
						if (j % 4 == 3)
						{
							((BaseItemLike)this).AddDisplayRule(text, "Neck" + j, new Vector3(-1.03284f + 0.02657f * (float)(j - 1), 0.69999f + 0.03293f * (float)(j - 1), -0.2738f), new Vector3(0f, 180f, 317.0171f), val2);
						}
					}
				}
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "Shell", new Vector3(0.48786f, 0.59529f, -0.18982f), new Vector3(321.6017f, 270f, 352.831f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "Shell", new Vector3(-0.62949f, 0.72152f, -0.15464f), new Vector3(30.74866f, 262.1811f, 353.4654f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "Shell", new Vector3(0.15394f, -0.05496f, -0.22929f), new Vector3(358.8803f, 355.0521f, 274.0744f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("RoboBallBossBody", "Shell", new Vector3(-0.05954f, 0.00563f, -0.14659f), new Vector3(0f, 0f, 90f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "Shell", new Vector3(0.48786f, 0.59529f, -0.18982f), new Vector3(321.6017f, 270f, 352.831f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "Shell", new Vector3(-0.62949f, 0.72152f, -0.15464f), new Vector3(30.74866f, 262.1811f, 353.4654f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "Shell", new Vector3(0.15394f, -0.05496f, -0.22929f), new Vector3(358.8803f, 355.0521f, 274.0744f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("SuperRoboBallBossBody", "Shell", new Vector3(-0.05954f, 0.00563f, -0.14659f), new Vector3(0f, 0f, 90f), new Vector3(0.27219f, 0.27219f, 0.27219f));
				((BaseItemLike)this).AddDisplayRule("GravekeeperBody", "JarBase", new Vector3(1.98524f, 0.17719f, -0.40357f), new Vector3(340.6301f, 78.55086f, 159.8601f), new Vector3(2.53588f, 2.53588f, 2.53588f));
				((BaseItemLike)this).AddDisplayRule("ImpBossBody", "Neck", new Vector3(0f, -1.40541f, 0.63202f), new Vector3(0f, 90f, 348.3492f), new Vector3(1.32086f, 1.32086f, 1.32086f));
				((BaseItemLike)this).AddDisplayRule("GrandParentBody", "Chest", new Vector3(0f, 6.00729f, -4.75472f), new Vector3(0f, 270f, 0f), new Vector3(2.75441f, 2.57376f, 2.75441f));
				((BaseItemLike)this).AddDisplayRule("ScavBody", "Backpack", new Vector3(1.25963f, 9.77923f, -0.35636f), new Vector3(354.4142f, 254.9262f, 346.4824f), new Vector3(4.73313f, 4.73313f, 4.73313f));
				IDRSBackup();
			};
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlClayBruiser",
				transformLocation = "ClayBruiserArmature/ROOT/base/stomach/chest",
				childName = "Chest"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlRoboBallBoss",
				transformLocation = "RoboBallBossArmature/ROOT/Shell",
				childName = "Shell"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlGravekeeper",
				transformLocation = "GravekeeperArmature/ROOT/JarBase",
				childName = "JarBase"
			});
			ChildLocatorAdditions.list.Add(new Addition
			{
				modelName = "mdlGrandparent",
				transformLocation = "GrandparentArmature/ROOT/base/stomach/chest",
				childName = "Chest"
			});
			useSound = ScriptableObject.CreateInstance<NetworkSoundEventDef>();
			useSound.eventName = "EliteVariety_Play_item_use_affixbuffing";
			EliteVarietyContent.Resources.networkSoundEventDefs.Add(useSound);
		}

		public override void AfterContentPackLoaded()
		{
			((BaseLoadableAsset)this).AfterContentPackLoaded();
			((BaseEquipment)this).equipmentDef.passiveBuffDef = EliteVarietyContent.Buffs.AffixBuffing;
		}
	}
	public class AffixImpPlane : BaseEliteAffix
	{
		public class EliteVarietyImpPlaneBlink : MonoBehaviour
		{
			public class SyncBlink : INetMessage, ISerializableObject
			{
				private NetworkInstanceId objID;

				private Vector3 destination;

				public SyncBlink()
				{
				}

				public SyncBlink(NetworkInstanceId objID, Vector3 destination)
				{
					//IL_0009: Unknown result type (might be due to invalid IL or missing references)
					//IL_000a: Unknown result type (might be due to invalid IL or missing references)
					//IL_0010: Unknown result type (might be due to invalid IL or missing references)
					//IL_0011: Unknown result type (might be due to invalid IL or missing references)
					this.objID = objID;
					this.destination = destination;
				}

				public void Deserialize(NetworkReader reader)
				{
					//IL_0003: Unknown result type (might be due to invalid IL or missing references)
					//IL_0008: 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_0014: Unknown result type (might be due to invalid IL or missing references)
					objID = reader.ReadNetworkId();
					destination = reader.ReadVector3();
				}

				public void OnReceived()
				{
					//IL_000f: Unknown result type (might be due to invalid IL or missing references)
					//IL_002e: Unknown result type (might be due to invalid IL or missing references)
					if (!NetworkServer.active)
					{
						GameObject val = Util.FindNetworkObject(objID);
						if (Object.op_Implicit((Object)(object)val))
						{
							EliteVarietyImpPlaneBlink component = val.GetComponent<EliteVarietyImpPlaneBlink>();
							component.Blink(destination);
						}
					}
				}

				public void Serialize(NetworkWriter writer)
				{
					//IL_0003: Unknown result type (might be due to invalid IL or missing references)
					//IL_0010: Unknown result type (might be due to invalid IL or missing references)
					writer.Write(objID);
					writer.Write(destination);
				}
			}

			public CharacterBody body;

			public Animator animator;

			public CharacterModel characterModel;

			public HurtBoxGroup hurtboxGroup;

			public ChildLocator childLocator;

			public Transform modelTransform;

			public GameObject blinkInObject;

			public bool blinking = false;

			public bool blinkInStarted = false;

			public float stopwatch = 0f;

			public float baseBlinkOutDuration = 0.5f;

			public float baseBlinkInDuration = 1f;

			public float blinkOutDuration = 1f;

			public float blinkInDuration = 1f;

			public float blinkDamage = 500f;

			public float blinkProcCoefficient = 1f;

			public float blinkForce = 1000f;

			public float blinkRadius = 7f;

			public Vector3 destination;

			public Vector3 direction;

			public static Material destealthMaterial;

			public float blinkDuration => blinkInDuration + blinkOutDuration;

			public void Awake()
			{
				body = ((Component)this).GetComponent<CharacterBody>();
				ModelLocator modelLocator = body.modelLocator;
				if (Object.op_Implicit((Object)(object)modelLocator))
				{
					modelTransform = modelLocator.modelTransform;
					if (Object.op_Implicit((Object)(object)modelTransform))
					{
						animator = ((Component)modelTransform).GetComponent<Animator>();
						characterModel = ((Component)modelTransform).GetComponent<CharacterModel>();
						hurtboxGroup = ((Component)modelTransform).GetComponent<HurtBoxGroup>();
						childLocator = ((Component)modelTransform).GetComponent<ChildLocator>();
					}
				}
			}

			public void FixedUpdate()
			{
				//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_008b: Unknown result type (might be due to invalid IL or missing references)
				//IL_00a2: Unknown result type (might be due to invalid IL or missing references)
				if (!blinking)
				{
					return;
				}
				stopwatch += Time.fixedDeltaTime;
				if (stopwatch >= blinkOutDuration)
				{
					if (!blinkInStarted)
					{
						blinkInStarted = true;
						blinkInObject = Object.Instantiate<GameObject>(blinkInEffectPrefab, destination, Quaternion.identity);
						TeamAreaIndicator componentInChildren = blinkInObject.GetComponentInChildren<TeamAreaIndicator>();
						if (Object.op_Implicit((Object)(object)componentInChildren))
						{
							((Component)componentInChildren).transform.localScale = Vector3.one * (blinkRadius + body.radius);
						}
					}
					SetPositionToDestination();
				}
				if (stopwatch >= blinkDuration)
				{
					EndBlink();
				}
			}

			public void CreateBlinkEffect(Vector3 position)
			{
				//IL_0006: Unknown result type (might be due to invalid IL or missing references)
				//IL_000b: 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_0013: Unknown result type (might be due to invalid IL or missing references)
				//IL_0031: Expected O, but got Unknown
				EffectManager.SpawnEffect(blinkEffectPrefab, new EffectData
				{
					origin = position,
					scale = blinkRadius + bo