using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Bootstrap;
using BepInEx.Configuration;
using EntityStates;
using EntityStates.Commando;
using EntityStates.Commando.CommandoWeapon;
using EntityStates.Croco;
using EntityStates.FalseSon;
using EntityStates.GolemMonster;
using EntityStates.ImpBossMonster;
using EntityStates.ImpMonster;
using EntityStates.LemurianBruiserMonster;
using EntityStates.LemurianMonster;
using EntityStates.LunarExploderMonster;
using EntityStates.TitanMonster;
using EntityStates.Toolbot;
using EntityStates.VoidRaidCrab;
using HG.BlendableTypes;
using KinematicCharacterController;
using On.RoR2;
using R2API;
using R2API.Utils;
using RiskOfOptions;
using RiskOfOptions.OptionConfigs;
using RiskOfOptions.Options;
using RoR2;
using RoR2.ContentManagement;
using RoR2.Navigation;
using RoR2.Projectile;
using RoR2.Skills;
using RoR2.UI;
using RoR2BepInExPack.GameAssetPaths;
using ThreeEyedGames;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.Networking;
using UnityEngine.Rendering;
using Zio.FileSystems;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyCompany("Lemurian")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("Lemurian")]
[assembly: AssemblyTitle("Lemurian")]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace Lemurian;
internal static class Files
{
public static PluginInfo PluginInfo;
internal static string assemblyDir => Path.GetDirectoryName(PluginInfo.Location);
internal static void Init(PluginInfo info)
{
PluginInfo = info;
}
internal static string GetPathToFile(string folderName, string fileName)
{
return Path.Combine(assemblyDir, folderName, fileName);
}
}
public static class Horns
{
public class ApplyLemurianHorns : MonoBehaviour
{
private CharacterModel model;
private ChildLocator childLocator;
private DisplayRuleGroup Horns;
public void OnEnable()
{
//IL_003c: 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)
//IL_006f: Unknown result type (might be due to invalid IL or missing references)
//IL_0074: 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)
//IL_00a7: Unknown result type (might be due to invalid IL or missing references)
//IL_00d5: Unknown result type (might be due to invalid IL or missing references)
//IL_00da: Unknown result type (might be due to invalid IL or missing references)
//IL_010a: Unknown result type (might be due to invalid IL or missing references)
//IL_010f: Unknown result type (might be due to invalid IL or missing references)
//IL_013f: Unknown result type (might be due to invalid IL or missing references)
//IL_0144: Unknown result type (might be due to invalid IL or missing references)
//IL_0174: Unknown result type (might be due to invalid IL or missing references)
//IL_0179: 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_01ae: Unknown result type (might be due to invalid IL or missing references)
//IL_01dc: Unknown result type (might be due to invalid IL or missing references)
//IL_01e1: Unknown result type (might be due to invalid IL or missing references)
//IL_01ea: Unknown result type (might be due to invalid IL or missing references)
//IL_01ef: Unknown result type (might be due to invalid IL or missing references)
//IL_021c: Unknown result type (might be due to invalid IL or missing references)
//IL_0221: Unknown result type (might be due to invalid IL or missing references)
model = ((Component)this).GetComponentInChildren<CharacterModel>();
childLocator = ((Component)this).GetComponentInChildren<ChildLocator>();
if (Loader.Hornchoser.Value == Loader.HornChoser.Fire)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixRed);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Ice)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixWhite);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Thunder)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixBlue);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Haunted)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixHaunted);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Poison)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixPoison);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Gold)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.EliteAurelioniteEquipment);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Lunar)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixLunar);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Void)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.EliteVoidEquipment);
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Antler)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Addressables.LoadAssetAsync<EquipmentDef>((object)"RoR2/DLC1/EliteEarth/EliteEarthEquipment.asset").WaitForCompletion());
}
else if (Loader.Hornchoser.Value == Loader.HornChoser.Bead)
{
Horns = model.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.EliteBeadEquipment);
}
Debug.LogError((object)"DoingAddhorns");
if (Loader.EliteHorns.Value)
{
AddHorns();
}
}
public void AddHorns()
{
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_001b: Unknown result type (might be due to invalid IL or missing references)
//IL_013d: Unknown result type (might be due to invalid IL or missing references)
//IL_0034: Unknown result type (might be due to invalid IL or missing references)
//IL_016a: Unknown result type (might be due to invalid IL or missing references)
//IL_017d: Unknown result type (might be due to invalid IL or missing references)
//IL_0189: Unknown result type (might be due to invalid IL or missing references)
//IL_018e: Unknown result type (might be due to invalid IL or missing references)
//IL_019a: Unknown result type (might be due to invalid IL or missing references)
//IL_019f: Unknown result type (might be due to invalid IL or missing references)
//IL_01a4: 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_00b6: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Unknown result type (might be due to invalid IL or missing references)
//IL_0071: Unknown result type (might be due to invalid IL or missing references)
//IL_007d: Unknown result type (might be due to invalid IL or missing references)
//IL_0082: Unknown result type (might be due to invalid IL or missing references)
//IL_008e: Unknown result type (might be due to invalid IL or missing references)
//IL_0093: Unknown result type (might be due to invalid IL or missing references)
//IL_0098: 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_00df: Unknown result type (might be due to invalid IL or missing references)
//IL_00f1: Unknown result type (might be due to invalid IL or missing references)
//IL_00fd: 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_010e: Unknown result type (might be due to invalid IL or missing references)
//IL_0113: Unknown result type (might be due to invalid IL or missing references)
//IL_0118: Unknown result type (might be due to invalid IL or missing references)
//IL_0124: Unknown result type (might be due to invalid IL or missing references)
if (!Object.op_Implicit((Object)(object)model))
{
return;
}
DisplayRuleGroup horns = Horns;
if (horns.rules.Length > 1)
{
Transform val = childLocator.FindChild(horns.rules[0].childName);
if (Object.op_Implicit((Object)(object)val))
{
Apply(model, horns.rules[0].followerPrefab, val, horns.rules[0].localPos, Quaternion.Euler(horns.rules[0].localAngles), horns.rules[0].localScale);
}
if (Object.op_Implicit((Object)(object)childLocator.FindChild(horns.rules[1].childName)))
{
Apply(model, horns.rules[1].followerPrefab, val, horns.rules[1].localPos, Quaternion.Euler(horns.rules[1].localAngles), horns.rules[1].localScale);
}
}
else
{
Transform val2 = childLocator.FindChild(horns.rules[0].childName);
if (Object.op_Implicit((Object)(object)val2))
{
Apply(model, horns.rules[0].followerPrefab, val2, horns.rules[0].localPos, Quaternion.Euler(horns.rules[0].localAngles), horns.rules[0].localScale);
}
}
}
public void Apply(CharacterModel characterModel, GameObject prefab, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
{
//IL_0014: Unknown result type (might be due to invalid IL or missing references)
//IL_0022: Unknown result type (might be due to invalid IL or missing references)
//IL_0030: Unknown result type (might be due to invalid IL or missing references)
GameObject val = Object.Instantiate<GameObject>(prefab.gameObject, parent);
val.transform.localPosition = localPosition;
val.transform.localRotation = localRotation;
val.transform.localScale = localScale;
LimbMatcher component = val.GetComponent<LimbMatcher>();
if (Object.op_Implicit((Object)(object)component) && Object.op_Implicit((Object)(object)childLocator))
{
component.SetChildLocator(childLocator);
}
}
}
public class ApplyElderHorns : MonoBehaviour
{
private CharacterModel model2;
private ChildLocator childLocator2;
public void Start()
{
model2 = ((Component)this).GetComponentInChildren<CharacterModel>();
childLocator2 = ((Component)this).GetComponentInChildren<ChildLocator>();
AddHorns2();
}
public void AddHorns2()
{
//IL_0024: Unknown result type (might be due to invalid IL or missing references)
//IL_0029: Unknown result type (might be due to invalid IL or missing references)
//IL_002a: 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_00c5: Unknown result type (might be due to invalid IL or missing references)
//IL_006e: Unknown result type (might be due to invalid IL or missing references)
//IL_0080: Unknown result type (might be due to invalid IL or missing references)
//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)
//IL_009d: 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)
//IL_00a7: Unknown result type (might be due to invalid IL or missing references)
//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
//IL_00ee: 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_010c: Unknown result type (might be due to invalid IL or missing references)
//IL_0111: Unknown result type (might be due to invalid IL or missing references)
//IL_011d: Unknown result type (might be due to invalid IL or missing references)
//IL_0122: Unknown result type (might be due to invalid IL or missing references)
//IL_0127: 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)
if (!Object.op_Implicit((Object)(object)model2))
{
return;
}
DisplayRuleGroup val = model2.itemDisplayRuleSet.FindDisplayRuleGroup((Object)(object)Equipment.AffixRed);
if (val.rules.Length > 1)
{
Transform val2 = childLocator2.FindChild(val.rules[0].childName);
if (Object.op_Implicit((Object)(object)val2))
{
Apply2(model2, val.rules[0].followerPrefab, val2, val.rules[0].localPos, Quaternion.Euler(val.rules[0].localAngles), val.rules[0].localScale);
}
if (Object.op_Implicit((Object)(object)childLocator2.FindChild(val.rules[1].childName)))
{
Apply2(model2, val.rules[1].followerPrefab, val2, val.rules[1].localPos, Quaternion.Euler(val.rules[1].localAngles), val.rules[1].localScale);
}
}
}
public void Apply2(CharacterModel characterModel, GameObject prefab, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
{
//IL_0014: Unknown result type (might be due to invalid IL or missing references)
//IL_0022: Unknown result type (might be due to invalid IL or missing references)
//IL_0030: Unknown result type (might be due to invalid IL or missing references)
GameObject val = Object.Instantiate<GameObject>(prefab.gameObject, parent);
val.transform.localPosition = localPosition;
val.transform.localRotation = localRotation;
val.transform.localScale = localScale;
LimbMatcher component = val.GetComponent<LimbMatcher>();
if (Object.op_Implicit((Object)(object)component) && Object.op_Implicit((Object)(object)childLocator2))
{
component.SetChildLocator(childLocator2);
}
}
}
}
public static class LemPrefabs
{
public static GameObject LemChprefab;
public static GameObject LemLaserPrimCh;
public static GameObject LemSpecialCh;
public static GameObject LemPodprefab;
public static GameObject ImpChPrefab;
public static GameObject LunarChPrefab;
public static GameObject LemFireCharge;
public static GameObject LemPrim2Explo;
public static GameObject LemJumpUtil2;
public static GameObject LemExploUtil1;
public static GameObject LemJumpUtil1;
public static GameObject FlameEffect;
public static GameObject LemExploCharge;
public static GameObject LemExploSpecial2Charge;
public static GameObject LemExploSpecial2Magma;
public static GameObject chargeFireBall;
public static GameObject ImpSecLaser;
public static GameObject ImpSpecialBlink;
public static GameObject ImpSpecialSlam;
public static GameObject NullifierExlpo;
public static GameObject LunGolDeath;
public static GameObject LunGolShieldCharge;
public static Material FireBuffMat;
public static Material LunarSphereMat;
public static GameObject SwitchEffect;
public static GameObject LemDicator;
public static GameObject LunDicator;
internal static void PrefabSetup()
{
//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_001d: Unknown result type (might be due to invalid IL or missing references)
//IL_0022: Unknown result type (might be due to invalid IL or missing references)
//IL_0034: 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_004b: Unknown result type (might be due to invalid IL or missing references)
//IL_0050: Unknown result type (might be due to invalid IL or missing references)
//IL_0062: Unknown result type (might be due to invalid IL or missing references)
//IL_0067: Unknown result type (might be due to invalid IL or missing references)
//IL_0079: Unknown result type (might be due to invalid IL or missing references)
//IL_007e: Unknown result type (might be due to invalid IL or missing references)
//IL_009b: Unknown result type (might be due to invalid IL or missing references)
//IL_00a0: Unknown result type (might be due to invalid IL or missing references)
//IL_00bd: Unknown result type (might be due to invalid IL or missing references)
//IL_00c2: 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_0107: Unknown result type (might be due to invalid IL or missing references)
//IL_013d: 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_016b: Unknown result type (might be due to invalid IL or missing references)
//IL_0196: Unknown result type (might be due to invalid IL or missing references)
//IL_019b: Unknown result type (might be due to invalid IL or missing references)
//IL_01c7: Unknown result type (might be due to invalid IL or missing references)
//IL_01cc: Unknown result type (might be due to invalid IL or missing references)
//IL_01f8: 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_021b: Unknown result type (might be due to invalid IL or missing references)
//IL_0220: Unknown result type (might be due to invalid IL or missing references)
//IL_023d: Unknown result type (might be due to invalid IL or missing references)
//IL_0242: Unknown result type (might be due to invalid IL or missing references)
//IL_025f: Unknown result type (might be due to invalid IL or missing references)
//IL_0264: Unknown result type (might be due to invalid IL or missing references)
//IL_0281: Unknown result type (might be due to invalid IL or missing references)
//IL_0286: Unknown result type (might be due to invalid IL or missing references)
//IL_02a3: 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_02d0: Unknown result type (might be due to invalid IL or missing references)
//IL_02d5: Unknown result type (might be due to invalid IL or missing references)
//IL_02f2: Unknown result type (might be due to invalid IL or missing references)
//IL_02f7: Unknown result type (might be due to invalid IL or missing references)
//IL_0314: Unknown result type (might be due to invalid IL or missing references)
//IL_0319: Unknown result type (might be due to invalid IL or missing references)
//IL_0336: Unknown result type (might be due to invalid IL or missing references)
//IL_033b: Unknown result type (might be due to invalid IL or missing references)
//IL_0358: Unknown result type (might be due to invalid IL or missing references)
//IL_035d: 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_037f: Unknown result type (might be due to invalid IL or missing references)
//IL_039c: Unknown result type (might be due to invalid IL or missing references)
//IL_03a1: Unknown result type (might be due to invalid IL or missing references)
//IL_03be: Unknown result type (might be due to invalid IL or missing references)
//IL_03c3: Unknown result type (might be due to invalid IL or missing references)
//IL_03e0: Unknown result type (might be due to invalid IL or missing references)
//IL_03e5: Unknown result type (might be due to invalid IL or missing references)
//IL_03f7: Unknown result type (might be due to invalid IL or missing references)
//IL_03fc: Unknown result type (might be due to invalid IL or missing references)
//IL_040e: 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_0430: Unknown result type (might be due to invalid IL or missing references)
//IL_0435: Unknown result type (might be due to invalid IL or missing references)
//IL_0472: Unknown result type (might be due to invalid IL or missing references)
//IL_0477: Unknown result type (might be due to invalid IL or missing references)
//IL_04b9: Unknown result type (might be due to invalid IL or missing references)
//IL_04c3: Expected O, but got Unknown
//IL_04ce: Unknown result type (might be due to invalid IL or missing references)
//IL_04d8: Expected O, but got Unknown
//IL_04e3: Unknown result type (might be due to invalid IL or missing references)
//IL_04ed: Expected O, but got Unknown
//IL_04f8: Unknown result type (might be due to invalid IL or missing references)
//IL_0502: Expected O, but got Unknown
//IL_050d: Unknown result type (might be due to invalid IL or missing references)
//IL_0517: Expected O, but got Unknown
//IL_0522: Unknown result type (might be due to invalid IL or missing references)
//IL_052c: Expected O, but got Unknown
//IL_0537: Unknown result type (might be due to invalid IL or missing references)
//IL_0541: Expected O, but got Unknown
//IL_054c: Unknown result type (might be due to invalid IL or missing references)
//IL_0556: Expected O, but got Unknown
//IL_0561: Unknown result type (might be due to invalid IL or missing references)
//IL_056b: Expected O, but got Unknown
//IL_0576: Unknown result type (might be due to invalid IL or missing references)
//IL_0580: Expected O, but got Unknown
//IL_058b: Unknown result type (might be due to invalid IL or missing references)
//IL_0595: Expected O, but got Unknown
//IL_05a0: Unknown result type (might be due to invalid IL or missing references)
//IL_05aa: Expected O, but got Unknown
//IL_05b5: Unknown result type (might be due to invalid IL or missing references)
//IL_05bf: Expected O, but got Unknown
//IL_05ca: Unknown result type (might be due to invalid IL or missing references)
//IL_05d4: Expected O, but got Unknown
//IL_05df: Unknown result type (might be due to invalid IL or missing references)
//IL_05e9: Expected O, but got Unknown
//IL_05f4: Unknown result type (might be due to invalid IL or missing references)
//IL_05fe: Expected O, but got Unknown
//IL_0609: Unknown result type (might be due to invalid IL or missing references)
//IL_0613: Expected O, but got Unknown
//IL_061e: Unknown result type (might be due to invalid IL or missing references)
//IL_0628: Expected O, but got Unknown
LemChprefab = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Croco/CrocoCrosshair.prefab").WaitForCompletion();
LemLaserPrimCh = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/DLC2/Seeker/SeekerCrosshair.prefab").WaitForCompletion();
LemSpecialCh = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Junk/Bandit/BanditCrosshair.prefab").WaitForCompletion();
ImpChPrefab = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/UI/SimpleDotCrosshair.prefab").WaitForCompletion();
LunarChPrefab = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/UI/SimpleDotCrosshair.prefab").WaitForCompletion();
LemFireCharge = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Lemurian/LemurianChargeFire.prefab").WaitForCompletion();
CreateEffect(LemFireCharge);
LemExploCharge = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/DLC2/Child/ChargeChildTrackingSparkBall.prefab").WaitForCompletion();
CreateEffect(LemExploCharge);
LemPodprefab = PrefabAPI.InstantiateClone(Addressables.LoadAssetAsync<GameObject>((object)"RoR2/DLC1/VoidSurvivor/VoidSurvivorBody.prefab").WaitForCompletion().GetComponent<CharacterBody>()
.preferredPodPrefab, "LemPodPrefab", true);
((Renderer)((Component)LemPodprefab.transform.Find("Base/mdlVoidSurvivorPod/mdlVoidSurvivorPod")).GetComponentInChildren<SkinnedMeshRenderer>()).sharedMaterial = Addressables.LoadAssetAsync<Material>((object)"RoR2/Base/FireballsOnHit/matFireballsOnHit.mat").WaitForCompletion();
((Component)LemPodprefab.transform.Find("Base/mdlVoidSurvivorPod")).transform.localScale = new Vector3(2f, 2f, 2f);
((Component)LemPodprefab.transform.Find("Base/mdlVoidSurvivorPod/VoidSurvivorPodArmature/ROOT/Body/Decal (1)")).GetComponentInChildren<Decal>().Material = Addressables.LoadAssetAsync<Material>((object)"RoR2/DLC1/Molotov/matMolotovDecal.mat").WaitForCompletion();
((Renderer)((Component)LemPodprefab.transform.Find("Base/mdlVoidSurvivorPod/VoidSurvivorPodArmature/ROOT/Body/Flames (1)")).GetComponentInChildren<ParticleSystemRenderer>()).sharedMaterial = Addressables.LoadAssetAsync<Material>((object)"RoR2/Base/Common/VFX/mageMageFireStarburst.mat").WaitForCompletion();
((Renderer)((Component)LemPodprefab.transform.Find("Base/mdlVoidSurvivorPod/VoidSurvivorPodArmature/ROOT/Body/FallingFX")).GetComponentInChildren<ParticleSystemRenderer>()).sharedMaterial = Addressables.LoadAssetAsync<Material>((object)"RoR2/Base/Common/VFX/mageMageFireStarburst.mat").WaitForCompletion();
((Component)LemPodprefab.transform.Find("Base/mdlVoidSurvivorPod/VoidSurvivorPodArmature/ROOT/Body/FallingFX")).GetComponentInChildren<ParticleSystemRenderer>().trailMaterial = Addressables.LoadAssetAsync<Material>((object)"RoR2/Junk/Bandit/matThermiteFlame.mat").WaitForCompletion();
CreateEffect(LemPodprefab);
LemPrim2Explo = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/LemurianBruiser/OmniExplosionVFXLemurianBruiserFireballImpact.prefab").WaitForCompletion();
CreateEffect(LemPrim2Explo);
LemJumpUtil1 = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Junk/ArchWisp/OmniExplosionVFXArchWispCannonImpact.prefab").WaitForCompletion();
CreateEffect(LemJumpUtil1);
LemJumpUtil2 = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/LemurianBruiser/OmniExplosionVFXLemurianBruiserFireballImpact.prefab").WaitForCompletion();
CreateEffect(LemJumpUtil2);
LemExploUtil1 = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/FusionCellDestructible/FusionCellExplosion.prefab").WaitForCompletion();
CreateEffect(LemExploUtil1);
FlameEffect = PrefabAPI.InstantiateClone(Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Drones/DroneFlamethrowerEffect.prefab").WaitForCompletion(), "Prefabs/SpecialFlame", true);
CreateEffect(FlameEffect);
LemExploSpecial2Charge = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/skymeadow/ArtifactworldPortalPrespawnEffect.prefab").WaitForCompletion();
CreateEffect(LemExploSpecial2Charge);
LemExploSpecial2Magma = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/MagmaWorm/MagmaOrbExplosion.prefab").WaitForCompletion();
CreateEffect(LemExploSpecial2Magma);
ImpSecLaser = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Golem/TracerGolem.prefab").WaitForCompletion();
CreateEffect(ImpSecLaser);
ImpSpecialBlink = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/ImpBoss/ImpBossBlink.prefab").WaitForCompletion();
CreateEffect(ImpSpecialBlink);
ImpSpecialSlam = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/ImpBoss/ImpBossGroundSlam.prefab").WaitForCompletion();
CreateEffect(ImpSpecialSlam);
LunGolShieldCharge = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/LunarGolem/LunarGolemShieldCharge.prefab").WaitForCompletion();
CreateEffect(LunGolShieldCharge);
NullifierExlpo = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Nullifier/NullifierExplosion.prefab").WaitForCompletion();
CreateEffect(NullifierExlpo);
LunGolDeath = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/LunarGolem/LunarGolemDeath.prefab").WaitForCompletion();
CreateEffect(LunGolDeath);
FireBuffMat = Addressables.LoadAssetAsync<Material>((object)"RoR2/Base/Common/matOnFire.mat").WaitForCompletion();
LunarSphereMat = Addressables.LoadAssetAsync<Material>((object)"RoR2/Base/BurnNearby/matOnHelfire.mat").WaitForCompletion();
SwitchEffect = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/DLC2/Items/MeteorAttackOnHighDamage/RunicMeteorStrikeImpact.prefab").WaitForCompletion();
CreateEffect(SwitchEffect);
LemDicator = PrefabAPI.InstantiateClone(Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Huntress/HuntressArrowRainIndicator.prefab").WaitForCompletion(), "Prefabs/LemDicator", true);
((Renderer)LemDicator.GetComponentInChildren<MeshRenderer>()).sharedMaterial = FireBuffMat;
CreateEffect(LemDicator);
LunDicator = PrefabAPI.InstantiateClone(Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Huntress/HuntressArrowRainIndicator.prefab").WaitForCompletion(), "Prefabs/LunDicator", true);
((Renderer)LunDicator.GetComponentInChildren<MeshRenderer>()).sharedMaterial = LunarSphereMat;
CreateEffect(LunDicator);
Loader.effectPrefabs.Add(new EffectDef(LemFireCharge));
Loader.effectPrefabs.Add(new EffectDef(LemExploCharge));
Loader.effectPrefabs.Add(new EffectDef(LemPodprefab));
Loader.effectPrefabs.Add(new EffectDef(LemPrim2Explo));
Loader.effectPrefabs.Add(new EffectDef(LemJumpUtil1));
Loader.effectPrefabs.Add(new EffectDef(LemJumpUtil2));
Loader.effectPrefabs.Add(new EffectDef(LemExploUtil1));
Loader.effectPrefabs.Add(new EffectDef(FlameEffect));
Loader.effectPrefabs.Add(new EffectDef(LemExploSpecial2Charge));
Loader.effectPrefabs.Add(new EffectDef(ImpSecLaser));
Loader.effectPrefabs.Add(new EffectDef(ImpSpecialBlink));
Loader.effectPrefabs.Add(new EffectDef(ImpSpecialSlam));
Loader.effectPrefabs.Add(new EffectDef(LunGolShieldCharge));
Loader.effectPrefabs.Add(new EffectDef(NullifierExlpo));
Loader.effectPrefabs.Add(new EffectDef(LunGolDeath));
Loader.effectPrefabs.Add(new EffectDef(LemDicator));
Loader.effectPrefabs.Add(new EffectDef(SwitchEffect));
Loader.effectPrefabs.Add(new EffectDef(LunDicator));
}
public static void CreateEffect(GameObject effectPrfab)
{
if (!Object.op_Implicit((Object)(object)effectPrfab.GetComponent<EffectComponent>()))
{
effectPrfab.AddComponent<EffectComponent>();
}
if (!Object.op_Implicit((Object)(object)effectPrfab.GetComponent<VFXAttributes>()))
{
effectPrfab.AddComponent<VFXAttributes>();
}
if (!Object.op_Implicit((Object)(object)effectPrfab.GetComponent<NetworkIdentity>()))
{
effectPrfab.AddComponent<NetworkIdentity>();
}
}
}
public static class Tokens
{
public static SubFileSystem fileSystem;
internal static string languageRoot => Path.Combine(assemblyDir, "language");
internal static string assemblyDir => Path.GetDirectoryName(Files.PluginInfo.Location);
public static void RegisterLanguageTokens()
{
//IL_0008: Unknown result type (might be due to invalid IL or missing references)
//IL_0012: Expected O, but got Unknown
Language.SetFolders += new hook_SetFolders(fixme);
}
private static void fixme(orig_SetFolders orig, Language self, IEnumerable<string> newFolders)
{
if (Directory.Exists(languageRoot))
{
IEnumerable<string> second = Directory.EnumerateDirectories(Path.Combine(languageRoot), self.name);
orig.Invoke(self, newFolders.Union(second));
}
else
{
orig.Invoke(self, newFolders);
}
}
}
public static class ImpSkinSetup
{
public static void BuildTheFuckingSkins()
{
//IL_0011: Unknown result type (might be due to invalid IL or missing references)
//IL_0016: Unknown result type (might be due to invalid IL or missing references)
//IL_0025: Unknown result type (might be due to invalid IL or missing references)
//IL_002a: Unknown result type (might be due to invalid IL or missing references)
//IL_006a: Unknown result type (might be due to invalid IL or missing references)
//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_0095: 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)
//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
//IL_011a: Unknown result type (might be due to invalid IL or missing references)
//IL_012e: Unknown result type (might be due to invalid IL or missing references)
//IL_0142: Unknown result type (might be due to invalid IL or missing references)
//IL_0156: Unknown result type (might be due to invalid IL or missing references)
//IL_01da: Unknown result type (might be due to invalid IL or missing references)
//IL_01ef: Unknown result type (might be due to invalid IL or missing references)
//IL_01f4: Unknown result type (might be due to invalid IL or missing references)
//IL_0205: Unknown result type (might be due to invalid IL or missing references)
//IL_0212: Unknown result type (might be due to invalid IL or missing references)
//IL_0214: Unknown result type (might be due to invalid IL or missing references)
//IL_023d: Unknown result type (might be due to invalid IL or missing references)
//IL_0242: Unknown result type (might be due to invalid IL or missing references)
//IL_02be: Unknown result type (might be due to invalid IL or missing references)
//IL_02d3: Unknown result type (might be due to invalid IL or missing references)
//IL_02d8: Unknown result type (might be due to invalid IL or missing references)
//IL_02e9: Unknown result type (might be due to invalid IL or missing references)
//IL_02f6: 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_032b: Unknown result type (might be due to invalid IL or missing references)
//IL_033f: Unknown result type (might be due to invalid IL or missing references)
//IL_0353: Unknown result type (might be due to invalid IL or missing references)
//IL_0367: Unknown result type (might be due to invalid IL or missing references)
//IL_03d3: Unknown result type (might be due to invalid IL or missing references)
//IL_03e8: Unknown result type (might be due to invalid IL or missing references)
//IL_03ed: Unknown result type (might be due to invalid IL or missing references)
//IL_03fe: Unknown result type (might be due to invalid IL or missing references)
//IL_040b: Unknown result type (might be due to invalid IL or missing references)
//IL_040d: Unknown result type (might be due to invalid IL or missing references)
//IL_0440: Unknown result type (might be due to invalid IL or missing references)
//IL_0454: Unknown result type (might be due to invalid IL or missing references)
//IL_0468: Unknown result type (might be due to invalid IL or missing references)
//IL_047c: Unknown result type (might be due to invalid IL or missing references)
//IL_04e8: Unknown result type (might be due to invalid IL or missing references)
//IL_04fd: Unknown result type (might be due to invalid IL or missing references)
//IL_0502: 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_0520: Unknown result type (might be due to invalid IL or missing references)
//IL_0522: Unknown result type (might be due to invalid IL or missing references)
//IL_0555: Unknown result type (might be due to invalid IL or missing references)
//IL_0569: Unknown result type (might be due to invalid IL or missing references)
//IL_057d: Unknown result type (might be due to invalid IL or missing references)
//IL_0591: Unknown result type (might be due to invalid IL or missing references)
//IL_05fd: Unknown result type (might be due to invalid IL or missing references)
//IL_0612: Unknown result type (might be due to invalid IL or missing references)
//IL_0617: Unknown result type (might be due to invalid IL or missing references)
//IL_0628: Unknown result type (might be due to invalid IL or missing references)
//IL_0635: Unknown result type (might be due to invalid IL or missing references)
//IL_0637: Unknown result type (might be due to invalid IL or missing references)
//IL_066a: Unknown result type (might be due to invalid IL or missing references)
//IL_067e: Unknown result type (might be due to invalid IL or missing references)
//IL_0692: 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_0712: 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_072c: 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_074a: Unknown result type (might be due to invalid IL or missing references)
//IL_074c: Unknown result type (might be due to invalid IL or missing references)
//IL_077f: Unknown result type (might be due to invalid IL or missing references)
//IL_0793: Unknown result type (might be due to invalid IL or missing references)
//IL_07a7: Unknown result type (might be due to invalid IL or missing references)
//IL_07bb: Unknown result type (might be due to invalid IL or missing references)
//IL_0827: Unknown result type (might be due to invalid IL or missing references)
//IL_083c: Unknown result type (might be due to invalid IL or missing references)
//IL_0841: Unknown result type (might be due to invalid IL or missing references)
//IL_0852: Unknown result type (might be due to invalid IL or missing references)
//IL_085f: Unknown result type (might be due to invalid IL or missing references)
//IL_0861: 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_08a8: Unknown result type (might be due to invalid IL or missing references)
//IL_08bc: Unknown result type (might be due to invalid IL or missing references)
//IL_08d0: 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_0951: Unknown result type (might be due to invalid IL or missing references)
//IL_0956: Unknown result type (might be due to invalid IL or missing references)
//IL_0967: Unknown result type (might be due to invalid IL or missing references)
//IL_0974: Unknown result type (might be due to invalid IL or missing references)
//IL_0976: Unknown result type (might be due to invalid IL or missing references)
//IL_09a9: 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_09d1: Unknown result type (might be due to invalid IL or missing references)
//IL_09e5: Unknown result type (might be due to invalid IL or missing references)
CharacterModel componentInChildren = Imp.myCharacter.GetComponentInChildren<CharacterModel>();
SkinDef val = Addressables.LoadAssetAsync<SkinDef>((object)RoR2_Base_Imp.skinImpBodyDefault_asset).WaitForCompletion();
SkinDefParams val2 = Addressables.LoadAssetAsync<SkinDefParams>((object)RoR2_Base_Imp_skinImpBodyDefault.params_asset).WaitForCompletion();
Renderer component = ((Component)((Component)componentInChildren).transform.Find("ImpMesh")).GetComponent<Renderer>();
Debug.Log((object)("rendname: " + ((Object)component).name));
RendererInfo[] array = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Imp.matImp_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
((Component)componentInChildren).GetComponentInChildren<CharacterModel>().baseRendererInfos = array;
LanguageAPI.Add("Imp_Default_SKIN", "Imp");
SkinDef val3 = Object.Instantiate<SkinDef>(val);
val3.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val3.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val3.rootObject = ((Component)componentInChildren).gameObject;
val3.skinDefParams.rendererInfos = array;
val3.icon = Skins.CreateSkinIcon(new Color(0.2f, 0f, 0f), new Color(0.5019608f, 0f, 0f), new Color(0.2f, 0f, 0f), new Color(0.5019608f, 0f, 0f));
val3.skinDefParams.meshReplacements[0].renderer = component;
((Object)val3).name = "Imp_Default_SKIN";
val3.nameToken = "Imp_Default_SKIN";
SkinDef val4 = Object.Instantiate<SkinDef>(val);
val4.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val4.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val4.rootObject = ((Component)componentInChildren).gameObject;
val4.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Lemurian.matLemurianBruiser_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val4.skinDefParams.meshReplacements[0].renderer = component;
val4.icon = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Commando/CommandoBody.prefab").WaitForCompletion().GetComponentInChildren<ModelSkinController>()
.skins[0].icon;
((Object)val4).name = "Lemurian_Bruiser_SKIN";
val4.nameToken = "Lemurian_Bruiser_SKIN";
SkinDef val5 = Object.Instantiate<SkinDef>(val);
val5.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val5.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val5.rootObject = ((Component)componentInChildren).gameObject;
val5.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Shopkeeper.matNewt_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val5.skinDefParams.meshReplacements[0].renderer = component;
val5.icon = Skins.CreateSkinIcon(new Color(0.6f, 0.4f, 1f), new Color(0.8f, 0.7019608f, 1f), new Color(0.6f, 0.4f, 1f), new Color(0.8f, 0.7019608f, 1f));
((Object)val5).name = "Lemurian_Lunar_SKIN";
val5.nameToken = "Lemurian_Lunar_SKIN";
SkinDef val6 = Object.Instantiate<SkinDef>(val);
val6.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val6.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val6.rootObject = ((Component)componentInChildren).gameObject;
val6.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_RoboBallBuddy.RoboBallFriendGreen_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val6.skinDefParams.meshReplacements[0].renderer = component;
val6.icon = Skins.CreateSkinIcon(new Color(4f / 51f, 0.16078432f, 0.32156864f), new Color(0.8f, 0.8f, 0f), new Color(4f / 51f, 0.16078432f, 0.32156864f), new Color(0.8f, 0.8f, 0f));
((Object)val6).name = "Lemurian_GlowFace_SKIN";
val6.nameToken = "Lemurian_GlowFace_SKIN";
SkinDef val7 = Object.Instantiate<SkinDef>(val);
val7.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val7.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val7.rootObject = ((Component)componentInChildren).gameObject;
val7.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC1_VoidSurvivor.matVoidSurvivorBlasterSphereAreaIndicatorCorrupted_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val7.skinDefParams.meshReplacements[0].renderer = component;
val7.icon = Skins.CreateSkinIcon(new Color(0.8f, 0.16078432f, 0f), new Color(1f, 0.6f, 0f), new Color(0.8f, 0.16078432f, 0f), new Color(1f, 0.6f, 0f));
((Object)val7).name = "Lemurian_Corrupted_SKIN";
val7.nameToken = "Lemurian_Corrupted_SKIN";
SkinDef val8 = Object.Instantiate<SkinDef>(val);
val8.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val8.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val8.rootObject = ((Component)componentInChildren).gameObject;
val8.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Titan.matTitanGold_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val8.skinDefParams.meshReplacements[0].renderer = component;
val8.icon = Skins.CreateSkinIcon(new Color(1f, 67f / 85f, 0.1254902f), new Color(74f / 85f, 39f / 85f, 0f), new Color(0.14509805f, 4f / 85f, 0f), new Color(0.9843137f, 82f / 85f, 79f / 85f));
((Object)val8).name = "Lemurian_Aurelionite_SKIN";
val8.nameToken = "Lemurian_Aurelionite_SKIN";
SkinDef val9 = Object.Instantiate<SkinDef>(val);
val9.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val9.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val9.rootObject = ((Component)componentInChildren).gameObject;
val9.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_Seeker.matSeeker_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val9.skinDefParams.meshReplacements[0].renderer = component;
val9.icon = Skins.CreateSkinIcon(new Color(0.83137256f, 56f / 85f, 20f / 51f), new Color(4f / 15f, 46f / 85f, 0.6431373f), new Color(0.4f, 33f / 85f, 8f / 15f), new Color(13f / 85f, 0.1764706f, 0.32156864f));
((Object)val9).name = "Lemurian_Engine_SKIN";
val9.nameToken = "Lemurian_Engine_SKIN";
SkinDef val10 = Object.Instantiate<SkinDef>(val);
val10.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val10.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val10.rootObject = ((Component)componentInChildren).gameObject;
val10.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_FalseSon.matFalseSon_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val10.skinDefParams.meshReplacements[0].renderer = component;
val10.icon = Skins.CreateSkinIcon(new Color(0.56078434f, 0.20784314f, 19f / 85f), new Color(43f / 51f, 0.8901961f, 0.9411765f), new Color(1f / 3f, 24f / 85f, 29f / 85f), new Color(26f / 51f, 0.64705884f, 53f / 85f));
((Object)val10).name = "Lemurian_False_SKIN";
val10.nameToken = "Lemurian_False_SKIN";
SkinDef val11 = Object.Instantiate<SkinDef>(val);
val11.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val11.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val11.rootObject = ((Component)componentInChildren).gameObject;
val11.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_Scorchling.matScorchling_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val11.skinDefParams.meshReplacements[0].renderer = component;
val11.icon = Skins.CreateSkinIcon(new Color(0.99607843f, 0.827451f, 0.41960785f), new Color(1f, 0.4f, 0.003921569f), new Color(41f / 51f, 0f, 3f / 85f), new Color(0.6313726f, 0.19215687f, 0f));
((Object)val11).name = "Lemurian_Scorch_SKIN";
val11.nameToken = "Lemurian_Scorch_SKIN";
List<SkinDef> list = new List<SkinDef> { val3, val4, val5, val6, val7, val8, val9, val10, val11 };
((Component)componentInChildren).gameObject.GetComponent<ModelSkinController>().skins = list.ToArray();
}
}
public static class LemurianSkinSetup
{
public static void BuildTheFuckingSkins()
{
//IL_0011: Unknown result type (might be due to invalid IL or missing references)
//IL_0016: Unknown result type (might be due to invalid IL or missing references)
//IL_0025: Unknown result type (might be due to invalid IL or missing references)
//IL_002a: Unknown result type (might be due to invalid IL or missing references)
//IL_006a: Unknown result type (might be due to invalid IL or missing references)
//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_0095: 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)
//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
//IL_011a: Unknown result type (might be due to invalid IL or missing references)
//IL_012e: Unknown result type (might be due to invalid IL or missing references)
//IL_0142: Unknown result type (might be due to invalid IL or missing references)
//IL_0156: Unknown result type (might be due to invalid IL or missing references)
//IL_01da: Unknown result type (might be due to invalid IL or missing references)
//IL_01ef: Unknown result type (might be due to invalid IL or missing references)
//IL_01f4: Unknown result type (might be due to invalid IL or missing references)
//IL_0205: Unknown result type (might be due to invalid IL or missing references)
//IL_0212: Unknown result type (might be due to invalid IL or missing references)
//IL_0214: Unknown result type (might be due to invalid IL or missing references)
//IL_023d: Unknown result type (might be due to invalid IL or missing references)
//IL_0242: Unknown result type (might be due to invalid IL or missing references)
//IL_02ce: Unknown result type (might be due to invalid IL or missing references)
//IL_02e3: Unknown result type (might be due to invalid IL or missing references)
//IL_02e8: Unknown result type (might be due to invalid IL or missing references)
//IL_02f9: Unknown result type (might be due to invalid IL or missing references)
//IL_0306: Unknown result type (might be due to invalid IL or missing references)
//IL_0308: Unknown result type (might be due to invalid IL or missing references)
//IL_033b: Unknown result type (might be due to invalid IL or missing references)
//IL_034f: Unknown result type (might be due to invalid IL or missing references)
//IL_0363: Unknown result type (might be due to invalid IL or missing references)
//IL_0377: Unknown result type (might be due to invalid IL or missing references)
//IL_03f3: 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_040d: Unknown result type (might be due to invalid IL or missing references)
//IL_041e: Unknown result type (might be due to invalid IL or missing references)
//IL_042b: Unknown result type (might be due to invalid IL or missing references)
//IL_042d: Unknown result type (might be due to invalid IL or missing references)
//IL_0460: Unknown result type (might be due to invalid IL or missing references)
//IL_0474: Unknown result type (might be due to invalid IL or missing references)
//IL_0488: Unknown result type (might be due to invalid IL or missing references)
//IL_049c: Unknown result type (might be due to invalid IL or missing references)
//IL_0518: 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_0543: Unknown result type (might be due to invalid IL or missing references)
//IL_0550: Unknown result type (might be due to invalid IL or missing references)
//IL_0552: 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_05c1: Unknown result type (might be due to invalid IL or missing references)
//IL_063d: Unknown result type (might be due to invalid IL or missing references)
//IL_0652: Unknown result type (might be due to invalid IL or missing references)
//IL_0657: Unknown result type (might be due to invalid IL or missing references)
//IL_0668: Unknown result type (might be due to invalid IL or missing references)
//IL_0675: Unknown result type (might be due to invalid IL or missing references)
//IL_0677: Unknown result type (might be due to invalid IL or missing references)
//IL_06aa: Unknown result type (might be due to invalid IL or missing references)
//IL_06be: Unknown result type (might be due to invalid IL or missing references)
//IL_06d2: Unknown result type (might be due to invalid IL or missing references)
//IL_06e6: Unknown result type (might be due to invalid IL or missing references)
//IL_0762: Unknown result type (might be due to invalid IL or missing references)
//IL_0777: Unknown result type (might be due to invalid IL or missing references)
//IL_077c: Unknown result type (might be due to invalid IL or missing references)
//IL_078d: Unknown result type (might be due to invalid IL or missing references)
//IL_079a: Unknown result type (might be due to invalid IL or missing references)
//IL_079c: Unknown result type (might be due to invalid IL or missing references)
//IL_07cf: Unknown result type (might be due to invalid IL or missing references)
//IL_07e3: 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_080b: 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_089c: Unknown result type (might be due to invalid IL or missing references)
//IL_08a1: Unknown result type (might be due to invalid IL or missing references)
//IL_08b2: Unknown result type (might be due to invalid IL or missing references)
//IL_08bf: Unknown result type (might be due to invalid IL or missing references)
//IL_08c1: 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_0908: Unknown result type (might be due to invalid IL or missing references)
//IL_091c: Unknown result type (might be due to invalid IL or missing references)
//IL_0930: 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_09c1: Unknown result type (might be due to invalid IL or missing references)
//IL_09c6: Unknown result type (might be due to invalid IL or missing references)
//IL_09d7: Unknown result type (might be due to invalid IL or missing references)
//IL_09e4: Unknown result type (might be due to invalid IL or missing references)
//IL_09e6: Unknown result type (might be due to invalid IL or missing references)
//IL_0a19: 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_0a41: 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_0ad1: Unknown result type (might be due to invalid IL or missing references)
//IL_0ae6: Unknown result type (might be due to invalid IL or missing references)
//IL_0aeb: Unknown result type (might be due to invalid IL or missing references)
//IL_0afc: Unknown result type (might be due to invalid IL or missing references)
//IL_0b09: Unknown result type (might be due to invalid IL or missing references)
//IL_0b0b: Unknown result type (might be due to invalid IL or missing references)
//IL_0b3e: Unknown result type (might be due to invalid IL or missing references)
//IL_0b52: Unknown result type (might be due to invalid IL or missing references)
//IL_0b66: Unknown result type (might be due to invalid IL or missing references)
//IL_0b7a: Unknown result type (might be due to invalid IL or missing references)
CharacterModel componentInChildren = Lemurian.myCharacter.GetComponentInChildren<CharacterModel>();
SkinDef val = Addressables.LoadAssetAsync<SkinDef>((object)RoR2_Base_Lemurian.skinLemurianBodyDefault_asset).WaitForCompletion();
SkinDefParams val2 = Addressables.LoadAssetAsync<SkinDefParams>((object)RoR2_Base_Lemurian_skinLemurianBodyDefault.params_asset).WaitForCompletion();
Renderer component = ((Component)((Component)componentInChildren).transform.Find("LemurianMesh")).GetComponent<Renderer>();
Debug.Log((object)("rendname: " + ((Object)component).name));
RendererInfo[] array = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Lemurian.matLemurian_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
((Component)componentInChildren).GetComponentInChildren<CharacterModel>().baseRendererInfos = array;
LanguageAPI.Add("Lemurian_Default_SKIN", "Lemurian");
SkinDef val3 = Object.Instantiate<SkinDef>(val);
val3.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val3.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val3.rootObject = ((Component)componentInChildren).gameObject;
val3.skinDefParams.rendererInfos = array;
val3.icon = Skins.CreateSkinIcon(new Color(1f, 1f, 1f), new Color(0.4f, 0f, 0.4f), new Color(1f, 1f, 1f), new Color(0.4f, 0f, 0.4f));
val3.skinDefParams.meshReplacements[0].renderer = component;
((Object)val3).name = "Lemurian_Default_SKIN";
val3.nameToken = "Lemurian_Default_SKIN";
SkinDef val4 = Object.Instantiate<SkinDef>(val);
val4.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val4.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val4.rootObject = ((Component)componentInChildren).gameObject;
val4.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Lemurian.matLemurianBruiser_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val4.skinDefParams.meshReplacements[0].renderer = component;
val4.icon = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Commando/CommandoBody.prefab").WaitForCompletion().GetComponentInChildren<ModelSkinController>()
.skins[0].icon;
LanguageAPI.Add("Lemurian_Bruiser_SKIN", "Elder Lemurian");
((Object)val4).name = "Lemurian_Bruiser_SKIN";
val4.nameToken = "Lemurian_Bruiser_SKIN";
SkinDef val5 = Object.Instantiate<SkinDef>(val);
val5.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val5.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val5.rootObject = ((Component)componentInChildren).gameObject;
val5.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Imp.matImp_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val5.skinDefParams.meshReplacements[0].renderer = component;
val5.icon = Skins.CreateSkinIcon(new Color(0.2f, 0f, 0f), new Color(0.5019608f, 0f, 0f), new Color(0.2f, 0f, 0f), new Color(0.5019608f, 0f, 0f));
LanguageAPI.Add("Lemurian_Imp_SKIN", "Imp");
((Object)val5).name = "Lemurian_Imp_SKIN";
val5.nameToken = "Lemurian_Imp_SKIN";
SkinDef val6 = Object.Instantiate<SkinDef>(val);
val6.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val6.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val6.rootObject = ((Component)componentInChildren).gameObject;
val6.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Shopkeeper.matNewt_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val6.skinDefParams.meshReplacements[0].renderer = component;
val6.icon = Skins.CreateSkinIcon(new Color(0.6f, 0.4f, 1f), new Color(0.8f, 0.7019608f, 1f), new Color(0.6f, 0.4f, 1f), new Color(0.8f, 0.7019608f, 1f));
LanguageAPI.Add("Lemurian_Lunar_SKIN", "Lunar");
((Object)val6).name = "Lemurian_Lunar_SKIN";
val6.nameToken = "Lemurian_Lunar_SKIN";
SkinDef val7 = Object.Instantiate<SkinDef>(val);
val7.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val7.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val7.rootObject = ((Component)componentInChildren).gameObject;
val7.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_RoboBallBuddy.RoboBallFriendGreen_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val7.skinDefParams.meshReplacements[0].renderer = component;
val7.icon = Skins.CreateSkinIcon(new Color(4f / 51f, 0.16078432f, 0.32156864f), new Color(0.8f, 0.8f, 0f), new Color(4f / 51f, 0.16078432f, 0.32156864f), new Color(0.8f, 0.8f, 0f));
LanguageAPI.Add("Lemurian_GlowFace_SKIN", "Glowy Boy");
((Object)val7).name = "Lemurian_GlowFace_SKIN";
val7.nameToken = "Lemurian_GlowFace_SKIN";
SkinDef val8 = Object.Instantiate<SkinDef>(val);
val8.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val8.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val8.rootObject = ((Component)componentInChildren).gameObject;
val8.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC1_VoidSurvivor.matVoidSurvivorBlasterSphereAreaIndicatorCorrupted_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val8.skinDefParams.meshReplacements[0].renderer = component;
val8.icon = Skins.CreateSkinIcon(new Color(0.8f, 0.16078432f, 0f), new Color(1f, 0.6f, 0f), new Color(0.8f, 0.16078432f, 0f), new Color(1f, 0.6f, 0f));
LanguageAPI.Add("Lemurian_Corrupted_SKIN", "Corrupted");
((Object)val8).name = "Lemurian_Corrupted_SKIN";
val8.nameToken = "Lemurian_Corrupted_SKIN";
SkinDef val9 = Object.Instantiate<SkinDef>(val);
val9.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val9.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val9.rootObject = ((Component)componentInChildren).gameObject;
val9.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Titan.matTitanGold_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val9.skinDefParams.meshReplacements[0].renderer = component;
val9.icon = Skins.CreateSkinIcon(new Color(1f, 67f / 85f, 0.1254902f), new Color(74f / 85f, 39f / 85f, 0f), new Color(0.14509805f, 4f / 85f, 0f), new Color(0.9843137f, 82f / 85f, 79f / 85f));
LanguageAPI.Add("Lemurian_Aurelionite_SKIN", "Aurelionite");
((Object)val9).name = "Lemurian_Aurelionite_SKIN";
val9.nameToken = "Lemurian_Aurelionite_SKIN";
SkinDef val10 = Object.Instantiate<SkinDef>(val);
val10.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val10.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val10.rootObject = ((Component)componentInChildren).gameObject;
val10.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_Seeker.matSeeker_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val10.skinDefParams.meshReplacements[0].renderer = component;
val10.icon = Skins.CreateSkinIcon(new Color(0.83137256f, 56f / 85f, 20f / 51f), new Color(4f / 15f, 46f / 85f, 0.6431373f), new Color(0.4f, 33f / 85f, 8f / 15f), new Color(13f / 85f, 0.1764706f, 0.32156864f));
LanguageAPI.Add("Lemurian_Engine_SKIN", "Engine");
((Object)val10).name = "Lemurian_Engine_SKIN";
val10.nameToken = "Lemurian_Engine_SKIN";
SkinDef val11 = Object.Instantiate<SkinDef>(val);
val11.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val11.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val11.rootObject = ((Component)componentInChildren).gameObject;
val11.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_FalseSon.matFalseSon_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val11.skinDefParams.meshReplacements[0].renderer = component;
val11.icon = Skins.CreateSkinIcon(new Color(0.56078434f, 0.20784314f, 19f / 85f), new Color(43f / 51f, 0.8901961f, 0.9411765f), new Color(1f / 3f, 24f / 85f, 29f / 85f), new Color(26f / 51f, 0.64705884f, 53f / 85f));
LanguageAPI.Add("Lemurian_False_SKIN", "Mysterious");
((Object)val11).name = "Lemurian_False_SKIN";
val11.nameToken = "Lemurian_False_SKIN";
SkinDef val12 = Object.Instantiate<SkinDef>(val);
val12.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val12.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val12.rootObject = ((Component)componentInChildren).gameObject;
val12.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[1]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_Scorchling.matScorchling_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val12.skinDefParams.meshReplacements[0].renderer = component;
val12.icon = Skins.CreateSkinIcon(new Color(0.99607843f, 0.827451f, 0.41960785f), new Color(1f, 0.4f, 0.003921569f), new Color(41f / 51f, 0f, 3f / 85f), new Color(0.6313726f, 0.19215687f, 0f));
LanguageAPI.Add("Lemurian_Scorch_SKIN", "Scorching");
((Object)val12).name = "Lemurian_Scorch_SKIN";
val12.nameToken = "Lemurian_Scorch_SKIN";
List<SkinDef> list = new List<SkinDef> { val3, val4, val5, val6, val7, val8, val9, val10, val11, val12 };
((Component)componentInChildren).gameObject.GetComponent<ModelSkinController>().skins = list.ToArray();
}
}
public static class LunarExploderSkinSetup
{
public static void BuildTheFuckingSkins()
{
//IL_0011: Unknown result type (might be due to invalid IL or missing references)
//IL_0016: Unknown result type (might be due to invalid IL or missing references)
//IL_0025: Unknown result type (might be due to invalid IL or missing references)
//IL_002a: Unknown result type (might be due to invalid IL or missing references)
//IL_0081: Unknown result type (might be due to invalid IL or missing references)
//IL_0096: Unknown result type (might be due to invalid IL or missing references)
//IL_009b: Unknown result type (might be due to invalid IL or missing references)
//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
//IL_00b9: 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)
//IL_00c4: Unknown result type (might be due to invalid IL or missing references)
//IL_00da: Unknown result type (might be due to invalid IL or missing references)
//IL_00df: Unknown result type (might be due to invalid IL or missing references)
//IL_00f0: Unknown result type (might be due to invalid IL or missing references)
//IL_00fd: Unknown result type (might be due to invalid IL or missing references)
//IL_00ff: Unknown result type (might be due to invalid IL or missing references)
//IL_0175: Unknown result type (might be due to invalid IL or missing references)
//IL_0189: Unknown result type (might be due to invalid IL or missing references)
//IL_019d: Unknown result type (might be due to invalid IL or missing references)
//IL_01b1: Unknown result type (might be due to invalid IL or missing references)
//IL_024f: Unknown result type (might be due to invalid IL or missing references)
//IL_0264: Unknown result type (might be due to invalid IL or missing references)
//IL_0269: Unknown result type (might be due to invalid IL or missing references)
//IL_027a: Unknown result type (might be due to invalid IL or missing references)
//IL_0287: Unknown result type (might be due to invalid IL or missing references)
//IL_0289: Unknown result type (might be due to invalid IL or missing references)
//IL_0292: 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_02ad: Unknown result type (might be due to invalid IL or missing references)
//IL_02be: Unknown result type (might be due to invalid IL or missing references)
//IL_02cb: Unknown result type (might be due to invalid IL or missing references)
//IL_02cd: Unknown result type (might be due to invalid IL or missing references)
//IL_030f: Unknown result type (might be due to invalid IL or missing references)
//IL_0314: Unknown result type (might be due to invalid IL or missing references)
//IL_0390: Unknown result type (might be due to invalid IL or missing references)
//IL_03a5: Unknown result type (might be due to invalid IL or missing references)
//IL_03aa: Unknown result type (might be due to invalid IL or missing references)
//IL_03bb: Unknown result type (might be due to invalid IL or missing references)
//IL_03c8: Unknown result type (might be due to invalid IL or missing references)
//IL_03ca: Unknown result type (might be due to invalid IL or missing references)
//IL_03d3: Unknown result type (might be due to invalid IL or missing references)
//IL_03e9: Unknown result type (might be due to invalid IL or missing references)
//IL_03ee: Unknown result type (might be due to invalid IL or missing references)
//IL_03ff: Unknown result type (might be due to invalid IL or missing references)
//IL_040c: Unknown result type (might be due to invalid IL or missing references)
//IL_040e: Unknown result type (might be due to invalid IL or missing references)
//IL_045a: Unknown result type (might be due to invalid IL or missing references)
//IL_046e: Unknown result type (might be due to invalid IL or missing references)
//IL_0482: Unknown result type (might be due to invalid IL or missing references)
//IL_0496: Unknown result type (might be due to invalid IL or missing references)
//IL_0502: Unknown result type (might be due to invalid IL or missing references)
//IL_0517: 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_052d: Unknown result type (might be due to invalid IL or missing references)
//IL_053a: Unknown result type (might be due to invalid IL or missing references)
//IL_053c: Unknown result type (might be due to invalid IL or missing references)
//IL_0545: Unknown result type (might be due to invalid IL or missing references)
//IL_055b: 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_0571: Unknown result type (might be due to invalid IL or missing references)
//IL_057e: Unknown result type (might be due to invalid IL or missing references)
//IL_0580: Unknown result type (might be due to invalid IL or missing references)
//IL_05cc: Unknown result type (might be due to invalid IL or missing references)
//IL_05e0: Unknown result type (might be due to invalid IL or missing references)
//IL_05f4: 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_0674: Unknown result type (might be due to invalid IL or missing references)
//IL_0689: Unknown result type (might be due to invalid IL or missing references)
//IL_068e: Unknown result type (might be due to invalid IL or missing references)
//IL_069f: Unknown result type (might be due to invalid IL or missing references)
//IL_06ac: Unknown result type (might be due to invalid IL or missing references)
//IL_06ae: 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_06cd: Unknown result type (might be due to invalid IL or missing references)
//IL_06d2: Unknown result type (might be due to invalid IL or missing references)
//IL_06e3: 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_06f2: Unknown result type (might be due to invalid IL or missing references)
//IL_073e: Unknown result type (might be due to invalid IL or missing references)
//IL_0752: Unknown result type (might be due to invalid IL or missing references)
//IL_0766: Unknown result type (might be due to invalid IL or missing references)
//IL_077a: Unknown result type (might be due to invalid IL or missing references)
//IL_07e6: Unknown result type (might be due to invalid IL or missing references)
//IL_07fb: Unknown result type (might be due to invalid IL or missing references)
//IL_0800: Unknown result type (might be due to invalid IL or missing references)
//IL_0811: 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_0820: 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_083f: Unknown result type (might be due to invalid IL or missing references)
//IL_0844: Unknown result type (might be due to invalid IL or missing references)
//IL_0855: 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_0864: Unknown result type (might be due to invalid IL or missing references)
//IL_08b0: Unknown result type (might be due to invalid IL or missing references)
//IL_08c4: Unknown result type (might be due to invalid IL or missing references)
//IL_08d8: Unknown result type (might be due to invalid IL or missing references)
//IL_08ec: Unknown result type (might be due to invalid IL or missing references)
//IL_0958: Unknown result type (might be due to invalid IL or missing references)
//IL_096d: Unknown result type (might be due to invalid IL or missing references)
//IL_0972: Unknown result type (might be due to invalid IL or missing references)
//IL_0983: Unknown result type (might be due to invalid IL or missing references)
//IL_0990: Unknown result type (might be due to invalid IL or missing references)
//IL_0992: Unknown result type (might be due to invalid IL or missing references)
//IL_099b: Unknown result type (might be due to invalid IL or missing references)
//IL_09b1: Unknown result type (might be due to invalid IL or missing references)
//IL_09b6: Unknown result type (might be due to invalid IL or missing references)
//IL_09c7: Unknown result type (might be due to invalid IL or missing references)
//IL_09d4: Unknown result type (might be due to invalid IL or missing references)
//IL_09d6: 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_0a36: Unknown result type (might be due to invalid IL or missing references)
//IL_0a4a: Unknown result type (might be due to invalid IL or missing references)
//IL_0a5e: 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_0adf: Unknown result type (might be due to invalid IL or missing references)
//IL_0ae4: Unknown result type (might be due to invalid IL or missing references)
//IL_0af5: Unknown result type (might be due to invalid IL or missing references)
//IL_0b02: Unknown result type (might be due to invalid IL or missing references)
//IL_0b04: Unknown result type (might be due to invalid IL or missing references)
//IL_0b0d: Unknown result type (might be due to invalid IL or missing references)
//IL_0b23: Unknown result type (might be due to invalid IL or missing references)
//IL_0b28: Unknown result type (might be due to invalid IL or missing references)
//IL_0b39: Unknown result type (might be due to invalid IL or missing references)
//IL_0b46: Unknown result type (might be due to invalid IL or missing references)
//IL_0b48: Unknown result type (might be due to invalid IL or missing references)
//IL_0b94: 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_0bd0: Unknown result type (might be due to invalid IL or missing references)
//IL_0c3c: Unknown result type (might be due to invalid IL or missing references)
//IL_0c51: Unknown result type (might be due to invalid IL or missing references)
//IL_0c56: Unknown result type (might be due to invalid IL or missing references)
//IL_0c67: Unknown result type (might be due to invalid IL or missing references)
//IL_0c74: Unknown result type (might be due to invalid IL or missing references)
//IL_0c76: Unknown result type (might be due to invalid IL or missing references)
//IL_0c7f: Unknown result type (might be due to invalid IL or missing references)
//IL_0c95: Unknown result type (might be due to invalid IL or missing references)
//IL_0c9a: Unknown result type (might be due to invalid IL or missing references)
//IL_0cab: Unknown result type (might be due to invalid IL or missing references)
//IL_0cb8: Unknown result type (might be due to invalid IL or missing references)
//IL_0cba: Unknown result type (might be due to invalid IL or missing references)
//IL_0d06: Unknown result type (might be due to invalid IL or missing references)
//IL_0d1a: Unknown result type (might be due to invalid IL or missing references)
//IL_0d2e: Unknown result type (might be due to invalid IL or missing references)
//IL_0d42: Unknown result type (might be due to invalid IL or missing references)
//IL_0dae: Unknown result type (might be due to invalid IL or missing references)
//IL_0dc3: Unknown result type (might be due to invalid IL or missing references)
//IL_0dc8: Unknown result type (might be due to invalid IL or missing references)
//IL_0dd9: Unknown result type (might be due to invalid IL or missing references)
//IL_0de6: Unknown result type (might be due to invalid IL or missing references)
//IL_0de8: 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_0e07: Unknown result type (might be due to invalid IL or missing references)
//IL_0e0c: Unknown result type (might be due to invalid IL or missing references)
//IL_0e1d: Unknown result type (might be due to invalid IL or missing references)
//IL_0e2a: Unknown result type (might be due to invalid IL or missing references)
//IL_0e2c: Unknown result type (might be due to invalid IL or missing references)
//IL_0e78: Unknown result type (might be due to invalid IL or missing references)
//IL_0e8c: Unknown result type (might be due to invalid IL or missing references)
//IL_0ea0: Unknown result type (might be due to invalid IL or missing references)
//IL_0eb4: Unknown result type (might be due to invalid IL or missing references)
CharacterModel componentInChildren = LunarExploder.myCharacter.GetComponentInChildren<CharacterModel>();
SkinDef val = Addressables.LoadAssetAsync<SkinDef>((object)RoR2_Base_LunarExploder.skinLunarExploderBodyDefault_asset).WaitForCompletion();
SkinDefParams val2 = Addressables.LoadAssetAsync<SkinDefParams>((object)RoR2_Base_LunarExploder_skinLunarExploderBodyDefault.params_asset).WaitForCompletion();
Renderer component = ((Component)((Component)componentInChildren).transform.Find("LunarExploderCoreMesh")).GetComponent<Renderer>();
Renderer component2 = ((Component)((Component)componentInChildren).transform.Find("LunarExploderMesh")).GetComponent<Renderer>();
Debug.Log((object)("rendname: " + ((Object)component).name));
RendererInfo[] array = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploderCore_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
((Component)componentInChildren).GetComponentInChildren<CharacterModel>().baseRendererInfos = array;
LanguageAPI.Add("Lunar_Default_SKIN", "Lunar Exploder");
SkinDef val3 = Object.Instantiate<SkinDef>(val);
val3.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val3.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val3.rootObject = ((Component)componentInChildren).gameObject;
val3.skinDefParams.rendererInfos = array;
val3.icon = Skins.CreateSkinIcon(new Color(0.6f, 0.4f, 1f), new Color(0.5019608f, 0f, 0f), new Color(0.6f, 0.4f, 1f), new Color(0.5019608f, 0f, 0f));
val3.skinDefParams.meshReplacements[0].renderer = component;
val3.skinDefParams.meshReplacements[1].renderer = component2;
((Object)val3).name = "Lunar_Default_SKIN";
val3.nameToken = "Lunar_Default_SKIN";
SkinDef val4 = Object.Instantiate<SkinDef>(val);
val4.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val4.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val4.rootObject = ((Component)componentInChildren).gameObject;
val4.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Lemurian.matLemurianBruiser_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val4.skinDefParams.meshReplacements[0].renderer = component;
val4.skinDefParams.meshReplacements[1].renderer = component2;
val4.icon = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Commando/CommandoBody.prefab").WaitForCompletion().GetComponentInChildren<ModelSkinController>()
.skins[0].icon;
((Object)val4).name = "Lemurian_Bruiser_SKIN";
val4.nameToken = "Lemurian_Bruiser_SKIN";
SkinDef val5 = Object.Instantiate<SkinDef>(val);
val5.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val5.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val5.rootObject = ((Component)componentInChildren).gameObject;
val5.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Imp.matImp_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val5.skinDefParams.meshReplacements[0].renderer = component;
val5.skinDefParams.meshReplacements[1].renderer = component2;
val5.icon = Skins.CreateSkinIcon(new Color(0.2f, 0f, 0f), new Color(0.5019608f, 0f, 0f), new Color(0.2f, 0f, 0f), new Color(0.5019608f, 0f, 0f));
((Object)val5).name = "Lemurian_Imp_SKIN";
val5.nameToken = "Lemurian_Imp_SKIN";
SkinDef val6 = Object.Instantiate<SkinDef>(val);
val6.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val6.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val6.rootObject = ((Component)componentInChildren).gameObject;
val6.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Shopkeeper.matNewt_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val6.skinDefParams.meshReplacements[0].renderer = component;
val6.skinDefParams.meshReplacements[1].renderer = component2;
val6.icon = Skins.CreateSkinIcon(new Color(0.6f, 0.4f, 1f), new Color(0.8f, 0.7019608f, 1f), new Color(0.6f, 0.4f, 1f), new Color(0.8f, 0.7019608f, 1f));
((Object)val6).name = "Lemurian_Lunar_SKIN";
val6.nameToken = "Lemurian_Lunar_SKIN";
SkinDef val7 = Object.Instantiate<SkinDef>(val);
val7.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val7.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val7.rootObject = ((Component)componentInChildren).gameObject;
val7.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_RoboBallBuddy.RoboBallFriendGreen_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val7.skinDefParams.meshReplacements[0].renderer = component;
val7.skinDefParams.meshReplacements[1].renderer = component2;
val7.icon = Skins.CreateSkinIcon(new Color(4f / 51f, 0.16078432f, 0.32156864f), new Color(0.8f, 0.8f, 0f), new Color(4f / 51f, 0.16078432f, 0.32156864f), new Color(0.8f, 0.8f, 0f));
((Object)val7).name = "Lemurian_GlowFace_SKIN";
val7.nameToken = "Lemurian_GlowFace_SKIN";
SkinDef val8 = Object.Instantiate<SkinDef>(val);
val8.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val8.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val8.rootObject = ((Component)componentInChildren).gameObject;
val8.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC1_VoidSurvivor.matVoidSurvivorBlasterSphereAreaIndicatorCorrupted_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val8.skinDefParams.meshReplacements[0].renderer = component;
val8.skinDefParams.meshReplacements[1].renderer = component2;
val8.icon = Skins.CreateSkinIcon(new Color(0.8f, 0.16078432f, 0f), new Color(1f, 0.6f, 0f), new Color(0.8f, 0.16078432f, 0f), new Color(1f, 0.6f, 0f));
((Object)val8).name = "Lemurian_Corrupted_SKIN";
val8.nameToken = "Lemurian_Corrupted_SKIN";
SkinDef val9 = Object.Instantiate<SkinDef>(val);
val9.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val9.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val9.rootObject = ((Component)componentInChildren).gameObject;
val9.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_Titan.matTitanGold_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val9.skinDefParams.meshReplacements[0].renderer = component;
val9.skinDefParams.meshReplacements[1].renderer = component2;
val9.icon = Skins.CreateSkinIcon(new Color(1f, 67f / 85f, 0.1254902f), new Color(74f / 85f, 39f / 85f, 0f), new Color(0.14509805f, 4f / 85f, 0f), new Color(0.9843137f, 82f / 85f, 79f / 85f));
((Object)val9).name = "Lemurian_Aurelionite_SKIN";
val9.nameToken = "Lemurian_Aurelionite_SKIN";
SkinDef val10 = Object.Instantiate<SkinDef>(val);
val10.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val10.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val10.rootObject = ((Component)componentInChildren).gameObject;
val10.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_Seeker.matSeeker_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val10.skinDefParams.meshReplacements[0].renderer = component;
val10.skinDefParams.meshReplacements[1].renderer = component2;
val10.icon = Skins.CreateSkinIcon(new Color(0.83137256f, 56f / 85f, 20f / 51f), new Color(4f / 15f, 46f / 85f, 0.6431373f), new Color(0.4f, 33f / 85f, 8f / 15f), new Color(13f / 85f, 0.1764706f, 0.32156864f));
((Object)val10).name = "Lemurian_Engine_SKIN";
val10.nameToken = "Lemurian_Engine_SKIN";
SkinDef val11 = Object.Instantiate<SkinDef>(val);
val11.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val11.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val11.rootObject = ((Component)componentInChildren).gameObject;
val11.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_FalseSon.matFalseSon_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val11.skinDefParams.meshReplacements[0].renderer = component;
val11.skinDefParams.meshReplacements[1].renderer = component2;
val11.icon = Skins.CreateSkinIcon(new Color(0.56078434f, 0.20784314f, 19f / 85f), new Color(43f / 51f, 0.8901961f, 0.9411765f), new Color(1f / 3f, 24f / 85f, 29f / 85f), new Color(26f / 51f, 0.64705884f, 53f / 85f));
((Object)val11).name = "Lemurian_False_SKIN";
val11.nameToken = "Lemurian_False_SKIN";
SkinDef val12 = Object.Instantiate<SkinDef>(val);
val12.skinDefParams = Object.Instantiate<SkinDefParams>(val2);
val12.skinDefParamsAddress = new AssetReferenceT<SkinDefParams>("");
val12.rootObject = ((Component)componentInChildren).gameObject;
val12.skinDefParams.rendererInfos = (RendererInfo[])(object)new RendererInfo[2]
{
new RendererInfo
{
renderer = component,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_DLC2_Scorchling.matScorchling_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
},
new RendererInfo
{
renderer = component2,
defaultMaterial = Addressables.LoadAssetAsync<Material>((object)RoR2_Base_LunarExploder.matLunarExploder_mat).WaitForCompletion(),
defaultShadowCastingMode = (ShadowCastingMode)1,
ignoreOverlays = false
}
};
val12.skinDefParams.meshReplacements[0].renderer = component;
val12.skinDefParams.meshReplacements[1].renderer = component2;
val12.icon = Skins.CreateSkinIcon(new Color(0.99607843f, 0.827451f, 0.41960785f), new Color(1f, 0.4f, 0.003921569f), new Color(41f / 51f, 0f, 3f / 85f), new Color(0.6313726f, 0.19215687f, 0f));
((Object)val12).name = "Lemurian_Scorch_SKIN";
val12.nameToken = "Lemurian_Scorch_SKIN";
List<SkinDef> list = new List<SkinDef> { val3, val4, val5, val6, val7, val8, val9, val10, val11, val12 };
((Component)componentInChildren).gameObject.GetComponent<ModelSkinController>().skins = list.ToArray();
}
}
public class LunarExploderMain : GenericCharacterMain
{
private float stopWatch;
private GameObject deathPreExplosionInstance;
private Transform muzzleTransform;
private Animator animator;
public GameObject projectilePrefab;
public static GameObject exploprefab;
private GameObject aimSphere;
public override void OnEnter()
{
//IL_0050: Unknown result type (might be due to invalid IL or missing references)
((GenericCharacterMain)this).OnEnter();
CrosshairUtils.RequestOverrideForBody(((EntityState)this).characterBody, LemPrefabs.LunarChPrefab, (OverridePriority)0);
animator = ((EntityState)this).GetModelAnimator();
aimSphere = Object.Instantiate<GameObject>(LemPrefabs.LemDicator);
aimSphere.transform.localScale = new Vector3(2.5f, 2.5f, 2.5f);
}
public override void Update()
{
((GenericCharacterMain)this).Update();
if (!LunarExploder.sprintingenabled.Value & ((EntityState)this).characterBody.isSprinting)
{
animator.SetBool("isSprinting", false);
}
}
public override void FixedUpdate()
{
//IL_0062: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_009e: Unknown result type (might be due to invalid IL or missing references)
//IL_00a8: Unknown result type (might be due to invalid IL or missing references)
//IL_0117: Unknown result type (might be due to invalid IL or missing references)
//IL_011e: Expected O, but got Unknown
//IL_0134: Unknown result type (might be due to invalid IL or missing references)
//IL_0139: Unknown result type (might be due to invalid IL or missing references)
//IL_0140: Unknown result type (might be due to invalid IL or missing references)
//IL_014b: Unknown result type (might be due to invalid IL or missing references)
//IL_015c: Expected O, but got Unknown
//IL_0162: Unknown result type (might be due to invalid IL or missing references)
//IL_0167: Unknown result type (might be due to invalid IL or missing references)
//IL_016e: Unknown result type (might be due to invalid IL or missing references)
//IL_0179: Unknown result type (might be due to invalid IL or missing references)
//IL_018a: Expected O, but got Unknown
//IL_01a0: Unknown result type (might be due to invalid IL or missing references)
//IL_01aa: Unknown result type (might be due to invalid IL or missing references)
//IL_01af: Unknown result type (might be due to invalid IL or missing references)
//IL_01b3: 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)
//IL_01fb: Invalid comparison between Unknown and I4
//IL_024e: Unknown result type (might be due to invalid IL or missing references)
//IL_026a: Unknown result type (might be due to invalid IL or missing references)
//IL_0276: Unknown result type (might be due to invalid IL or missing references)
//IL_02a9: Unknown result type (might be due to invalid IL or missing references)
//IL_02ae: Unknown result type (might be due to invalid IL or missing references)
//IL_02b6: Unknown result type (might be due to invalid IL or missing references)
//IL_02c1: Unknown result type (might be due to invalid IL or missing references)
//IL_02d2: Expected O, but got Unknown
((GenericCharacterMain)this).FixedUpdate();
if (((EntityState)this).characterBody.healthComponent.isHealthLow && !Object.op_Implicit((Object)(object)deathPreExplosionInstance) && !((EntityState)this).characterBody.HasBuff(Buffs.ExplodeBuff))
{
muzzleTransform = ((BaseState)this).FindModelChild(DeathState.muzzleName);
deathPreExplosionInstance = Object.Instantiate<GameObject>(DeathState.deathPreExplosionVFX, muzzleTransform.position, muzzleTransform.rotation);
deathPreExplosionInstance.transform.parent = muzzleTransform;
deathPreExplosionInstance.transform.localScale = Vector3.one * DeathState.deathExplosionRadius;
ScaleParticleSystemDuration component = deathPreExplosionInstance.GetComponent<ScaleParticleSystemDuration>();
if (Object.op_Implicit((Object)(object)component))
{
component.newDuration = 2f;
}
}
if (!Object.op_Implicit((Object)(object)deathPreExplosionInstance))
{
return;
}
stopWatch += Time.fixedDeltaTime;
if (!