Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of RMOR REFORGED v1.3.2
plugins/RMOR_Reforged/RMORMod.dll
Decompiled 2 years ago
The result has been truncated due to the large size, download it to view full contents!
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 AncientScepter; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Configuration; using BepInEx.Logging; using EmotesAPI; using EntityStates; using EntityStates.Commando.CommandoWeapon; using EntityStates.RMOR; using EntityStates.RMOR.Emotes; using EntityStates.RMOR.Primary; using EntityStates.RMOR.Secondary; using EntityStates.RMOR.Special; using EntityStates.RMOR.Utility; using EntityStates.Toolbot; using HG; using HG.BlendableTypes; using JetBrains.Annotations; using NS_KingKombatArena; using On.RoR2; using R2API; using R2API.Utils; using RMORMod; using RMORMod.Content; using RMORMod.Content.RMORSurvivor; using RMORMod.Content.RMORSurvivor.Components.Body; using RMORMod.Content.RMORSurvivor.Components.DroneProjectile; using RMORMod.Content.RMORSurvivor.Components.Master; using RMORMod.Content.RMORSurvivor.Components.Projectiles; using RMORMod.Content.Shared; using RMORMod.Content.Shared.Components.Body; using RMORMod.Modules; using RMORMod.Modules.Characters; using RMORMod.Modules.Survivors; using RMORMod.SkillStates.BaseStates; using RMOR_Reforged.Content.RMORSurvivor; using Rewired.ComponentControls.Effects; using RiskOfOptions; using RiskOfOptions.Options; using RoR2; using RoR2.Achievements; using RoR2.Audio; using RoR2.CharacterAI; using RoR2.ContentManagement; using RoR2.Orbs; using RoR2.Projectile; using RoR2.Skills; using TILER2; using TMPro; using ThinkInvisible.ClassicItems; 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.IgnoreSymbolStoreSequencePoints)] [assembly: TargetFramework(".NETStandard,Version=v2.0", FrameworkDisplayName = ".NET Standard 2.0")] [assembly: AssemblyCompany("RMORMod")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+9c28030bffab282ebdf0e25079dd39832c1649ff")] [assembly: AssemblyProduct("RMORMod")] [assembly: AssemblyTitle("RMORMod")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: UnverifiableCode] namespace EntityStates.RMOR { public class RMORMainState : GenericCharacterMain { public LocalUser localUser; public override void OnEnter() { ((GenericCharacterMain)this).OnEnter(); FindLocalUser(); } private void FindLocalUser() { if (localUser != null || !Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { return; } foreach (LocalUser readOnlyLocalUsers in LocalUserManager.readOnlyLocalUsersList) { if ((Object)(object)readOnlyLocalUsers.cachedBody == (Object)(object)((EntityState)this).characterBody) { localUser = readOnlyLocalUsers; break; } } } public override void FixedUpdate() { ((GenericCharacterMain)this).FixedUpdate(); FindLocalUser(); if (((EntityState)this).isAuthority && ((EntityState)this).characterMotor.isGrounded && localUser != null && !localUser.isUIFocused) { if (Config.GetKeyPressed(Config.KeybindEmote1)) { ((EntityState)this).outer.SetInterruptState((EntityState)(object)new Sit(), (InterruptPriority)0); } else if (Config.GetKeyPressed(Config.KeybindEmote2)) { ((EntityState)this).outer.SetInterruptState((EntityState)(object)new Spin(), (InterruptPriority)0); } else if (Config.GetKeyPressed(Config.KeybindEmoteCSS)) { ((EntityState)this).outer.SetInterruptState((EntityState)(object)new MenuPose(), (InterruptPriority)0); } } } } } namespace EntityStates.RMOR.Utility { public class BeginFocus : BeginOverclock { public static Texture2D texGaugeNemesis; public static Texture2D texGaugeArrowNemesis; public new static Material overlayMaterial; public override void LoadStats() { cancelDef = SkillDefs.UtilityOverclockCancel; buffDef = RMORMod.Content.Shared.Buffs.RMORFocus; gaugeInternal = texGaugeNemesis; gaugeArrowInternal = texGaugeArrowNemesis; internalOverlayMaterial = overlayMaterial; } } public class BeginFortify : BeginOverclock { public static Texture2D texGaugeFortify; public static Texture2D texGaugeArrowFortify; public new static Material overlayMaterial; private float barrierTimer; public override void LoadStats() { //IL_0070: Unknown result type (might be due to invalid IL or missing references) cancelDef = SkillDefs.UtilityOverclockCancel; buffDef = RMORMod.Content.Shared.Buffs.Fortify; gaugeInternal = texGaugeFortify; gaugeArrowInternal = texGaugeArrowFortify; internalOverlayMaterial = overlayMaterial; internalOverlayMaterial.SetTexture("_RemapTex", Assets.mainAssetBundle.LoadAsset<Texture>("texFortifyColor")); internalOverlayMaterial.SetColor("_TintColor", new Color(0f, 0.6f, 1f)); buffDuration = 3f; } public override void FixedUpdate() { barrierTimer += 1f; if (barrierTimer % 5f == 0f) { ((EntityState)this).healthComponent.AddBarrier(1f); } base.FixedUpdate(); } } public class BeginOverclock : BaseState { public float buffDuration = 4f; public BuffDef buffDef; public string startSoundString = "Play_MULT_shift_start"; public string endSoundString = "Play_MULT_shift_end"; public SkillDef cancelDef; private Animator modelAnimator; public float stopwatch; private float jetFireTime; private float jetStopwatch; private float timerSinceComplete; private bool beginExit; private int startStocks; private Transform leftJet; private Transform rightJet; private TemporaryOverlay tempOverlay; private CharacterModel characterModel; public static GameObject jetEffectPrefab; public static float baseExitDuration = 0.3f; public static float shortHopVelocity = 12f; public static float jetFireFrequency = 6f; public Material internalOverlayMaterial; public static Material overlayMaterial; public OverclockController overclockController; private GenericSkill skillSlot; public Texture2D gaugeInternal; public Texture2D gaugeArrowInternal; public static Texture2D texGauge; public static Texture2D texGaugeArrow; public static event Action<BeginOverclock> onAuthorityFixedUpdateGlobal; public override void OnEnter() { //IL_01cc: Unknown result type (might be due to invalid IL or missing references) //IL_01e0: Unknown result type (might be due to invalid IL or missing references) //IL_01e5: 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_0209: Unknown result type (might be due to invalid IL or missing references) //IL_020e: Unknown result type (might be due to invalid IL or missing references) //IL_022f: Unknown result type (might be due to invalid IL or missing references) //IL_0243: Unknown result type (might be due to invalid IL or missing references) //IL_0248: Unknown result type (might be due to invalid IL or missing references) //IL_0258: 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_0271: Unknown result type (might be due to invalid IL or missing references) ((BaseState)this).OnEnter(); LoadStats(); modelAnimator = ((EntityState)this).GetModelAnimator(); if (Object.op_Implicit((Object)(object)modelAnimator)) { ((EntityState)this).PlayAnimation("Overclock, Override", "SprintFWD"); } overclockController = ((EntityState)this).gameObject.GetComponent<OverclockController>(); if (((EntityState)this).isAuthority) { if (Object.op_Implicit((Object)(object)((EntityState)this).characterMotor) && !((EntityState)this).characterMotor.isGrounded && shortHopVelocity > 0f) { ((BaseState)this).SmallHop(((EntityState)this).characterMotor, shortHopVelocity); } if (Object.op_Implicit((Object)(object)overclockController)) { overclockController.StartOverclock(gaugeInternal, gaugeArrowInternal); } } if (NetworkServer.active) { BuffDef val = buffDef; if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && !((EntityState)this).characterBody.HasBuff(val)) { ((EntityState)this).characterBody.AddBuff(val); } } Util.PlaySound(startSoundString, ((EntityState)this).gameObject); skillSlot = (Object.op_Implicit((Object)(object)((EntityState)this).skillLocator) ? ((EntityState)this).skillLocator.utility : null); if (Object.op_Implicit((Object)(object)skillSlot)) { startStocks = skillSlot.stock; skillSlot.SetSkillOverride((object)this, cancelDef, (SkillOverridePriority)4); skillSlot.stock = Mathf.Min(skillSlot.maxStock, startStocks + 1); } jetFireTime = 1f / jetFireFrequency; jetStopwatch = 0f; ChildLocator modelChildLocator = ((EntityState)this).GetModelChildLocator(); if (Object.op_Implicit((Object)(object)modelChildLocator)) { leftJet = modelChildLocator.FindChild("Jetpack.L"); rightJet = modelChildLocator.FindChild("Jetpack.R"); GameObject obj = Object.Instantiate<GameObject>(jetEffectPrefab, leftJet); Transform transform = obj.transform; transform.localRotation *= Quaternion.Euler(0f, -60f, 0f); Transform transform2 = obj.transform; transform2.localPosition += new Vector3(0f, 0.6f, 0f); GameObject obj2 = Object.Instantiate<GameObject>(jetEffectPrefab, rightJet); Transform transform3 = obj2.transform; transform3.localRotation *= Quaternion.Euler(0f, 60f, 0f); Transform transform4 = obj2.transform; transform4.localPosition += new Vector3(0f, 0.6f, 0f); } if (Object.op_Implicit((Object)(object)internalOverlayMaterial) && Object.op_Implicit((Object)(object)((EntityState)this).modelLocator) && Object.op_Implicit((Object)(object)((EntityState)this).modelLocator.modelTransform) && Object.op_Implicit((Object)(object)((Component)((EntityState)this).modelLocator.modelTransform).gameObject)) { characterModel = ((Component)((EntityState)this).modelLocator.modelTransform).gameObject.GetComponent<CharacterModel>(); if (Object.op_Implicit((Object)(object)characterModel)) { tempOverlay = ((Component)characterModel).gameObject.AddComponent<TemporaryOverlay>(); tempOverlay.duration = float.PositiveInfinity; tempOverlay.animateShaderAlpha = true; tempOverlay.alphaCurve = AnimationCurve.EaseInOut(0f, 1f, 1f, 0f); tempOverlay.destroyComponentOnEnd = true; tempOverlay.originalMaterial = internalOverlayMaterial; tempOverlay.AddToCharacerModel(characterModel); } } } public virtual void LoadStats() { cancelDef = SkillDefs.UtilityOverclockCancel; buffDef = RMORMod.Content.Shared.Buffs.RMOROverclock; gaugeInternal = texGauge; gaugeArrowInternal = texGaugeArrow; internalOverlayMaterial = overlayMaterial; } public virtual float ExtendBuff(float stopwatch, float extensionTime) { return Mathf.Max(0f, stopwatch - extensionTime); } public override void OnExit() { if (Object.op_Implicit((Object)(object)skillSlot)) { skillSlot.UnsetSkillOverride((object)this, cancelDef, (SkillOverridePriority)4); skillSlot.stock = startStocks; } if (NetworkServer.active && Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && ((EntityState)this).characterBody.HasBuff(buffDef)) { ((EntityState)this).characterBody.RemoveBuff(buffDef); } if (Object.op_Implicit((Object)(object)tempOverlay)) { tempOverlay.RemoveFromCharacterModel(); Object.Destroy((Object)(object)tempOverlay); tempOverlay = null; } if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)overclockController)) { overclockController.EndOverclock(); } Util.PlaySound(endSoundString, ((EntityState)this).gameObject); if (Object.op_Implicit((Object)(object)modelAnimator)) { ((EntityState)this).PlayAnimation("Overclock, Override", "BufferEmpty"); } ((EntityState)this).OnExit(); } public override void FixedUpdate() { //IL_0053: 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_006c: Unknown result type (might be due to invalid IL or missing references) //IL_007c: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Unknown result type (might be due to invalid IL or missing references) //IL_0095: 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_00ca: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: 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_00f3: Unknown result type (might be due to invalid IL or missing references) //IL_00f8: Unknown result type (might be due to invalid IL or missing references) ((EntityState)this).FixedUpdate(); jetStopwatch += Time.fixedDeltaTime; if (jetStopwatch >= jetFireTime) { jetStopwatch -= jetFireTime; GameObject obj = Object.Instantiate<GameObject>(jetEffectPrefab, leftJet); Transform transform = obj.transform; transform.localRotation *= Quaternion.Euler(0f, -60f, 0f); Transform transform2 = obj.transform; transform2.localPosition += new Vector3(0f, 0.6f, 0f); GameObject obj2 = Object.Instantiate<GameObject>(jetEffectPrefab, rightJet); Transform transform3 = obj2.transform; transform3.localRotation *= Quaternion.Euler(0f, 60f, 0f); Transform transform4 = obj2.transform; transform4.localPosition += new Vector3(0f, 0.6f, 0f); } if (!((EntityState)this).isAuthority) { return; } stopwatch += Time.fixedDeltaTime; if (Object.op_Implicit((Object)(object)overclockController)) { stopwatch = ExtendBuff(stopwatch, overclockController.ConsumeExtensionTime()); overclockController.buffPercent = Mathf.Max(0f, buffDuration - stopwatch) / buffDuration; } if (BeginOverclock.onAuthorityFixedUpdateGlobal != null) { BeginOverclock.onAuthorityFixedUpdateGlobal(this); } if (!Object.op_Implicit((Object)(object)skillSlot) || skillSlot.stock == 0 || stopwatch >= buffDuration) { beginExit = true; } if (beginExit) { timerSinceComplete += Time.fixedDeltaTime; if (timerSinceComplete > baseExitDuration) { ((EntityState)this).outer.SetNextStateToMain(); } } } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)1; } } public class CancelOverclock : BaseState { public static float shortHopVelocity = 24f; public static GameObject jetEffectPrefab = Addressables.LoadAssetAsync<GameObject>((object)"RoR2/Base/Commando/CommandoDashJets.prefab").WaitForCompletion(); protected OverclockController overclockController; public override void OnEnter() { //IL_0053: 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_006c: Unknown result type (might be due to invalid IL or missing references) //IL_007c: Unknown result type (might be due to invalid IL or missing references) //IL_0090: Unknown result type (might be due to invalid IL or missing references) //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_00b1: 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_00ca: 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_00ee: Unknown result type (might be due to invalid IL or missing references) //IL_00f3: Unknown result type (might be due to invalid IL or missing references) ((BaseState)this).OnEnter(); Util.PlaySound("Play_commando_shift", ((EntityState)this).gameObject); ChildLocator modelChildLocator = ((EntityState)this).GetModelChildLocator(); if (Object.op_Implicit((Object)(object)modelChildLocator)) { Transform val = modelChildLocator.FindChild("Jetpack.L"); Transform val2 = modelChildLocator.FindChild("Jetpack.R"); GameObject obj = Object.Instantiate<GameObject>(jetEffectPrefab, val); Transform transform = obj.transform; transform.localRotation *= Quaternion.Euler(-60f, -90f, -60f); Transform transform2 = obj.transform; transform2.localPosition += new Vector3(0f, 0.6f, 0f); GameObject obj2 = Object.Instantiate<GameObject>(jetEffectPrefab, val2); Transform transform3 = obj2.transform; transform3.localRotation *= Quaternion.Euler(-60f, 90f, -60f); Transform transform4 = obj2.transform; transform4.localPosition += new Vector3(0f, 0.6f, 0f); } if (((EntityState)this).isAuthority) { if ((Object)(object)((EntityState)this).characterMotor != (Object)null) { ((BaseState)this).SmallHop(((EntityState)this).characterMotor, shortHopVelocity); } ((EntityState)this).outer.SetNextStateToMain(); } } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)2; } } } namespace EntityStates.RMOR.Special { public class FireSeekingDrone : BaseState { private bool hasFired; public static float damageCoefficient = 2.5f; public static GameObject projectilePrefab; public static string muzzleString; public static GameObject muzzleflashEffectPrefab; public static float baseDuration = 0.25f; public static float force = 250f; private float duration; protected bool isCrit; private HurtBox initialOrbTarget; private RMORTargetingController targetingController; public override void OnEnter() { ((BaseState)this).OnEnter(); hasFired = false; ((EntityState)this).GetModelTransform(); targetingController = ((EntityState)this).GetComponent<RMORTargetingController>(); Util.PlaySound("Play_RMOR_Drone", ((EntityState)this).gameObject); if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)targetingController)) { initialOrbTarget = targetingController.GetTrackingTarget(); } duration = baseDuration; if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { ((EntityState)this).characterBody.SetAimTimer(duration + 1f); } isCrit = ((BaseState)this).RollCrit(); } public override void OnExit() { //IL_001d: Unknown result type (might be due to invalid IL or missing references) if (!hasFired && ((EntityState)this).isAuthority) { FireProjectile(initialOrbTarget, ((EntityState)this).inputBank.aimOrigin); } ((EntityState)this).OnExit(); } private void FireProjectile(HurtBox target, Vector3 position) { //IL_0009: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_0012: 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_001f: 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_0027: Unknown result type (might be due to invalid IL or missing references) //IL_002c: Unknown result type (might be due to invalid IL or missing references) //IL_0054: 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_00ce: Unknown result type (might be due to invalid IL or missing references) //IL_00d4: 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_0086: Unknown result type (might be due to invalid IL or missing references) //IL_008f: Unknown result type (might be due to invalid IL or missing references) //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Unknown result type (might be due to invalid IL or missing references) hasFired = true; FireProjectileInfo val = default(FireProjectileInfo); val.position = position; Ray aimRay = ((BaseState)this).GetAimRay(); val.rotation = Util.QuaternionSafeLookRotation(((Ray)(ref aimRay)).direction); val.crit = ((BaseState)this).RollCrit(); val.damage = base.damageStat * damageCoefficient; val.damageColorIndex = (DamageColorIndex)0; val.owner = ((EntityState)this).gameObject; val.force = force; val.projectilePrefab = projectilePrefab; if (Object.op_Implicit((Object)(object)target)) { MissileUtils.FireMissile(position, ((EntityState)this).characterBody, default(ProcChainMask), ((Component)target).gameObject, base.damageStat * damageCoefficient, ((BaseState)this).RollCrit(), projectilePrefab, (DamageColorIndex)0, Vector3.up, force, false); } else { MissileUtils.FireMissile(position, ((EntityState)this).characterBody, default(ProcChainMask), (GameObject)null, base.damageStat * damageCoefficient, ((BaseState)this).RollCrit(), projectilePrefab, (DamageColorIndex)0, Vector3.up, force, false); } } public override void FixedUpdate() { //IL_0023: Unknown result type (might be due to invalid IL or missing references) ((EntityState)this).FixedUpdate(); if (!hasFired && ((EntityState)this).isAuthority) { FireProjectile(initialOrbTarget, ((EntityState)this).inputBank.aimOrigin); } if (((EntityState)this).fixedAge > duration && ((EntityState)this).isAuthority) { ((EntityState)this).outer.SetNextStateToMain(); } } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)1; } } } namespace EntityStates.RMOR.Secondary { public class ChargeCannon : BaseState { public static float baseDuration = 1.5f; public static string partialChargeSoundString = "Play_RMOR_SemiCharge"; public static string fullChargeSoundString = "Play_RMOR_FullCharge"; public static GameObject partialChargeEffect; public static GameObject fullChargeEffect; public static int maxChargeLevel = 3; private float duration; public int chargeLevel; public static float baseChargeDuration = 1.8f; private float minDuration; private float charge; public float chargePercent; private Animator modelAnimator; public static GameObject holdChargeVfxPrefab = ChargeSpear.holdChargeVfxPrefab; private GameObject holdChargeVfxGameObject; public override void OnEnter() { ((BaseState)this).OnEnter(); ModifyStats(); minDuration = baseChargeDuration / base.attackSpeedStat; modelAnimator = ((EntityState)this).GetModelAnimator(); if (Object.op_Implicit((Object)(object)modelAnimator)) { ((EntityState)this).PlayAnimation("Gesture, Override", "PrepCannon", "ChargeHammer.playbackRate", minDuration); } if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { ((EntityState)this).characterBody.SetAimTimer(3f); } charge = 0f; chargeLevel = 1; OverclockController component = ((EntityState)this).GetComponent<OverclockController>(); bool flag = Object.op_Implicit((Object)(object)component) && component.BuffActive(); if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && !flag) { ((EntityState)this).characterBody.isSprinting = false; } } public override void OnExit() { if (Object.op_Implicit((Object)(object)holdChargeVfxGameObject)) { EntityState.Destroy((Object)(object)holdChargeVfxGameObject); holdChargeVfxGameObject = null; } if (!((EntityState)this).outer.destroying) { ((EntityState)this).PlayAnimation("Gesture, Override", "BufferEmpty"); } ((EntityState)this).OnExit(); } public override void FixedUpdate() { ((EntityState)this).FixedUpdate(); ((EntityState)this).characterBody.SetAimTimer(3f); charge += Time.deltaTime * base.attackSpeedStat; if (chargeLevel < maxChargeLevel && charge > baseDuration) { chargeLevel++; string text = partialChargeSoundString; GameObject val = partialChargeEffect; if (chargeLevel >= maxChargeLevel) { text = fullChargeSoundString; val = fullChargeEffect; } Util.PlaySound(text, ((EntityState)this).gameObject); EffectManager.SimpleMuzzleFlash(val, ((EntityState)this).gameObject, "HandL", false); EffectManager.SimpleMuzzleFlash(val, ((EntityState)this).gameObject, "HandR", false); charge -= baseDuration; } if (chargeLevel > maxChargeLevel && charge % 3f == 0f) { GameObject obj = fullChargeEffect; EffectManager.SimpleMuzzleFlash(obj, ((EntityState)this).gameObject, "HandL", false); EffectManager.SimpleMuzzleFlash(obj, ((EntityState)this).gameObject, "HandR", false); } if (((EntityState)this).isAuthority && (!Object.op_Implicit((Object)(object)((EntityState)this).inputBank) || !((EntityState)this).inputBank.skill2.down)) { if (chargeLevel > 0) { SetNextState(); } else { ((EntityState)this).outer.SetNextStateToMain(); } } } public virtual void ModifyStats() { maxChargeLevel = 3; baseDuration = 1.5f; } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)1; } public virtual void SetNextState() { ((EntityState)this).outer.SetNextState((EntityState)(object)new FireCannon { chargeLevel = chargeLevel }); } } public class ChargeCannonScepter : ChargeCannon { public override void ModifyStats() { ChargeCannon.maxChargeLevel = 4; ChargeCannon.baseDuration = 1f; } } public class ChargeSlam : BaseState { public static float baseMinDuration = 0.5f; public static float baseChargeDuration = 1.5f; private float minDuration; private float chargeDuration; private float charge; public float chargePercent; private Animator modelAnimator; public static GameObject chargeEffectPrefab = LegacyResourcesAPI.Load<GameObject>("prefabs/effects/omnieffect/OmniImpactVFXLoader"); private bool startedChargeAnim; public static GameObject holdChargeVfxPrefab = ChargeSpear.holdChargeVfxPrefab; private GameObject holdChargeVfxGameObject; public override void OnEnter() { ((BaseState)this).OnEnter(); Util.PlaySound("Play_RMOR_StartHammer", ((EntityState)this).gameObject); minDuration = baseMinDuration / base.attackSpeedStat; modelAnimator = ((EntityState)this).GetModelAnimator(); if (Object.op_Implicit((Object)(object)modelAnimator)) { ((EntityState)this).PlayAnimation("Gesture, Override", "PrepSlash", "ChargeHammer.playbackRate", minDuration); } if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { ((EntityState)this).characterBody.SetAimTimer(3f); } charge = 0f; chargePercent = 0f; chargeDuration = baseChargeDuration / base.attackSpeedStat; OverclockController component = ((EntityState)this).GetComponent<OverclockController>(); bool flag = Object.op_Implicit((Object)(object)component) && component.BuffActive(); if (((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && !flag) { ((EntityState)this).characterBody.isSprinting = false; } } public override void OnExit() { if (Object.op_Implicit((Object)(object)holdChargeVfxGameObject)) { EntityState.Destroy((Object)(object)holdChargeVfxGameObject); holdChargeVfxGameObject = null; } if (!((EntityState)this).outer.destroying) { ((EntityState)this).PlayAnimation("Gesture, Override", "BufferEmpty"); } ((EntityState)this).OnExit(); } public override void FixedUpdate() { //IL_00e3: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_00ff: Expected O, but got Unknown ((EntityState)this).FixedUpdate(); if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { ((EntityState)this).characterBody.SetAimTimer(3f); } if (((EntityState)this).fixedAge > minDuration && charge < chargeDuration) { if (!startedChargeAnim) { startedChargeAnim = true; ((EntityState)this).PlayCrossfade("Gesture, Override", "ChargeSlash", "ChargeHammer.playbackRate", chargeDuration - minDuration, 0.2f); } charge += Time.deltaTime * base.attackSpeedStat; if (charge >= chargeDuration) { ((EntityState)this).PlayCrossfade("Gesture, Override", "FullCharge", "ChargeHammer.playbackRate", 0.6f, 0.05f); Util.PlaySound("Play_HOC_StartPunch", ((EntityState)this).gameObject); charge = chargeDuration; EffectManager.SpawnEffect(chargeEffectPrefab, new EffectData { origin = ((EntityState)this).transform.position }, false); } chargePercent = Mathf.Max(0f, (charge - baseMinDuration) / (baseChargeDuration - baseMinDuration)); } if (((EntityState)this).fixedAge >= minDuration && ((EntityState)this).isAuthority && Object.op_Implicit((Object)(object)((EntityState)this).inputBank) && !((EntityState)this).inputBank.skill2.down) { SetNextState(); } } public virtual void SetNextState() { ((EntityState)this).outer.SetNextState((EntityState)(object)new FireSlam { chargePercent = chargePercent }); } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)2; } } public class ChargeSlamScepter : ChargeSlam { public override void SetNextState() { ((EntityState)this).outer.SetNextState((EntityState)(object)new FireSlamScepter { chargePercent = chargePercent }); } } public class FireCannon : BaseState { public static string attackSoundString = "Play_RMOR_Rocket"; public static GameObject level1Prefab; public static GameObject level2Prefab; public static GameObject level3Prefab; public static GameObject level4Prefab; public static float baseExitDuration = 0.6f; public static float baseDurationBetweenShots = 0.5f; public static float damageCoefficient = 8f; public static float force = 2000f; public static GameObject muzzleflashEffectPrefab; public int chargeLevel; private bool crit; private float totalDuration; private float durationBetweenShots; private float fireStopwatch; private int shotsRemaining; public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)2; } public override void OnEnter() { ((BaseState)this).OnEnter(); shotsRemaining = 1; crit = ((BaseState)this).RollCrit(); fireStopwatch = 0f; durationBetweenShots = baseDurationBetweenShots / base.attackSpeedStat; totalDuration = baseExitDuration / base.attackSpeedStat + durationBetweenShots * (float)shotsRemaining; ((EntityState)this).characterBody.SetAimTimer(3f); ((EntityState)this).PlayAnimation("Gesture, Override", "FireCannon"); FireProjectile(); } public override void FixedUpdate() { ((EntityState)this).FixedUpdate(); if (shotsRemaining > 0) { fireStopwatch += Time.fixedDeltaTime; if (fireStopwatch >= durationBetweenShots) { FireProjectile(); fireStopwatch -= durationBetweenShots; } } else if (((EntityState)this).isAuthority && ((EntityState)this).fixedAge > totalDuration) { ((EntityState)this).outer.SetNextStateToMain(); } } public override void OnExit() { if (!((EntityState)this).outer.destroying) { ((EntityState)this).PlayAnimation("Gesture, Override", "Empty"); } ((EntityState)this).OnExit(); } public GameObject GetProjectilePrefab() { return (GameObject)(chargeLevel switch { 2 => level2Prefab, 3 => level3Prefab, 4 => level4Prefab, _ => level1Prefab, }); } private void FireProjectile() { //IL_004c: Unknown result type (might be due to invalid IL or missing references) //IL_0051: 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_006e: 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_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) shotsRemaining--; Util.PlaySound(attackSoundString, ((EntityState)this).gameObject); EffectManager.SimpleMuzzleFlash(muzzleflashEffectPrefab, ((EntityState)this).gameObject, "HandL", false); EffectManager.SimpleMuzzleFlash(muzzleflashEffectPrefab, ((EntityState)this).gameObject, "HandR", false); Ray aimRay = ((BaseState)this).GetAimRay(); if (((EntityState)this).isAuthority) { ProjectileManager.instance.FireProjectile(GetProjectilePrefab(), ((Ray)(ref aimRay)).origin, Util.QuaternionSafeLookRotation(((Ray)(ref aimRay)).direction), ((EntityState)this).gameObject, base.damageStat * damageCoefficient * (float)chargeLevel, force * (float)chargeLevel, crit, (DamageColorIndex)0, (GameObject)null, -1f); } if (Object.op_Implicit((Object)(object)((EntityState)this).characterMotor)) { ((EntityState)this).characterMotor.ApplyForce((0f - force) * (float)chargeLevel * 1.5f * ((Ray)(ref aimRay)).direction, false, false); } } } public class FireSlam : BaseMeleeAttack { public static GameObject swingEffect = null; public float chargePercent; public static float minDamageCoefficient = 6f; public static float maxDamageCoefficient = 15f; public static float minDownForce = 2400f; public static float maxDownForce = 3200f; public static float baseYPos = -14f; public static float baseYScale = 30f; public static float maxYScale = 60f; public static float baseZPos = 4.5f; public static float baseZScale = 30f; public static float maxZScale = 40f; public static float shortHop = 12f; public static float shortHopOnHit = 24f; public static NetworkSoundEventDef networkHitSound; public static GameObject earthquakeEffectPrefab; public static GameObject hitEffect = null; private bool hitEnemy; public override void OnEnter() { //IL_003b: 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_00ef: 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_002b: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_0197: 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_01bd: Unknown result type (might be due to invalid IL or missing references) //IL_0202: Unknown result type (might be due to invalid IL or missing references) attackRecoil = 0f; swingEffectPrefab = null; hitEffectPrefab = null; if (Object.op_Implicit((Object)(object)networkHitSound)) { impactSound = networkHitSound.index; } damageType = (DamageType)1024; hitHopVelocity = shortHopOnHit; hitStopDuration = 0.1f; hitSoundString = ""; swingSoundString = ""; hitboxName = "StabHitbox"; damageCoefficient = Mathf.Lerp(minDamageCoefficient, maxDamageCoefficient, chargePercent); procCoefficient = 1f; baseDuration = 0.7f; baseEarlyExitTime = 0.2f; attackStartTime = 0.33f; attackEndTime = 0.5f; pushForce = 0f; bonusForce = Vector3.down * Mathf.Lerp(minDownForce, maxDownForce, chargePercent); muzzleString = "HandR"; ModifyStats(); if (((EntityState)this).isAuthority) { ChildLocator modelChildLocator = ((EntityState)this).GetModelChildLocator(); if (Object.op_Implicit((Object)(object)modelChildLocator)) { Transform val = modelChildLocator.FindChild("ChargeHammerHitbox"); if (Object.op_Implicit((Object)(object)val)) { float num = Mathf.Lerp(baseYScale, maxYScale, chargePercent); float num2 = baseYPos - (num - baseYScale) * 0.5f; float num3 = Mathf.Lerp(baseZScale, maxZScale, chargePercent); float num4 = baseZPos - (num3 - baseZScale) * 0.5f; val.localScale = new Vector3(val.localScale.x, num, num3); val.localPosition = new Vector3(val.localPosition.x, num2, num4); } } } base.OnEnter(); if (attack != null) { ModifyDamageTypes(); if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && ((EntityState)this).characterBody.HasBuff(RMORMod.Content.Shared.Buffs.RMORFocus)) { attack.damageColorIndex = (DamageColorIndex)12; } } if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { ((EntityState)this).characterBody.SetAimTimer(3f); } } public virtual void ModifyStats() { } public virtual void ModifyDamageTypes() { //IL_0006: 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) DamageAPI.AddModdedDamageType(attack, DamageTypes.HANDSecondary); DamageAPI.AddModdedDamageType(attack, DamageTypes.ResetVictimForce); } protected override void PlayAttackAnimation() { ((EntityState)this).PlayAnimation("FullBody, Override", "Slash", "ChargeHammer.playbackRate", duration); } protected override void OnHitEnemyAuthority() { base.OnHitEnemyAuthority(); if (hitEnemy) { return; } hitEnemy = true; if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { OverclockController component = ((EntityState)this).gameObject.GetComponent<OverclockController>(); if (Object.op_Implicit((Object)(object)component)) { component.ExtendOverclock(Mathf.Lerp(0.8f, 2f, chargePercent)); } DroneStockController component2 = ((EntityState)this).GetComponent<DroneStockController>(); if (Object.op_Implicit((Object)(object)component2)) { component2.MeleeHit(); } } } public override void OnFiredAttack() { //IL_005e: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_0066: Unknown result type (might be due to invalid IL or missing references) //IL_006b: 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_0090: 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_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_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00af: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00be: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Expected O, but got Unknown //IL_00d4: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Unknown result type (might be due to invalid IL or missing references) //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: 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) //IL_00f0: Unknown result type (might be due to invalid IL or missing references) //IL_00fa: 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_0104: 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_011f: Expected O, but got Unknown //IL_0131: Unknown result type (might be due to invalid IL or missing references) //IL_0136: 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_0147: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Unknown result type (might be due to invalid IL or missing references) //IL_014d: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_015c: Unknown result type (might be due to invalid IL or missing references) //IL_0161: 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_017c: Expected O, but got Unknown //IL_018e: Unknown result type (might be due to invalid IL or missing references) //IL_0193: Unknown result type (might be due to invalid IL or missing references) //IL_019a: 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_01a5: 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_01b4: Unknown result type (might be due to invalid IL or missing references) //IL_01b9: Unknown result type (might be due to invalid IL or missing references) //IL_01be: Unknown result type (might be due to invalid IL or missing references) //IL_01c8: Unknown result type (might be due to invalid IL or missing references) //IL_01d9: Expected O, but got Unknown Util.PlaySound("Play_parent_attack1_slam", ((EntityState)this).gameObject); Util.PlaySound("Play_UI_podImpact", ((EntityState)this).gameObject); if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && ((EntityState)this).characterBody.HasBuff(RMORMod.Content.Shared.Buffs.RMORFocus)) { Util.PlaySound("Play_RMOR_Focus", ((EntityState)this).gameObject); } if (((EntityState)this).isAuthority) { Ray aimRay = ((BaseState)this).GetAimRay(); Vector3 direction = ((Ray)(ref aimRay)).direction; direction.y = 0f; ((Vector3)(ref direction)).Normalize(); EffectManager.SpawnEffect(earthquakeEffectPrefab, new EffectData { origin = ((EntityState)this).transform.position + 4f * direction - 2f * Vector3.up, scale = 0.5f }, true); EffectManager.SpawnEffect(earthquakeEffectPrefab, new EffectData { origin = ((EntityState)this).transform.position + 8f * direction - 2f * Vector3.up, scale = 0.5f }, true); if (chargePercent >= 0.5f) { EffectManager.SpawnEffect(earthquakeEffectPrefab, new EffectData { origin = ((EntityState)this).transform.position + 12f * direction - 2f * Vector3.up, scale = 0.5f }, true); } if (chargePercent >= 1f) { EffectManager.SpawnEffect(earthquakeEffectPrefab, new EffectData { origin = ((EntityState)this).transform.position + 16f * direction - 2f * Vector3.up, scale = 0.5f }, true); } if (Object.op_Implicit((Object)(object)((EntityState)this).characterMotor) && !((EntityState)this).characterMotor.isGrounded) { ((BaseState)this).SmallHop(((EntityState)this).characterMotor, shortHop); } } } public override void OnExit() { if (!((EntityState)this).outer.destroying) { ((EntityState)this).PlayAnimation("FullBody, Override", "Empty"); } base.OnExit(); } protected override void SetNextState() { ((EntityState)this).outer.SetNextStateToMain(); } public override InterruptPriority GetMinimumInterruptPriority() { if (hasFired && ((EntityState)this).fixedAge >= duration - earlyExitTime) { return (InterruptPriority)0; } return (InterruptPriority)2; } } public class FireSlamScepter : FireSlam { public override void ModifyStats() { //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) bonusForce *= 1.5f; damageCoefficient *= 1.5f; } public override void ModifyDamageTypes() { //IL_0006: 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_0026: Unknown result type (might be due to invalid IL or missing references) DamageAPI.AddModdedDamageType(attack, DamageTypes.HANDSecondaryScepter); DamageAPI.AddModdedDamageType(attack, DamageTypes.SquashOnKill); DamageAPI.AddModdedDamageType(attack, DamageTypes.ResetVictimForce); } } } namespace EntityStates.RMOR.Emotes { public class RMOREmotes : BaseState { public string soundString; public string animString; public float duration; public float animDuration; private Animator animator; private ChildLocator childLocator; public LocalUser localUser; public bool useHammer; private CharacterCameraParamsData emoteCameraParams = new CharacterCameraParamsData { maxPitch = BlendableFloat.op_Implicit(70f), minPitch = BlendableFloat.op_Implicit(-70f), pivotVerticalOffset = BlendableFloat.op_Implicit(1f), idealLocalCameraPos = BlendableVector3.op_Implicit(emoteCameraPosition), wallCushion = BlendableFloat.op_Implicit(0.1f) }; public static Vector3 emoteCameraPosition = new Vector3(0f, 0f, -7.9f); private CameraParamsOverrideHandle camOverrideHandle; public override void OnEnter() { //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_0101: 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_0117: 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_0120: Unknown result type (might be due to invalid IL or missing references) //IL_0126: Unknown result type (might be due to invalid IL or missing references) //IL_012b: Unknown result type (might be due to invalid IL or missing references) ((BaseState)this).OnEnter(); animator = ((EntityState)this).GetModelAnimator(); childLocator = ((EntityState)this).GetModelChildLocator(); FindLocalUser(); ((EntityState)this).characterBody.hideCrosshair = true; if (Object.op_Implicit((Object)(object)((EntityState)this).GetAimAnimator())) { ((Behaviour)((EntityState)this).GetAimAnimator()).enabled = false; } animator.SetLayerWeight(animator.GetLayerIndex("AimPitch"), 0f); animator.SetLayerWeight(animator.GetLayerIndex("AimYaw"), 0f); if (animDuration == 0f && duration != 0f) { animDuration = duration; } if (duration > 0f) { ((EntityState)this).PlayAnimation("FullBody, Override", animString, "Emote.playbackRate", duration); } else { ((EntityState)this).PlayAnimation("FullBody, Override", animString, "Emote.playbackRate", animDuration); } CameraParamsOverrideRequest val = default(CameraParamsOverrideRequest); val.cameraParamsData = emoteCameraParams; val.priority = 0f; CameraParamsOverrideRequest val2 = val; camOverrideHandle = ((EntityState)this).cameraTargetParams.AddParamsOverride(val2, 0.5f); } private void FindLocalUser() { if (localUser != null || !Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { return; } foreach (LocalUser readOnlyLocalUsers in LocalUserManager.readOnlyLocalUsersList) { if ((Object)(object)readOnlyLocalUsers.cachedBody == (Object)(object)((EntityState)this).characterBody) { localUser = readOnlyLocalUsers; break; } } } public override void OnExit() { //IL_007c: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Unknown result type (might be due to invalid IL or missing references) ((EntityState)this).characterBody.hideCrosshair = false; if (Object.op_Implicit((Object)(object)((EntityState)this).GetAimAnimator())) { ((Behaviour)((EntityState)this).GetAimAnimator()).enabled = true; } animator.SetLayerWeight(animator.GetLayerIndex("AimPitch"), 1f); animator.SetLayerWeight(animator.GetLayerIndex("AimYaw"), 1f); ((EntityState)this).PlayAnimation("FullBody, Override", "BufferEmpty"); ((EntityState)this).cameraTargetParams.RemoveParamsOverride(camOverrideHandle, 0.5f); ((EntityState)this).OnExit(); } public override void FixedUpdate() { //IL_002a: Unknown result type (might be due to invalid IL or missing references) //IL_002f: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: 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) ((EntityState)this).FixedUpdate(); bool flag = false; if (Object.op_Implicit((Object)(object)((EntityState)this).characterMotor)) { if (!((EntityState)this).characterMotor.isGrounded) { flag = true; } if (((EntityState)this).characterMotor.velocity != Vector3.zero) { flag = true; } } if (Object.op_Implicit((Object)(object)((EntityState)this).inputBank)) { if (((EntityState)this).inputBank.skill1.down) { flag = true; } if (((EntityState)this).inputBank.skill2.down) { flag = true; } if (((EntityState)this).inputBank.skill3.down) { flag = true; } if (((EntityState)this).inputBank.skill4.down) { flag = true; } if (((EntityState)this).inputBank.jump.down) { flag = true; } if (((EntityState)this).inputBank.moveVector != Vector3.zero) { flag = true; } } FindLocalUser(); if (((EntityState)this).isAuthority && ((EntityState)this).characterMotor.isGrounded && localUser != null && !localUser.isUIFocused) { if (Config.GetKeyPressed(Config.KeybindEmote1)) { ((EntityState)this).outer.SetInterruptState((EntityState)(object)new Sit(), (InterruptPriority)0); return; } if (Config.GetKeyPressed(Config.KeybindEmote2)) { ((EntityState)this).outer.SetInterruptState((EntityState)(object)new Spin(), (InterruptPriority)0); return; } if (Config.GetKeyPressed(Config.KeybindEmoteCSS)) { ((EntityState)this).outer.SetInterruptState((EntityState)(object)new MenuPose(), (InterruptPriority)0); return; } } if (duration > 0f && ((EntityState)this).fixedAge >= duration) { flag = true; } if (flag) { ((EntityState)this).outer.SetNextStateToMain(); } } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)0; } } public class MenuPose : RMOREmotes { public override void OnEnter() { animString = "MenuPose"; animDuration = MathF.PI * 113f / 150f; useHammer = true; base.OnEnter(); Util.PlaySound("Play_RMOR_StartHammer", ((EntityState)this).gameObject); } } public class Spin : RMOREmotes { private bool playedSound1; private bool playedSound2; private bool playedSound3; private static string startSoundString = "Play_MULT_shift_start"; private static string endSoundString = "Play_MULT_shift_end"; public override void OnEnter() { animString = "Emote2"; animDuration = 4.3f; useHammer = false; base.OnEnter(); } public override void FixedUpdate() { base.FixedUpdate(); float num = ((EntityState)this).fixedAge / animDuration; if (!playedSound1 && num >= 10f / 129f) { playedSound1 = true; Util.PlaySound(startSoundString, ((EntityState)this).gameObject); } if (!playedSound2 && num >= 0.9302326f) { playedSound2 = true; Util.PlaySound(endSoundString, ((EntityState)this).gameObject); Util.PlaySound("Play_mult_shift_hit", ((EntityState)this).gameObject); } if (!playedSound3 && num >= 1.0542636f) { playedSound3 = true; Util.PlaySound("Play_RMOR_StartPunch", ((EntityState)this).gameObject); } } public override void OnExit() { if (playedSound1 && !playedSound2) { Util.PlaySound(endSoundString, ((EntityState)this).gameObject); } base.OnExit(); } } public class Sit : RMOREmotes { private bool playedSound; public override void OnEnter() { animString = "Emote1"; animDuration = 1.2666667f; useHammer = false; base.OnEnter(); Util.PlaySound("Play_drone_deathpt1", ((EntityState)this).gameObject); } public override void FixedUpdate() { base.FixedUpdate(); if (!playedSound && ((EntityState)this).fixedAge / animDuration >= 0.7894737f) { playedSound = true; Util.PlaySound("Play_drone_deathpt2", ((EntityState)this).gameObject); } } } } namespace EntityStates.RMOR.Primary { public class GatlingGun : BaseSkillState, IStepSetter { public static float damageCoefficient = 0.9f; public static float procCoefficient = 1f; public static float baseDuration = 0.2f; public static float force = 10f; public static float recoil = 1f; public static float range = 256f; public static GameObject tracerEffectPrefab = LegacyResourcesAPI.Load<GameObject>("Prefabs/Effects/Tracers/TracerGoldGat"); private float duration; private float fireTime; private bool hasFired; private string muzzleString; private bool setNextState; private int step; public override void OnEnter() { ((EntityState)this).characterBody.SetAimTimer(3f); ((BaseState)this).OnEnter(); duration = baseDuration / ((BaseState)this).attackSpeedStat; ((EntityState)this).characterBody.SetAimTimer(2f); if (step == 1) { muzzleString = "HandL"; ((EntityState)this).PlayCrossfade("Gesture, Override", "GatlingR", "Punch.playbackRate", duration, 0.1f); } else { muzzleString = "HandR"; ((EntityState)this).PlayCrossfade("Gesture, Override", "GatlingL", "Punch.playbackRate", duration, 0.1f); } Fire(); } private void Fire() { //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: 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_009a: 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_00a7: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00af: Unknown result type (might be due to invalid IL or missing references) //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00c6: Unknown result type (might be due to invalid IL or missing references) //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00cd: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Unknown result type (might be due to invalid IL or missing references) //IL_00d4: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00db: Unknown result type (might be due to invalid IL or missing references) //IL_00e6: 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_00f2: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_00fc: 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_0112: Unknown result type (might be due to invalid IL or missing references) //IL_011e: 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_0136: 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_0143: Unknown result type (might be due to invalid IL or missing references) //IL_0149: Unknown result type (might be due to invalid IL or missing references) //IL_0154: Unknown result type (might be due to invalid IL or missing references) //IL_015f: 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_0167: Unknown result type (might be due to invalid IL or missing references) //IL_016c: Unknown result type (might be due to invalid IL or missing references) //IL_0171: Unknown result type (might be due to invalid IL or missing references) //IL_0178: Unknown result type (might be due to invalid IL or missing references) //IL_0183: 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_0199: 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_01a0: 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_01ac: Unknown result type (might be due to invalid IL or missing references) //IL_01b6: Expected O, but got Unknown if (!hasFired) { hasFired = true; ((EntityState)this).characterBody.AddSpreadBloom(1.5f); EffectManager.SimpleMuzzleFlash(FirePistol2.muzzleEffectPrefab, ((EntityState)this).gameObject, muzzleString, false); Util.PlaySound(FirePistol2.firePistolSoundString, ((EntityState)this).gameObject); if (((EntityState)this).isAuthority) { Ray aimRay = ((BaseState)this).GetAimRay(); ((BaseState)this).AddRecoil(-1f * recoil, -2f * recoil, -0.5f * recoil, 0.5f * recoil); BulletAttack val = new BulletAttack { bulletCount = 1u, aimVector = ((Ray)(ref aimRay)).direction, origin = ((Ray)(ref aimRay)).origin, damage = damageCoefficient * ((BaseState)this).damageStat, damageColorIndex = (DamageColorIndex)0, damageType = (DamageType)0, falloffModel = (FalloffModel)1, maxDistance = range, force = force, hitMask = CommonMasks.bullet, minSpread = 0f, maxSpread = 0f, isCrit = ((BaseState)this).RollCrit(), owner = ((EntityState)this).gameObject, muzzleName = muzzleString, smartCollision = false, procChainMask = default(ProcChainMask), procCoefficient = procCoefficient, radius = 0.75f, sniper = false, stopperMask = CommonMasks.bullet, weapon = null, tracerEffectPrefab = tracerEffectPrefab, spreadPitchScale = 0f, spreadYawScale = 0f, queryTriggerInteraction = (QueryTriggerInteraction)0, hitEffectPrefab = FirePistol2.hitEffectPrefab }; DamageAPI.AddModdedDamageType(val, DamageTypes.Restore2OV); val.Fire(); } } } public override void FixedUpdate() { ((EntityState)this).FixedUpdate(); if (((EntityState)this).fixedAge >= duration && ((EntityState)this).isAuthority) { ((EntityState)this).outer.SetNextStateToMain(); } } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)1; } public void SetStep(int i) { step = i; } } public class PrimaryRocket : GenericProjectileBaseState { public static float BaseDuration = 1.3f; public static float BaseDelayDuration = 0.3f; public static float DamageCoefficient = 3.9f; private string animationLayer = "Gesture, Override"; public static GameObject projectilePrefab; public static GameObject overclockPrefab; public static GameObject effectPrefab; public bool strikeIndex; public override void OnEnter() { //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0085: 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_00ad: Unknown result type (might be due to invalid IL or missing references) OverclockController component = ((EntityState)this).GetComponent<OverclockController>(); bool flag = Object.op_Implicit((Object)(object)component) && component.BuffActive(); base.projectilePrefab = (flag ? overclockPrefab : projectilePrefab); base.effectPrefab = effectPrefab; base.targetMuzzle = (strikeIndex ? "HandR" : "HandL"); base.attackSoundString = "Play_RMOR_Primary"; base.baseDuration = BaseDuration; base.damageCoefficient = DamageCoefficient; base.force = 80f; Ray aimRay = ((BaseState)this).GetAimRay(); if (Object.op_Implicit((Object)(object)((EntityState)this).characterMotor)) { ((EntityState)this).characterMotor.ApplyForce((0f - base.force) * 25f * ((Ray)(ref aimRay)).direction, false, false); } base.recoilAmplitude = 0.1f; base.bloom = 10f; ((EntityState)this).characterBody.SetAimTimer(3f); ((GenericProjectileBaseState)this).OnEnter(); } public override void OnExit() { if (!((EntityState)this).outer.destroying) { ((EntityState)this).PlayAnimation(animationLayer, "RMOR|RocketShootHold"); } ((GenericProjectileBaseState)this).OnExit(); } public override void FixedUpdate() { ((GenericProjectileBaseState)this).FixedUpdate(); } public override void FireProjectile() { ((GenericProjectileBaseState)this).FireProjectile(); } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)1; } public override void PlayAnimation(float duration) { if (strikeIndex) { ((EntityState)this).PlayCrossfade(animationLayer, "PunchR", "Punch.playbackRate", base.duration, 0.2f); } else { ((EntityState)this).PlayCrossfade(animationLayer, "PunchL", "Punch.playbackRate", base.duration, 0.2f); } } } public class SwingStab : BaseMeleeAttack { public static NetworkSoundEventDef networkHitSound = null; public static GameObject swingEffect = null; public static GameObject swingEffectFocus = null; public static GameObject hitEffect = null; public static AnimationCurve swingCurve = new AnimationCurve((Keyframe[])(object)new Keyframe[3] { new Keyframe(0f, 0f, 0.25312966f, float.PositiveInfinity, 0f, 1f / 3f), new Keyframe(0.24929532f, 0.2f, -1.3447399f, -1.3447399f, 1f / 3f, 0.09076658f), new Keyframe(0.6705322f, 0f, -0.10235062f, -0.10235062f, 0.73324406f, 0f) }); private bool setNextState; private string animationLayer; public static float force = 1600f; private bool hitEnemy; public override void OnEnter() { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: 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_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00e6: Unknown result type (might be due to invalid IL or missing references) //IL_00ea: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_0109: 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_0044: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_0248: Unknown result type (might be due to invalid IL or missing references) //IL_0258: Unknown result type (might be due to invalid IL or missing references) //IL_01d2: 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_01dd: 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) bonusForce = Vector3.zero; attackRecoil = 0f; muzzleString = ((swingIndex == 1) ? "HandL" : "HandR"); if ((Object)(object)networkHitSound != (Object)null) { impactSound = networkHitSound.index; } damageType = (DamageType)0; hitHopVelocity = 8f; scaleHitHopWithAttackSpeed = true; hitStopDuration = 0.1f; hitSoundString = ""; swingSoundString = "Play_RMOR_Punch"; hitboxName = "StabHitbox"; damageCoefficient = 3.9f; procCoefficient = 1f; baseDuration = 1.3f; baseEarlyExitTime = 0.35f; attackStartTime = 0.283f; attackEndTime = 0.565f; pushForce = 0f; Ray aimRay = ((BaseState)this).GetAimRay(); Vector3 direction = ((Ray)(ref aimRay)).direction; direction.y = 0f; ((Vector3)(ref direction)).Normalize(); bonusForce = force * direction; forceForwardVelocity = true; forwardVelocityCurve = swingCurve; animationLayer = "Gesture, Override"; Util.PlaySound("Play_RMOR_StartPunch", ((EntityState)this).gameObject); OverclockController component = ((EntityState)this).GetComponent<OverclockController>(); bool flag = Object.op_Implicit((Object)(object)component) && component.BuffActive(); Animator modelAnimator = ((EntityState)this).GetModelAnimator(); if (Object.op_Implicit((Object)(object)modelAnimator)) { modelAnimator.SetFloat("hammerIdle", 0f); } swingEffectPrefab = swingEffect; if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { if (Object.op_Implicit((Object)(object)swingEffectFocus) && ((EntityState)this).characterBody.HasBuff(RMORMod.Content.Shared.Buffs.RMORFocus)) { swingEffectPrefab = swingEffectFocus; } if (!RMORPlugin.ArenaModeActive && flag && swingIndex == 1) { damageType = (DamageType)(damageType | 0x400); } } base.OnEnter(); if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { if (swingIndex != 0) { ((EntityState)this).characterBody.OnSkillActivated(((EntityState)this).skillLocator.primary); } if (((EntityState)this).isAuthority && !flag) { ((EntityState)this).characterBody.isSprinting = false; } ((EntityState)this).characterBody.SetAimTimer(3f); } if (attack != null) { DamageAPI.AddModdedDamageType(attack, DamageTypes.HANDPrimaryPunch); DamageAPI.AddModdedDamageType(attack, DamageTypes.ResetVictimForce); if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody) && ((EntityState)this).characterBody.HasBuff(RMORMod.Content.Shared.Buffs.RMORFocus)) { attack.damageColorIndex = (DamageColorIndex)12; } } } public override void FixedUpdate() { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_0009: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Unknown result type (might be due to invalid IL or missing references) //IL_0035: Unknown result type (might be due to invalid IL or missing references) //IL_0036: Unknown result type (might be due to invalid IL or missing references) //IL_003b: 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_0083: Unknown result type (might be due to invalid IL or missing references) Ray aimRay = ((BaseState)this).GetAimRay(); Vector3 direction = ((Ray)(ref aimRay)).direction; direction.y = 0f; ((Vector3)(ref direction)).Normalize(); if (attack != null) { attack.forceVector = force * direction; } if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { ((BaseState)this).damageStat = ((EntityState)this).characterBody.damage; if (((EntityState)this).characterBody.HasBuff(RMORMod.Content.Shared.Buffs.RMORFocus)) { swingEffectPrefab = swingEffectFocus; attack.damageColorIndex = (DamageColorIndex)12; } else { swingEffectPrefab = swingEffect; attack.damageColorIndex = (DamageColorIndex)0; } } base.FixedUpdate(); } public override void OnFiredAttack() { if ((Object)(object)swingEffectPrefab == (Object)(object)swingEffectFocus) { Util.PlaySound("Play_RMOR_Focus", ((EntityState)this).gameObject); } } protected override void PlayAttackAnimation() { if (swingIndex == 1) { ((EntityState)this).PlayCrossfade(animationLayer, "StabR", "Punch.playbackRate", duration, 0.2f); } else { ((EntityState)this).PlayCrossfade(animationLayer, "StabL", "Punch.playbackRate", duration, 0.2f); } } public override void OnExit() { base.OnExit(); } protected override void OnHitEnemyAuthority() { base.OnHitEnemyAuthority(); if (hitEnemy) { return; } hitEnemy = true; if (Object.op_Implicit((Object)(object)((EntityState)this).characterBody)) { OverclockController component = ((EntityState)this).gameObject.GetComponent<OverclockController>(); if (Object.op_Implicit((Object)(object)component)) { component.ExtendOverclock(0.8f); } DroneStockController component2 = ((EntityState)this).GetComponent<DroneStockController>(); if (Object.op_Implicit((Object)(object)component2)) { component2.MeleeHit(); } } } protected override void SetNextState() { int num = swingIndex; switch (num) { case 1: num = 2; break; case 0: case 2: num = 1; break; } setNextState = true; ((EntityState)this).outer.SetNextState((EntityState)(object)new SwingStab { swingIndex = num }); } public override InterruptPriority GetMinimumInterruptPriority() { return (InterruptPriority)1; } } } namespace RMOR_Reforged.Content.RMORSurvivor { public class RMORItemDisplays : ItemDisplaysBase { protected override void SetItemDisplayRules(List<KeyAssetRuleGroup> itemDisplayRules) { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_002b: 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_0067: Unknown result type (might be due to invalid IL or missing references) //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0082: Unknown result type (might be due to invalid IL or missing references) //IL_0087: Unknown result type (might be due to invalid IL or missing references) //IL_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_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00af: Unknown result type (might be due to invalid IL or missing references) //IL_00b0: 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_00c2: Unknown result type (might be due to invalid IL or missing references) //IL_00f5: Unknown result type (might be due to invalid IL or missing references) //IL_00fa: Unknown result type (might be due to invalid IL or missing references) //IL_0110: Unknown result type (might be due to invalid IL or missing references) //IL_0115: Unknown result type (might be due to invalid IL or missing references) //IL_012b: Unknown result type (might be due to invalid IL or missing references) //IL_0130: 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_013d: 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_0148: Unknown result type (might be due to invalid IL or missing references) //IL_0149: Unknown result type (might be due to invalid IL or missing references) //IL_014e: Unknown result type (might be due to invalid IL or missing references) //IL_0157: Unknown result type (might be due to invalid IL or missing references) //IL_016d: Unknown result type (might be due to invalid IL or missing references) //IL_017f: Unknown result type (might be due to invalid IL or missing references) //IL_0188: Unknown result type (might be due to invalid IL or missing references) //IL_01bb: Unknown result type (might be due to invalid IL or missing references) //IL_01c0: 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_01db: Unknown result type (might be due to invalid IL or missing references) //IL_01f1: Unknown result type (might be due to invalid IL or missing references) //IL_01f6: Unknown result type (might be due to invalid IL or missing references) //IL_01fe: Unknown result type (might be due to invalid IL or missing references) //IL_0203: 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_020e: Unknown result type (might be due to invalid IL or missing references) //IL_020f: 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_021d: Unknown result type (might be due to invalid IL or missing references) //IL_0233: 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_024e: 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_029c: Unknown result type (might be due to invalid IL or missing references) //IL_02a1: Unknown result type (might be due to invalid IL or missing references) //IL_02b7: Unknown result type (might be due to invalid IL or missing references) //IL_02bc: Unknown result type (might be due to invalid IL or missing references) //IL_02c4: Unknown result type (might be due to invalid IL or missing references) //IL_02c9: Unknown result type (might be due to invalid IL or missing references) //IL_02ca: Unknown result type (might be due to invalid IL or missing references) //IL_02d4: 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_02da: 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_02f9: Unknown result type (might be due to invalid IL or missing references) //IL_030b: 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_0347: Unknown result type (might be due to invalid IL or missing references) //IL_034c: Unknown result type (might be due to invalid IL or missing references) //IL_0362: 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_037d: Unknown result type (might be due to invalid IL or missing references) //IL_0382: Unknown result type (might be due to invalid IL or missing references) //IL_038a: Unknown result type (might be due to invalid IL or missing references) //IL_038f: 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_039a: Unknown result type (might be due to invalid IL or missing references) //IL_039b: Unknown result type (might be due to invalid IL or missing references) //IL_03a0: Unknown result type (might be due to invalid IL or missing references) //IL_03a9: 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_03d1: 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_040d: Unknown result type (might be due to invalid IL or missing references) //IL_0412: Unknown result type (might be due to invalid IL or missing references) //IL_0428: 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_0443: Unknown result type (might be due to invalid IL or missing references) //IL_0448: Unknown result type (might be due to invalid IL or missing references) //IL_0450: Unknown result type (might be due to invalid IL or missing references) //IL_0455: Unknown result type (might be due to invalid IL or missing references) //IL_0456: 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_0461: Unknown result type (might be due to invalid IL or missing references) //IL_0466: Unknown result type (might be due to invalid IL or missing references) //IL_046f: Unknown result type (might be due to invalid IL or missing references) //IL_0485: Unknown result type (might be due to invalid IL or missing references) //IL_0497: Unknown result type (might be due to invalid IL or missing references) //IL_04a0: Unknown result type (might be due to invalid IL or missing references) //IL_04d3: Unknown result type (might be due to invalid IL or missing references) //IL_04d8: Unknown result type (might be due to invalid IL or missing references) //IL_04ee: Unknown result type (might be due to invalid IL or missing references) //IL_04f3: Unknown result type (might be due to invalid IL or missing references) //IL_0509: Unknown result type (might be due to invalid IL or missing references) //IL_050e: Unknown result type (might be due to invalid IL or missing references) //IL_0516: Unknown result type (might be due to invalid IL or missing references) //IL_051b: 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_0526: Unknown result type (might be due to invalid IL or missing references) //IL_0527: Unknown result type (might be due to invalid IL or missing references) //IL_052c: Unknown result type (might be due to invalid IL or missing references) //IL_0535: Unknown result type (might be due to invalid IL or missing references) //IL_054b: Unknown result type (might be due to invalid IL or missing references) //IL_055d: Unknown result type (might be due to invalid IL or missing references) //IL_0566: Unknown result type (might be due to invalid IL or missing references) //IL_0599: Unknown result type (might be due to invalid IL or missing references) //IL_059e: Unknown result type (might be due to invalid IL or missing references) //IL_05b4: Unknown result type (might be due to invalid IL or missing references) //IL_05b9: Unknown result type (might be due to invalid IL or missing references) //IL_05cf: 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_05dc: Unknown result type (might be due to invalid IL or missing references) //IL_05e1: Unknown result type (might be due to invalid IL or missing references) //IL_05e2: Unknown result type (might be due to invalid IL or missing references) //IL_05ec: Unknown result type (might be due to invalid IL or missing references) //IL_05ed: Unknown result type (might be due to invalid IL or missing references) //IL_05f2: Unknown result type (might be due to invalid IL or missing references) //IL_05fb: Unknown result type (might be due to invalid IL or missing references) //IL_0611: Unknown result type (might be due to invalid IL or missing references) //IL_0623: Unknown result type (might be due to invalid IL or missing references) //IL_062c: Unknown result type (might be due to invalid IL or missing references) //IL_065f: Unknown result type (might be due to invalid IL or missing references) //IL_0664: Unknown result type (might be due to invalid IL or missing references) //IL_067a: Unknown result type (might be due to invalid IL or missing references) //IL_067f: Unknown result type (might be due to invalid IL or missing references) //IL_0695: Unknown result type (might be due to invalid IL or missing references) //IL_069a: Unknown result type (might be due to invalid IL or missing references) //IL_06a2: Unknown result type (might be due to invalid IL or missing references) //IL_06a7: Unknown result type (might be due to invalid IL or missing references) //IL_06a8: Unknown result type (might be due to invalid IL or missing references) //IL_06b2: Unknown result type (might be due to invalid IL or missing references) //IL_06b3: Unknown result type (might be due to invalid IL or missing references) //IL_06b8: Unknown result type (might be due to invalid IL or missing references) //IL_06c1: Unknown result type (might be due to invalid IL or missing references) //IL_06d7: Unknown result type (might be due to invalid IL or missing references) //IL_06e9: 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_0725: Unknown result type (might be due to invalid IL or missing references) //IL_072a: Unknown result type (might be due to invalid IL or missing references) //IL_0740: Unknown result type (might be due to invalid IL or missing references) //IL_0745: Unknown result type (might be due to invalid IL or missing references) //IL_075b: Unknown result type (might be due to invalid IL or missing references) //IL_0760: Unknown result type (might be due to invalid IL or missing references) //IL_0768: Unknown result type (might be due to invalid IL or missing references) //IL_076d: Unknown result type (might be due to invalid IL or missing references) //IL_076e: Unknown result type (might be due to invalid IL or missing references) //IL_0778: Unknown result type (might be due to invalid IL or missing references) //IL_0779: Unknown result type (might be due to invalid IL or missing references) //IL_077e: Unknown result type (might be due to invalid IL or missing references) //IL_0787: Unknown result type (might be due to invalid IL or missing references) //IL_079d: Unknown result type (might be due to invalid IL or missing references) //IL_07af: 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_07eb: Unknown result type (might be due to invalid IL or missing references) //IL_07f0: Unknown result type (might be due to invalid IL or missing references) //IL_0806: Unknown result type (might be due to invalid IL or missing references) //IL_080b: Unknown result type (might be due to invalid IL or missing references) //IL_0821: Unknown result type (might be due to invalid IL or missing references) //IL_0826: Unknown result type (might be due to invalid IL or missing references) //IL_082e: Unknown result type (might be due to invalid IL or missing references) //IL_0833: Unknown result type (might be due to invalid IL or missing references) //IL_0834: Unknown result type (might be due to invalid IL or missing references) //IL_083e: 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_084d: Unknown result type (might be due to invalid IL or missing references) //IL_0863: Unknown result type (might be due to invalid IL or missing references) //IL_0875: Unknown result type (might be due to invalid IL or missing references) //IL_087e: Unknown result type (might be due to invalid IL or missing references) //IL_08b1: Unknown result type (might be due to invalid IL or missing references) //IL_08b6: Unknown result type (might be due to invalid IL or missing references) //IL_08cc: Unknown result type (might be due to invalid IL or missing references) //IL_08d1: Unknown result type (might be due to invalid IL or missing references) //IL_08e7: 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_08f4: Unknown result type (might be due to invalid IL or missing references) //IL_08f9: Unknown result type (might be due to invalid IL or missing references) //IL_08fa: Unknown result type (might be due to invalid IL or missing references) //IL_0904: Unknown result type (might be due to invalid IL or missing references) //IL_0905: Unknown result type (might be due to invalid IL or missing references) //IL_090a: Unknown result type (might be due to invalid IL or missing references) //IL_0913: Unknown result type (might be due to invalid IL or missing references) //IL_0929: Unknown result type (might be due to invalid IL or missing references) //IL_093b: Unknown result type (might be due to invalid IL or missing references) //IL_0944: Unknown result type (might be due to invalid IL or missing references) //IL_0977: Unknown result type (might be due to invalid IL or missing references) //IL_097c: 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_0997: Unknown result type (might be due to invalid IL or missing references) //IL_09ad: Unknown result type (might be due to invalid IL or missing references) //IL_09b2: Unknown result type (might be due to invalid IL or missing references) //IL_09ba: Unknown result type (might be due to invalid IL or missing references) //IL_09bf: Unknown result type (might be due to invalid IL or missing references) //IL_09c0: Unknown result type (might be due to invalid IL or missing references) //IL_09ca: Unknown result type (might be due to invalid IL or missing references) //IL_09cb: Unknown result type (might be due to invalid IL or missing references) //IL_09d0: Unknown result type (might be due to invalid IL or missing references) //IL_09d9: Unknown result type (might be due to invalid IL or missing references) //IL_09ef: Unknown result type (might be due to invalid IL or missing references) //IL_0a01: Unknown result type (might be due to invalid IL or missing references) //IL_0a0a: Unknown result type (might be due to invalid IL or missing references) //IL_0a3d: Unknown result type (might be due to invalid IL or missing references) //IL_0a42: Unknown result type (might be due to invalid IL or missing references) //IL_0a58: Unknown result type (might be due to invalid IL or missing references) //IL_0a5d: Unknown result type (might be due to invalid IL or missing references) //IL_0a73: Unknown result type (might be due to invalid IL or missing references) //IL_0a78: Unknown result type (might be due to invalid IL or missing references) //IL_0a80: Unknown result type (might be due to invalid IL or missing references) //IL_0a85: Unknown result type (might be due to invalid IL or missing references) //IL_0a86: Unknown result type (might be due to invalid IL or missing references) //IL_0a90: Unknown result type (might be due to invalid IL or missing references) //IL_0a91: Unknown result type (might be due to invalid IL or missing references) //IL_0a96: Unknown result type (might be due to invalid IL or missing references) //IL_0a9f: Unknown result type (might be due to invalid IL or missing references) //IL_0ab5: Unknown result type (might be due to invalid IL or missing references) //IL_0ac7: Unknown result type (might be due to invalid IL or missing references) //IL_0ad0: Unknown result type (might be due to invalid IL or missing references) //IL_0b03: Unknown result type (might be due to invalid IL or missing references) //IL_0b08: Unknown result type (might be due to invalid IL or missing references) //IL_0b1e: 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_0b39: 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_0b46: Unknown result type (might be due to invalid IL or missing references) //IL_0b4b: Unknown result type (might be due to invalid IL or missing references) //IL_0b4c: Unknown result type (might be due to invalid IL or missing references) //IL_0b56: Unknown result type (might be due to invalid IL or missing references) //IL_0b57: Unknown result type (might be due to invalid IL or missing references) //IL_0b5c: Unknown result type (might be due to invalid IL or missing references) //IL_0b65: Unknown result type (might be due to invalid IL or missing references) //IL_0b7b: Unknown result type (might be due to invalid IL or missing references) //IL_0b8d: Unknown result type (might be due to invalid IL or missing references) //IL_0b96: Unknown result type (might be due to invalid IL or missing references) //IL_0bc9: Unknown result type (might be due to invalid IL or missing references) //IL_0bce: Unknown result type (might be due to invalid IL or missing references) //IL_0be4: Unknown result type (might be due to invalid IL or missing references) //IL_0be9: Unknown result type (might be due to invalid IL or missing references) //IL_0bff: Unknown result type (might be due to invalid IL or missing references) //IL_0c04: Unknown result type (might be due to invalid IL or missing references) //IL_0c0c: Unknown result type (might be due to invalid IL or missing references) //IL_0c11: Unknown result type (might be due to invalid IL or missing references) //IL_0c12: Unknown result type (might be due to invalid IL or missing references) //IL_0c1b: Unknown result type (might be due to invalid IL or missing references) //IL_0c24: Unknown result type (might be due to invalid IL or missing references) //IL_0c57: Unknown result type (might be due to invalid IL or missing references) //IL_0c5c: Unknown result type (might be due to invalid IL or missing references) //IL_0c72: Unknown result type (might be due to invalid IL or missing references) //IL_0c77: Unknown result type (might be due to invalid IL or missing references) //IL_0c8d: Unknown result type (might be due to invalid IL or missing references) //IL_0c92: 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_0c9f: Unknown result type (might be due to invalid IL or missing references) //IL_0ca0: Unknown result type (might be due to invalid IL or missing references) //IL_0caa: 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_0cb0: Unknown result type (might be due to invalid IL or missing references) //IL_0cb9: Unknown result type (might be due to invalid IL or missing references) //IL_0ccf: Unknown result type (might be due to invalid IL or missing references) //IL_0ce1: Unknown result type (might be due to invalid IL or missing references) //IL_0cea: Unknown result type (might be due to invalid IL or missing references) //IL_0d1d: Unknown result type (might be due to invalid IL or missing references) //IL_0d22: Unknown result type (might be due to invalid IL or missing references) //IL_0d38: Unknown result type (might be due to invalid IL or missing references) //IL_0d3d: Unknown result type (might be due to invalid IL or missing references) //IL_0d53: Unknown result type (might be due to invalid IL or missing references) //IL_0d58: Unknown result type (might be due to invalid IL or missing references) //IL_0d60: Unknown result type (might be due to invalid IL or missing references) //IL_0d65: Unknown result type (might be due to invalid IL or missing references) //IL_0d66: Unknown result type (might be due to invalid IL or missing references) //IL_0d70: Unknown result type (might be due to invalid IL or missing references) //IL_0d71: Unknown result type (might be due to invalid IL or missing references) //IL_0d76: Unknown result type (might be due to invalid IL or missing references) //IL_0d7f: Unknown result type (might be due to invalid IL or missing references) //IL_0d95: Unknown result type (might be due to invalid IL or missing references) //IL_0da7: Unknown result type (might be due to invalid IL or missing references) //IL_0db0: Unknown result type (might be due to invalid IL or missing references) //IL_0de3: 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_0dfe: Unknown result type (might be due to invalid IL or missing references) //IL_0e03: Unknown result type (might be due to invalid IL or missing references) //IL_0e19: Unknown result type (might be due to invalid IL or missing references) //IL_0e1e: Unknown result type (might be due to invalid IL or missing references) //IL_0e26: Unknown result type (might be due to invalid IL or missing references) //IL_0e2b: 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_0e35: Unknown result type (might be due to invalid IL or missing references) //IL_0e3e: Unknown result type (might be due to invalid IL or missing references) //IL_0e71: Unknown result type (might be due to invalid IL or missing references) //IL_0e76: 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_0e91: Unknown result type (might be due to invalid IL or missing references) //IL_0ea7: Unknown result type (might be due to invalid IL or missing references) //IL_0eac: 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) //IL_0eb9: Unknown result type (might be due to invalid IL or missing references) //IL_0eba: Unknown result type (might be due to invalid IL or missing references) //IL_0ec4: Unknown result type (might be due to invalid IL or missing references) //IL_0ec5: Unknown result type (might be due to invalid IL or missing references) //IL_0eca: Unknown result type (might be due to invalid IL or missing references) //IL_0ed3: Unknown result type (might be due to invalid IL or missing references) //IL_0ee9: Unknown result type (might be due to invalid IL or missing references) //IL_0efb: Unknown result type (might be due to invalid IL or missing references) //IL_0f04: Unknown result type (might be due to invalid IL or missing references) //IL_0f37: Unknown result type (might be due to invalid IL or missing references) //IL_0f3c: Unknown result type (might be due to invalid IL or missing references) //IL_0f52: Unknown result type (might be due to invalid IL or missing references) //IL_0f57: Unknown result type (might be due to invalid IL or missing references) //IL_0f6d: Unknown result type (might be due to invalid IL or missing references) //IL_0f72: Unknown result type (might be due to invalid IL or missing references) //IL_0f7a: Unknown result type (might be due to invalid IL or missing references) //IL_0f7f: Unknown result type (might be due to invalid IL or missing references) //IL_0f80: Unknown result type (might be due to invalid IL or missing references) //IL_0f8a: Unknown result type (might be due to invalid IL or missing references) //IL_0f8b: Unknown result type (might be due to invalid IL or missing references) //IL_0f90: Unknown result type (might be due to invalid IL or missing references) //IL_0f99: Unknown result type (might be due to invalid IL or missing references) //IL_0faf: Unknown result type (might be due to invalid IL or missing references) //IL_0fc1: Unknown result type (might be due to invalid IL or missing references) //IL_0fca: Unknown result type (might be due to invalid IL or missing references) //IL_0ffd: Unknown result type (might be due to invalid IL or missing references) //IL_1002: Unknown result type (might be due to invalid IL or missing references) //IL_1018: Unknown result type (might be due to invalid IL or missing references) //IL_101d: Unknown result type (might be due to invalid IL or missing references) //IL_1033: Unknown result type (might be due to invalid IL or missing references) //IL_1038: Unknown result type (might be due to invalid IL or missing references) //IL_1040: Unknown result type (might be due to invalid IL or missing references) //IL_1045: Unknown result type (might be due to invalid IL or missing references) //IL_1046: Unknown result type (might be due to invalid IL or missing references) //IL_1050: Unknown result type (might be due to invalid IL or missing references) //IL_1051: Unknown result type (might be due to invalid IL or missing references) //IL_1056: Unknown result type (might be due to invalid IL or missing references) //IL_105f: Unknown result type (might be due to invalid IL or missing references) //IL_1075: Unknown result type (might be due to invalid IL or missing references) //IL_1087: Unknown result type (might be due to invalid IL or missing references) //IL_1090: Unknown result type (might be due to invalid IL or missing references) //IL_10c3: Unknown result type (might be due to invalid IL or missing references) //IL_10c8: Unknown result type (might be due to invalid IL or missing references) //IL_10de: Unknown result type (might be due to invalid IL or missing references) //IL_10e3: Unknown result type (might be due to invalid IL or missing references) //IL_10f9: Unknown result type (might be due to invalid IL or missing references) //IL_10fe: Unknown result type (might be due to invalid IL or missing references