230 lines
5.8 KiB
C#
230 lines
5.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Async;
|
|
using RecRoom.Core.Creation;
|
|
using RecRoom.Core.Creation.Shapes;
|
|
using RecRoom.Persistence;
|
|
|
|
// Token: 0x02002C39 RID: 11321
|
|
[Token(Token = "0x2002C39")]
|
|
[StructLayout(3)]
|
|
public sealed class AMDIJMPHEGP : GCHANDDKPBM
|
|
{
|
|
// Token: 0x06013E8B RID: 81547 RVA: 0x004C6A44 File Offset: 0x004C4C44
|
|
[Token(Token = "0x6013E8B")]
|
|
[Address(RVA = "0xFEB790", Offset = "0xFEA190", VA = "0x180FEB790")]
|
|
public AMDIJMPHEGP(ShapeContainer destShapeContainer, IReadOnlyList<ShapeContainer> sourceShapeContainers)
|
|
{
|
|
PersistenceView persistenceView = destShapeContainer.persistenceView;
|
|
int num = 0;
|
|
int num2 = 0;
|
|
if (num2 < num)
|
|
{
|
|
num2 += num2;
|
|
if (num2 == num)
|
|
{
|
|
goto IL_69;
|
|
}
|
|
num2++;
|
|
}
|
|
int num3 = 0;
|
|
Guid guid;
|
|
Guid[] array = new Guid[guid._a];
|
|
this.GPMCMCELFEJ = array;
|
|
if (num2 >= array.Length)
|
|
{
|
|
return;
|
|
}
|
|
if (num2 < num3)
|
|
{
|
|
num2 += num2;
|
|
if (num2 == num3)
|
|
{
|
|
goto IL_6D;
|
|
}
|
|
num2++;
|
|
}
|
|
num2++;
|
|
num2 += 2;
|
|
num2 += num2;
|
|
Guid[] gpmcmcelfej = this.GPMCMCELFEJ;
|
|
IL_69:
|
|
num2 += num2;
|
|
IL_6D:
|
|
num2 += num2;
|
|
}
|
|
|
|
// Token: 0x06013E8C RID: 81548 RVA: 0x004C6AC8 File Offset: 0x004C4CC8
|
|
[Token(Token = "0x6013E8C")]
|
|
[Address(RVA = "0xFEB2F0", Offset = "0xFE9CF0", VA = "0x180FEB2F0", Slot = "4")]
|
|
public override IPromise OCAFOIEOMLN(CreationContext OLFNCDHDFPF)
|
|
{
|
|
int num = 0;
|
|
AMDIJMPHEGP.JDGCPIOOGGP jdgcpiooggp = new AMDIJMPHEGP.JDGCPIOOGGP();
|
|
OLFNCDHDFPF.RemoveAllFromSelection();
|
|
AMDIJMPHEGP.PIDKGCBHNOP.Clear();
|
|
Guid kfjbmgphibi = this.KFJBMGPHIBI;
|
|
if (JGGNJPBJHJA.AFKKFKOKBCG(kfjbmgphibi, num) && OLFNCDHDFPF.AddToSelection(num))
|
|
{
|
|
int length = this.GPMCMCELFEJ.Length;
|
|
if (num < length)
|
|
{
|
|
num += 2;
|
|
num += num;
|
|
bool flag = JGGNJPBJHJA.AFKKFKOKBCG(kfjbmgphibi, num);
|
|
if (flag && OLFNCDHDFPF.AddToSelection(num))
|
|
{
|
|
AMDIJMPHEGP.PIDKGCBHNOP.Add(num);
|
|
num++;
|
|
}
|
|
return Promise.FromError(string.Format("Unable to select shape container to merge: {0}", flag));
|
|
}
|
|
Promise promise = new Promise();
|
|
jdgcpiooggp.promise = promise;
|
|
List<ShapeContainer> pidkgcbhnop = AMDIJMPHEGP.PIDKGCBHNOP;
|
|
IPromise<bool> promise2 = OLFNCDHDFPF.TryMergeShapeSelection(num, pidkgcbhnop);
|
|
Action<bool> action = delegate(bool result)
|
|
{
|
|
Promise promise4 = jdgcpiooggp.promise;
|
|
if (!result)
|
|
{
|
|
promise4.Error("Failed to merge shape containers");
|
|
return;
|
|
}
|
|
promise4.Complete();
|
|
};
|
|
if (num < jdgcpiooggp)
|
|
{
|
|
num += num;
|
|
if (num == jdgcpiooggp)
|
|
{
|
|
goto IL_DF;
|
|
}
|
|
num++;
|
|
}
|
|
Action<string> action2 = delegate(string error)
|
|
{
|
|
jdgcpiooggp.promise.Error(error);
|
|
};
|
|
Promise promise3 = jdgcpiooggp.promise;
|
|
IL_DF:
|
|
uint num2;
|
|
num2 += num2;
|
|
}
|
|
Guid kfjbmgphibi2 = this.KFJBMGPHIBI;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06013E8D RID: 81549 RVA: 0x004C6BC8 File Offset: 0x004C4DC8
|
|
[Token(Token = "0x6013E8D")]
|
|
[Address(RVA = "0xFEB6C0", Offset = "0xFEA0C0", VA = "0x180FEB6C0")]
|
|
private bool POHGFALPMJO(CreationContext OLFNCDHDFPF, Guid LIFDNLPKDDC, out ShapeContainer KPPJHIGOJIG)
|
|
{
|
|
bool flag;
|
|
bool flag2;
|
|
if (flag && flag2)
|
|
{
|
|
return true;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06013E8E RID: 81550 RVA: 0x004C6BE8 File Offset: 0x004C4DE8
|
|
[Token(Token = "0x6013E8E")]
|
|
[Address(RVA = "0xFEB1E0", Offset = "0xFE9BE0", VA = "0x180FEB1E0", Slot = "5")]
|
|
public override GBDECALBCOP JPALLFAJJKJ(CreationContext OLFNCDHDFPF)
|
|
{
|
|
Guid[] gpmcmcelfej = this.GPMCMCELFEJ;
|
|
int num = 0;
|
|
int length = gpmcmcelfej.Length;
|
|
if (num < length)
|
|
{
|
|
num += 2;
|
|
num += num;
|
|
bool flag;
|
|
object obj;
|
|
bool flag2;
|
|
uint num2;
|
|
if ((!flag || (obj == (ulong)1L && flag2)) && num2 == (uint)0)
|
|
{
|
|
num++;
|
|
}
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06013E8F RID: 81551 RVA: 0x004C6C30 File Offset: 0x004C4E30
|
|
[Token(Token = "0x6013E8F")]
|
|
[Address(RVA = "0xFEB140", Offset = "0xFE9B40", VA = "0x180FEB140")]
|
|
private GBDECALBCOP CFMKNNCNBKJ(Guid ADBNCEJKAAG)
|
|
{
|
|
bool flag;
|
|
if (flag)
|
|
{
|
|
object obj;
|
|
if (obj == (ulong)1L)
|
|
{
|
|
}
|
|
return GBDECALBCOP.Failure_PermissionDenied;
|
|
}
|
|
return GBDECALBCOP.Failure_ObjectDoesNotExist;
|
|
}
|
|
|
|
// Token: 0x0400D687 RID: 54919
|
|
[Token(Token = "0x400D687")]
|
|
private static readonly List<ShapeContainer> PIDKGCBHNOP = new List();
|
|
|
|
// Token: 0x0400D688 RID: 54920
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400D688")]
|
|
private Guid KFJBMGPHIBI;
|
|
|
|
// Token: 0x0400D689 RID: 54921
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400D689")]
|
|
private Guid[] GPMCMCELFEJ;
|
|
|
|
// Token: 0x02002C3A RID: 11322
|
|
[Token(Token = "0x2002C3A")]
|
|
[CompilerGenerated]
|
|
private sealed class JDGCPIOOGGP
|
|
{
|
|
// Token: 0x06013E91 RID: 81553 RVA: 0x004C6C6C File Offset: 0x004C4E6C
|
|
[Token(Token = "0x6013E91")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
public JDGCPIOOGGP()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06013E92 RID: 81554 RVA: 0x004C6C80 File Offset: 0x004C4E80
|
|
[Token(Token = "0x6013E92")]
|
|
[Address(RVA = "0xFFDEB0", Offset = "0xFFC8B0", VA = "0x180FFDEB0")]
|
|
internal void <Perform>b__0(bool result)
|
|
{
|
|
Promise promise = this.promise;
|
|
if (!result)
|
|
{
|
|
promise.Error("Failed to merge shape containers");
|
|
return;
|
|
}
|
|
promise.Complete();
|
|
}
|
|
|
|
// Token: 0x06013E93 RID: 81555 RVA: 0x004C6CB0 File Offset: 0x004C4EB0
|
|
[Token(Token = "0x6013E93")]
|
|
[Address(RVA = "0xF77660", Offset = "0xF76060", VA = "0x180F77660")]
|
|
internal void <Perform>b__1(string error)
|
|
{
|
|
this.promise.Error(error);
|
|
}
|
|
|
|
// Token: 0x0400D68A RID: 54922
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400D68A")]
|
|
public Promise promise;
|
|
}
|
|
}
|