using System; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using Photon.Pun; using RecRoom.Core.Creation; using RecRoom.Core.Creation.Shapes; using RecRoom.Core.Creation.UndoStack; using RecRoom.Core.Rendering; using UnityEngine; namespace RecRoom.Tools.MakerPenTools { // Token: 0x02002615 RID: 9749 [Token(Token = "0x2002615")] [Serializable] [StructLayout(3)] public class MakerPenToolManipulate_Shape : MakerPenTool { // Token: 0x17002DC6 RID: 11718 // (get) Token: 0x06010DBF RID: 69055 RVA: 0x003F6E94 File Offset: 0x003F5094 [Token(Token = "0x17002DC6")] public override string HudLabel { [Token(Token = "0x6010DBF")] [Address(RVA = "0x12BD880", Offset = "0x12BC280", VA = "0x1812BD880", Slot = "10")] get { return "Manipulate Shapes"; } } // Token: 0x17002DC7 RID: 11719 // (get) Token: 0x06010DC0 RID: 69056 RVA: 0x003F6EA8 File Offset: 0x003F50A8 [Token(Token = "0x17002DC7")] public override Sprite HudSprite { [Token(Token = "0x6010DC0")] [Address(RVA = "0x12BD8B0", Offset = "0x12BC2B0", VA = "0x1812BD8B0", Slot = "11")] get { return NPILADHLMKC.KGDLBEAPDFE(NPILADHLMKC.ONGOGHFGDEF.Manipulate); } } // Token: 0x06010DC1 RID: 69057 RVA: 0x003F6EBC File Offset: 0x003F50BC [Token(Token = "0x6010DC1")] [Address(RVA = "0x12BD7A0", Offset = "0x12BC1A0", VA = "0x1812BD7A0", Slot = "4")] public override void OFFLOPLJBBG(MakerPen.HJPIHGIFKEO FIBGLDDKDLB, MakerPen.KLAENPHIBEM OIHFNIFGFJB) { IFMKEGAIHID ifmkegaihid = new IFMKEGAIHID(); this.shapeManipulationManager = ifmkegaihid; } // Token: 0x06010DC2 RID: 69058 RVA: 0x003F6ED8 File Offset: 0x003F50D8 [Token(Token = "0x6010DC2")] [Address(RVA = "0x12BD590", Offset = "0x12BBF90", VA = "0x1812BD590", Slot = "6")] public override void DJFDPJKOGMJ(MakerPenTool.AGPFBFDFDHB EJCLBKHJIHO, MakerPen.HJPIHGIFKEO IFNKPAHPIID) { base.DJFDPJKOGMJ(EJCLBKHJIHO, IFNKPAHPIID); this.hasSelectedHandle = false; bool flag = IFNKPAHPIID == MakerPen.HJPIHGIFKEO.Object; this.triggerSelectionNextFrame = flag; if (base.ObjectContext.ENEJDOAEDCJ > 1) { base.ObjectContext.RemoveAllFromSelection(); } } // Token: 0x06010DC3 RID: 69059 RVA: 0x003F6F24 File Offset: 0x003F5124 [Token(Token = "0x6010DC3")] [Address(RVA = "0x12BC490", Offset = "0x12BAE90", VA = "0x1812BC490", Slot = "8")] public override void BALOKJMBNIN() { base..ctor(); MakerPen makerPen = base.MakerPen; NCBACKFHCJK creationController = this.creationController; MakerPenVisuals penVisuals = makerPen._penVisuals; int num = 0; num += num; num++; IFMKEGAIHID ifmkegaihid = this.shapeManipulationManager; if ((this.hasSelectedHandle ? 1 : 0) == num) { int num2 = 0; ShapeCreationContext shapeContext = base.ShapeContext; num2 += num2; } ShapeCreationContext shapeContext2 = base.ShapeContext; if (!penVisuals.LEEIIMGPIBL.ContainsValues) { } string text = penVisuals.LEEIIMGPIBL.ToString(); Guid[] shape_RAYCAST_RESULTS = MakerPenTool.SHAPE_RAYCAST_RESULTS; MakerPenVisuals penVisuals2 = base.PenVisuals; int num3 = 0; int num4; if (num4 > 0) { } penVisuals2.k__BackingField = num3; bool flag; if (base.ShapeContext.ENEJDOAEDCJ == 1 && num4 > 0) { ShapeCreationContext shapeContext3 = base.ShapeContext; Guid guid = MakerPenTool.SHAPE_RAYCAST_RESULTS[0]; flag = shapeContext3.IsSelected(guid); } int num5 = 0; if ((this.hasSelectedHandle ? 1 : 0) != num) { if (flag) { goto IL_1B7; } IFMKEGAIHID ifmkegaihid2 = this.shapeManipulationManager; Transform transform = base.ShapeContext.TryGetSelectedPrimitiveShapeTransform(); int num6 = 0; ShapeCreationContext shapeContext4 = base.ShapeContext; ShapeManipulationHandle shapeManipulationHandle = ifmkegaihid2.MLEHINAFHJA(num6, transform, shapeContext4); } IFMKEGAIHID ifmkegaihid3 = this.shapeManipulationManager; ShapeManipulationHandle shapeManipulationHandle2; if (num5 == 0 && shapeManipulationHandle2) { Transform transform2 = shapeManipulationHandle2.transform; Vector3 vector; float z = vector.z; Transform extrusionPoint = base.PenVisuals.extrusionPoint; Vector3 vector2; float z2 = vector2.z; Vector3 vector3; float z3 = vector3.z; Transform extrusionPoint2 = base.PenVisuals.extrusionPoint; Vector3 vector4; float z4 = vector4.z; MakerPenVisuals penVisuals3 = base.PenVisuals; Transform extrusionPoint3 = base.PenVisuals.extrusionPoint; Vector3 vector5; float z5 = vector5.z; Transform extrusionPoint4 = base.PenVisuals.extrusionPoint; Vector3 vector6; float z6 = vector6.z; Vector3 vector7; float z7 = vector7.z; Vector3 vector8; float z8 = vector8.z; int num7 = 0; penVisuals3.k__BackingField = num7; } IL_1B7: ShapeManipulationHandle shapeManipulationHandle3; bool flag2 = shapeManipulationHandle3; if (flag2) { shapeManipulationHandle3.Highlight(); } NCBACKFHCJK creationController2 = this.creationController; float z10; if (!flag2 && (this.triggerSelectionNextFrame ? 1 : 0) == num) { NCBACKFHCJK creationController3 = this.creationController; if (!flag2) { NCBACKFHCJK creationController4 = this.creationController; if (flag2) { this.BPOEKOOILFA(); } return; } Transform transform3 = this.AKNLMKBKODD(); float z9 = this.initialOffset.z; Quaternion quaternion = this.penRotationOffset; Vector3 vector9; z10 = vector9.z; float unscaledTime = Time.unscaledTime; float unscaledTime2 = Time.unscaledTime; this.lastSynchronizeTime = unscaledTime2; NNNJFEILANM snapping = base.MakerPen.Snapping; ShapeCreationContext shapeContext5 = base.ShapeContext; } this.triggerSelectionNextFrame = false; bool flag3; this.hasSelectedHandle = flag3; ShapeCreationContext shapeContext6; if (!flag3) { while (z10 != 0f) { } MakerPen makerPen2 = base.MakerPen; base.ShapeContext.RemoveAllFromSelection(); shapeContext6 = base.ShapeContext; Guid guid2 = MakerPenTool.SHAPE_RAYCAST_RESULTS[0]; bool flag4 = shapeContext6.AddToSelection(guid2); } if (base.ShapeContext == 0) { this.hasSelectedHandle = false; } Transform transform4 = this.AKNLMKBKODD(); Vector3 vector10; float z11 = vector10.z; this.initialOffset.z = z11; float unscaledTime3 = Time.unscaledTime; this.lastSynchronizeTime = unscaledTime3; PhotonView pvCache = shapeContext6.pvCache; this.handleInfo = pvCache; Action onDestroyEvent = shapeContext6.OnDestroyEvent; this.handleInfo.GLHHBDHELAO.y = onDestroyEvent; bool forwardedRegistered = shapeContext6.forwardedRegistered; this.handleInfo.GOGCPNPLCEP = forwardedRegistered; CreationContext parentCreationContext = shapeContext6.parentCreationContext; this.handleInfo.IGPENJBJADK = parentCreationContext; int goonokpfbmj = shapeContext6.GOONOKPFBMJ; this.handleInfo.MBIEHEFDGKE = goonokpfbmj; MakerPenVisuals penVisuals4 = base.PenVisuals; int num8 = 0; penVisuals4.MNADIBEHEMI = num8 != 0; NNNJFEILANM snapping2 = base.MakerPen.Snapping; MakerPen makerPen3 = base.MakerPen; NCBACKFHCJK creationController5 = this.creationController; ShapeCreationContext shapeContext7 = base.ShapeContext; float k__BackingField = base.MakerPen.Snapping.k__BackingField; if (base.ObjectContext.SelectionScalingStarted != 0) { CreationContext objectContext = base.ObjectContext; } ShapeContainer selectedShapeContainer = base.ShapeContext.HAHLCMFENMD; IReadOnlyList readOnlyList = base.ShapeContext.ABNCFJMLCMP(); NCBACKFHCJK creationController6 = this.creationController; NNCBAGGPCIF nncbaggpcif; this.pendingUndoEntry = nncbaggpcif; throw new NullReferenceException(); } // Token: 0x06010DC4 RID: 69060 RVA: 0x003F731C File Offset: 0x003F551C [Token(Token = "0x6010DC4")] [Address(RVA = "0x12BD320", Offset = "0x12BBD20", VA = "0x1812BD320", Slot = "7")] public override void BDMHMGGPNME(MakerPenTool.AGPFBFDFDHB EJCLBKHJIHO) { base.BDMHMGGPNME(EJCLBKHJIHO); this.triggerSelectionNextFrame = false; this.BPOEKOOILFA(); this.shapeManipulationManager.ODDLGBNDEAN(); } // Token: 0x06010DC5 RID: 69061 RVA: 0x003F7350 File Offset: 0x003F5550 [Token(Token = "0x6010DC5")] [Address(RVA = "0x12BD600", Offset = "0x12BC000", VA = "0x1812BD600")] private void MNHHMEACPMJ() { if (this.hasSelectedHandle) { Transform transform = this.AKNLMKBKODD(); float z = this.initialOffset.z; Quaternion quaternion = this.penRotationOffset; Vector3 vector; float z2 = vector.z; float unscaledTime = Time.unscaledTime; float unscaledTime2 = Time.unscaledTime; this.lastSynchronizeTime = unscaledTime2; MakerPen makerPen = base.MakerPen; ShapeCreationContext shapeContext = base.ShapeContext; } } // Token: 0x06010DC6 RID: 69062 RVA: 0x003F73BC File Offset: 0x003F55BC [Token(Token = "0x6010DC6")] [Address(RVA = "0x12BD360", Offset = "0x12BBD60", VA = "0x1812BD360")] private void BPOEKOOILFA() { if (this.hasSelectedHandle) { ShapeCreationContext shapeContext = base.ShapeContext; } CAHCDEBGPFG cahcdebgpfg = this.pendingUndoEntry; if (cahcdebgpfg != 0) { NCBACKFHCJK creationController = this.creationController; string text = cahcdebgpfg.GPJEDBDCNNP; UndoStack undoStack = base.MakerPen._undoStack; CAHCDEBGPFG cahcdebgpfg2 = this.pendingUndoEntry; undoStack.Add(cahcdebgpfg2); this.pendingUndoEntry = (ulong)0L; } this.hasSelectedHandle = false; base.PenVisuals.MNADIBEHEMI = true; MakerPenVisuals penVisuals = base.PenVisuals; int num = 0; penVisuals.k__BackingField = num; SelectionRendererEffect.KIMBPPFDHKG = !base.MakerPen.k__BackingField; ActionEvent selectionScalingFinished = base.ObjectContext.SelectionScalingFinished; if (selectionScalingFinished != 0) { int num2 = 0; selectionScalingFinished.Invoke(num2 != 0); } if (!base.MakerPen.k__BackingField) { NCBACKFHCJK creationController2 = this.creationController; } } // Token: 0x06010DC7 RID: 69063 RVA: 0x003F7490 File Offset: 0x003F5690 [Token(Token = "0x6010DC7")] [Address(RVA = "0x12BC3F0", Offset = "0x12BADF0", VA = "0x1812BC3F0")] private Transform AKNLMKBKODD() { NCBACKFHCJK creationController = this.creationController; return base.MakerPen._penVisuals.extrusionPoint; } // Token: 0x06010DC8 RID: 69064 RVA: 0x003F74C4 File Offset: 0x003F56C4 [Token(Token = "0x6010DC8")] [Address(RVA = "0x12BD820", Offset = "0x12BC220", VA = "0x1812BD820")] public MakerPenToolManipulate_Shape() { } // Token: 0x0400B350 RID: 45904 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x400B350")] [NonSerialized] private bool hasSelectedHandle; // Token: 0x0400B351 RID: 45905 [global::Cpp2IlInjected.FieldOffset(Offset = "0x4C")] [Token(Token = "0x400B351")] [NonSerialized] private JNIJFOIGFGJ handleInfo; // Token: 0x0400B352 RID: 45906 [global::Cpp2IlInjected.FieldOffset(Offset = "0x9C")] [Token(Token = "0x400B352")] [NonSerialized] private Vector3 initialOffset; // Token: 0x0400B353 RID: 45907 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x400B353")] [NonSerialized] private Quaternion penRotationOffset; // Token: 0x0400B354 RID: 45908 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB8")] [Token(Token = "0x400B354")] [NonSerialized] private float lastSynchronizeTime; // Token: 0x0400B355 RID: 45909 [Token(Token = "0x400B355")] [NonSerialized] private const float MANIPULATION_SYNCHRONIZE_TIME_INTERVAL = 0.1f; // Token: 0x0400B356 RID: 45910 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC0")] [Token(Token = "0x400B356")] [NonSerialized] private IFMKEGAIHID shapeManipulationManager; // Token: 0x0400B357 RID: 45911 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC8")] [Token(Token = "0x400B357")] [NonSerialized] private CAHCDEBGPFG pendingUndoEntry; // Token: 0x0400B358 RID: 45912 [global::Cpp2IlInjected.FieldOffset(Offset = "0xD0")] [Token(Token = "0x400B358")] [NonSerialized] private bool triggerSelectionNextFrame; } }