Files
2026-04-10 22:50:51 +02:00

153 lines
4.3 KiB
C#

using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;
// Token: 0x02000270 RID: 624
[Token(Token = "0x2000270")]
public class OccupiableSpawnPointPool : MonoBehaviour
{
// Token: 0x06001290 RID: 4752 RVA: 0x0004EFC0 File Offset: 0x0004D1C0
[Token(Token = "0x6001290")]
[Address(RVA = "0x134F7F0", Offset = "0x134E5F0", VA = "0x18134F7F0")]
private void Awake()
{
int num;
Action<OccupiableSpawnPoint> 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<OccupiableSpawnPoint> 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<OccupiableSpawnPoint> pmngihgnfjc = this.PMNGIHGNFJC;
OccupiableSpawnPoint occupiableSpawnPoint2 = array2[num];
pmngihgnfjc.Add(occupiableSpawnPoint2);
if (occupiableSpawnPoint2.<NJCMHLEEHGN>k__BackingField)
{
occupiableSpawnPoint2.<NJCMHLEEHGN>k__BackingField = false;
}
num++;
}
}
// Token: 0x170002B8 RID: 696
// (get) Token: 0x06001291 RID: 4753 RVA: 0x0004F070 File Offset: 0x0004D270
[Token(Token = "0x170002B8")]
public int MJNPHCAPCNM
{
[Token(Token = "0x6001291")]
[Address(RVA = "0x134FC30", Offset = "0x134EA30", VA = "0x18134FC30")]
get
{
return this.PMNGIHGNFJC._size;
}
}
// Token: 0x06001292 RID: 4754 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6001292")]
[Address(RVA = "0x134F6A0", Offset = "0x134E4A0", VA = "0x18134F6A0")]
public OccupiableSpawnPoint AcquireNext()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06001293 RID: 4755 RVA: 0x0004F090 File Offset: 0x0004D290
[Token(Token = "0x6001293")]
[Address(RVA = "0x134F770", Offset = "0x134E570", VA = "0x18134F770")]
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: 0x06001294 RID: 4756 RVA: 0x0004F0C4 File Offset: 0x0004D2C4
[Token(Token = "0x6001294")]
[Address(RVA = "0x134FA90", Offset = "0x134E890", VA = "0x18134FA90")]
public void Release(OccupiableSpawnPoint BIFIOEBPLFN)
{
bool flag = this.PMNGIHGNFJC.Contains(BIFIOEBPLFN);
if (!flag)
{
BIFIOEBPLFN.<NJCMHLEEHGN>k__BackingField = flag;
this.PMNGIHGNFJC.Add(BIFIOEBPLFN);
}
}
// Token: 0x06001295 RID: 4757 RVA: 0x0004F0FC File Offset: 0x0004D2FC
[Token(Token = "0x6001295")]
[Address(RVA = "0x134FB10", Offset = "0x134E910", VA = "0x18134FB10")]
public void Reset()
{
this.PMNGIHGNFJC.Clear();
OccupiableSpawnPoint[] array = this.pool;
int num = 0;
int length = array.Length;
if (num < length)
{
List<OccupiableSpawnPoint> pmngihgnfjc = this.PMNGIHGNFJC;
OccupiableSpawnPoint occupiableSpawnPoint = array[num];
pmngihgnfjc.Add(occupiableSpawnPoint);
if (occupiableSpawnPoint.<NJCMHLEEHGN>k__BackingField)
{
occupiableSpawnPoint.<NJCMHLEEHGN>k__BackingField = false;
}
num++;
}
}
// Token: 0x06001296 RID: 4758 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6001296")]
[Address(RVA = "0x134F9E0", Offset = "0x134E7E0", VA = "0x18134F9E0")]
private OccupiableSpawnPoint GNHOKKNMMGG(int EFBDCIJMFGD)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06001297 RID: 4759 RVA: 0x0004F15C File Offset: 0x0004D35C
[Token(Token = "0x6001297")]
[Address(RVA = "0x134FBD0", Offset = "0x134E9D0", VA = "0x18134FBD0")]
public OccupiableSpawnPointPool()
{
List<OccupiableSpawnPoint> list = new List();
this.PMNGIHGNFJC = list;
base..ctor();
}
// Token: 0x04000E5F RID: 3679
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4000E5F")]
[SerializeField]
private OccupiableSpawnPoint[] pool;
// Token: 0x04000E60 RID: 3680
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4000E60")]
private List<OccupiableSpawnPoint> PMNGIHGNFJC;
}