542 lines
18 KiB
C#
542 lines
18 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Cpp2IlInjected;
|
|
using Google.Protobuf;
|
|
using Google.Protobuf.Collections;
|
|
using RecRoom.Networking;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Core.Creation.Shapes
|
|
{
|
|
// Token: 0x02003453 RID: 13395
|
|
[Token(Token = "0x2003453")]
|
|
public class ShapeContainerDataBitPacker
|
|
{
|
|
// Token: 0x06017197 RID: 94615 RVA: 0x0055DC9C File Offset: 0x0055BE9C
|
|
[Token(Token = "0x6017197")]
|
|
[Address(RVA = "0x212D7E0", Offset = "0x212C7E0", VA = "0x18212D7E0")]
|
|
[CBEAKPMNJOL(LGFJHLDANJN.Unity_AfterSceneLoad)]
|
|
private static void RegisterRpcSerializationHandlers()
|
|
{
|
|
PMDMLFNOIDA pmdmlfnoida = PMDMLFNOIDA.ONCPNMDGGKG;
|
|
int num;
|
|
Action<BitPacker, PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> action = new Action(num.CompressShapeContainer);
|
|
num = 0;
|
|
int num2;
|
|
Func<BitPacker, PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> func = new Func(num2.DecompressShapeContainer);
|
|
num2 = 0;
|
|
pmdmlfnoida.PAKHKCPLNMC<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD>(action, func);
|
|
PMDMLFNOIDA pmdmlfnoida2 = PMDMLFNOIDA.ONCPNMDGGKG;
|
|
int num3;
|
|
Action<BitPacker, PPOLCGCAKLF> action2 = new Action(num3.CompressShapeContainerCollection);
|
|
num3 = 0;
|
|
int num4;
|
|
Func<BitPacker, PPOLCGCAKLF> func2 = new Func(num4.DecompressShapeContainerCollection);
|
|
num4 = 0;
|
|
pmdmlfnoida2.PAKHKCPLNMC<PPOLCGCAKLF>(action2, func2);
|
|
PMDMLFNOIDA pmdmlfnoida3 = PMDMLFNOIDA.ONCPNMDGGKG;
|
|
int num5;
|
|
Action<BitPacker, ENMKBCNAGIC> action3 = new Action(num5.CompressShapeCollection);
|
|
num5 = 0;
|
|
int num6;
|
|
Func<BitPacker, ENMKBCNAGIC> func3 = new Func(num6.DecompressShapeCollection);
|
|
num6 = 0;
|
|
pmdmlfnoida3.PAKHKCPLNMC<ENMKBCNAGIC>(action3, func3);
|
|
}
|
|
|
|
// Token: 0x06017198 RID: 94616 RVA: 0x0055DD54 File Offset: 0x0055BF54
|
|
[Token(Token = "0x6017198")]
|
|
[Address(RVA = "0x212D9A0", Offset = "0x212C9A0", VA = "0x18212D9A0")]
|
|
[CALLMFDLAPD(IFJNJDOONNL.ExitingPlayMode, 0)]
|
|
private static void UnregisterRpcSerializationHandlers()
|
|
{
|
|
PMDMLFNOIDA.ONCPNMDGGKG.NFJKPKDIFKP<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD>();
|
|
PMDMLFNOIDA.ONCPNMDGGKG.NFJKPKDIFKP<PPOLCGCAKLF>();
|
|
PMDMLFNOIDA.ONCPNMDGGKG.NFJKPKDIFKP<ENMKBCNAGIC>();
|
|
}
|
|
|
|
// Token: 0x06017199 RID: 94617 RVA: 0x0055DD8C File Offset: 0x0055BF8C
|
|
[Token(Token = "0x6017199")]
|
|
[Address(RVA = "0x212BBB0", Offset = "0x212ABB0", VA = "0x18212BBB0")]
|
|
private static void CompressShapeContainerCollection(BitPacker bitPacker, PPOLCGCAKLF collection)
|
|
{
|
|
RepeatedField<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> aeopdkhjpif = collection.AEOPDKHJPIF;
|
|
int num;
|
|
Action<BitPacker, PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> action = new Action(num.CompressShapeContainer);
|
|
num = 0;
|
|
bitPacker.WriteList<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD>(aeopdkhjpif, action);
|
|
}
|
|
|
|
// Token: 0x0601719A RID: 94618 RVA: 0x0055DDC0 File Offset: 0x0055BFC0
|
|
[Token(Token = "0x601719A")]
|
|
[Address(RVA = "0x212C770", Offset = "0x212B770", VA = "0x18212C770")]
|
|
private static PPOLCGCAKLF DecompressShapeContainerCollection(BitPacker bitPacker)
|
|
{
|
|
PPOLCGCAKLF ppolcgcaklf = new PPOLCGCAKLF();
|
|
RepeatedField<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> aeopdkhjpif = ppolcgcaklf.AEOPDKHJPIF;
|
|
int num;
|
|
Func<BitPacker, PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> func = new Func(num.DecompressShapeContainer);
|
|
num = 0;
|
|
List<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD> list = bitPacker.ReadList<PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD>(func);
|
|
aeopdkhjpif.AddRange(list);
|
|
return ppolcgcaklf;
|
|
}
|
|
|
|
// Token: 0x0601719B RID: 94619 RVA: 0x0055DE04 File Offset: 0x0055C004
|
|
[Token(Token = "0x601719B")]
|
|
[Address(RVA = "0x212BC40", Offset = "0x212AC40", VA = "0x18212BC40")]
|
|
private static void CompressShapeContainer(BitPacker bitPacker, PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD entry)
|
|
{
|
|
int nnngllgcggd = entry.NNNGLLGCGGD;
|
|
bitPacker.WriteVarUInt((uint)nnngllgcggd);
|
|
bool kejibjkbcpc = entry.KEJIBJKBCPC;
|
|
bitPacker.WriteBool(kejibjkbcpc);
|
|
if (!entry.KEJIBJKBCPC)
|
|
{
|
|
ENMKBCNAGIC blhogddjnlb = entry.BLHOGDDJNLB;
|
|
ShapeContainerDataBitPacker.CompressShapeCollection(bitPacker, blhogddjnlb);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601719C RID: 94620 RVA: 0x0055DE4C File Offset: 0x0055C04C
|
|
[Token(Token = "0x601719C")]
|
|
[Address(RVA = "0x212C840", Offset = "0x212B840", VA = "0x18212C840")]
|
|
private static PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD DecompressShapeContainer(BitPacker bitPacker)
|
|
{
|
|
PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD ceaiainmicd;
|
|
do
|
|
{
|
|
ceaiainmicd = new PPOLCGCAKLF.FIFELKAAAPH.CEAIAINMICD();
|
|
uint num = bitPacker.ReadVarUInt();
|
|
ceaiainmicd.NNNGLLGCGGD = (int)num;
|
|
bool flag = bitPacker.ReadBool();
|
|
ceaiainmicd.KEJIBJKBCPC = flag;
|
|
if (flag)
|
|
{
|
|
return ceaiainmicd;
|
|
}
|
|
}
|
|
while (bitPacker == 0);
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
CS$<>8__locals1.minExtent.z = z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
CS$<>8__locals1.maxExtent.z = z2;
|
|
ENMKBCNAGIC enmkbcnagic = new ENMKBCNAGIC();
|
|
RepeatedField<LAKMDOLHIBI> blhogddjnlb = enmkbcnagic.BLHOGDDJNLB;
|
|
Func<BitPacker, LAKMDOLHIBI> func = delegate(BitPacker bp)
|
|
{
|
|
float z3 = CS$<>8__locals1.maxExtent.z;
|
|
float z4 = CS$<>8__locals1.minExtent.z;
|
|
LAKMDOLHIBI lakmdolhibi;
|
|
return lakmdolhibi;
|
|
};
|
|
List<LAKMDOLHIBI> list = bitPacker.ReadList<LAKMDOLHIBI>(func);
|
|
blhogddjnlb.AddRange(list);
|
|
ceaiainmicd.BLHOGDDJNLB = enmkbcnagic;
|
|
return ceaiainmicd;
|
|
}
|
|
|
|
// Token: 0x0601719D RID: 94621 RVA: 0x0055DEF8 File Offset: 0x0055C0F8
|
|
[Token(Token = "0x601719D")]
|
|
[Address(RVA = "0x212B9B0", Offset = "0x212A9B0", VA = "0x18212B9B0")]
|
|
private static void CompressShapeCollection(BitPacker bitPackerBase, ENMKBCNAGIC collection)
|
|
{
|
|
do
|
|
{
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Vector3 minExtent;
|
|
minExtent.z = z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
Vector3 maxExtent;
|
|
maxExtent.z = z2;
|
|
if (bitPackerBase == 0)
|
|
{
|
|
}
|
|
}
|
|
while (bitPackerBase == 0);
|
|
float z3 = CS$<>8__locals1.minExtent.z;
|
|
float z4 = CS$<>8__locals1.maxExtent.z;
|
|
RepeatedField<LAKMDOLHIBI> blhogddjnlb = collection.BLHOGDDJNLB;
|
|
Action<BitPacker, LAKMDOLHIBI> action = delegate(BitPacker bp, LAKMDOLHIBI s)
|
|
{
|
|
float z5 = CS$<>8__locals1.maxExtent.z;
|
|
float z6 = CS$<>8__locals1.minExtent.z;
|
|
};
|
|
bitPackerBase.WriteList<LAKMDOLHIBI>(blhogddjnlb, action);
|
|
}
|
|
|
|
// Token: 0x0601719E RID: 94622 RVA: 0x0055DF84 File Offset: 0x0055C184
|
|
[Token(Token = "0x601719E")]
|
|
[Address(RVA = "0x212C5C0", Offset = "0x212B5C0", VA = "0x18212C5C0")]
|
|
private static ENMKBCNAGIC DecompressShapeCollection(BitPacker bitPackerBase)
|
|
{
|
|
do
|
|
{
|
|
if (bitPackerBase == 0)
|
|
{
|
|
}
|
|
}
|
|
while (bitPackerBase == 0);
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
CS$<>8__locals1.minExtent.z = z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
CS$<>8__locals1.maxExtent.z = z2;
|
|
ENMKBCNAGIC enmkbcnagic = new ENMKBCNAGIC();
|
|
RepeatedField<LAKMDOLHIBI> blhogddjnlb = enmkbcnagic.BLHOGDDJNLB;
|
|
Func<BitPacker, LAKMDOLHIBI> func = delegate(BitPacker bp)
|
|
{
|
|
float z3 = CS$<>8__locals1.maxExtent.z;
|
|
float z4 = CS$<>8__locals1.minExtent.z;
|
|
LAKMDOLHIBI lakmdolhibi;
|
|
return lakmdolhibi;
|
|
};
|
|
List<LAKMDOLHIBI> list = bitPackerBase.ReadList<LAKMDOLHIBI>(func);
|
|
blhogddjnlb.AddRange(list);
|
|
return enmkbcnagic;
|
|
}
|
|
|
|
// Token: 0x0601719F RID: 94623 RVA: 0x0055E000 File Offset: 0x0055C200
|
|
[Token(Token = "0x601719F")]
|
|
[Address(RVA = "0x212BCA0", Offset = "0x212ACA0", VA = "0x18212BCA0")]
|
|
private static void CompressShape(BitPacker bitPackerBase, LAKMDOLHIBI shape, Vector3 minPositionExtent, Vector3 maxPositionExtent)
|
|
{
|
|
do
|
|
{
|
|
if (bitPackerBase == 0)
|
|
{
|
|
}
|
|
}
|
|
while (bitPackerBase == 0);
|
|
int num = 0;
|
|
int mgjcejapfpi = shape.MGJCEJAPFPI;
|
|
bitPackerBase.WriteInt(mgjcejapfpi, num, 18);
|
|
int bpcfmhdhebp = shape.BPCFMHDHEBP;
|
|
int num2 = 0;
|
|
bitPackerBase.WriteInt(bpcfmhdhebp, num2, 60);
|
|
int jaejnaiigcn = shape.JAEJNAIIGCN;
|
|
int num3 = 0;
|
|
bitPackerBase.WriteInt(jaejnaiigcn, num3, 31);
|
|
float jhdcabhkloo = shape.JHDCABHKLOO;
|
|
bitPackerBase.GENADLBLGEJ(jhdcabhkloo);
|
|
float ifkafhkfcaj = shape.IFKAFHKFCAJ;
|
|
bitPackerBase.WriteUncompressedFloat(ifkafhkfcaj);
|
|
float cmppkafhkac = shape.CMPPKAFHKAC;
|
|
bitPackerBase.WriteUncompressedFloat(cmppkafhkac);
|
|
MLLDBGNOBLL mghpabcfkjj = shape.MGHPABCFKJJ;
|
|
int num4 = 0;
|
|
float aefmfcnonnn = mghpabcfkjj.AEFMFCNONNN;
|
|
ulong num5;
|
|
bitPackerBase.WriteFloat(aefmfcnonnn, (float)num4, 16f, (int)num5);
|
|
float mcjaimhjkba = shape.MGHPABCFKJJ.MCJAIMHJKBA;
|
|
int num6 = 0;
|
|
ulong num7;
|
|
bitPackerBase.WriteFloat(mcjaimhjkba, (float)num6, 16f, (int)num7);
|
|
float haoccmehaek = shape.MGHPABCFKJJ.HAOCCMEHAEK;
|
|
int num8 = 0;
|
|
ulong num9;
|
|
bitPackerBase.WriteFloat(haoccmehaek, (float)num8, 16f, (int)num9);
|
|
int nkmhcdblepo = shape.NKMHCDBLEPO;
|
|
int num10 = 0;
|
|
bitPackerBase.WriteInt(nkmhcdblepo, num10, 1);
|
|
int mgjcejapfpi2 = shape.MGJCEJAPFPI;
|
|
int mgjcejapfpi3 = shape.MGJCEJAPFPI;
|
|
MLLDBGNOBLL kmibififmef = shape.IDGDGOFNHPG.KMIBIFIFMEF;
|
|
bitPackerBase.GENADLBLGEJ(haoccmehaek);
|
|
float mcjaimhjkba2 = shape.IDGDGOFNHPG.KMIBIFIFMEF.MCJAIMHJKBA;
|
|
bitPackerBase.GENADLBLGEJ(mcjaimhjkba2);
|
|
float haoccmehaek2 = shape.IDGDGOFNHPG.KMIBIFIFMEF.HAOCCMEHAEK;
|
|
bitPackerBase.GENADLBLGEJ(haoccmehaek2);
|
|
}
|
|
|
|
// Token: 0x060171A0 RID: 94624 RVA: 0x0055E220 File Offset: 0x0055C420
|
|
[Token(Token = "0x60171A0")]
|
|
[Address(RVA = "0x212CA50", Offset = "0x212BA50", VA = "0x18212CA50")]
|
|
private static LAKMDOLHIBI DecompressShape(BitPacker bitPackerBase, Vector3 minPositionExtent, Vector3 maxPositionExtent)
|
|
{
|
|
do
|
|
{
|
|
if (bitPackerBase == 0)
|
|
{
|
|
}
|
|
}
|
|
while (bitPackerBase == 0);
|
|
LAKMDOLHIBI lakmdolhibi = new LAKMDOLHIBI();
|
|
ByteString byteString;
|
|
lakmdolhibi.JPOHGBCEJEJ = byteString;
|
|
int num = bitPackerBase.ReadInt(-1, 18);
|
|
lakmdolhibi.MGJCEJAPFPI = num;
|
|
int num2 = 0;
|
|
int num3 = bitPackerBase.ReadInt(num2, 60);
|
|
lakmdolhibi.BPCFMHDHEBP = num3;
|
|
int num4 = 0;
|
|
int num5 = bitPackerBase.ReadInt(num4, 31);
|
|
lakmdolhibi.JAEJNAIIGCN = num5;
|
|
MLLDBGNOBLL mlldbgnobll;
|
|
lakmdolhibi.CPPHBOGGGNF = mlldbgnobll;
|
|
MLLDBGNOBLL mlldbgnobll2;
|
|
lakmdolhibi.GBAKPJJFCLK = mlldbgnobll2;
|
|
bool flag = "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.ResultModels.StackPointer)}, offset 0x67}" == (ulong)0L;
|
|
lakmdolhibi.ILGFEHFHFIB = flag;
|
|
float num6 = bitPackerBase.PAAHKBPKNJP();
|
|
lakmdolhibi.JHDCABHKLOO = num6;
|
|
float num7 = bitPackerBase.ReadUncompressedFloat();
|
|
lakmdolhibi.IFKAFHKFCAJ = num7;
|
|
float num8 = bitPackerBase.ReadUncompressedFloat();
|
|
int num9 = 0;
|
|
lakmdolhibi.CMPPKAFHKAC = num8;
|
|
float num10 = bitPackerBase.ReadFloat((float)num9, 16f, 10);
|
|
int num11 = 0;
|
|
float num12 = bitPackerBase.ReadFloat((float)num11, 16f, 10);
|
|
int num13 = 0;
|
|
float num14 = bitPackerBase.ReadFloat((float)num13, 16f, 10);
|
|
MLLDBGNOBLL mlldbgnobll3;
|
|
lakmdolhibi.MGHPABCFKJJ = mlldbgnobll3;
|
|
int num15 = 0;
|
|
int num16 = bitPackerBase.ReadInt(num15, 1);
|
|
int mgjcejapfpi = lakmdolhibi.MGJCEJAPFPI;
|
|
lakmdolhibi.NKMHCDBLEPO = num16;
|
|
int mgjcejapfpi2 = lakmdolhibi.MGJCEJAPFPI;
|
|
ENJMDBGOOND enjmdbgoond = new ENJMDBGOOND();
|
|
lakmdolhibi.IDGDGOFNHPG = enjmdbgoond;
|
|
ENJMDBGOOND enjmdbgoond2 = lakmdolhibi.IDGDGOFNHPG;
|
|
MLLDBGNOBLL mlldbgnobll4 = new MLLDBGNOBLL();
|
|
enjmdbgoond2.KMIBIFIFMEF = mlldbgnobll4;
|
|
MLLDBGNOBLL kmibififmef = lakmdolhibi.IDGDGOFNHPG.KMIBIFIFMEF;
|
|
float num17 = bitPackerBase.PAAHKBPKNJP();
|
|
kmibififmef.AEFMFCNONNN = num17;
|
|
MLLDBGNOBLL kmibififmef2 = lakmdolhibi.IDGDGOFNHPG.KMIBIFIFMEF;
|
|
float num18 = bitPackerBase.PAAHKBPKNJP();
|
|
kmibififmef2.MCJAIMHJKBA = num18;
|
|
MLLDBGNOBLL kmibififmef3 = lakmdolhibi.IDGDGOFNHPG.KMIBIFIFMEF;
|
|
float num19 = bitPackerBase.PAAHKBPKNJP();
|
|
kmibififmef3.HAOCCMEHAEK = num19;
|
|
int num20 = bitPackerBase.ReadInt(4, 20);
|
|
int radiusRequiredBits = num20;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Vector3 minExtent;
|
|
minExtent.z = z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
Vector3 maxExtent;
|
|
maxExtent.z = z2;
|
|
JJHOJPEIKCM jjhojpeikcm = new JJHOJPEIKCM();
|
|
lakmdolhibi.PPGHMGEIBMN = jjhojpeikcm;
|
|
RepeatedField<DIEPKHGNMAG> jihnbkmliaf = lakmdolhibi.PPGHMGEIBMN.JIHNBKMLIAF;
|
|
Func<BitPacker, DIEPKHGNMAG> func = delegate(BitPacker bp)
|
|
{
|
|
float z3 = maxExtent.z;
|
|
float z4 = minExtent.z;
|
|
DIEPKHGNMAG diepkhgnmag;
|
|
return diepkhgnmag;
|
|
};
|
|
List<DIEPKHGNMAG> list = bitPackerBase.ReadList<DIEPKHGNMAG>(func);
|
|
jihnbkmliaf.AddRange(list);
|
|
JJHOJPEIKCM jjhojpeikcm2 = lakmdolhibi.PPGHMGEIBMN;
|
|
bool flag2 = bitPackerBase.ReadBool();
|
|
jjhojpeikcm2.FEEHBNMBEBL = flag2;
|
|
JJHOJPEIKCM jjhojpeikcm3 = lakmdolhibi.PPGHMGEIBMN;
|
|
int num21 = bitPackerBase.ReadInt(1, 10);
|
|
jjhojpeikcm3.IAAJELGPLJP = num21;
|
|
JJHOJPEIKCM jjhojpeikcm4 = lakmdolhibi.PPGHMGEIBMN;
|
|
int num22 = 0;
|
|
float num23 = bitPackerBase.ReadFloat((float)num22, 1f, 5);
|
|
jjhojpeikcm4.PCMDFBEIPEL = num23;
|
|
JJHOJPEIKCM jjhojpeikcm5 = lakmdolhibi.PPGHMGEIBMN;
|
|
bool flag3 = bitPackerBase.ReadBool();
|
|
jjhojpeikcm5.KMEJODNODEF = flag3;
|
|
return lakmdolhibi;
|
|
}
|
|
|
|
// Token: 0x060171A1 RID: 94625 RVA: 0x0055E4C4 File Offset: 0x0055C6C4
|
|
[Token(Token = "0x60171A1")]
|
|
[Address(RVA = "0x212D560", Offset = "0x212C560", VA = "0x18212D560")]
|
|
private static Bounds GetShapePositionBounds(IList<LAKMDOLHIBI> shapes)
|
|
{
|
|
if (0 != 0)
|
|
{
|
|
int num = 0;
|
|
int num2 = 0;
|
|
Vector3 vector = num.DEEKJHMMLDF();
|
|
float z = Vector3.zero.z;
|
|
int num3 = 0;
|
|
if (num3 < num2)
|
|
{
|
|
num3 += num3;
|
|
if (num3 == num2)
|
|
{
|
|
goto IL_6C;
|
|
}
|
|
num3++;
|
|
}
|
|
int num4 = 0;
|
|
uint num5;
|
|
if (num5 >= (uint)z)
|
|
{
|
|
goto IL_8E;
|
|
}
|
|
if (num3 < num4)
|
|
{
|
|
num3 += num3;
|
|
if (num3 == num4)
|
|
{
|
|
goto IL_7D;
|
|
}
|
|
num3++;
|
|
}
|
|
Vector3 vector2;
|
|
float num6 = vector2.z;
|
|
num5 += (uint)1;
|
|
IL_6C:
|
|
num5 += num5;
|
|
num6 += 2.7E-44f;
|
|
IL_7D:
|
|
num5 += num5;
|
|
num6 += 2.7E-44f;
|
|
}
|
|
IL_8E:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x060171A2 RID: 94626 RVA: 0x0055E564 File Offset: 0x0055C764
|
|
[Token(Token = "0x60171A2")]
|
|
[Address(RVA = "0x212D2E0", Offset = "0x212C2E0", VA = "0x18212D2E0")]
|
|
private static Bounds GetControlPointPositionBounds(IList<DIEPKHGNMAG> controlPoints)
|
|
{
|
|
if (0 != 0)
|
|
{
|
|
int num = 0;
|
|
int num2 = 0;
|
|
Vector3 vector = num.DEEKJHMMLDF();
|
|
float z = Vector3.zero.z;
|
|
int num3 = 0;
|
|
if (num3 < num2)
|
|
{
|
|
num3 += num3;
|
|
if (num3 == num2)
|
|
{
|
|
goto IL_6C;
|
|
}
|
|
num3++;
|
|
}
|
|
int num4 = 0;
|
|
uint num5;
|
|
if (num5 >= (uint)z)
|
|
{
|
|
goto IL_8E;
|
|
}
|
|
if (num3 < num4)
|
|
{
|
|
num3 += num3;
|
|
if (num3 == num4)
|
|
{
|
|
goto IL_7D;
|
|
}
|
|
num3++;
|
|
}
|
|
Vector3 vector2;
|
|
float num6 = vector2.z;
|
|
num5 += (uint)1;
|
|
IL_6C:
|
|
num5 += num5;
|
|
num6 += 2.7E-44f;
|
|
IL_7D:
|
|
num5 += num5;
|
|
num6 += 2.7E-44f;
|
|
}
|
|
IL_8E:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x060171A3 RID: 94627 RVA: 0x0055E604 File Offset: 0x0055C804
|
|
[Token(Token = "0x60171A3")]
|
|
[Address(RVA = "0x212C3A0", Offset = "0x212B3A0", VA = "0x18212C3A0")]
|
|
private static void CompressTubeControlPoint(BitPacker bitPackerBase, DIEPKHGNMAG controlPoint, int radiusRequiredBits, Vector3 minPositionExtent, Vector3 maxPositionExtent)
|
|
{
|
|
do
|
|
{
|
|
if (bitPackerBase == 0)
|
|
{
|
|
}
|
|
}
|
|
while (bitPackerBase == 0);
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
float z2 = minPositionExtent.z;
|
|
Vector3 vector2;
|
|
float z3 = vector2.z;
|
|
float kemaajnjagk = controlPoint.KEMAAJNJAGK;
|
|
int num = 0;
|
|
float bpfkhneigpj = ShapeContainer.NKHMHPMBBPA.BPFKHNEIGPJ;
|
|
bitPackerBase.WriteFloat(kemaajnjagk, (float)num, bpfkhneigpj, radiusRequiredBits);
|
|
}
|
|
|
|
// Token: 0x060171A4 RID: 94628 RVA: 0x0055E654 File Offset: 0x0055C854
|
|
[Token(Token = "0x60171A4")]
|
|
[Address(RVA = "0x212D0C0", Offset = "0x212C0C0", VA = "0x18212D0C0")]
|
|
private static DIEPKHGNMAG DecompressTubeControlPoint(BitPacker bitPackerBase, int radiusRequiredBits, Vector3 minPositionExtent, Vector3 maxPositionExtent)
|
|
{
|
|
do
|
|
{
|
|
if (bitPackerBase == 0)
|
|
{
|
|
}
|
|
}
|
|
while (bitPackerBase == 0);
|
|
DIEPKHGNMAG diepkhgnmag = new DIEPKHGNMAG();
|
|
float z = maxPositionExtent.z;
|
|
float z2 = minPositionExtent.z;
|
|
Vector3 vector;
|
|
float z3 = vector.z;
|
|
MLLDBGNOBLL mlldbgnobll;
|
|
diepkhgnmag.NGPBAHHNNIJ = mlldbgnobll;
|
|
Vector3 vector2;
|
|
float z4 = vector2.z;
|
|
MLLDBGNOBLL mlldbgnobll2;
|
|
diepkhgnmag.JFLPDLFGEML = mlldbgnobll2;
|
|
float bpfkhneigpj = ShapeContainer.NKHMHPMBBPA.BPFKHNEIGPJ;
|
|
int num = 0;
|
|
float num2 = bitPackerBase.ReadFloat((float)num, bpfkhneigpj, radiusRequiredBits);
|
|
diepkhgnmag.KEMAAJNJAGK = num2;
|
|
return diepkhgnmag;
|
|
}
|
|
|
|
// Token: 0x060171A5 RID: 94629 RVA: 0x0055E6C4 File Offset: 0x0055C8C4
|
|
[Token(Token = "0x60171A5")]
|
|
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
|
public ShapeContainerDataBitPacker()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0400F057 RID: 61527
|
|
[Token(Token = "0x400F057")]
|
|
private const float TubeControlPointRadiusCompressionErrorTolerance = 0.005f;
|
|
|
|
// Token: 0x0400F058 RID: 61528
|
|
[Token(Token = "0x400F058")]
|
|
private const int TubeControlPointRadiusCompressionMinBits = 4;
|
|
|
|
// Token: 0x0400F059 RID: 61529
|
|
[Token(Token = "0x400F059")]
|
|
private const int TubeControlPointRadiusCompressionMaxBits = 20;
|
|
|
|
// Token: 0x0400F05A RID: 61530
|
|
[Token(Token = "0x400F05A")]
|
|
public const int TubeMaxPointsOnRing = 10;
|
|
|
|
// Token: 0x0400F05B RID: 61531
|
|
[Token(Token = "0x400F05B")]
|
|
public const int NumShapeRotationBitsPerAxis = 12;
|
|
|
|
// Token: 0x0400F05C RID: 61532
|
|
[Token(Token = "0x400F05C")]
|
|
private const int UV_OFFSET_BITS = 10;
|
|
}
|
|
}
|