346 lines
16 KiB
C#
346 lines
16 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using AGUI.StackedUI;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.AGUI.ToolUIs;
|
|
using RecRoom.Persistence;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Core.Creation.Shapes
|
|
{
|
|
// Token: 0x02002DA8 RID: 11688
|
|
[Token(Token = "0x2002DA8")]
|
|
[StructLayout(3)]
|
|
public class StandaloneShapeContainer : ShapeContainer
|
|
{
|
|
// Token: 0x170037C7 RID: 14279
|
|
// (get) Token: 0x06014C57 RID: 85079 RVA: 0x004FB6E8 File Offset: 0x004F98E8
|
|
[Token(Token = "0x170037C7")]
|
|
public static Transform FOPEPPHHKGN
|
|
{
|
|
[Token(Token = "0x6014C57")]
|
|
[Address(RVA = "0x10B2F70", Offset = "0x10B1970", VA = "0x1810B2F70")]
|
|
get
|
|
{
|
|
Transform dengflbncpn = StandaloneShapeContainer.DENGFLBNCPN;
|
|
int num = 0;
|
|
if (dengflbncpn == num)
|
|
{
|
|
GameObject gameObject = new GameObject("Shape Container Root");
|
|
Transform transform = gameObject.transform;
|
|
int num2 = 0;
|
|
int num3 = 0;
|
|
transform.SetParent(num3, num2 != 0);
|
|
StandaloneShapeContainer.DENGFLBNCPN = gameObject.transform;
|
|
}
|
|
return StandaloneShapeContainer.DENGFLBNCPN;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037C8 RID: 14280
|
|
// (get) Token: 0x06014C58 RID: 85080 RVA: 0x004FB740 File Offset: 0x004F9940
|
|
[Token(Token = "0x170037C8")]
|
|
public override string AKLAPGCHOFB
|
|
{
|
|
[Token(Token = "0x6014C58")]
|
|
[Address(RVA = "0x10B2EC0", Offset = "0x10B18C0", VA = "0x1810B2EC0", Slot = "18")]
|
|
get
|
|
{
|
|
PersistenceView persistenceView = this.persistenceView;
|
|
Guid guid;
|
|
return string.Format("Shape Container {0}", guid);
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037C9 RID: 14281
|
|
// (get) Token: 0x06014C59 RID: 85081 RVA: 0x004FB768 File Offset: 0x004F9968
|
|
[Token(Token = "0x170037C9")]
|
|
public override string KENGPMDDCML
|
|
{
|
|
[Token(Token = "0x6014C59")]
|
|
[Address(RVA = "0x10B2F40", Offset = "0x10B1940", VA = "0x1810B2F40", Slot = "19")]
|
|
get
|
|
{
|
|
return this.creationObject.KENGPMDDCML;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037CA RID: 14282
|
|
// (get) Token: 0x06014C5A RID: 85082 RVA: 0x004FB788 File Offset: 0x004F9988
|
|
[Token(Token = "0x170037CA")]
|
|
public override int EBEOBEKPAPP
|
|
{
|
|
[Token(Token = "0x6014C5A")]
|
|
[Address(RVA = "0x10B2F60", Offset = "0x10B1960", VA = "0x1810B2F60", Slot = "20")]
|
|
get
|
|
{
|
|
return 2500;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037CB RID: 14283
|
|
// (get) Token: 0x06014C5B RID: 85083 RVA: 0x004FB79C File Offset: 0x004F999C
|
|
[Token(Token = "0x170037CB")]
|
|
public override bool JPCMKAOLFHF
|
|
{
|
|
[Token(Token = "0x6014C5B")]
|
|
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0", Slot = "21")]
|
|
get
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037CC RID: 14284
|
|
// (get) Token: 0x06014C5C RID: 85084 RVA: 0x004FB7AC File Offset: 0x004F99AC
|
|
[Token(Token = "0x170037CC")]
|
|
public override ShapeContainer.DBHLALJDNBH NDOIFFFCMKP
|
|
{
|
|
[Token(Token = "0x6014C5C")]
|
|
[Address(RVA = "0x3E2800", Offset = "0x3E1200", VA = "0x1803E2800", Slot = "23")]
|
|
get
|
|
{
|
|
return ShapeContainer.DBHLALJDNBH.Always;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037CD RID: 14285
|
|
// (get) Token: 0x06014C5D RID: 85085 RVA: 0x004FB7BC File Offset: 0x004F99BC
|
|
[Token(Token = "0x170037CD")]
|
|
public override bool PGDIFDJECHJ
|
|
{
|
|
[Token(Token = "0x6014C5D")]
|
|
[Address(RVA = "0x10B2EA0", Offset = "0x10B18A0", VA = "0x1810B2EA0", Slot = "24")]
|
|
get
|
|
{
|
|
return this.creationObject.LGLADBGABHO;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037CE RID: 14286
|
|
// (get) Token: 0x06014C5E RID: 85086 RVA: 0x004FB7DC File Offset: 0x004F99DC
|
|
[Token(Token = "0x170037CE")]
|
|
public override bool PLPCBNDDMON
|
|
{
|
|
[Token(Token = "0x6014C5E")]
|
|
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0", Slot = "25")]
|
|
get
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037CF RID: 14287
|
|
// (get) Token: 0x06014C5F RID: 85087 RVA: 0x004FB7EC File Offset: 0x004F99EC
|
|
[Token(Token = "0x170037CF")]
|
|
public override bool KJCAGKDAABN
|
|
{
|
|
[Token(Token = "0x6014C5F")]
|
|
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0", Slot = "22")]
|
|
get
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037D0 RID: 14288
|
|
// (get) Token: 0x06014C60 RID: 85088 RVA: 0x004FB7FC File Offset: 0x004F99FC
|
|
[Token(Token = "0x170037D0")]
|
|
public override ShapeContainer.BJOOGDAHOOO NMBFCKJPCLA
|
|
{
|
|
[Token(Token = "0x6014C60")]
|
|
[Address(RVA = "0x3F8880", Offset = "0x3F7280", VA = "0x1803F8880", Slot = "26")]
|
|
get
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014C61 RID: 85089 RVA: 0x004FB80C File Offset: 0x004F9A0C
|
|
[Token(Token = "0x6014C61")]
|
|
[Address(RVA = "0x10B2630", Offset = "0x10B1030", VA = "0x1810B2630", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
Transform transform = base.transform;
|
|
Transform dengflbncpn = StandaloneShapeContainer.DENGFLBNCPN;
|
|
int num = 0;
|
|
if (dengflbncpn == num)
|
|
{
|
|
GameObject gameObject = new GameObject("Shape Container Root");
|
|
Transform transform2 = gameObject.transform;
|
|
int num2 = 0;
|
|
int num3 = 0;
|
|
transform2.SetParent(num3, num2 != 0);
|
|
StandaloneShapeContainer.DENGFLBNCPN = gameObject.transform;
|
|
}
|
|
Transform dengflbncpn2 = StandaloneShapeContainer.DENGFLBNCPN;
|
|
transform.SetParent(dengflbncpn2, true);
|
|
}
|
|
|
|
// Token: 0x06014C62 RID: 85090 RVA: 0x004FB880 File Offset: 0x004F9A80
|
|
[Token(Token = "0x6014C62")]
|
|
[Address(RVA = "0x10B2DF0", Offset = "0x10B17F0", VA = "0x1810B2DF0", Slot = "29")]
|
|
protected override void Start()
|
|
{
|
|
base.Start();
|
|
this.MGEANKCHCDB();
|
|
}
|
|
|
|
// Token: 0x06014C63 RID: 85091 RVA: 0x004FB89C File Offset: 0x004F9A9C
|
|
[Token(Token = "0x6014C63")]
|
|
[Address(RVA = "0x10B2950", Offset = "0x10B1350", VA = "0x1810B2950")]
|
|
private void MGEANKCHCDB()
|
|
{
|
|
Dictionary<string, FLCFOLDCOJJ> dictionary = new Dictionary();
|
|
int num = 0;
|
|
OMKPHDBNLKH<CreationObjectSettingFriendlyIntControl, int>.DEDABHKCIBG <>9__28_ = StandaloneShapeContainer.<>c.<>9__28_0;
|
|
if (<>9__28_ == 0)
|
|
{
|
|
StandaloneShapeContainer.<>c.<>9__28_0 = (MakerPenPaletteConfigScreen editableUIFlow) => editableUIFlow.DefaultEnumUIControlPrefab;
|
|
}
|
|
OMKPHDBNLKH<CreationObjectSettingFriendlyIntControl, int>.OHINDOLFNMP ohindolfnmp = new OMKPHDBNLKH.OHINDOLFNMP(this.CBDBKJFMLPE);
|
|
KLCANJPOEPC klcanjpoepc = new KLCANJPOEPC(<>9__28_, ohindolfnmp, dictionary, num);
|
|
ILINODKFHEO ilinodkfheo = this.creationObject.AddConfigurableSetting(klcanjpoepc);
|
|
}
|
|
|
|
// Token: 0x06014C64 RID: 85092 RVA: 0x004FB900 File Offset: 0x004F9B00
|
|
[Token(Token = "0x6014C64")]
|
|
[Address(RVA = "0x10B2BD0", Offset = "0x10B15D0", VA = "0x1810B2BD0")]
|
|
public void SandboxCurrentPhysicsMode_Set(int BCEFAKDFEMM)
|
|
{
|
|
if (base.hasAuthority)
|
|
{
|
|
this.OnDeselectedByShapeCreationContext();
|
|
CreationManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
int sandboxResourceCost = base.CLOAGCKCCPP;
|
|
KJIBJJOHPEJ kjibjjohpej;
|
|
if (kjibjjohpej == KJIBJJOHPEJ.Success)
|
|
{
|
|
return;
|
|
}
|
|
NotificationManager instance2 = SingletonMonoBehaviour.Instance;
|
|
int hashCode = instance2.GetHashCode();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014C65 RID: 85093 RVA: 0x004FB950 File Offset: 0x004F9B50
|
|
[Token(Token = "0x6014C65")]
|
|
[Address(RVA = "0x10B2BC0", Offset = "0x10B15C0", VA = "0x1810B2BC0")]
|
|
public int SandboxCurrentPhysicsMode_Get()
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06014C65)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 RecRoom.Core.Creation.Shapes.StandaloneShapeContainer::SandboxCurrentPhysicsMode_Get()
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stloc:BJOOGDAHOOO(var_0_06, callgetter:BJOOGDAHOOO(ShapeContainer::get_CurrentPhysicsMode, ldloc:StandaloneShapeContainer[exp:ShapeContainer](this)))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06014C66 RID: 85094 RVA: 0x004FB964 File Offset: 0x004F9B64
|
|
[Token(Token = "0x6014C66")]
|
|
[Address(RVA = "0x10B28C0", Offset = "0x10B12C0", VA = "0x1810B28C0", Slot = "35")]
|
|
protected override string CPMBMDPNJHH(ShapeContainer.BJOOGDAHOOO BHPDBBDLCJD)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06014C66)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.String RecRoom.Core.Creation.Shapes.StandaloneShapeContainer::CPMBMDPNJHH(RecRoom.Core.Creation.Shapes.ShapeContainer/BJOOGDAHOOO)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_22:
|
|
stloc:ArgumentException(var_1_2C, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("physicsMode")))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06014C67 RID: 85095 RVA: 0x004FB9A0 File Offset: 0x004F9BA0
|
|
[Token(Token = "0x6014C67")]
|
|
[Address(RVA = "0x10B2E10", Offset = "0x10B1810", VA = "0x1810B2E10")]
|
|
public StandaloneShapeContainer()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06014C68 RID: 85096 RVA: 0x0000220F File Offset: 0x0000040F
|
|
// Note: this type is marked as 'beforefieldinit'.
|
|
[Token(Token = "0x6014C68")]
|
|
[Address(RVA = "0x3C9F60", Offset = "0x3C8960", VA = "0x1803C9F60")]
|
|
static StandaloneShapeContainer()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06014C69 RID: 85097 RVA: 0x004FB9E0 File Offset: 0x004F9BE0
|
|
[Token(Token = "0x6014C69")]
|
|
[Address(RVA = "0x10B2800", Offset = "0x10B1200", VA = "0x1810B2800")]
|
|
[CompilerGenerated]
|
|
private void CBDBKJFMLPE(CreationObjectSettingFriendlyIntControl GCCLEJOGCCE)
|
|
{
|
|
GCCLEJOGCCE.PropertyDescription.text = "Physics Mode";
|
|
Func<int> func = new Func(this.SandboxCurrentPhysicsMode_Get);
|
|
Action<int> action = new Action(this.SandboxCurrentPhysicsMode_Set);
|
|
}
|
|
|
|
// Token: 0x0400DDBA RID: 56762
|
|
[Token(Token = "0x400DDBA")]
|
|
public const int MAX_RESOURCES_IN_SINGLE_SHAPE_CONTAINER = 2500;
|
|
|
|
// Token: 0x0400DDBB RID: 56763
|
|
[Token(Token = "0x400DDBB")]
|
|
private static Transform DENGFLBNCPN;
|
|
|
|
// Token: 0x0400DDBC RID: 56764
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xD0")]
|
|
[Token(Token = "0x400DDBC")]
|
|
[SerializeField]
|
|
private string decorationModeTooltip = "Not solid and unaffected by gravity\nNot tracked by trigger zones";
|
|
|
|
// Token: 0x0400DDBD RID: 56765
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xD8")]
|
|
[Token(Token = "0x400DDBD")]
|
|
[SerializeField]
|
|
private string environmentModeTooltip = "Solid but unaffected by gravity";
|
|
|
|
// Token: 0x0400DDBE RID: 56766
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xE0")]
|
|
[Token(Token = "0x400DDBE")]
|
|
[SerializeField]
|
|
private string physicalModeTooltip = "Solid and affected by gravity";
|
|
|
|
// Token: 0x0400DDBF RID: 56767
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xE8")]
|
|
[Token(Token = "0x400DDBF")]
|
|
[SerializeField]
|
|
private string stickyModeTooltip = "Solid and affected by gravity\nSticks to other objects";
|
|
}
|
|
}
|