using System; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using UnityEngine; // Token: 0x0200027E RID: 638 [Token(Token = "0x200027E")] [StructLayout(3)] public class OccupiableSpawnPointPool : MonoBehaviour { // Token: 0x060012E7 RID: 4839 RVA: 0x0005034C File Offset: 0x0004E54C [Token(Token = "0x60012E7")] [Address(RVA = "0x17DE7E0", Offset = "0x17DD1E0", VA = "0x1817DE7E0")] private void Awake() { int num; Action nebbgjnolph; Delegate @delegate; do { OccupiableSpawnPoint[] array = this.pool; num = 0; int length = array.Length; if (num >= length) { goto IL_51; } OccupiableSpawnPoint occupiableSpawnPoint = array[num]; Action action = new Action(this.Release); nebbgjnolph = occupiableSpawnPoint.NEBBGJNOLPH; @delegate = Delegate.Combine(nebbgjnolph, action); } while (@delegate != 0 && @delegate == 0); while (@delegate != nebbgjnolph) { } num++; IL_51: this.PMNGIHGNFJC.Clear(); OccupiableSpawnPoint[] array2 = this.pool; int length2 = array2.Length; if (num < length2) { List pmngihgnfjc = this.PMNGIHGNFJC; OccupiableSpawnPoint occupiableSpawnPoint2 = array2[num]; pmngihgnfjc.Add(occupiableSpawnPoint2); if (occupiableSpawnPoint2.k__BackingField) { occupiableSpawnPoint2.k__BackingField = false; } num++; } } // Token: 0x170002BF RID: 703 // (get) Token: 0x060012E8 RID: 4840 RVA: 0x000503FC File Offset: 0x0004E5FC [Token(Token = "0x170002BF")] public int MJNPHCAPCNM { [Token(Token = "0x60012E8")] [Address(RVA = "0x17DEC20", Offset = "0x17DD620", VA = "0x1817DEC20")] get { return this.PMNGIHGNFJC._size; } } // Token: 0x060012E9 RID: 4841 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x60012E9")] [Address(RVA = "0x17DE690", Offset = "0x17DD090", VA = "0x1817DE690")] public OccupiableSpawnPoint AcquireNext() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060012EA RID: 4842 RVA: 0x0005041C File Offset: 0x0004E61C [Token(Token = "0x60012EA")] [Address(RVA = "0x17DE760", Offset = "0x17DD160", VA = "0x1817DE760")] public OccupiableSpawnPoint AcquireRandom() { int num = this.PMNGIHGNFJC._size; if (num > 0) { num = global::UnityEngine.Random.Range(0, num); return this.GNHOKKNMMGG(num); } throw new NullReferenceException(); } // Token: 0x060012EB RID: 4843 RVA: 0x00050450 File Offset: 0x0004E650 [Token(Token = "0x60012EB")] [Address(RVA = "0x17DEA80", Offset = "0x17DD480", VA = "0x1817DEA80")] public void Release(OccupiableSpawnPoint BIFIOEBPLFN) { bool flag = this.PMNGIHGNFJC.Contains(BIFIOEBPLFN); if (!flag) { BIFIOEBPLFN.k__BackingField = flag; this.PMNGIHGNFJC.Add(BIFIOEBPLFN); } } // Token: 0x060012EC RID: 4844 RVA: 0x00050488 File Offset: 0x0004E688 [Token(Token = "0x60012EC")] [Address(RVA = "0x17DEB00", Offset = "0x17DD500", VA = "0x1817DEB00")] public void Reset() { this.PMNGIHGNFJC.Clear(); OccupiableSpawnPoint[] array = this.pool; int num = 0; int length = array.Length; if (num < length) { List pmngihgnfjc = this.PMNGIHGNFJC; OccupiableSpawnPoint occupiableSpawnPoint = array[num]; pmngihgnfjc.Add(occupiableSpawnPoint); if (occupiableSpawnPoint.k__BackingField) { occupiableSpawnPoint.k__BackingField = false; } num++; } } // Token: 0x060012ED RID: 4845 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x60012ED")] [Address(RVA = "0x17DE9D0", Offset = "0x17DD3D0", VA = "0x1817DE9D0")] private OccupiableSpawnPoint GNHOKKNMMGG(int EFBDCIJMFGD) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060012EE RID: 4846 RVA: 0x000504E8 File Offset: 0x0004E6E8 [Token(Token = "0x60012EE")] [Address(RVA = "0x17DEBC0", Offset = "0x17DD5C0", VA = "0x1817DEBC0")] public OccupiableSpawnPointPool() { List list = new List(); this.PMNGIHGNFJC = list; base..ctor(); } // Token: 0x04000EAC RID: 3756 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4000EAC")] [SerializeField] private OccupiableSpawnPoint[] pool; // Token: 0x04000EAD RID: 3757 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4000EAD")] private List PMNGIHGNFJC; }