249 lines
10 KiB
C#
249 lines
10 KiB
C#
using System;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Async;
|
|
using RecRoom.Core.Creation;
|
|
using RecRoom.Core.Creation.Shapes;
|
|
|
|
namespace RecRoom.Tools.MakerPenTools
|
|
{
|
|
// Token: 0x020025D3 RID: 9683
|
|
[Token(Token = "0x20025D3")]
|
|
[Serializable]
|
|
[StructLayout(3)]
|
|
public class MakerPenSplitOperation : MakerPenOperation
|
|
{
|
|
// Token: 0x17002D74 RID: 11636
|
|
// (get) Token: 0x06010C15 RID: 68629 RVA: 0x003F1FF8 File Offset: 0x003F01F8
|
|
[Token(Token = "0x17002D74")]
|
|
public bool CanSplitSelection
|
|
{
|
|
[Token(Token = "0x6010C15")]
|
|
[Address(RVA = "0x1510D20", Offset = "0x150F720", VA = "0x181510D20")]
|
|
get
|
|
{
|
|
if (this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.FACMDIMLMMD && this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.HAHLCMFENMD.NDOIFFFCMKP != ShapeContainer.DBHLALJDNBH.Never)
|
|
{
|
|
return !this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.HAHLCMFENMD.MEBGJGNMIMG;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06010C16 RID: 68630 RVA: 0x003F2060 File Offset: 0x003F0260
|
|
[Token(Token = "0x6010C16")]
|
|
[Address(RVA = "0x15109F0", Offset = "0x150F3F0", VA = "0x1815109F0")]
|
|
public IPromise<string> HCOEEEINIGE()
|
|
{
|
|
MakerPenSplitOperation.GEINPPFBOIM geinppfboim = new MakerPenSplitOperation.GEINPPFBOIM();
|
|
geinppfboim.<>4__this = this;
|
|
if (this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.FACMDIMLMMD && this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.HAHLCMFENMD.NDOIFFFCMKP != ShapeContainer.DBHLALJDNBH.Never && !this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.HAHLCMFENMD.MEBGJGNMIMG)
|
|
{
|
|
Promise<string> promise = new Promise();
|
|
geinppfboim.promise = promise;
|
|
ShapeContainer selectedShapeContainer = this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.HAHLCMFENMD;
|
|
geinppfboim.selectedShapeContainer = selectedShapeContainer;
|
|
ShapeCreationContext shapeCreationContext = this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext;
|
|
ENMKBCNAGIC enmkbcnagic;
|
|
geinppfboim.shapeData = enmkbcnagic;
|
|
IPromise<ShapeContainer> promise2 = this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField.shapeCreationContext.TrySplitSelectedShapes();
|
|
Action<ShapeContainer> action = delegate(ShapeContainer splitContainer)
|
|
{
|
|
CreationManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CreationObject[] array = new CreationObject[1];
|
|
ShapeContainer splitContainer2 = splitContainer;
|
|
CreationObject creationObject;
|
|
if (creationObject != 0)
|
|
{
|
|
}
|
|
array[0] = creationObject;
|
|
int num2 = 0;
|
|
int num3 = 0;
|
|
IPromise<CreationManager.EJPODBPPPBO> promise4 = instance.SerializeSpawnableTemplate(array, num3, num2 != 0);
|
|
Action<CreationManager.EJPODBPPPBO> action3 = delegate(CreationManager.EJPODBPPPBO result)
|
|
{
|
|
MakerPenSplitOperation.GEINPPFBOIM cs$<>8__locals = geinppfboim;
|
|
ShapeContainer selectedShapeContainer2 = cs$<>8__locals.selectedShapeContainer;
|
|
ShapeContainer splitContainer3 = splitContainer;
|
|
ENMKBCNAGIC shapeData = cs$<>8__locals.shapeData;
|
|
int shapeColliderCosts = cs$<>8__locals.shapeColliderCosts;
|
|
CKNHLOINDFF hnhgciihoec = result.HNHGCIIHOEC;
|
|
CreationContext <BDFEKAONFDI>k__BackingField = cs$<>8__locals.<>4__this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField;
|
|
EAELOFFFDJG eaelofffdjg = new EAELOFFFDJG(selectedShapeContainer2, splitContainer3, shapeData, shapeColliderCosts, hnhgciihoec, <BDFEKAONFDI>k__BackingField);
|
|
geinppfboim.<>4__this.<MakerPen>k__BackingField._undoStack.Add(eaelofffdjg);
|
|
geinppfboim.promise.Complete("Shapes split!");
|
|
};
|
|
if (geinppfboim.<>9__3 == 0)
|
|
{
|
|
Action<string> action4 = delegate(string errMsg)
|
|
{
|
|
geinppfboim.promise.Error(errMsg);
|
|
};
|
|
geinppfboim.<>9__3 = action4;
|
|
}
|
|
throw new NullReferenceException();
|
|
};
|
|
int num = 0;
|
|
num += num;
|
|
num++;
|
|
Action<string> action2 = delegate(string errMsg)
|
|
{
|
|
geinppfboim.promise.Error(errMsg);
|
|
};
|
|
Promise<string> promise3 = geinppfboim.promise;
|
|
}
|
|
return Promise.FromError<string>("Cannot split current selection");
|
|
}
|
|
|
|
// Token: 0x06010C17 RID: 68631 RVA: 0x003F2174 File Offset: 0x003F0374
|
|
[Token(Token = "0x6010C17")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
public MakerPenSplitOperation()
|
|
{
|
|
}
|
|
|
|
// Token: 0x020025D4 RID: 9684
|
|
[Token(Token = "0x20025D4")]
|
|
[CompilerGenerated]
|
|
private sealed class GEINPPFBOIM
|
|
{
|
|
// Token: 0x06010C18 RID: 68632 RVA: 0x003F2188 File Offset: 0x003F0388
|
|
[Token(Token = "0x6010C18")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
public GEINPPFBOIM()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06010C19 RID: 68633 RVA: 0x003F219C File Offset: 0x003F039C
|
|
[Token(Token = "0x6010C19")]
|
|
[Address(RVA = "0x15034F0", Offset = "0x1501EF0", VA = "0x1815034F0")]
|
|
internal void <TrySplitSelection>b__0(ShapeContainer splitContainer)
|
|
{
|
|
MakerPenSplitOperation.PCJHDKGOPGH pcjhdkgopgh = new MakerPenSplitOperation.PCJHDKGOPGH();
|
|
pcjhdkgopgh.CS$<>8__locals1 = this;
|
|
pcjhdkgopgh.splitContainer = splitContainer;
|
|
CreationManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CreationObject[] array = new CreationObject[1];
|
|
ShapeContainer splitContainer2 = pcjhdkgopgh.splitContainer;
|
|
CreationObject creationObject;
|
|
if (creationObject != 0)
|
|
{
|
|
}
|
|
array[0] = creationObject;
|
|
int num = 0;
|
|
int num2 = 0;
|
|
IPromise<CreationManager.EJPODBPPPBO> promise = instance.SerializeSpawnableTemplate(array, num2, num != 0);
|
|
Action<CreationManager.EJPODBPPPBO> action = delegate(CreationManager.EJPODBPPPBO result)
|
|
{
|
|
MakerPenSplitOperation.GEINPPFBOIM cs$<>8__locals = pcjhdkgopgh.CS$<>8__locals1;
|
|
ShapeContainer shapeContainer = cs$<>8__locals.selectedShapeContainer;
|
|
ShapeContainer splitContainer3 = pcjhdkgopgh.splitContainer;
|
|
ENMKBCNAGIC enmkbcnagic = cs$<>8__locals.shapeData;
|
|
int num3 = cs$<>8__locals.shapeColliderCosts;
|
|
CKNHLOINDFF hnhgciihoec = result.HNHGCIIHOEC;
|
|
CreationContext <BDFEKAONFDI>k__BackingField = cs$<>8__locals.<>4__this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField;
|
|
EAELOFFFDJG eaelofffdjg = new EAELOFFFDJG(shapeContainer, splitContainer3, enmkbcnagic, num3, hnhgciihoec, <BDFEKAONFDI>k__BackingField);
|
|
pcjhdkgopgh.CS$<>8__locals1.<>4__this.<MakerPen>k__BackingField._undoStack.Add(eaelofffdjg);
|
|
pcjhdkgopgh.CS$<>8__locals1.promise.Complete("Shapes split!");
|
|
};
|
|
if (this.<>9__3 == 0)
|
|
{
|
|
Action<string> action2 = delegate(string errMsg)
|
|
{
|
|
this.promise.Error(errMsg);
|
|
};
|
|
this.<>9__3 = action2;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06010C1A RID: 68634 RVA: 0x003F2224 File Offset: 0x003F0424
|
|
[Token(Token = "0x6010C1A")]
|
|
[Address(RVA = "0x1503740", Offset = "0x1502140", VA = "0x181503740")]
|
|
internal void <TrySplitSelection>b__3(string errMsg)
|
|
{
|
|
this.promise.Error(errMsg);
|
|
}
|
|
|
|
// Token: 0x06010C1B RID: 68635 RVA: 0x003F2244 File Offset: 0x003F0444
|
|
[Token(Token = "0x6010C1B")]
|
|
[Address(RVA = "0x15036E0", Offset = "0x15020E0", VA = "0x1815036E0")]
|
|
internal void <TrySplitSelection>b__1(string errMsg)
|
|
{
|
|
this.promise.Error(errMsg);
|
|
}
|
|
|
|
// Token: 0x0400B22F RID: 45615
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400B22F")]
|
|
public ShapeContainer selectedShapeContainer;
|
|
|
|
// Token: 0x0400B230 RID: 45616
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400B230")]
|
|
public ENMKBCNAGIC shapeData;
|
|
|
|
// Token: 0x0400B231 RID: 45617
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400B231")]
|
|
public int shapeColliderCosts;
|
|
|
|
// Token: 0x0400B232 RID: 45618
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400B232")]
|
|
public MakerPenSplitOperation <>4__this;
|
|
|
|
// Token: 0x0400B233 RID: 45619
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400B233")]
|
|
public Promise<string> promise;
|
|
|
|
// Token: 0x0400B234 RID: 45620
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400B234")]
|
|
public Action<string> <>9__3;
|
|
}
|
|
|
|
// Token: 0x020025D5 RID: 9685
|
|
[Token(Token = "0x20025D5")]
|
|
[CompilerGenerated]
|
|
private sealed class PCJHDKGOPGH
|
|
{
|
|
// Token: 0x06010C1C RID: 68636 RVA: 0x003F2264 File Offset: 0x003F0464
|
|
[Token(Token = "0x6010C1C")]
|
|
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
|
|
public PCJHDKGOPGH()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06010C1D RID: 68637 RVA: 0x003F2278 File Offset: 0x003F0478
|
|
[Token(Token = "0x6010C1D")]
|
|
[Address(RVA = "0x151A320", Offset = "0x1518D20", VA = "0x18151A320")]
|
|
internal void <TrySplitSelection>b__2(CreationManager.EJPODBPPPBO result)
|
|
{
|
|
MakerPenSplitOperation.GEINPPFBOIM cs$<>8__locals = this.CS$<>8__locals1;
|
|
ShapeContainer selectedShapeContainer = cs$<>8__locals.selectedShapeContainer;
|
|
ShapeContainer shapeContainer = this.splitContainer;
|
|
ENMKBCNAGIC shapeData = cs$<>8__locals.shapeData;
|
|
int shapeColliderCosts = cs$<>8__locals.shapeColliderCosts;
|
|
CKNHLOINDFF hnhgciihoec = result.HNHGCIIHOEC;
|
|
CreationContext <BDFEKAONFDI>k__BackingField = cs$<>8__locals.<>4__this.<MakerPen>k__BackingField.<BDFEKAONFDI>k__BackingField;
|
|
EAELOFFFDJG eaelofffdjg = new EAELOFFFDJG(selectedShapeContainer, shapeContainer, shapeData, shapeColliderCosts, hnhgciihoec, <BDFEKAONFDI>k__BackingField);
|
|
this.CS$<>8__locals1.<>4__this.<MakerPen>k__BackingField._undoStack.Add(eaelofffdjg);
|
|
this.CS$<>8__locals1.promise.Complete("Shapes split!");
|
|
}
|
|
|
|
// Token: 0x0400B235 RID: 45621
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400B235")]
|
|
public ShapeContainer splitContainer;
|
|
|
|
// Token: 0x0400B236 RID: 45622
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400B236")]
|
|
public MakerPenSplitOperation.GEINPPFBOIM CS$<>8__locals1;
|
|
}
|
|
}
|
|
}
|