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

472 lines
14 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Networking
{
// Token: 0x020024A3 RID: 9379
[Token(Token = "0x20024A3")]
public class NetworkCullingArea : SingletonMonoBehaviour<NetworkCullingArea>, COLMCCFNBIA
{
// Token: 0x17002774 RID: 10100
// (get) Token: 0x0600F1B2 RID: 61874 RVA: 0x003787CC File Offset: 0x003769CC
// (set) Token: 0x0600F1B3 RID: 61875 RVA: 0x003787E0 File Offset: 0x003769E0
[Token(Token = "0x17002774")]
public InterestGroupMember GBJKDHJEMGB
{
[Token(Token = "0x600F1B2")]
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
get;
[Token(Token = "0x600F1B3")]
[Address(RVA = "0x5329E0", Offset = "0x5317E0", VA = "0x1805329E0")]
set;
}
// Token: 0x17002775 RID: 10101
// (get) Token: 0x0600F1B4 RID: 61876 RVA: 0x003787F4 File Offset: 0x003769F4
// (set) Token: 0x0600F1B5 RID: 61877 RVA: 0x00378808 File Offset: 0x00376A08
[Token(Token = "0x17002775")]
public List<InterestGroupMember> IPJHMGCJCLI
{
[Token(Token = "0x600F1B4")]
[Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890")]
get;
[Token(Token = "0x600F1B5")]
[Address(RVA = "0x403B30", Offset = "0x402930", VA = "0x180403B30")]
private set;
}
// Token: 0x17002776 RID: 10102
// (get) Token: 0x0600F1B6 RID: 61878 RVA: 0x0037881C File Offset: 0x00376A1C
[Token(Token = "0x17002776")]
public bool OPPJPDCMKKJ
{
[Token(Token = "0x600F1B6")]
[Address(RVA = "0x8BF540", Offset = "0x8BE340", VA = "0x1808BF540")]
get
{
NetworkCullingOverride instance = SingletonMonoBehaviour.ONCPNMDGGKG;
int num = 0;
return instance == num || !SingletonMonoBehaviour.ONCPNMDGGKG.DisableNetworkLODCulling;
}
}
// Token: 0x17002777 RID: 10103
// (get) Token: 0x0600F1B7 RID: 61879 RVA: 0x00378850 File Offset: 0x00376A50
// (set) Token: 0x0600F1B8 RID: 61880 RVA: 0x00378864 File Offset: 0x00376A64
[Token(Token = "0x17002777")]
public int LLPAPOMPCHN
{
[Token(Token = "0x600F1B7")]
[Address(RVA = "0x3FA190", Offset = "0x3F8F90", VA = "0x1803FA190")]
get;
[Token(Token = "0x600F1B8")]
[Address(RVA = "0x568560", Offset = "0x567360", VA = "0x180568560")]
private set;
}
// Token: 0x17002778 RID: 10104
// (get) Token: 0x0600F1B9 RID: 61881 RVA: 0x00378878 File Offset: 0x00376A78
// (set) Token: 0x0600F1BA RID: 61882 RVA: 0x0037888C File Offset: 0x00376A8C
[Token(Token = "0x17002778")]
public OHFHKIPINGN EFPPGCLHHLN
{
[Token(Token = "0x600F1B9")]
[Address(RVA = "0x423DE0", Offset = "0x422BE0", VA = "0x180423DE0")]
get;
[Token(Token = "0x600F1BA")]
[Address(RVA = "0x567490", Offset = "0x566290", VA = "0x180567490")]
private set;
}
// Token: 0x0600F1BB RID: 61883 RVA: 0x003788A0 File Offset: 0x00376AA0
[Token(Token = "0x600F1BB")]
[Address(RVA = "0x8BF2D0", Offset = "0x8BE0D0", VA = "0x1808BF2D0")]
protected void Start()
{
float dynamicUpdateFrequency = this.DynamicUpdateFrequency;
Action<float> action = new Action(this.RecomputeCullingAreaBounds);
IDisposable disposable = ADIFCODGAML.FLMKKKHMJBN(this, dynamicUpdateFrequency, action);
this.OJNCFPAHEIG = disposable;
}
// Token: 0x0600F1BC RID: 61884 RVA: 0x003788D4 File Offset: 0x00376AD4
[Token(Token = "0x600F1BC")]
[Address(RVA = "0x8BE780", Offset = "0x8BD580", VA = "0x1808BE780", Slot = "5")]
protected override void OnDestroy()
{
if (this.OJNCFPAHEIG != 0)
{
}
this.OJNCFPAHEIG = (ulong)0L;
base.OnDestroy();
}
// Token: 0x0600F1BD RID: 61885 RVA: 0x003788FC File Offset: 0x00376AFC
[Token(Token = "0x600F1BD")]
[Address(RVA = "0x8BE7E0", Offset = "0x8BD5E0", VA = "0x1808BE7E0")]
public void OnDrawGizmos()
{
InterestGroupMember interestGroupMember = this.<HEJLOAPOPAF>k__BackingField;
int num = 0;
if (!(interestGroupMember == num))
{
OHFHKIPINGN ohfhkipingn = this.<OHNFFHFKMAF>k__BackingField;
if (ohfhkipingn != 0)
{
MHJBJPJHPFD.HCMDPIPMANH visualizationType = this.VisualizationType;
ohfhkipingn.GEPJEOGAEEH(visualizationType);
}
}
}
// Token: 0x0600F1BE RID: 61886 RVA: 0x00378938 File Offset: 0x00376B38
[Token(Token = "0x600F1BE")]
[Address(RVA = "0x8BE250", Offset = "0x8BD050", VA = "0x1808BE250")]
public NetworkCullingArea.HIELABABANC GetInterestRegion(Vector3 DDHPAFKBMON)
{
int num;
bool flag;
do
{
num = 0;
if (this.<OHNFFHFKMAF>k__BackingField == num)
{
return NetworkCullingArea.HIELABABANC.High;
}
InterestGroupMember interestGroupMember = this.<HEJLOAPOPAF>k__BackingField;
int num2 = 0;
if (interestGroupMember == num2)
{
return NetworkCullingArea.HIELABABANC.High;
}
List<byte> activeCells = this.<HEJLOAPOPAF>k__BackingField.ActiveCells;
if (flag)
{
OHFHKIPINGN ohfhkipingn = this.<OHNFFHFKMAF>k__BackingField;
bool flag2;
while (!flag2)
{
}
MHJBJPJHPFD mhjbjpjhpfd;
MHJBJPJHPFD.ENGKDHJBBKF dpdnblnnccg = mhjbjpjhpfd.DPDNBLNNCCG;
if (dpdnblnnccg != MHJBJPJHPFD.ENGKDHJBBKF.Leaf)
{
while (dpdnblnnccg != MHJBJPJHPFD.ENGKDHJBBKF.Node)
{
}
}
}
}
while (flag);
if (num != -1)
{
}
return NetworkCullingArea.HIELABABANC.High;
}
// Token: 0x0600F1BF RID: 61887 RVA: 0x003789AC File Offset: 0x00376BAC
[Token(Token = "0x600F1BF")]
[Address(RVA = "0x8BE4A0", Offset = "0x8BD2A0", VA = "0x1808BE4A0")]
public void GetNearbyCells(Vector3 DDHPAFKBMON, float COINKFIPBLL, float AFDLECJAJIB, ref List<byte> LLCIDEKMKBG)
{
if (this.<OHNFFHFKMAF>k__BackingField != 0)
{
float z = DDHPAFKBMON.z;
}
}
// Token: 0x0600F1C0 RID: 61888 RVA: 0x003789CC File Offset: 0x00376BCC
[Token(Token = "0x600F1C0")]
[Address(RVA = "0x8BDE80", Offset = "0x8BCC80", VA = "0x1808BDE80", Slot = "6")]
public void GetExactCells(Vector3 DDHPAFKBMON, List<byte> LLCIDEKMKBG)
{
if (this.<OHNFFHFKMAF>k__BackingField != (ulong)0L)
{
ulong num;
LLCIDEKMKBG.Add(num);
int num2 = 0;
OHFHKIPINGN ohfhkipingn = this.<OHNFFHFKMAF>k__BackingField;
OHFHKIPINGN ohfhkipingn2 = this.<OHNFFHFKMAF>k__BackingField;
Vector2 one = Vector2.one;
if (this.NumberOfSubdivisions > num2)
{
Vector2[] subdivisions = this.Subdivisions;
num += (ulong)num2;
uint num3;
num += (ulong)num3;
LLCIDEKMKBG.Add(num);
num2++;
num3 += (uint)num2;
}
}
}
// Token: 0x0600F1C1 RID: 61889 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600F1C1")]
[Address(RVA = "0x8BE170", Offset = "0x8BCF70", VA = "0x1808BE170", Slot = "7")]
public byte GetGroup(ref int CCKAEGKJAMC, List<byte> GOIABCIPPHN)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600F1C2 RID: 61890 RVA: 0x00378A44 File Offset: 0x00376C44
[Token(Token = "0x600F1C2")]
[Address(RVA = "0x8BE570", Offset = "0x8BD370", VA = "0x1808BE570")]
public bool IsInHighInterestRegion(Vector3 DDHPAFKBMON)
{
int num;
do
{
num = 0;
if (this.<OHNFFHFKMAF>k__BackingField == num)
{
goto IL_4E;
}
InterestGroupMember interestGroupMember = this.<HEJLOAPOPAF>k__BackingField;
int num2 = 0;
if (interestGroupMember == num2)
{
goto IL_4E;
}
List<byte> activeCells = this.<HEJLOAPOPAF>k__BackingField.ActiveCells;
bool flag;
if (flag)
{
OHFHKIPINGN ohfhkipingn = this.<OHNFFHFKMAF>k__BackingField;
MHJBJPJHPFD mhjbjpjhpfd;
while (mhjbjpjhpfd.DPDNBLNNCCG != MHJBJPJHPFD.ENGKDHJBBKF.Leaf)
{
}
bool flag2;
while (!flag2)
{
}
}
}
while (num != 0);
if (num != -1)
{
}
IL_4E:
throw new NullReferenceException();
}
// Token: 0x0600F1C3 RID: 61891 RVA: 0x00378AB0 File Offset: 0x00376CB0
[Token(Token = "0x600F1C3")]
[Address(RVA = "0x8BE860", Offset = "0x8BD660", VA = "0x1808BE860")]
public void RecomputeCullingAreaBounds(float POGAEJIEPIM)
{
int num9;
for (;;)
{
int num = 0;
int length = this.Subdivisions.Length;
uint num2;
uint num4;
if (num < length)
{
uint num3;
num2 = num3 * (uint)num;
num4 = num3 * (uint)num;
num++;
}
uint num5 = num4 * num2;
this.<IJNHAGPHDLD>k__BackingField = (int)num5;
NetworkCullingOverride instance = SingletonMonoBehaviour.ONCPNMDGGKG;
int num6 = 0;
if (!(instance == num6) && (SingletonMonoBehaviour.ONCPNMDGGKG.DisableNetworkLODCulling ? 1 : 0) != num)
{
goto IL_D6;
}
int num7 = 0;
List<Player> all = Player.All;
bool flag;
if (flag)
{
if (num7 != 0)
{
}
Vector3 zero = Vector3.zero;
}
if (num == 0)
{
if (num != -1)
{
}
ulong num8;
if (num8 == (ulong)0L)
{
return;
}
int numberOfSubdivisions = this.NumberOfSubdivisions;
Vector2 vector = this.Subdivisions[numberOfSubdivisions];
Vector3 vector2;
float z = vector2.z;
List<InterestGroupMember> list = this.<LPNKGHNAANE>k__BackingField;
bool flag2;
if (flag2)
{
}
num9 = 0;
if (num == 0)
{
break;
}
}
}
OHFHKIPINGN ohfhkipingn;
this.<OHNFFHFKMAF>k__BackingField = ohfhkipingn;
Debug.LogError("Failed to build spatial tree correctly - network culling will not work as intended");
return;
IL_D6:
this.<OHNFFHFKMAF>k__BackingField = num9;
throw new NullReferenceException();
}
// Token: 0x0600F1C4 RID: 61892 RVA: 0x00378BA0 File Offset: 0x00376DA0
[Token(Token = "0x600F1C4")]
[Address(RVA = "0x8BDD80", Offset = "0x8BCB80", VA = "0x1808BDD80")]
private Vector2 DAHGNKJKHBF()
{
float minimumCellSize = this.MinimumCellSize;
int numberOfSubdivisions = this.NumberOfSubdivisions;
Vector2 vector = this.Subdivisions[numberOfSubdivisions];
throw new NullReferenceException();
}
// Token: 0x0600F1C5 RID: 61893 RVA: 0x00378BD0 File Offset: 0x00376DD0
[Token(Token = "0x600F1C5")]
[Address(RVA = "0x8BE4F0", Offset = "0x8BD2F0", VA = "0x1808BE4F0")]
private bool ICEFGLOFEPH()
{
Vector2[] subdivisions = this.Subdivisions;
int num = 0;
int length = subdivisions.Length;
if (num < length)
{
num++;
}
this.<IJNHAGPHDLD>k__BackingField = (int)((uint)1);
return (ulong)((uint)1) <= (ulong)249L;
}
// Token: 0x0600F1C6 RID: 61894 RVA: 0x00378C14 File Offset: 0x00376E14
[Token(Token = "0x600F1C6")]
[Address(RVA = "0x8BF360", Offset = "0x8BE160", VA = "0x1808BF360")]
public NetworkCullingArea()
{
int[] array = new int[4];
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.8658990BAD6546E619D8A5C4F90BCF3F089E0953).FieldHandle);
this.SUBDIVISION_FIRST_LEVEL_ORDER = array;
int[] array2 = new int[8];
RuntimeHelpers.InitializeArray(array2, fieldof(<PrivateImplementationDetails>.739C505E9F0985CE1E08892BC46BE5E839FF061A).FieldHandle);
this.SUBDIVISION_SECOND_LEVEL_ORDER = array2;
int[] array3 = new int[12];
RuntimeHelpers.InitializeArray(array3, fieldof(<PrivateImplementationDetails>.35FDBB6669F521B572D4AD71DD77E77F43C1B71B).FieldHandle);
this.SUBDIVISION_THIRD_LEVEL_ORDER = array3;
this.VisualizationType = (MHJBJPJHPFD.HCMDPIPMANH)((ulong)3L);
List<InterestGroupMember> list = new List();
this.IPJHMGCJCLI = list;
this.MinimumCellSize = 2.5f;
this.UpdateDynamically = true;
this.DynamicUpdateFrequency = 1f;
Vector2[] array4 = new Vector2[3];
this.Subdivisions = array4;
float z = Vector3.zero.z;
float z2 = Vector3.zero.z;
int num = 0;
this.JJOBMPIJJML = num;
base..ctor();
}
// Token: 0x0400A069 RID: 41065
[Token(Token = "0x400A069")]
public const int MAX_CELL_INDEX = 250;
// Token: 0x0400A06A RID: 41066
[Token(Token = "0x400A06A")]
public const int MAX_CELL_COUNT = 249;
// Token: 0x0400A06B RID: 41067
[Token(Token = "0x400A06B")]
public const byte FIRST_GROUP_ID = 1;
// Token: 0x0400A06C RID: 41068
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400A06C")]
public readonly int[] SUBDIVISION_FIRST_LEVEL_ORDER;
// Token: 0x0400A06D RID: 41069
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400A06D")]
public readonly int[] SUBDIVISION_SECOND_LEVEL_ORDER;
// Token: 0x0400A06E RID: 41070
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400A06E")]
public readonly int[] SUBDIVISION_THIRD_LEVEL_ORDER;
// Token: 0x0400A06F RID: 41071
[Token(Token = "0x400A06F")]
private const double MMGHMNJDPAE = 0.0001;
// Token: 0x0400A070 RID: 41072
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400A070")]
public MHJBJPJHPFD.HCMDPIPMANH VisualizationType;
// Token: 0x0400A073 RID: 41075
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400A073")]
public float MinimumCellSize;
// Token: 0x0400A074 RID: 41076
[FieldOffset(Offset = "0x4C")]
[Token(Token = "0x400A074")]
public bool UpdateDynamically;
// Token: 0x0400A075 RID: 41077
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400A075")]
public float DynamicUpdateFrequency;
// Token: 0x0400A076 RID: 41078
[FieldOffset(Offset = "0x54")]
[Token(Token = "0x400A076")]
public int NumberOfSubdivisions;
// Token: 0x0400A079 RID: 41081
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400A079")]
public Vector2[] Subdivisions;
// Token: 0x0400A07A RID: 41082
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x400A07A")]
private Bounds JJOBMPIJJML;
// Token: 0x0400A07B RID: 41083
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x400A07B")]
private IDisposable OJNCFPAHEIG;
// Token: 0x020024A4 RID: 9380
[Token(Token = "0x20024A4")]
public enum HIELABABANC
{
// Token: 0x0400A07D RID: 41085
[Token(Token = "0x400A07D")]
Global,
// Token: 0x0400A07E RID: 41086
[Token(Token = "0x400A07E")]
Low,
// Token: 0x0400A07F RID: 41087
[Token(Token = "0x400A07F")]
High
}
}
}