Decompiled source of Hatify v1.3.2

plugins/Hatify/Hatify.dll

Decompiled 3 weeks ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using BodyModelAdditionsAPI;
using Microsoft.CodeAnalysis;
using RoR2;
using RoR2BepInExPack.GameAssetPaths.Version_1_39_0;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.Networking;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("Hatify")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+68eba07388d371e51504a86dba3d92771a471873")]
[assembly: AssemblyProduct("Hatify")]
[assembly: AssemblyTitle("Hatify")]
[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.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
namespace Hatify
{
	[BepInPlugin("com.Nuxlar.Hatify", "Hatify", "1.3.2")]
	public class Hatify : BaseUnityPlugin
	{
		[CompilerGenerated]
		private static class <>O
		{
			public static CodeAfterApplying <0>__PlaceItSeeker;

			public static CodeAfterApplying <1>__PlaceItFalseSon;

			public static CodeAfterApplying <2>__PlaceItChef;

			public static CodeAfterApplying <3>__PlaceItMult;

			public static CodeAfterApplying <4>__PlaceItRex;

			public static CodeAfterApplying <5>__PlaceItBandit;

			public static CodeAfterApplying <6>__PlaceItCaptain;

			public static CodeAfterApplying <7>__PlaceItCommando;

			public static CodeAfterApplying <8>__PlaceItRailgunner;

			public static CodeAfterApplying <9>__PlaceItMage;

			public static CodeAfterApplying <10>__PlaceItHuntress;

			public static CodeAfterApplying <11>__PlaceItCroco;

			public static CodeAfterApplying <12>__PlaceItEngi;

			public static CodeAfterApplying <13>__PlaceItEngiWalker;

			public static CodeAfterApplying <14>__PlaceItEngiTurret;

			public static CodeAfterApplying <15>__PlaceItMerc;

			public static CodeAfterApplying <16>__PlaceItVoid;

			public static CodeAfterApplying <17>__PlaceItLoader;

			public static CodeAfterApplying <18>__PlaceItVoidling;
		}

		private static GameObject hat = ((Component)Addressables.LoadAssetAsync<GameObject>((object)RoR2_Base_Bandit2.mdlBandit2_fbx).WaitForCompletion().transform.GetChild(4).GetChild(2).GetChild(0)
			.GetChild(6)
			.GetChild(0)
			.GetChild(2)
			.GetChild(0)).gameObject;

		private static Material hatMat = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Commando.matCommandoDualies_mat).WaitForCompletion();

		private static Material banditHatMat = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Bandit2.matBandit2AltColossus_mat).WaitForCompletion();

		private static Material voidlingHatMat = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC1_voidraid.matVoidMetalTrimGrassyVertexColorsOnlyRaidBoss_mat).WaitForCompletion();

		private static List<string> bodyNames = new List<string>
		{
			"Bandit2Body", "CaptainBody", "CommandoBody", "RailgunnerBody", "MageBody", "HuntressBody", "CrocoBody", "MercBody", "VoidSurvivorBody", "EngiBody",
			"EngiTurretBody", "EngiWalkerTurretBody", "LoaderBody", "SeekerBody", "FalseSonBody", "ChefBody", "TreebotBody", "ToolbotBody", "VoidRaidCrabBody"
		};

		public static ConfigEntry<float> commandoSize;

		public static ConfigEntry<float> banditSize;

		public static ConfigEntry<float> huntressSize;

		public static ConfigEntry<float> engiSize;

		public static ConfigEntry<float> engiTurretSize;

		public static ConfigEntry<float> engiWalkerTurretSize;

		public static ConfigEntry<float> artiSize;

		public static ConfigEntry<float> mercSize;

		public static ConfigEntry<float> loaderSize;

		public static ConfigEntry<float> acridSize;

		public static ConfigEntry<float> captainSize;

		public static ConfigEntry<float> railgunnerSize;

		public static ConfigEntry<float> fiendSize;

		public static ConfigEntry<float> seekerSize;

		public static ConfigEntry<float> rexSize;

		public static ConfigEntry<float> chefSize;

		public static ConfigEntry<float> falseSonSize;

		public static ConfigEntry<float> multSize;

		public static ConfigEntry<float> voidlingSize;

		private static ConfigFile HatifyConfig { get; set; }

		public void Awake()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_001a: Expected O, but got Unknown
			HatifyConfig = new ConfigFile(Paths.ConfigPath + "\\com.Nuxlar.Hatify.cfg", true);
			commandoSize = HatifyConfig.Bind<float>("General", "Commando Hat Size", 1.3f, "The scale of the hat.");
			banditSize = HatifyConfig.Bind<float>("General", "Bandit Hat Size", 1f, "The scale of the hat.");
			huntressSize = HatifyConfig.Bind<float>("General", "Huntress Hat Size", 1.3f, "The scale of the hat.");
			engiSize = HatifyConfig.Bind<float>("General", "Engi Hat Size", 1.6f, "The scale of the hat.");
			engiTurretSize = HatifyConfig.Bind<float>("General", "Engi Turret Hat Size", 10f, "The scale of the hat.");
			engiWalkerTurretSize = HatifyConfig.Bind<float>("General", "Engi Walker Turret Hat Size", 8f, "The scale of the hat.");
			artiSize = HatifyConfig.Bind<float>("General", "Artificer Hat Size", 1f, "The scale of the hat.");
			mercSize = HatifyConfig.Bind<float>("General", "Merc Hat Size", 1.4f, "The scale of the hat.");
			loaderSize = HatifyConfig.Bind<float>("General", "Loader Hat Size", 1.5f, "The scale of the hat.");
			acridSize = HatifyConfig.Bind<float>("General", "Acrid Hat Size", 15f, "The scale of the hat.");
			captainSize = HatifyConfig.Bind<float>("General", "Captain Hat Size", 1.3f, "The scale of the hat.");
			railgunnerSize = HatifyConfig.Bind<float>("General", "Railgunner Hat Size", 1f, "The scale of the hat.");
			fiendSize = HatifyConfig.Bind<float>("General", "Fiend Hat Size", 1.4f, "The scale of the hat.");
			seekerSize = HatifyConfig.Bind<float>("General", "Seeker Hat Size", 1f, "The scale of the hat.");
			rexSize = HatifyConfig.Bind<float>("General", "REX Hat Size", 2f, "The scale of the hat.");
			chefSize = HatifyConfig.Bind<float>("General", "CHEF Hat Size", 2f, "The scale of the hat.");
			falseSonSize = HatifyConfig.Bind<float>("General", "False Son Hat Size", 2.5f, "The scale of the hat.");
			multSize = HatifyConfig.Bind<float>("General", "MUL-T Hat Size", 15f, "The scale of the hat.");
			voidlingSize = HatifyConfig.Bind<float>("General", "Fathomless Hat Size", 200f, "The scale of the hat.");
			ApplyHats();
		}

		private static void ApplyHats()
		{
			//IL_0010: Unknown result type (might be due to invalid IL or missing references)
			//IL_0015: Unknown result type (might be due to invalid IL or missing references)
			//IL_0023: Unknown result type (might be due to invalid IL or missing references)
			//IL_0028: Unknown result type (might be due to invalid IL or missing references)
			//IL_004a: Unknown result type (might be due to invalid IL or missing references)
			//IL_08f4: Unknown result type (might be due to invalid IL or missing references)
			//IL_08f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_09f6: Unknown result type (might be due to invalid IL or missing references)
			//IL_09fb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0908: Unknown result type (might be due to invalid IL or missing references)
			//IL_090d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0915: Unknown result type (might be due to invalid IL or missing references)
			//IL_0920: Unknown result type (might be due to invalid IL or missing references)
			//IL_092b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bfa: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bff: Unknown result type (might be due to invalid IL or missing references)
			//IL_0566: Unknown result type (might be due to invalid IL or missing references)
			//IL_056b: Unknown result type (might be due to invalid IL or missing references)
			//IL_06f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_06f5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a77: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a7c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c78: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c7d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a0a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a0f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a17: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a22: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a2d: Unknown result type (might be due to invalid IL or missing references)
			//IL_045d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0462: Unknown result type (might be due to invalid IL or missing references)
			//IL_07f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_07f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0951: Expected O, but got Unknown
			//IL_094c: Unknown result type (might be due to invalid IL or missing references)
			//IL_093c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0941: Unknown result type (might be due to invalid IL or missing references)
			//IL_0947: Expected O, but got Unknown
			//IL_0c0e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c13: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c1b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c26: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c31: Unknown result type (might be due to invalid IL or missing references)
			//IL_035b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0360: Unknown result type (might be due to invalid IL or missing references)
			//IL_057a: Unknown result type (might be due to invalid IL or missing references)
			//IL_057f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0587: Unknown result type (might be due to invalid IL or missing references)
			//IL_0592: Unknown result type (might be due to invalid IL or missing references)
			//IL_059d: Unknown result type (might be due to invalid IL or missing references)
			//IL_05e7: Unknown result type (might be due to invalid IL or missing references)
			//IL_05ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_04e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_04ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_066f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0674: Unknown result type (might be due to invalid IL or missing references)
			//IL_0704: Unknown result type (might be due to invalid IL or missing references)
			//IL_0709: Unknown result type (might be due to invalid IL or missing references)
			//IL_0711: Unknown result type (might be due to invalid IL or missing references)
			//IL_071c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0727: Unknown result type (might be due to invalid IL or missing references)
			//IL_03dc: Unknown result type (might be due to invalid IL or missing references)
			//IL_03e1: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a8b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a90: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a98: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aa3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aae: Unknown result type (might be due to invalid IL or missing references)
			//IL_0771: Unknown result type (might be due to invalid IL or missing references)
			//IL_0776: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c89: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c8e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c96: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ca1: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cac: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b79: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b7e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a53: Expected O, but got Unknown
			//IL_0a4e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a3e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a43: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a49: Expected O, but got Unknown
			//IL_0471: Unknown result type (might be due to invalid IL or missing references)
			//IL_0476: Unknown result type (might be due to invalid IL or missing references)
			//IL_047e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0489: Unknown result type (might be due to invalid IL or missing references)
			//IL_0494: Unknown result type (might be due to invalid IL or missing references)
			//IL_0975: Unknown result type (might be due to invalid IL or missing references)
			//IL_097a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0806: Unknown result type (might be due to invalid IL or missing references)
			//IL_080b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0813: Unknown result type (might be due to invalid IL or missing references)
			//IL_081e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0829: Unknown result type (might be due to invalid IL or missing references)
			//IL_0af8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0afd: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c57: Expected O, but got Unknown
			//IL_0c52: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c42: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c47: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c4d: Expected O, but got Unknown
			//IL_036f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0374: Unknown result type (might be due to invalid IL or missing references)
			//IL_037c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0387: 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_05c3: Expected O, but got Unknown
			//IL_05be: Unknown result type (might be due to invalid IL or missing references)
			//IL_05ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_05b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_05b9: Expected O, but got Unknown
			//IL_05fb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0600: Unknown result type (might be due to invalid IL or missing references)
			//IL_0608: Unknown result type (might be due to invalid IL or missing references)
			//IL_0613: Unknown result type (might be due to invalid IL or missing references)
			//IL_061e: Unknown result type (might be due to invalid IL or missing references)
			//IL_04f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_04fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0506: Unknown result type (might be due to invalid IL or missing references)
			//IL_0511: Unknown result type (might be due to invalid IL or missing references)
			//IL_051c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0683: Unknown result type (might be due to invalid IL or missing references)
			//IL_0688: Unknown result type (might be due to invalid IL or missing references)
			//IL_0690: Unknown result type (might be due to invalid IL or missing references)
			//IL_069b: Unknown result type (might be due to invalid IL or missing references)
			//IL_06a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_074d: Expected O, but got Unknown
			//IL_0748: Unknown result type (might be due to invalid IL or missing references)
			//IL_0738: Unknown result type (might be due to invalid IL or missing references)
			//IL_073d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0743: Expected O, but got Unknown
			//IL_03f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_03f5: Unknown result type (might be due to invalid IL or missing references)
			//IL_03fd: Unknown result type (might be due to invalid IL or missing references)
			//IL_0408: Unknown result type (might be due to invalid IL or missing references)
			//IL_0413: Unknown result type (might be due to invalid IL or missing references)
			//IL_0873: Unknown result type (might be due to invalid IL or missing references)
			//IL_0878: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ad4: Expected O, but got Unknown
			//IL_0acf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0abf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ac4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aca: Expected O, but got Unknown
			//IL_0785: Unknown result type (might be due to invalid IL or missing references)
			//IL_078a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0792: Unknown result type (might be due to invalid IL or missing references)
			//IL_079d: Unknown result type (might be due to invalid IL or missing references)
			//IL_07a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cd2: Expected O, but got Unknown
			//IL_0ccd: 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_0cc2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cc8: Expected O, but got Unknown
			//IL_0b8d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b92: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b9a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ba5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bb0: Unknown result type (might be due to invalid IL or missing references)
			//IL_04b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_04c1: Expected O, but got Unknown
			//IL_04bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_04a5: Unknown result type (might be due to invalid IL or missing references)
			//IL_04aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_04b0: Expected O, but got Unknown
			//IL_0989: Unknown result type (might be due to invalid IL or missing references)
			//IL_098e: 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_09a1: Unknown result type (might be due to invalid IL or missing references)
			//IL_09ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_084f: Expected O, but got Unknown
			//IL_084a: 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_083f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0845: Expected O, but got Unknown
			//IL_0b0c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b11: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b19: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b24: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b2f: Unknown result type (might be due to invalid IL or missing references)
			//IL_03b8: Expected O, but got Unknown
			//IL_03b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a3: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_03ae: Expected O, but got Unknown
			//IL_063f: Unknown result type (might be due to invalid IL or missing references)
			//IL_064b: Expected O, but got Unknown
			//IL_0646: Unknown result type (might be due to invalid IL or missing references)
			//IL_062f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0634: Unknown result type (might be due to invalid IL or missing references)
			//IL_063a: Expected O, but got Unknown
			//IL_0542: Expected O, but got Unknown
			//IL_053d: Unknown result type (might be due to invalid IL or missing references)
			//IL_052d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0532: Unknown result type (might be due to invalid IL or missing references)
			//IL_0538: Expected O, but got Unknown
			//IL_06cc: Expected O, but got Unknown
			//IL_06c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_06b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_06bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_06c2: Expected O, but got Unknown
			//IL_0439: Expected O, but got Unknown
			//IL_0434: Unknown result type (might be due to invalid IL or missing references)
			//IL_0424: Unknown result type (might be due to invalid IL or missing references)
			//IL_0429: Unknown result type (might be due to invalid IL or missing references)
			//IL_042f: Expected O, but got Unknown
			//IL_0887: Unknown result type (might be due to invalid IL or missing references)
			//IL_088c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0894: Unknown result type (might be due to invalid IL or missing references)
			//IL_089f: Unknown result type (might be due to invalid IL or missing references)
			//IL_08aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_07ce: Expected O, but got Unknown
			//IL_07c9: Unknown result type (might be due to invalid IL or missing references)
			//IL_07b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_07be: Unknown result type (might be due to invalid IL or missing references)
			//IL_07c4: Expected O, but got Unknown
			//IL_0bd6: Expected O, but got Unknown
			//IL_0bd1: 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_0bc6: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bcc: Expected O, but got Unknown
			//IL_09d2: Expected O, but got Unknown
			//IL_09cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_09bd: Unknown result type (might be due to invalid IL or missing references)
			//IL_09c2: Unknown result type (might be due to invalid IL or missing references)
			//IL_09c8: Expected O, but got Unknown
			//IL_0b55: Expected O, but got Unknown
			//IL_0b50: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b40: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b45: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b4b: Expected O, but got Unknown
			//IL_08d0: Expected O, but got Unknown
			//IL_08cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_08bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_08c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_08c6: Expected O, but got Unknown
			hat.AddComponent<NetworkIdentity>();
			SkinDef skinDef = Addressables.LoadAssetAsync<SkinDef>((object)RoR2_Base_Bandit2.skinBandit2AltColossus_asset).WaitForCompletion();
			SkinDef skinDef2 = Addressables.LoadAssetAsync<SkinDef>((object)RoR2_DLC2_Chef.skinChefAlt_asset).WaitForCompletion();
			foreach (string bodyName in bodyNames)
			{
				_ = Vector3.zero;
				switch (bodyName)
				{
				case "SeekerBody":
					if (new Vector3(seekerSize.Value, seekerSize.Value, seekerSize.Value) != Vector3.zero)
					{
						ModelPartInfo val35 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj18 = <>O.<0>__PlaceItSeeker;
						if (obj18 == null)
						{
							CodeAfterApplying val36 = PlaceItSeeker;
							<>O.<0>__PlaceItSeeker = val36;
							obj18 = (object)val36;
						}
						val35.codeAfterApplying = (CodeAfterApplying)obj18;
						new ModelPart(val35);
					}
					break;
				case "FalseSonBody":
					if (new Vector3(falseSonSize.Value, falseSonSize.Value, falseSonSize.Value) != Vector3.zero)
					{
						ModelPartInfo val23 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj12 = <>O.<1>__PlaceItFalseSon;
						if (obj12 == null)
						{
							CodeAfterApplying val24 = PlaceItFalseSon;
							<>O.<1>__PlaceItFalseSon = val24;
							obj12 = (object)val24;
						}
						val23.codeAfterApplying = (CodeAfterApplying)obj12;
						new ModelPart(val23);
					}
					break;
				case "ChefBody":
					if (new Vector3(chefSize.Value, chefSize.Value, chefSize.Value) != Vector3.zero)
					{
						ModelPartInfo val37 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj19 = <>O.<2>__PlaceItChef;
						if (obj19 == null)
						{
							CodeAfterApplying val38 = PlaceItChef;
							<>O.<2>__PlaceItChef = val38;
							obj19 = (object)val38;
						}
						val37.codeAfterApplying = (CodeAfterApplying)obj19;
						val37.skinDef = skinDef2;
						new ModelPart(val37);
					}
					break;
				case "ToolbotBody":
					if (new Vector3(multSize.Value, multSize.Value, multSize.Value) != Vector3.zero)
					{
						ModelPartInfo val19 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj10 = <>O.<3>__PlaceItMult;
						if (obj10 == null)
						{
							CodeAfterApplying val20 = PlaceItMult;
							<>O.<3>__PlaceItMult = val20;
							obj10 = (object)val20;
						}
						val19.codeAfterApplying = (CodeAfterApplying)obj10;
						new ModelPart(val19);
					}
					break;
				case "TreebotBody":
					if (new Vector3(rexSize.Value, rexSize.Value, rexSize.Value) != Vector3.zero)
					{
						ModelPartInfo val29 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "FlowerBase"
						};
						object obj15 = <>O.<4>__PlaceItRex;
						if (obj15 == null)
						{
							CodeAfterApplying val30 = PlaceItRex;
							<>O.<4>__PlaceItRex = val30;
							obj15 = (object)val30;
						}
						val29.codeAfterApplying = (CodeAfterApplying)obj15;
						new ModelPart(val29);
					}
					break;
				case "Bandit2Body":
					if (new Vector3(banditSize.Value, banditSize.Value, banditSize.Value) != Vector3.zero)
					{
						ModelPartInfo val5 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj3 = <>O.<5>__PlaceItBandit;
						if (obj3 == null)
						{
							CodeAfterApplying val6 = PlaceItBandit;
							<>O.<5>__PlaceItBandit = val6;
							obj3 = (object)val6;
						}
						val5.codeAfterApplying = (CodeAfterApplying)obj3;
						val5.skinDef = skinDef;
						new ModelPart(val5);
					}
					break;
				case "CaptainBody":
					if (new Vector3(captainSize.Value, captainSize.Value, captainSize.Value) != Vector3.zero)
					{
						ModelPartInfo val21 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj11 = <>O.<6>__PlaceItCaptain;
						if (obj11 == null)
						{
							CodeAfterApplying val22 = PlaceItCaptain;
							<>O.<6>__PlaceItCaptain = val22;
							obj11 = (object)val22;
						}
						val21.codeAfterApplying = (CodeAfterApplying)obj11;
						new ModelPart(val21);
					}
					break;
				case "CommandoBody":
					if (new Vector3(commandoSize.Value, commandoSize.Value, commandoSize.Value) != Vector3.zero)
					{
						ModelPartInfo val15 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj8 = <>O.<7>__PlaceItCommando;
						if (obj8 == null)
						{
							CodeAfterApplying val16 = PlaceItCommando;
							<>O.<7>__PlaceItCommando = val16;
							obj8 = (object)val16;
						}
						val15.codeAfterApplying = (CodeAfterApplying)obj8;
						new ModelPart(val15);
					}
					break;
				case "RailgunnerBody":
					if (new Vector3(railgunnerSize.Value, railgunnerSize.Value, railgunnerSize.Value) != Vector3.zero)
					{
						ModelPartInfo val31 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj16 = <>O.<8>__PlaceItRailgunner;
						if (obj16 == null)
						{
							CodeAfterApplying val32 = PlaceItRailgunner;
							<>O.<8>__PlaceItRailgunner = val32;
							obj16 = (object)val32;
						}
						val31.codeAfterApplying = (CodeAfterApplying)obj16;
						new ModelPart(val31);
					}
					break;
				case "MageBody":
					if (new Vector3(artiSize.Value, artiSize.Value, artiSize.Value) != Vector3.zero)
					{
						ModelPartInfo val11 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj6 = <>O.<9>__PlaceItMage;
						if (obj6 == null)
						{
							CodeAfterApplying val12 = PlaceItMage;
							<>O.<9>__PlaceItMage = val12;
							obj6 = (object)val12;
						}
						val11.codeAfterApplying = (CodeAfterApplying)obj6;
						new ModelPart(val11);
					}
					break;
				case "HuntressBody":
					if (new Vector3(huntressSize.Value, huntressSize.Value, huntressSize.Value) != Vector3.zero)
					{
						ModelPartInfo val3 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj2 = <>O.<10>__PlaceItHuntress;
						if (obj2 == null)
						{
							CodeAfterApplying val4 = PlaceItHuntress;
							<>O.<10>__PlaceItHuntress = val4;
							obj2 = (object)val4;
						}
						val3.codeAfterApplying = (CodeAfterApplying)obj2;
						new ModelPart(val3);
					}
					break;
				case "CrocoBody":
					if (new Vector3(acridSize.Value, acridSize.Value, acridSize.Value) != Vector3.zero)
					{
						ModelPartInfo val27 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj14 = <>O.<11>__PlaceItCroco;
						if (obj14 == null)
						{
							CodeAfterApplying val28 = PlaceItCroco;
							<>O.<11>__PlaceItCroco = val28;
							obj14 = (object)val28;
						}
						val27.codeAfterApplying = (CodeAfterApplying)obj14;
						new ModelPart(val27);
					}
					break;
				case "EngiBody":
					if (new Vector3(engiSize.Value, engiSize.Value, engiSize.Value) != Vector3.zero)
					{
						ModelPartInfo val13 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Chest"
						};
						object obj7 = <>O.<12>__PlaceItEngi;
						if (obj7 == null)
						{
							CodeAfterApplying val14 = PlaceItEngi;
							<>O.<12>__PlaceItEngi = val14;
							obj7 = (object)val14;
						}
						val13.codeAfterApplying = (CodeAfterApplying)obj7;
						new ModelPart(val13);
					}
					break;
				case "EngiWalkerTurretBody":
					if (new Vector3(engiWalkerTurretSize.Value, engiWalkerTurretSize.Value, engiWalkerTurretSize.Value) != Vector3.zero)
					{
						ModelPartInfo val7 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj4 = <>O.<13>__PlaceItEngiWalker;
						if (obj4 == null)
						{
							CodeAfterApplying val8 = PlaceItEngiWalker;
							<>O.<13>__PlaceItEngiWalker = val8;
							obj4 = (object)val8;
						}
						val7.codeAfterApplying = (CodeAfterApplying)obj4;
						new ModelPart(val7);
					}
					break;
				case "EngiTurretBody":
					if (new Vector3(engiTurretSize.Value, engiTurretSize.Value, engiTurretSize.Value) != Vector3.zero)
					{
						ModelPartInfo val33 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj17 = <>O.<14>__PlaceItEngiTurret;
						if (obj17 == null)
						{
							CodeAfterApplying val34 = PlaceItEngiTurret;
							<>O.<14>__PlaceItEngiTurret = val34;
							obj17 = (object)val34;
						}
						val33.codeAfterApplying = (CodeAfterApplying)obj17;
						new ModelPart(val33);
					}
					break;
				case "MercBody":
					if (new Vector3(mercSize.Value, mercSize.Value, mercSize.Value) != Vector3.zero)
					{
						ModelPartInfo val25 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj13 = <>O.<15>__PlaceItMerc;
						if (obj13 == null)
						{
							CodeAfterApplying val26 = PlaceItMerc;
							<>O.<15>__PlaceItMerc = val26;
							obj13 = (object)val26;
						}
						val25.codeAfterApplying = (CodeAfterApplying)obj13;
						new ModelPart(val25);
					}
					break;
				case "VoidSurvivorBody":
					if (new Vector3(fiendSize.Value, fiendSize.Value, fiendSize.Value) != Vector3.zero)
					{
						ModelPartInfo val17 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj9 = <>O.<16>__PlaceItVoid;
						if (obj9 == null)
						{
							CodeAfterApplying val18 = PlaceItVoid;
							<>O.<16>__PlaceItVoid = val18;
							obj9 = (object)val18;
						}
						val17.codeAfterApplying = (CodeAfterApplying)obj9;
						new ModelPart(val17);
					}
					break;
				case "LoaderBody":
					if (new Vector3(loaderSize.Value, loaderSize.Value, loaderSize.Value) != Vector3.zero)
					{
						ModelPartInfo val9 = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj5 = <>O.<17>__PlaceItLoader;
						if (obj5 == null)
						{
							CodeAfterApplying val10 = PlaceItLoader;
							<>O.<17>__PlaceItLoader = val10;
							obj5 = (object)val10;
						}
						val9.codeAfterApplying = (CodeAfterApplying)obj5;
						new ModelPart(val9);
					}
					break;
				case "VoidRaidCrabBody":
					if (new Vector3(voidlingSize.Value, voidlingSize.Value, voidlingSize.Value) != Vector3.zero)
					{
						ModelPartInfo val = new ModelPartInfo
						{
							bodyName = bodyName,
							gameObject = hat,
							inputString = "Head"
						};
						object obj = <>O.<18>__PlaceItVoidling;
						if (obj == null)
						{
							CodeAfterApplying val2 = PlaceItVoidling;
							<>O.<18>__PlaceItVoidling = val2;
							obj = (object)val2;
						}
						val.codeAfterApplying = (CodeAfterApplying)obj;
						new ModelPart(val);
					}
					break;
				}
			}
		}

		private static void PlaceItVoidling(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 17f, -12f);
			modelObject.transform.localScale = new Vector3(voidlingSize.Value, voidlingSize.Value, voidlingSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(10f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = voidlingHatMat;
		}

		private static void PlaceItMult(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 1.5f, 1.7f);
			modelObject.transform.localScale = new Vector3(multSize.Value, multSize.Value, multSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(315f, 180f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItChef(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_003a: 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_0087: Unknown result type (might be due to invalid IL or missing references)
			Transform val = ((Component)characterModel).transform.Find("meshChefPizzaCutter");
			if (Object.op_Implicit((Object)(object)val))
			{
				((Component)val).gameObject.SetActive(false);
			}
			modelObject.transform.localPosition = new Vector3(-0.35f, 0f, 0f);
			modelObject.transform.localScale = new Vector3(chefSize.Value, chefSize.Value, chefSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(60f, 90f, 180f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItFalseSon(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.34f, -0.05f);
			modelObject.transform.localScale = new Vector3(falseSonSize.Value, falseSonSize.Value, falseSonSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(10f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItSeeker(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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)
			modelObject.transform.localPosition = new Vector3(0f, 0.2f, 0f);
			modelObject.transform.localScale = new Vector3(seekerSize.Value, seekerSize.Value, seekerSize.Value);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = banditHatMat;
		}

		private static void PlaceItRex(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 2f, 0f);
			modelObject.transform.localScale = new Vector3(rexSize.Value, rexSize.Value, rexSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(10f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItBandit(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.15f, 0f);
			modelObject.transform.localScale = new Vector3(banditSize.Value, banditSize.Value, banditSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(10f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = banditHatMat;
		}

		private static void PlaceItCaptain(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_006e: 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_00bb: Unknown result type (might be due to invalid IL or missing references)
			Transform val = ((Component)characterModel).transform.Find("CaptainArmature");
			if (Object.op_Implicit((Object)(object)val))
			{
				Transform child = val.GetChild(0).GetChild(0).GetChild(2)
					.GetChild(0)
					.GetChild(2)
					.GetChild(0)
					.GetChild(4);
				if (Object.op_Implicit((Object)(object)child))
				{
					((Component)child).gameObject.SetActive(false);
				}
			}
			modelObject.transform.localPosition = new Vector3(0f, 0.15f, 0f);
			modelObject.transform.localScale = new Vector3(captainSize.Value, captainSize.Value, captainSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItCommando(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.3f, 0f);
			modelObject.transform.localScale = new Vector3(commandoSize.Value, commandoSize.Value, commandoSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItRailgunner(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.18f, -0.025f);
			modelObject.transform.localScale = new Vector3(railgunnerSize.Value, railgunnerSize.Value, railgunnerSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(30f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItMage(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.15f, -0.1f);
			modelObject.transform.localScale = new Vector3(artiSize.Value, artiSize.Value, artiSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItHuntress(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.3f, -0.05f);
			modelObject.transform.localScale = new Vector3(huntressSize.Value, huntressSize.Value, huntressSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItCroco(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0f, 1.6f);
			modelObject.transform.localScale = new Vector3(acridSize.Value, acridSize.Value, acridSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(55f, 180f, 180f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItEngi(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.65f, 0f);
			modelObject.transform.localScale = new Vector3(engiSize.Value, engiSize.Value, engiSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItEngiWalker(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 1f, 0f);
			modelObject.transform.localScale = new Vector3(engiWalkerTurretSize.Value, engiWalkerTurretSize.Value, engiWalkerTurretSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItEngiTurret(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.3f, 0f);
			modelObject.transform.localScale = new Vector3(engiTurretSize.Value, engiTurretSize.Value, engiTurretSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItMerc(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.2f, 0f);
			modelObject.transform.localScale = new Vector3(mercSize.Value, mercSize.Value, mercSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItVoid(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.1f, 0f);
			modelObject.transform.localScale = new Vector3(fiendSize.Value, fiendSize.Value, fiendSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}

		private static void PlaceItLoader(GameObject modelObject, ChildLocator childLocator, CharacterModel characterModel, ActivePartsComponent activePartsComponent)
		{
			//IL_0015: 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_0062: Unknown result type (might be due to invalid IL or missing references)
			modelObject.transform.localPosition = new Vector3(0f, 0.2f, 0f);
			modelObject.transform.localScale = new Vector3(loaderSize.Value, loaderSize.Value, loaderSize.Value);
			modelObject.transform.localEulerAngles = new Vector3(15f, 0f, 0f);
			((Renderer)((Component)modelObject.transform.GetChild(0)).GetComponent<MeshRenderer>()).material = hatMat;
		}
	}
}