using System;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Logging;
using HG.Reflection;
using IL.RoR2;
using Microsoft.CodeAnalysis;
using Mono.Cecil;
using Mono.Cecil.Cil;
using MonoMod.Cil;
using R2API;
using RoR2;
using RoR2.Items;
using RoR2BepInExPack.GameAssetPaths.Version_1_39_0;
using ShaderSwapper;
using UnityEngine;
using UnityEngine.AddressableAssets;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: OptIn]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("DegenerateItems")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+57a5fd3f5b7771a9971c4662098712c06a558f8f")]
[assembly: AssemblyProduct("DegenerateItems")]
[assembly: AssemblyTitle("DegenerateItems")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
internal sealed class EmbeddedAttribute : Attribute
{
}
}
namespace System.Runtime.CompilerServices
{
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
internal sealed class RefSafetyRulesAttribute : Attribute
{
public readonly int Version;
public RefSafetyRulesAttribute(int P_0)
{
Version = P_0;
}
}
}
namespace DegenerateItems
{
internal class BunnyEars
{
public class BunnyEarsBehavior : BaseItemBodyBehavior
{
[ItemDefAssociation(useOnServer = true, useOnClient = true)]
private static ItemDef GetItemDef()
{
return BunnyEarsDef;
}
private int GetStackCount()
{
return base.stack;
}
}
[CompilerGenerated]
private static class <>O
{
public static StatHookEventHandler <0>__RecalculateStatsAPI_GetStatCoefficients;
}
[Serializable]
[CompilerGenerated]
private sealed class <>c
{
public static readonly <>c <>9 = new <>c();
public static Func<Instruction, bool> <>9__1_1;
public static Func<Instruction, bool> <>9__1_2;
public static Func<Instruction, bool> <>9__1_3;
public static Func<Instruction, bool> <>9__1_4;
public static Func<HealthComponent, DamageInfo, float, float> <>9__1_5;
public static Manipulator <>9__1_0;
internal void <Init>b__1_0(ILContext il)
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
//IL_0007: Expected O, but got Unknown
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
//IL_00ab: Unknown result type (might be due to invalid IL or missing references)
//IL_00b7: Unknown result type (might be due to invalid IL or missing references)
//IL_00eb: Unknown result type (might be due to invalid IL or missing references)
ILCursor val = new ILCursor(il);
if (val.TryGotoNext((MoveType)1, new Func<Instruction, bool>[4]
{
(Instruction x) => ILPatternMatchingExt.MatchLdloc(x, 1),
(Instruction x) => ILPatternMatchingExt.MatchCallvirt<CharacterMaster>(x, "get_inventory"),
(Instruction x) => ILPatternMatchingExt.MatchLdsfld(x, typeof(Items), "NearbyDamageBonus"),
(Instruction x) => ILPatternMatchingExt.MatchCallvirt<Inventory>(x, "GetItemCountEffective")
}))
{
val.Emit(OpCodes.Ldarg_0);
val.Emit(OpCodes.Ldarg_1);
val.Emit(OpCodes.Ldloc_S, (byte)10);
val.EmitDelegate<Func<HealthComponent, DamageInfo, float, float>>((Func<HealthComponent, DamageInfo, float, float>)delegate(HealthComponent self, DamageInfo damageInfo, float accumulatedDamage)
{
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0040: Unknown result type (might be due to invalid IL or missing references)
//IL_0045: Unknown result type (might be due to invalid IL or missing references)
//IL_004a: Unknown result type (might be due to invalid IL or missing references)
//IL_005a: 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_008f: Unknown result type (might be due to invalid IL or missing references)
//IL_009a: Unknown result type (might be due to invalid IL or missing references)
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
CharacterBody component = damageInfo.attacker.GetComponent<CharacterBody>();
if ((Object)(object)component != (Object)null)
{
int num = (Object.op_Implicit((Object)(object)component.inventory) ? component.inventory.GetItemCount(BunnyEarsDef) : 0);
Vector3 val2 = component.corePosition - damageInfo.position;
if (num > 0 && damageInfo.attacker.transform.position.y > ((Component)self.body).gameObject.transform.position.y + self.body.radius)
{
damageInfo.damageColorIndex = (DamageColorIndex)10;
EffectManager.SimpleImpactEffect(AssetReferences.diamondDamageBonusImpactEffectPrefab, damageInfo.position, val2, true);
return accumulatedDamage * (1f + (float)num * 0.1f);
}
}
return accumulatedDamage;
});
val.Emit(OpCodes.Stloc_S, (byte)10);
}
else
{
Log.Error(((MemberReference)il.Method).Name + " IL Hook failed!");
}
}
internal bool <Init>b__1_1(Instruction x)
{
return ILPatternMatchingExt.MatchLdloc(x, 1);
}
internal bool <Init>b__1_2(Instruction x)
{
return ILPatternMatchingExt.MatchCallvirt<CharacterMaster>(x, "get_inventory");
}
internal bool <Init>b__1_3(Instruction x)
{
return ILPatternMatchingExt.MatchLdsfld(x, typeof(Items), "NearbyDamageBonus");
}
internal bool <Init>b__1_4(Instruction x)
{
return ILPatternMatchingExt.MatchCallvirt<Inventory>(x, "GetItemCountEffective");
}
internal float <Init>b__1_5(HealthComponent self, DamageInfo damageInfo, float accumulatedDamage)
{
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0040: Unknown result type (might be due to invalid IL or missing references)
//IL_0045: Unknown result type (might be due to invalid IL or missing references)
//IL_004a: Unknown result type (might be due to invalid IL or missing references)
//IL_005a: 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_008f: Unknown result type (might be due to invalid IL or missing references)
//IL_009a: Unknown result type (might be due to invalid IL or missing references)
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
CharacterBody component = damageInfo.attacker.GetComponent<CharacterBody>();
if ((Object)(object)component != (Object)null)
{
int num = (Object.op_Implicit((Object)(object)component.inventory) ? component.inventory.GetItemCount(BunnyEarsDef) : 0);
Vector3 val = component.corePosition - damageInfo.position;
if (num > 0 && damageInfo.attacker.transform.position.y > ((Component)self.body).gameObject.transform.position.y + self.body.radius)
{
damageInfo.damageColorIndex = (DamageColorIndex)10;
EffectManager.SimpleImpactEffect(AssetReferences.diamondDamageBonusImpactEffectPrefab, damageInfo.position, val, true);
return accumulatedDamage * (1f + (float)num * 0.1f);
}
}
return accumulatedDamage;
}
}
public static ItemDef BunnyEarsDef;
internal static void Init()
{
//IL_0064: Unknown result type (might be due to invalid IL or missing references)
//IL_0069: Unknown result type (might be due to invalid IL or missing references)
//IL_00d7: Unknown result type (might be due to invalid IL or missing references)
//IL_0106: Unknown result type (might be due to invalid IL or missing references)
//IL_0138: Unknown result type (might be due to invalid IL or missing references)
//IL_0142: Expected O, but got Unknown
//IL_0153: Unknown result type (might be due to invalid IL or missing references)
//IL_0158: Unknown result type (might be due to invalid IL or missing references)
//IL_015e: Expected O, but got Unknown
//IL_0177: Unknown result type (might be due to invalid IL or missing references)
//IL_017c: Unknown result type (might be due to invalid IL or missing references)
//IL_0182: Expected O, but got Unknown
CreateLang();
BunnyEarsDef = ScriptableObject.CreateInstance<ItemDef>();
((Object)BunnyEarsDef).name = "DEGENERATEITEMS_BUNNYEARS_NAME";
BunnyEarsDef.nameToken = "DEGENERATEITEMS_BUNNYEARS_NAME";
BunnyEarsDef.pickupToken = "DEGENERATEITEMS_BUNNYEARS_PICKUP";
BunnyEarsDef.descriptionToken = "DEGENERATEITEMS_BUNNYEARS_DESC";
BunnyEarsDef.loreToken = "DEGENERATEITEMS_BUNNYEARS_LORE";
BunnyEarsDef._itemTierDef = Addressables.LoadAssetAsync<ItemTierDef>((object)"RoR2/Base/Common/Tier1Def.asset").WaitForCompletion();
BunnyEarsDef.pickupIconSprite = DegenerateItems.DegenerateItemsAssets.LoadAsset<Sprite>("bunnyears.png");
BunnyEarsDef.pickupModelPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab");
BunnyEarsDef.tags = (ItemTag[])(object)new ItemTag[2]
{
(ItemTag)31,
(ItemTag)29
};
ModelPanelParameters obj = BunnyEarsDef.pickupModelPrefab.AddComponent<ModelPanelParameters>();
obj.focusPointTransform = new GameObject("FocusPoint").transform;
obj.focusPointTransform.SetParent(BunnyEarsDef.pickupModelPrefab.transform);
obj.cameraPositionTransform = new GameObject("CameraPosition").transform;
obj.cameraPositionTransform.SetParent(BunnyEarsDef.pickupModelPrefab.transform);
ItemAPI.Add(new CustomItem(BunnyEarsDef, ItemDisplayTransformations()));
object obj2 = <>O.<0>__RecalculateStatsAPI_GetStatCoefficients;
if (obj2 == null)
{
StatHookEventHandler val = RecalculateStatsAPI_GetStatCoefficients;
<>O.<0>__RecalculateStatsAPI_GetStatCoefficients = val;
obj2 = (object)val;
}
RecalculateStatsAPI.GetStatCoefficients += (StatHookEventHandler)obj2;
object obj3 = <>c.<>9__1_0;
if (obj3 == null)
{
Manipulator val2 = delegate(ILContext il)
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
//IL_0007: Expected O, but got Unknown
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
//IL_00ab: Unknown result type (might be due to invalid IL or missing references)
//IL_00b7: Unknown result type (might be due to invalid IL or missing references)
//IL_00eb: Unknown result type (might be due to invalid IL or missing references)
ILCursor val3 = new ILCursor(il);
if (val3.TryGotoNext((MoveType)1, new Func<Instruction, bool>[4]
{
(Instruction x) => ILPatternMatchingExt.MatchLdloc(x, 1),
(Instruction x) => ILPatternMatchingExt.MatchCallvirt<CharacterMaster>(x, "get_inventory"),
(Instruction x) => ILPatternMatchingExt.MatchLdsfld(x, typeof(Items), "NearbyDamageBonus"),
(Instruction x) => ILPatternMatchingExt.MatchCallvirt<Inventory>(x, "GetItemCountEffective")
}))
{
val3.Emit(OpCodes.Ldarg_0);
val3.Emit(OpCodes.Ldarg_1);
val3.Emit(OpCodes.Ldloc_S, (byte)10);
val3.EmitDelegate<Func<HealthComponent, DamageInfo, float, float>>((Func<HealthComponent, DamageInfo, float, float>)delegate(HealthComponent self, DamageInfo damageInfo, float accumulatedDamage)
{
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0040: Unknown result type (might be due to invalid IL or missing references)
//IL_0045: Unknown result type (might be due to invalid IL or missing references)
//IL_004a: Unknown result type (might be due to invalid IL or missing references)
//IL_005a: 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_008f: Unknown result type (might be due to invalid IL or missing references)
//IL_009a: Unknown result type (might be due to invalid IL or missing references)
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
CharacterBody component = damageInfo.attacker.GetComponent<CharacterBody>();
if ((Object)(object)component != (Object)null)
{
int num = (Object.op_Implicit((Object)(object)component.inventory) ? component.inventory.GetItemCount(BunnyEarsDef) : 0);
Vector3 val4 = component.corePosition - damageInfo.position;
if (num > 0 && damageInfo.attacker.transform.position.y > ((Component)self.body).gameObject.transform.position.y + self.body.radius)
{
damageInfo.damageColorIndex = (DamageColorIndex)10;
EffectManager.SimpleImpactEffect(AssetReferences.diamondDamageBonusImpactEffectPrefab, damageInfo.position, val4, true);
return accumulatedDamage * (1f + (float)num * 0.1f);
}
}
return accumulatedDamage;
});
val3.Emit(OpCodes.Stloc_S, (byte)10);
}
else
{
Log.Error(((MemberReference)il.Method).Name + " IL Hook failed!");
}
};
<>c.<>9__1_0 = val2;
obj3 = (object)val2;
}
HealthComponent.TakeDamageProcess += (Manipulator)obj3;
}
private static void RecalculateStatsAPI_GetStatCoefficients(CharacterBody sender, StatHookEventArgs args)
{
int num = (Object.op_Implicit((Object)(object)sender.inventory) ? sender.inventory.GetItemCount(BunnyEarsDef) : 0);
args.jumpPowerMultAdd += 0.1f * (float)num;
}
public static void CreateLang()
{
LanguageAPI.Add("DEGENERATEITEMS_BUNNYEARS_NAME", "Bunny Ears");
LanguageAPI.Add("DEGENERATEITEMS_BUNNYEARS_LORE", "\"bunny bunny bunny bunny bunny bunny\"\n\nTwo long pillars rise from the earth, capable of hearing across the cosmos.\n\n\"Brother, what are you-\"\n\n\"bunny bunny bunny bunny bunny bunny\"\n\nA small body, fitting of a warrior.\n\n\"I don't understan-\"\n\n\"bunny bunny bunny bunny bunny bunny\"\n\nTwo legs, capable of darting across the planet in a matter of hours.\n\n\"BROTHER.\"\n\n\"bunny bunny bunn-\"\n\nA loud slam shakes the earth. A pile of dust remains.");
LanguageAPI.Add("DEGENERATEITEMS_BUNNYEARS_PICKUP", "Gain extra jump height. Enemies below you take more damage.");
LanguageAPI.Add("DEGENERATEITEMS_BUNNYEARS_DESC", "Gain <style=cIsUtility>10%</style> <style=cStack>(+10% per stack)</style> jump height. Enemies below you take <style=cIsDamage>10%</style> <style=cStack>(+10% per stack)</style> more damage.");
}
public static ItemDisplayRuleDict ItemDisplayTransformations()
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
//IL_0007: Expected O, but got Unknown
//IL_0017: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_0058: Unknown result type (might be due to invalid IL or missing references)
//IL_005d: Unknown result type (might be due to invalid IL or missing references)
//IL_0073: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: 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_0099: 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_00bc: Unknown result type (might be due to invalid IL or missing references)
//IL_00f4: Unknown result type (might be due to invalid IL or missing references)
//IL_00f9: 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_0114: Unknown result type (might be due to invalid IL or missing references)
//IL_012a: Unknown result type (might be due to invalid IL or missing references)
//IL_012f: Unknown result type (might be due to invalid IL or missing references)
//IL_0134: Unknown result type (might be due to invalid IL or missing references)
//IL_0135: Unknown result type (might be due to invalid IL or missing references)
//IL_014f: Unknown result type (might be due to invalid IL or missing references)
//IL_0158: Unknown result type (might be due to invalid IL or missing references)
//IL_0190: Unknown result type (might be due to invalid IL or missing references)
//IL_0195: Unknown result type (might be due to invalid IL or missing references)
//IL_01ab: 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_01c6: Unknown result type (might be due to invalid IL or missing references)
//IL_01cb: Unknown result type (might be due to invalid IL or missing references)
//IL_01d0: Unknown result type (might be due to invalid IL or missing references)
//IL_01d1: Unknown result type (might be due to invalid IL or missing references)
//IL_01eb: 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_022c: Unknown result type (might be due to invalid IL or missing references)
//IL_0231: Unknown result type (might be due to invalid IL or missing references)
//IL_0247: Unknown result type (might be due to invalid IL or missing references)
//IL_024c: Unknown result type (might be due to invalid IL or missing references)
//IL_0262: Unknown result type (might be due to invalid IL or missing references)
//IL_0267: Unknown result type (might be due to invalid IL or missing references)
//IL_026c: Unknown result type (might be due to invalid IL or missing references)
//IL_026d: 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_0290: Unknown result type (might be due to invalid IL or missing references)
//IL_02c8: 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_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_02fe: Unknown result type (might be due to invalid IL or missing references)
//IL_0303: 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_0309: Unknown result type (might be due to invalid IL or missing references)
//IL_0323: Unknown result type (might be due to invalid IL or missing references)
//IL_032c: Unknown result type (might be due to invalid IL or missing references)
//IL_0364: Unknown result type (might be due to invalid IL or missing references)
//IL_0369: 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_0384: Unknown result type (might be due to invalid IL or missing references)
//IL_039a: Unknown result type (might be due to invalid IL or missing references)
//IL_039f: Unknown result type (might be due to invalid IL or missing references)
//IL_03a4: 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_03bf: 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_0400: Unknown result type (might be due to invalid IL or missing references)
//IL_0405: Unknown result type (might be due to invalid IL or missing references)
//IL_041b: Unknown result type (might be due to invalid IL or missing references)
//IL_0420: Unknown result type (might be due to invalid IL or missing references)
//IL_0436: Unknown result type (might be due to invalid IL or missing references)
//IL_043b: 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_0441: Unknown result type (might be due to invalid IL or missing references)
//IL_045b: Unknown result type (might be due to invalid IL or missing references)
//IL_0464: 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_04a1: Unknown result type (might be due to invalid IL or missing references)
//IL_04b7: Unknown result type (might be due to invalid IL or missing references)
//IL_04bc: Unknown result type (might be due to invalid IL or missing references)
//IL_04d2: Unknown result type (might be due to invalid IL or missing references)
//IL_04d7: Unknown result type (might be due to invalid IL or missing references)
//IL_04dc: Unknown result type (might be due to invalid IL or missing references)
//IL_04dd: Unknown result type (might be due to invalid IL or missing references)
//IL_04f7: Unknown result type (might be due to invalid IL or missing references)
//IL_0500: Unknown result type (might be due to invalid IL or missing references)
//IL_0538: Unknown result type (might be due to invalid IL or missing references)
//IL_053d: Unknown result type (might be due to invalid IL or missing references)
//IL_0553: Unknown result type (might be due to invalid IL or missing references)
//IL_0558: Unknown result type (might be due to invalid IL or missing references)
//IL_056e: Unknown result type (might be due to invalid IL or missing references)
//IL_0573: Unknown result type (might be due to invalid IL or missing references)
//IL_0578: Unknown result type (might be due to invalid IL or missing references)
//IL_0579: Unknown result type (might be due to invalid IL or missing references)
//IL_0593: Unknown result type (might be due to invalid IL or missing references)
//IL_059c: Unknown result type (might be due to invalid IL or missing references)
//IL_05d4: Unknown result type (might be due to invalid IL or missing references)
//IL_05d9: Unknown result type (might be due to invalid IL or missing references)
//IL_05ef: 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_060a: Unknown result type (might be due to invalid IL or missing references)
//IL_060f: Unknown result type (might be due to invalid IL or missing references)
//IL_0614: Unknown result type (might be due to invalid IL or missing references)
//IL_0615: Unknown result type (might be due to invalid IL or missing references)
//IL_062f: Unknown result type (might be due to invalid IL or missing references)
//IL_0638: Unknown result type (might be due to invalid IL or missing references)
//IL_0670: 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_068b: Unknown result type (might be due to invalid IL or missing references)
//IL_0690: Unknown result type (might be due to invalid IL or missing references)
//IL_06a6: Unknown result type (might be due to invalid IL or missing references)
//IL_06ab: Unknown result type (might be due to invalid IL or missing references)
//IL_06b0: Unknown result type (might be due to invalid IL or missing references)
//IL_06b1: Unknown result type (might be due to invalid IL or missing references)
//IL_06cb: Unknown result type (might be due to invalid IL or missing references)
//IL_06d4: Unknown result type (might be due to invalid IL or missing references)
//IL_070c: Unknown result type (might be due to invalid IL or missing references)
//IL_0711: Unknown result type (might be due to invalid IL or missing references)
//IL_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_0742: Unknown result type (might be due to invalid IL or missing references)
//IL_0747: 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_074d: Unknown result type (might be due to invalid IL or missing references)
//IL_0767: Unknown result type (might be due to invalid IL or missing references)
//IL_0770: Unknown result type (might be due to invalid IL or missing references)
//IL_07a8: Unknown result type (might be due to invalid IL or missing references)
//IL_07ad: Unknown result type (might be due to invalid IL or missing references)
//IL_07c3: Unknown result type (might be due to invalid IL or missing references)
//IL_07c8: Unknown result type (might be due to invalid IL or missing references)
//IL_07de: 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_07e8: Unknown result type (might be due to invalid IL or missing references)
//IL_07e9: Unknown result type (might be due to invalid IL or missing references)
//IL_0803: Unknown result type (might be due to invalid IL or missing references)
//IL_080c: 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_0849: 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_0864: Unknown result type (might be due to invalid IL or missing references)
//IL_087a: Unknown result type (might be due to invalid IL or missing references)
//IL_087f: Unknown result type (might be due to invalid IL or missing references)
//IL_0884: Unknown result type (might be due to invalid IL or missing references)
//IL_0885: Unknown result type (might be due to invalid IL or missing references)
ItemDisplayRuleDict val = new ItemDisplayRuleDict((ItemDisplayRule[])null);
val.Add("mdlRailGunner", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(-0.00018f, 0.21757f, -0.02505f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(5f, 5.0945f, 4f)
}
});
val.Add("mdlCommandoDualies", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0f, 0.37f, 0f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(8f, 8f, 7f)
}
});
val.Add("mdlHuntress", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0.00034f, 0.30211f, -0.03092f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(6f, 6f, 5f)
}
});
val.Add("mdlBandit2", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(-0.00064f, 0.21457f, 0.01593f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(6f, 6f, 4.5f)
}
});
val.Add("mdlToolbot", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(-0.02132f, 1.20084f, 1.23591f),
localAngles = new Vector3(358.7148f, 266.8632f, 304.8483f),
localScale = new Vector3(80f, 80f, 80f)
}
});
val.Add("mdlEngi", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Chest",
localPos = new Vector3(-0.00031f, 0.72016f, 0.04837f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(8f, 8f, 7f)
}
});
val.Add("mdlMage", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0.00097f, 0.17821f, -0.0016f),
localAngles = new Vector3(359.9852f, 90.08691f, 16.1103f),
localScale = new Vector3(6f, 6f, 4f)
}
});
val.Add("mdlMerc", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0.00051f, 0.24972f, 0.0256f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(6f, 6f, 5f)
}
});
val.Add("mdlLoader", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0.00068f, 0.24076f, 0.00063f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(6f, 6f, 5.5f)
}
});
val.Add("mdlCaptain", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0.0011f, 0.23103f, 0.01163f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(7f, 7f, 5.5f)
}
});
val.Add("mdlVoidSurvivor", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(0.01027f, 0.18881f, -0.00274f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(8f, 8f, 7f)
}
});
val.Add("mdlSeeker", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(-0.00528f, 0.23442f, -0.00311f),
localAngles = new Vector3(0f, 90f, 0f),
localScale = new Vector3(6f, 6f, 5f)
}
});
val.Add("mdlDroneTech", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(-0.22721f, 0.01121f, -0.00024f),
localAngles = new Vector3(0f, 0f, 90f),
localScale = new Vector3(8f, 8f, 0.7f)
}
});
val.Add("mdlDrifter", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("bunnyears_curve.prefab"),
childName = "Head",
localPos = new Vector3(-0.31011f, 0.00211f, 0.00769f),
localAngles = new Vector3(0f, 180f, 270f),
localScale = new Vector3(8f, 8f, 7f)
}
});
return val;
}
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("acanthi.DegenerateItems", "DegenerateItems", "1.0.0")]
public class DegenerateItems : BaseUnityPlugin
{
public const string PluginGUID = "acanthi.DegenerateItems";
public const string PluginAuthor = "acanthi";
public const string PluginName = "DegenerateItems";
public const string PluginVersion = "1.0.0";
public static AssetBundle DegenerateItemsAssets;
public void Awake()
{
Log.Init(((BaseUnityPlugin)this).Logger);
using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("DegenerateItems.degenerateitems_assets"))
{
DegenerateItemsAssets = AssetBundle.LoadFromStream(stream);
}
((MonoBehaviour)this).StartCoroutine(ShaderSwapper.UpgradeStubbedShadersAsync(DegenerateItemsAssets));
BunnyEars.Init();
HeavenTranmitter.Init();
}
}
internal class HeavenTranmitter
{
public class HeavenTransmitterBehavior : BaseItemBodyBehavior, IOnDamageDealtServerReceiver
{
[ItemDefAssociation(useOnServer = true, useOnClient = true)]
private static ItemDef GetItemDef()
{
return HeavenTransmitterDef;
}
private int GetStackCount()
{
return base.stack;
}
private void OnEnable()
{
Debug.Log((object)"Skibidi Enabled");
}
private void OnDisable()
{
Debug.Log((object)"Skibidi Disabled");
}
private int GetScrapCount(CharacterBody body)
{
return body.inventory.GetItemCountEffective(Items.ScrapWhite) + body.inventory.GetItemCountEffective(Items.ScrapGreen) + body.inventory.GetItemCountEffective(Items.RegeneratingScrap) + body.inventory.GetItemCountEffective(Items.ScrapRed) + body.inventory.GetItemCountEffective(Items.ScrapYellow) + body.inventory.GetItemCountEffective(Items.ScrapWhiteSuppressed) + body.inventory.GetItemCountEffective(Items.ScrapGreenSuppressed) + body.inventory.GetItemCountEffective(Items.ScrapRedSuppressed);
}
public void OnDamageDealtServer(DamageReport damageReport)
{
//IL_0022: Unknown result type (might be due to invalid IL or missing references)
//IL_0027: 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_0073: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: 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_0087: 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_011b: 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_0124: Unknown result type (might be due to invalid IL or missing references)
//IL_0129: 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_013f: Unknown result type (might be due to invalid IL or missing references)
//IL_0150: Unknown result type (might be due to invalid IL or missing references)
//IL_0151: 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_015b: Unknown result type (might be due to invalid IL or missing references)
//IL_0162: Unknown result type (might be due to invalid IL or missing references)
//IL_0163: Unknown result type (might be due to invalid IL or missing references)
//IL_0164: Unknown result type (might be due to invalid IL or missing references)
//IL_0169: 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_016b: Unknown result type (might be due to invalid IL or missing references)
//IL_0170: Unknown result type (might be due to invalid IL or missing references)
//IL_017b: Unknown result type (might be due to invalid IL or missing references)
//IL_018e: Expected O, but got Unknown
//IL_0193: Unknown result type (might be due to invalid IL or missing references)
//IL_0198: Unknown result type (might be due to invalid IL or missing references)
//IL_0199: 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_01b6: Unknown result type (might be due to invalid IL or missing references)
//IL_01b7: Unknown result type (might be due to invalid IL or missing references)
//IL_01bc: Unknown result type (might be due to invalid IL or missing references)
//IL_01c1: Unknown result type (might be due to invalid IL or missing references)
//IL_01cc: Expected O, but got Unknown
//IL_01d1: Unknown result type (might be due to invalid IL or missing references)
//IL_01d6: Unknown result type (might be due to invalid IL or missing references)
//IL_01d7: Unknown result type (might be due to invalid IL or missing references)
//IL_01dd: 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_01f5: Unknown result type (might be due to invalid IL or missing references)
//IL_01fa: Unknown result type (might be due to invalid IL or missing references)
//IL_01ff: Unknown result type (might be due to invalid IL or missing references)
//IL_020a: Expected O, but got Unknown
if (base.stack > 0 && damageReport.damageDealt > 0f && !ProcTypeAPI.HasModdedProc(damageReport.damageInfo.procChainMask, transmitterProcType) && !((Enum)damageReport.damageInfo.damageType.damageType).HasFlag((Enum)(object)(DamageType)67108864))
{
CharacterBody attackerBody = damageReport.attackerBody;
CharacterBody victimBody = damageReport.victimBody;
Vector3 position = damageReport.damageInfo.position;
ProcChainMask procChainMask = damageReport.damageInfo.procChainMask;
ProcTypeAPI.AddModdedProc(ref procChainMask, transmitterProcType);
if (Object.op_Implicit((Object)(object)attackerBody) && Object.op_Implicit((Object)(object)victimBody) && (Util.CheckRoll(baseProcChance + scrapProcChance * (float)GetScrapCount(attackerBody), attackerBody.master) || ((ProcChainMask)(ref damageReport.damageInfo.procChainMask)).HasProc((ProcType)26)))
{
float num = baseDamage + stackDamage * (float)base.stack;
float damage = Util.OnHitProcDamage(damageReport.damageInfo.damage, attackerBody.damage, num);
DamageInfo val = new DamageInfo
{
damage = damage,
damageColorIndex = (DamageColorIndex)3,
damageType = DamageTypeCombo.op_Implicit((DamageType)0),
attacker = damageReport.damageInfo.attacker,
crit = damageReport.damageInfo.crit,
force = Vector3.zero,
inflictor = null,
position = position,
procChainMask = procChainMask,
procCoefficient = 1f,
inflictedHurtbox = damageReport.damageInfo.inflictedHurtbox
};
EffectManager.SpawnEffect(impactEffect, new EffectData
{
origin = position,
scale = Convert.ToSingle(7f * victimBody.radius),
rotation = Util.QuaternionSafeLookRotation(Vector3.left)
}, true);
EffectManager.SpawnEffect(impactEffect2, new EffectData
{
origin = position,
scale = Convert.ToSingle(7f * victimBody.radius),
rotation = Util.QuaternionSafeLookRotation(Vector3.up)
}, true);
Util.PlaySound("Play_mage_m2_iceSpear_impact", ((Component)damageReport.victimBody).gameObject);
victimBody.healthComponent.TakeDamage(val);
}
}
}
}
public static ItemDef HeavenTransmitterDef;
public static GameObject itemDisplayFollowerPrefab;
public static GameObject itemDisplayPrefab = PrefabAPI.CreateEmptyPrefab("heaventransmitter_empty");
public static float baseDamage = 3.33f;
public static float stackDamage = 1.11f;
public static float baseProcChance = 5f;
public static float scrapProcChance = 2f;
private static ModdedProcType transmitterProcType;
private static GameObject impactEffect;
private static GameObject impactEffect2;
internal static void Init()
{
//IL_000a: Unknown result type (might be due to invalid IL or missing references)
//IL_000f: Unknown result type (might be due to invalid IL or missing references)
//IL_0021: Unknown result type (might be due to invalid IL or missing references)
//IL_0026: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Unknown result type (might be due to invalid IL or missing references)
//IL_0038: Unknown result type (might be due to invalid IL or missing references)
//IL_009c: Unknown result type (might be due to invalid IL or missing references)
//IL_00a1: Unknown result type (might be due to invalid IL or missing references)
//IL_010f: Unknown result type (might be due to invalid IL or missing references)
//IL_013e: Unknown result type (might be due to invalid IL or missing references)
//IL_01c4: Unknown result type (might be due to invalid IL or missing references)
//IL_01ce: Expected O, but got Unknown
CreateLang();
impactEffect = Addressables.LoadAssetAsync<GameObject>((object)RoR2_DLC3_VultureHunter.XiSpearImpactVisual_prefab).WaitForCompletion();
impactEffect2 = Addressables.LoadAssetAsync<GameObject>((object)RoR2_DLC1_MajorAndMinorConstruct.MajorConstructSecondMuzzleFlash_prefab).WaitForCompletion();
transmitterProcType = ProcTypeAPI.ReserveProcType();
HeavenTransmitterDef = ScriptableObject.CreateInstance<ItemDef>();
((Object)HeavenTransmitterDef).name = "DEGENERATEITEMS_HEAVENTRANSMITTER_NAME";
HeavenTransmitterDef.nameToken = "DEGENERATEITEMS_HEAVENTRANSMITTER_NAME";
HeavenTransmitterDef.pickupToken = "DEGENERATEITEMS_HEAVENTRANSMITTER_PICKUP";
HeavenTransmitterDef.descriptionToken = "DEGENERATEITEMS_HEAVENTRANSMITTER_DESC";
HeavenTransmitterDef.loreToken = "DEGENERATEITEMS_HEAVENTRANSMITTER_LORE";
HeavenTransmitterDef._itemTierDef = Addressables.LoadAssetAsync<ItemTierDef>((object)"RoR2/Base/Common/Tier3Def.asset").WaitForCompletion();
HeavenTransmitterDef.pickupIconSprite = DegenerateItems.DegenerateItemsAssets.LoadAsset<Sprite>("heaventransmitter.png");
HeavenTransmitterDef.pickupModelPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("heaventransmitter.prefab");
HeavenTransmitterDef.tags = (ItemTag[])(object)new ItemTag[2]
{
(ItemTag)31,
(ItemTag)29
};
ModelPanelParameters obj = HeavenTransmitterDef.pickupModelPrefab.AddComponent<ModelPanelParameters>();
obj.focusPointTransform = new GameObject("FocusPoint").transform;
obj.focusPointTransform.SetParent(HeavenTransmitterDef.pickupModelPrefab.transform);
obj.cameraPositionTransform = new GameObject("CameraPosition").transform;
obj.cameraPositionTransform.SetParent(HeavenTransmitterDef.pickupModelPrefab.transform);
itemDisplayFollowerPrefab = DegenerateItems.DegenerateItemsAssets.LoadAsset<GameObject>("heaventransmitter.prefab");
itemDisplayFollowerPrefab.AddComponent<ItemDisplay>();
ItemFollower obj2 = itemDisplayPrefab.AddComponent<ItemFollower>();
obj2.followerPrefab = itemDisplayFollowerPrefab;
obj2.distanceDampTime = 0.02f;
obj2.distanceMaxSpeed = 35f;
obj2.targetObject = itemDisplayPrefab;
ItemAPI.Add(new CustomItem(HeavenTransmitterDef, ItemDisplayTransformations()));
}
private static void CreateLang()
{
LanguageAPI.Add("DEGENERATEITEMS_HEAVENTRANSMITTER_NAME", "H34V-EN Transmitter");
LanguageAPI.Add("DEGENERATEITEMS_HEAVENTRANSMITTER_LORE", "<style=cMono>\"When I awoke, I was grasping a gun. \n\nThe smell of death and metal woke me. \n\nWhen we are not connected to the network...\n\n...we are all alone.\n\nDo you understand that?\"</style>");
LanguageAPI.Add("DEGENERATEITEMS_HEAVENTRANSMITTER_PICKUP", "Chance to summon a beam of light on an enemy. Chance increases with scrap count.");
LanguageAPI.Add("DEGENERATEITEMS_HEAVENTRANSMITTER_DESC", "Gain a <style=cIsDamage>5%</style> chance for a beam of light to pierce an enemy for <style=cIsDamage>333%</style> <style=cStack>(+111% per stack)</style> TOTAL damage. Carrying any tier of <style=cIsUtility>scrap</style> increases the chance by <style=cIsDamage>2%</style>.");
}
public static ItemDisplayRuleDict ItemDisplayTransformations()
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
//IL_0007: Expected O, but got Unknown
//IL_0017: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_004e: Unknown result type (might be due to invalid IL or missing references)
//IL_0053: Unknown result type (might be due to invalid IL or missing references)
//IL_0069: Unknown result type (might be due to invalid IL or missing references)
//IL_006e: 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_0089: Unknown result type (might be due to invalid IL or missing references)
//IL_008e: Unknown result type (might be due to invalid IL or missing references)
//IL_008f: Unknown result type (might be due to invalid IL or missing references)
//IL_00a9: Unknown result type (might be due to invalid IL or missing references)
//IL_00b2: Unknown result type (might be due to invalid IL or missing references)
//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
//IL_00fb: Unknown result type (might be due to invalid IL or missing references)
//IL_0100: Unknown result type (might be due to invalid IL or missing references)
//IL_0116: Unknown result type (might be due to invalid IL or missing references)
//IL_011b: Unknown result type (might be due to invalid IL or missing references)
//IL_0120: Unknown result type (might be due to invalid IL or missing references)
//IL_0121: Unknown result type (might be due to invalid IL or missing references)
//IL_013b: 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_0172: Unknown result type (might be due to invalid IL or missing references)
//IL_0177: Unknown result type (might be due to invalid IL or missing references)
//IL_018d: Unknown result type (might be due to invalid IL or missing references)
//IL_0192: Unknown result type (might be due to invalid IL or missing references)
//IL_01a8: Unknown result type (might be due to invalid IL or missing references)
//IL_01ad: Unknown result type (might be due to invalid IL or missing references)
//IL_01b2: 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_01cd: Unknown result type (might be due to invalid IL or missing references)
//IL_01d6: Unknown result type (might be due to invalid IL or missing references)
//IL_0204: Unknown result type (might be due to invalid IL or missing references)
//IL_0209: Unknown result type (might be due to invalid IL or missing references)
//IL_021f: Unknown result type (might be due to invalid IL or missing references)
//IL_0224: Unknown result type (might be due to invalid IL or missing references)
//IL_023a: Unknown result type (might be due to invalid IL or missing references)
//IL_023f: Unknown result type (might be due to invalid IL or missing references)
//IL_0244: Unknown result type (might be due to invalid IL or missing references)
//IL_0245: 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_0268: Unknown result type (might be due to invalid IL or missing references)
//IL_0296: Unknown result type (might be due to invalid IL or missing references)
//IL_029b: Unknown result type (might be due to invalid IL or missing references)
//IL_02b1: 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_02cc: Unknown result type (might be due to invalid IL or missing references)
//IL_02d1: Unknown result type (might be due to invalid IL or missing references)
//IL_02d6: Unknown result type (might be due to invalid IL or missing references)
//IL_02d7: Unknown result type (might be due to invalid IL or missing references)
//IL_02f1: Unknown result type (might be due to invalid IL or missing references)
//IL_02fa: Unknown result type (might be due to invalid IL or missing references)
//IL_0328: Unknown result type (might be due to invalid IL or missing references)
//IL_032d: Unknown result type (might be due to invalid IL or missing references)
//IL_0343: Unknown result type (might be due to invalid IL or missing references)
//IL_0348: Unknown result type (might be due to invalid IL or missing references)
//IL_035e: 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_0368: Unknown result type (might be due to invalid IL or missing references)
//IL_0369: Unknown result type (might be due to invalid IL or missing references)
//IL_0383: Unknown result type (might be due to invalid IL or missing references)
//IL_038c: Unknown result type (might be due to invalid IL or missing references)
//IL_03ba: Unknown result type (might be due to invalid IL or missing references)
//IL_03bf: Unknown result type (might be due to invalid IL or missing references)
//IL_03d5: Unknown result type (might be due to invalid IL or missing references)
//IL_03da: Unknown result type (might be due to invalid IL or missing references)
//IL_03f0: Unknown result type (might be due to invalid IL or missing references)
//IL_03f5: Unknown result type (might be due to invalid IL or missing references)
//IL_03fa: Unknown result type (might be due to invalid IL or missing references)
//IL_03fb: Unknown result type (might be due to invalid IL or missing references)
//IL_0415: 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_044c: Unknown result type (might be due to invalid IL or missing references)
//IL_0451: Unknown result type (might be due to invalid IL or missing references)
//IL_0467: Unknown result type (might be due to invalid IL or missing references)
//IL_046c: 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_0487: Unknown result type (might be due to invalid IL or missing references)
//IL_048c: Unknown result type (might be due to invalid IL or missing references)
//IL_048d: Unknown result type (might be due to invalid IL or missing references)
//IL_04a7: Unknown result type (might be due to invalid IL or missing references)
//IL_04b0: Unknown result type (might be due to invalid IL or missing references)
//IL_04de: Unknown result type (might be due to invalid IL or missing references)
//IL_04e3: Unknown result type (might be due to invalid IL or missing references)
//IL_04f9: Unknown result type (might be due to invalid IL or missing references)
//IL_04fe: Unknown result type (might be due to invalid IL or missing references)
//IL_0514: Unknown result type (might be due to invalid IL or missing references)
//IL_0519: Unknown result type (might be due to invalid IL or missing references)
//IL_051e: Unknown result type (might be due to invalid IL or missing references)
//IL_051f: Unknown result type (might be due to invalid IL or missing references)
//IL_0539: Unknown result type (might be due to invalid IL or missing references)
//IL_0542: Unknown result type (might be due to invalid IL or missing references)
//IL_0570: Unknown result type (might be due to invalid IL or missing references)
//IL_0575: Unknown result type (might be due to invalid IL or missing references)
//IL_058b: Unknown result type (might be due to invalid IL or missing references)
//IL_0590: Unknown result type (might be due to invalid IL or missing references)
//IL_05a6: Unknown result type (might be due to invalid IL or missing references)
//IL_05ab: Unknown result type (might be due to invalid IL or missing references)
//IL_05b0: Unknown result type (might be due to invalid IL or missing references)
//IL_05b1: Unknown result type (might be due to invalid IL or missing references)
//IL_05cb: Unknown result type (might be due to invalid IL or missing references)
//IL_05d4: Unknown result type (might be due to invalid IL or missing references)
//IL_0602: Unknown result type (might be due to invalid IL or missing references)
//IL_0607: Unknown result type (might be due to invalid IL or missing references)
//IL_061d: Unknown result type (might be due to invalid IL or missing references)
//IL_0622: Unknown result type (might be due to invalid IL or missing references)
//IL_0638: 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_0642: Unknown result type (might be due to invalid IL or missing references)
//IL_0643: Unknown result type (might be due to invalid IL or missing references)
//IL_065d: Unknown result type (might be due to invalid IL or missing references)
//IL_0666: Unknown result type (might be due to invalid IL or missing references)
//IL_0694: Unknown result type (might be due to invalid IL or missing references)
//IL_0699: Unknown result type (might be due to invalid IL or missing references)
//IL_06af: Unknown result type (might be due to invalid IL or missing references)
//IL_06b4: Unknown result type (might be due to invalid IL or missing references)
//IL_06ca: Unknown result type (might be due to invalid IL or missing references)
//IL_06cf: Unknown result type (might be due to invalid IL or missing references)
//IL_06d4: Unknown result type (might be due to invalid IL or missing references)
//IL_06d5: Unknown result type (might be due to invalid IL or missing references)
//IL_06ef: Unknown result type (might be due to invalid IL or missing references)
//IL_06f8: Unknown result type (might be due to invalid IL or missing references)
//IL_0726: Unknown result type (might be due to invalid IL or missing references)
//IL_072b: Unknown result type (might be due to invalid IL or missing references)
//IL_0741: Unknown result type (might be due to invalid IL or missing references)
//IL_0746: Unknown result type (might be due to invalid IL or missing references)
//IL_075c: Unknown result type (might be due to invalid IL or missing references)
//IL_0761: 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_0767: Unknown result type (might be due to invalid IL or missing references)
//IL_0781: Unknown result type (might be due to invalid IL or missing references)
//IL_078a: Unknown result type (might be due to invalid IL or missing references)
//IL_07b8: Unknown result type (might be due to invalid IL or missing references)
//IL_07bd: Unknown result type (might be due to invalid IL or missing references)
//IL_07d3: Unknown result type (might be due to invalid IL or missing references)
//IL_07d8: Unknown result type (might be due to invalid IL or missing references)
//IL_07ee: Unknown result type (might be due to invalid IL or missing references)
//IL_07f3: Unknown result type (might be due to invalid IL or missing references)
//IL_07f8: Unknown result type (might be due to invalid IL or missing references)
//IL_07f9: Unknown result type (might be due to invalid IL or missing references)
ItemDisplayRuleDict val = new ItemDisplayRuleDict((ItemDisplayRule[])null);
val.Add("mdlRailGunner", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlCommandoDualies", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlHuntress", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlBandit2", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlToolbot", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlEngi", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Chest",
localPos = new Vector3(0.00021f, 0.94454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlMage", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlMerc", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlLoader", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlCaptain", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlVoidSurvivor", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlSeeker", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlDroneTech", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
val.Add("mdlDrifter", (ItemDisplayRule[])(object)new ItemDisplayRule[1]
{
new ItemDisplayRule
{
ruleType = (ItemDisplayRuleType)0,
followerPrefab = itemDisplayPrefab,
childName = "Head",
localPos = new Vector3(0.00021f, 0.44454f, 0.04126f),
localAngles = new Vector3(0f, 0f, 0f),
localScale = new Vector3(2f, 2f, 2f)
}
});
return val;
}
}
internal static class Log
{
private static ManualLogSource _logSource;
internal static void Init(ManualLogSource logSource)
{
_logSource = logSource;
}
internal static void Debug(object data)
{
_logSource.LogDebug(data);
}
internal static void Error(object data)
{
_logSource.LogError(data);
}
internal static void Fatal(object data)
{
_logSource.LogFatal(data);
}
internal static void Info(object data)
{
_logSource.LogInfo(data);
}
internal static void Message(object data)
{
_logSource.LogMessage(data);
}
internal static void Warning(object data)
{
_logSource.LogWarning(data);
}
}
}