using System; using System.Collections.Generic; using Cpp2IlInjected; using RecRoom.Core.AI; using UnityEngine; namespace RecRoom.Core.Encounters { // Token: 0x020030D4 RID: 12500 [Token(Token = "0x20030D4")] public class SpawnEnemyEncounterStep : BaseSpawnEnemyEncounterStep { // Token: 0x17003A23 RID: 14883 // (get) Token: 0x06015264 RID: 86628 RVA: 0x004EC320 File Offset: 0x004EA520 [Token(Token = "0x17003A23")] public override string KODBEJPEFOJ { [Token(Token = "0x6015264")] [Address(RVA = "0x13AAE80", Offset = "0x13A9E80", VA = "0x1813AAE80", Slot = "4")] get { return "Spawns Enemies on Nav Mesh at random locations in spawn regions or explicit points."; } } // Token: 0x17003A24 RID: 14884 // (get) Token: 0x06015265 RID: 86629 RVA: 0x004EC334 File Offset: 0x004EA534 [Token(Token = "0x17003A24")] private float OLDGJLOBNIA { [Token(Token = "0x6015265")] [Address(RVA = "0x13A9E50", Offset = "0x13A8E50", VA = "0x1813A9E50")] get { return Mathf.Max(this.timeBetweenSpawns, 0.1f); } } // Token: 0x17003A25 RID: 14885 // (get) Token: 0x06015266 RID: 86630 RVA: 0x004EC354 File Offset: 0x004EA554 // (set) Token: 0x06015267 RID: 86631 RVA: 0x004EC374 File Offset: 0x004EA574 [Token(Token = "0x17003A25")] private int LJKDHOFBGNP { [Token(Token = "0x6015266")] [Address(RVA = "0x13AA270", Offset = "0x13A9270", VA = "0x1813AA270")] get { return this.IHAGMDICMMF.KLIAOAJIPKM(); } [Token(Token = "0x6015267")] [Address(RVA = "0x13AA320", Offset = "0x13A9320", VA = "0x1813AA320")] set { this.IHAGMDICMMF.IOFAAIEOLKL(value); } } // Token: 0x17003A26 RID: 14886 // (get) Token: 0x06015268 RID: 86632 RVA: 0x004EC394 File Offset: 0x004EA594 // (set) Token: 0x06015269 RID: 86633 RVA: 0x004EC3B4 File Offset: 0x004EA5B4 [Token(Token = "0x17003A26")] private int ICNBJOODMIN { [Token(Token = "0x6015268")] [Address(RVA = "0x13A9EC0", Offset = "0x13A8EC0", VA = "0x1813A9EC0")] get { return this.IHAGMDICMMF.HHKKJDOCBNH(); } [Token(Token = "0x6015269")] [Address(RVA = "0x13AA380", Offset = "0x13A9380", VA = "0x1813AA380")] set { this.IHAGMDICMMF.PLPKNPIOFEI(value); } } // Token: 0x17003A27 RID: 14887 // (get) Token: 0x0601526A RID: 86634 RVA: 0x004EC3D4 File Offset: 0x004EA5D4 // (set) Token: 0x0601526B RID: 86635 RVA: 0x004EC3F4 File Offset: 0x004EA5F4 [Token(Token = "0x17003A27")] private float COHPMHILACB { [Token(Token = "0x601526A")] [Address(RVA = "0x13AA220", Offset = "0x13A9220", VA = "0x1813AA220")] get { return this.IHAGMDICMMF.FDPNNFKMEEO(); } [Token(Token = "0x601526B")] [Address(RVA = "0x13AA2C0", Offset = "0x13A92C0", VA = "0x1813AA2C0")] set { HCKAGCOEFNM ihagmdicmmf = this.IHAGMDICMMF; } } // Token: 0x17003A28 RID: 14888 // (get) Token: 0x0601526C RID: 86636 RVA: 0x004EC410 File Offset: 0x004EA610 // (set) Token: 0x0601526D RID: 86637 RVA: 0x004EC430 File Offset: 0x004EA630 [Token(Token = "0x17003A28")] private int EPEEGFKPHKJ { [Token(Token = "0x601526C")] [Address(RVA = "0x13A9F10", Offset = "0x13A8F10", VA = "0x1813A9F10")] get { return this.IHAGMDICMMF.ELPLKGAHMLM(); } [Token(Token = "0x601526D")] [Address(RVA = "0x13AA3E0", Offset = "0x13A93E0", VA = "0x1813AA3E0")] set { this.IHAGMDICMMF.PCJGPIDCKJE(value); } } // Token: 0x0601526E RID: 86638 RVA: 0x004EC450 File Offset: 0x004EA650 [Token(Token = "0x601526E")] [Address(RVA = "0x13AA440", Offset = "0x13A9440", VA = "0x1813AA440", Slot = "5")] public override void OnAwake(GameEncounter ADDBMBCNBKJ, int PNNLJIGIFDL, MACMLJJGBIM GPPMEPEBADM, MACMLJJGBIM POLMFGOLNLC) { int pnnljigifdl = this.PNNLJIGIFDL; string text = string.Format("S{0}.{1}", pnnljigifdl, "SP"); HCKAGCOEFNM hckagcoefnm; this.IHAGMDICMMF = hckagcoefnm; } // Token: 0x0601526F RID: 86639 RVA: 0x004EC484 File Offset: 0x004EA684 [Token(Token = "0x601526F")] [Address(RVA = "0x13AA570", Offset = "0x13A9570", VA = "0x1813AA570", Slot = "11")] public override void OnStartRunning() { if (KKPBCOOONNK.BNNCCCFFALC) { HCKAGCOEFNM ihagmdicmmf = this.IHAGMDICMMF; int num = 0; ihagmdicmmf.IOFAAIEOLKL(num); HCKAGCOEFNM ihagmdicmmf2 = this.IHAGMDICMMF; int num2 = 0; ihagmdicmmf2.PLPKNPIOFEI(num2); this.IHAGMDICMMF.IHFBIENNGPE(num2); HCKAGCOEFNM ihagmdicmmf3 = this.IHAGMDICMMF; int num3 = 0; ihagmdicmmf3.PCJGPIDCKJE(num3); return; } } // Token: 0x06015270 RID: 86640 RVA: 0x004EC4E8 File Offset: 0x004EA6E8 [Token(Token = "0x6015270")] [Address(RVA = "0x13AA990", Offset = "0x13A9990", VA = "0x1813AA990", Slot = "12")] public override void OnUpdateRunning() { if (KKPBCOOONNK.BNNCCCFFALC) { double num = KKPBCOOONNK.EDNCMGJJLIH; MACMLJJGBIM polmfgolnlc = this.POLMFGOLNLC; int num2 = 0; polmfgolnlc.CANENBCODBG(); if (num <= (double)num2) { int num3 = this.IHAGMDICMMF.HHKKJDOCBNH(); EncounterEnemyDescriptor[] array = this.enemies; if (num3 < array.Length) { float num4 = this.IHAGMDICMMF.FDPNNFKMEEO(); int num5 = this.ICNBJOODMIN; int length = this.enemies.Length; if (num5 < length) { bool flag = this.IsCompleted(); bool flag2; if (flag2) { int num6 = this.LJKDHOFBGNP + 1; this.LJKDHOFBGNP = num6; } } if (this.EPEEGFKPHKJ < 10) { this.COHPMHILACB = (float)num2; int num7 = this.EPEEGFKPHKJ + 1; this.EPEEGFKPHKJ = num7; return; } if (this.EPEEGFKPHKJ > 0) { object[] array2 = new object[5]; throw new ArrayTypeMismatchException(); } int num8 = this.ICNBJOODMIN + 1; this.ICNBJOODMIN = num8; int num9 = 0; this.EPEEGFKPHKJ = num9; float num10 = Mathf.Max(num4, 0.1f); this.COHPMHILACB = num10; } } } } // Token: 0x06015271 RID: 86641 RVA: 0x004EC670 File Offset: 0x004EA870 [Token(Token = "0x6015271")] [Address(RVA = "0x13AA6B0", Offset = "0x13A96B0", VA = "0x1813AA6B0", Slot = "13")] public override void OnStopRunning() { int num = this.IHAGMDICMMF.KLIAOAJIPKM(); EncounterEnemyDescriptor[] array = this.enemies; if (num < array.Length) { object[] array2 = new object[5]; if ("Only spawned " != 0) { } array2[0] = "Only spawned "; int num2 = this.IHAGMDICMMF.KLIAOAJIPKM(); if (num2 != 0) { } array2[1] = num2; if (" of " != 0) { } array2[2] = " of "; int length = this.enemies.Length; if (length != 0) { } array2[3] = length; if (" enemies." != 0) { } array2[4] = " enemies."; string text = string.Concat(array2); } } // Token: 0x06015272 RID: 86642 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x6015272")] [Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "14")] public override void OnSkipRunning() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06015273 RID: 86643 RVA: 0x004EC720 File Offset: 0x004EA920 [Token(Token = "0x6015273")] [Address(RVA = "0x13A9F60", Offset = "0x13A8F60", VA = "0x1813A9F60", Slot = "15")] public override bool IsBlockingEncounterEnd() { double num = KKPBCOOONNK.EDNCMGJJLIH; int num2 = 0; int num3 = this.IHAGMDICMMF.HHKKJDOCBNH(); EncounterEnemyDescriptor[] array = this.enemies; float num4 = this.IHAGMDICMMF.FDPNNFKMEEO(); if (num2 > (int)num4) { int finishCondition = this.finishCondition; if (finishCondition != 0) { if (finishCondition != 0) { if (finishCondition != 0) { if (finishCondition != 0) { if (finishCondition == 1) { int num5 = base.BOIKGOELJPC(); List eilifmjgcbb = this.EILIFMJGCBB; int finishValue = this.finishValue; int size = eilifmjgcbb._size; int num6 = 0; int num7 = Mathf.Clamp(finishValue, num6, size); return num5 < num7; } goto IL_10B; } else { float num8 = this.POLMFGOLNLC.OKFCHCDDGCP; } } int num9 = this.LJKDHOFBGNP; int size2 = this.EILIFMJGCBB._size; int finishValue2 = this.finishValue; int num10 = this.LJKDHOFBGNP; int num11 = 0; int num12 = Mathf.Clamp(finishValue2, num11, num10); num9 -= size2; } int size3 = this.EILIFMJGCBB._size; int finishValue3 = this.finishValue; int num13 = this.LJKDHOFBGNP; int num14 = 0; int num15 = Mathf.Clamp(finishValue3, num14, num13); } } IL_10B: throw new NullReferenceException(); } // Token: 0x06015274 RID: 86644 RVA: 0x004EC840 File Offset: 0x004EAA40 [Token(Token = "0x6015274")] [Address(RVA = "0x13AA1E0", Offset = "0x13A91E0", VA = "0x1813AA1E0", Slot = "16")] public override bool IsCompleted() { List eilifmjgcbb = this.EILIFMJGCBB; bool flag; return flag; } // Token: 0x06015275 RID: 86645 RVA: 0x004EC85C File Offset: 0x004EAA5C [Token(Token = "0x6015275")] [Address(RVA = "0x13AAE20", Offset = "0x13A9E20", VA = "0x1813AAE20")] public SpawnEnemyEncounterStep() { } // Token: 0x0400DF38 RID: 57144 [FieldOffset(Offset = "0x78")] [Token(Token = "0x400DF38")] [SerializeField] [Header("Enemies")] public EncounterEnemyDescriptor[] enemies; // Token: 0x0400DF39 RID: 57145 [FieldOffset(Offset = "0x80")] [Token(Token = "0x400DF39")] [SerializeField] [Header("Timing")] public float timeBeforeFirstSpawn; // Token: 0x0400DF3A RID: 57146 [FieldOffset(Offset = "0x84")] [Token(Token = "0x400DF3A")] [SerializeField] public float timeBetweenSpawns = 0.25f; // Token: 0x0400DF3B RID: 57147 [Token(Token = "0x400DF3B")] private const float GAMECBIEFPI = 0.1f; // Token: 0x0400DF3C RID: 57148 [Token(Token = "0x400DF3C")] private const float DHEBIEAOBBK = 0.5f; // Token: 0x0400DF3D RID: 57149 [Token(Token = "0x400DF3D")] private const int KMGHJGGDIGA = 10; // Token: 0x0400DF3E RID: 57150 [FieldOffset(Offset = "0x88")] [Token(Token = "0x400DF3E")] private HCKAGCOEFNM IHAGMDICMMF; // Token: 0x020030D5 RID: 12501 [Token(Token = "0x20030D5")] public enum JEMKBBICKDK { // Token: 0x0400DF40 RID: 57152 [Token(Token = "0x400DF40")] IMMEDIATELY, // Token: 0x0400DF41 RID: 57153 [Token(Token = "0x400DF41")] ENEMIES_ALIVE, // Token: 0x0400DF42 RID: 57154 [Token(Token = "0x400DF42")] ENEMIES_KILLED, // Token: 0x0400DF43 RID: 57155 [Token(Token = "0x400DF43")] TIME_ELAPSED, // Token: 0x0400DF44 RID: 57156 [Token(Token = "0x400DF44")] ENEMIES_AGGROD } } }