using System; using System.Collections; using System.Collections.Generic; using Google.Protobuf; using Photon; using RecNet; using RecRoom.Core.Rendering; using RecRoom.Persistence; using RecRoom.Protobuf; using RecRoom.Sandbox; using UnityEngine; namespace RecRoom.Tools { // Token: 0x02000B97 RID: 2967 public class Extrusion : global::Photon.MonoBehaviour, MOJNPEJBHGK, LOLHNPOCINI { // Token: 0x06016687 RID: 91783 RVA: 0x00638E6C File Offset: 0x0063706C private float HEKCCJKBHFM(Collider CINAFOGLFIB, Transform EPKBCNOMDOK, out bool PEENIDCFCGB) { PEENIDCFCGB = true; Vector3 vector = CINAFOGLFIB.transform.position; SphereCollider sphereCollider = CINAFOGLFIB as SphereCollider; if (sphereCollider != null) { vector = sphereCollider.transform.TransformPoint(sphereCollider.center); } else { BoxCollider boxCollider = CINAFOGLFIB as BoxCollider; if (boxCollider != null) { vector = boxCollider.transform.TransformPoint(boxCollider.center); } } return (vector - EPKBCNOMDOK.position).magnitude; } // Token: 0x06016688 RID: 91784 RVA: 0x00638EEC File Offset: 0x006370EC private void HIHILHCHIED(byte[] EBIMLGPFNJL) { this.RemoteDeserializeSubExtrusions(FODNIMKBMML.EJDHADFMAEP().ParseFrom(EBIMLGPFNJL)); } // Token: 0x06016689 RID: 91785 RVA: 0x00638F00 File Offset: 0x00637100 public void AuthorityDeleteSubExtrusions(IList NKHGIEDNIEL) { if (base.BHCCHBHNHCG) { int[] array = new int[NKHGIEDNIEL.Count]; for (int i = 0; i < NKHGIEDNIEL.Count; i++) { array[i] = this.MBPLMCGHODA.IndexOf(NKHGIEDNIEL[i]); } base.OMNGGJICBBI.RPC("RpcDeleteSubExtrusions", IHCPDNLJMMD.All, new object[] { array }); } } // Token: 0x0601668A RID: 91786 RVA: 0x00638F6C File Offset: 0x0063716C public void CIIFFBDPICL(MakerPen NOBAPCOKFIL) { MakerPen fjbjnapafoa = this.FJBJNAPAFOA; this.FJBJNAPAFOA = NOBAPCOKFIL; if (base.BHCCHBHNHCG && this.FJBJNAPAFOA != fjbjnapafoa) { this.OBGNAGNKIJN.MEAINJPIECA((!(this.FJBJNAPAFOA != null)) ? (-1) : this.FJBJNAPAFOA.LHEPJEHMAEC().JLIJDKOGAEB()); } } // Token: 0x0601668B RID: 91787 RVA: 0x00638FD8 File Offset: 0x006371D8 protected override void Awake() { base.Awake(); this.EIIHEKJMNEC = new LHLLJPPCDKA(this, "MD", 0, IKCAJLLAFML.AUTHORITY, new Action(this.MOCODOEEMPN)); this.OBGNAGNKIJN = new LHLLJPPCDKA(this, "MP", -1, IKCAJLLAFML.AUTHORITY, null); Extrusion.AllExtrusions.Add(this); this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = true; this.BKDFLNGCINH.AlwaysPhysicalPickupOffCenter = true; this.BKDFLNGCINH.CustomDistanceToTransformBehavior = new Tool.DGBLAICIPAB(this.EBHICDKOKIC); this.BKDFLNGCINH.CollisionOwnershipTransferAllowed = false; this.BKDFLNGCINH.AddCustomPickupCondition(new Tool.CFIAHKNGIKI(this.DDOGAEHOBFK)); this.BKDFLNGCINH.CustomSelectionForwarding = new Tool.FLFLGPHIMIM(this.ToolSelectionForwarding); this.BKDFLNGCINH.CustomHighlightingBehavior = new Tool.OJMHMEFPFOK(this.IEBDBACKKMO); this.BKDFLNGCINH.GravityPickupMode = Tool.GNLFAODEBOE.SNAP_POSITION_MAINTAIN_ORIENTATION; this.BKDFLNGCINH.CADPGMLHFGH.ModifyKinematicOnPickupRelease = false; this.BKDFLNGCINH.PLPIAOHJBOB += this.PKMEAHIFFNG; this.BKDFLNGCINH.GFBCCFIMFEC += this.CNMJNHGFALK; this.BKDFLNGCINH.NJHCOLCINID += this.PGJAOEIBBMC; base.transform.SetParent(Extrusion.CCDKBLKBBBM, true); IHFKMIAHBFP.GFFDICBLOFJ += new Action(this.OnPhotonPlayerConnected); IHFKMIAHBFP.DHLJAODEIEA += new Action(this.OnPhotonPlayerDisconnected); base.OMNGGJICBBI.FPKGGJGGPAG += this.BLCCAJHMHLK; foreach (ExtrusionHandle extrusionHandle in this.handles) { extrusionHandle.BKDFLNGCINH.GFBCCFIMFEC += this.NJICOFBFBPH; extrusionHandle.BKDFLNGCINH.PLPIAOHJBOB += this.KPDPOHMEAOK; } SandboxEditable.DKKKNNGENLC dkkknngenlc = new SandboxEditable.DKKKNNGENLC(SandboxEditable.BBBLDHLAOGG.BOOL, "Frozen", new SandboxEditable.DKKKNNGENLC.EINLHJLLJHH(this.BKDFLNGCINH.SandboxFreeze_Get), new Action(this.BKDFLNGCINH.SandboxFreeze_Set), null); Dictionary dictionary = new Dictionary(); IEnumerator enumerator = Enum.GetValues(typeof(Extrusion.FODAMJOGFEN)).GetEnumerator(); try { while (enumerator.MoveNext()) { object obj = enumerator.Current; Extrusion.FODAMJOGFEN fodamjogfen = (Extrusion.FODAMJOGFEN)obj; dictionary[fodamjogfen.ToString()] = (int)fodamjogfen; } } finally { IDisposable disposable; if ((disposable = enumerator as IDisposable) != null) { disposable.Dispose(); } } SandboxEditable.DKKKNNGENLC dkkknngenlc2 = new SandboxEditable.DKKKNNGENLC(SandboxEditable.BBBLDHLAOGG.EXTRUSION, "Mode", new SandboxEditable.DKKKNNGENLC.EINLHJLLJHH(this.SandboxCurrentMode_Get), new Action(this.SandboxCurrentMode_Set), new object[] { dictionary }); this.sandboxEditable.GNOCLFMKKCA.Add(dkkknngenlc); this.sandboxEditable.GNOCLFMKKCA.Add(dkkknngenlc2); } // Token: 0x0601668C RID: 91788 RVA: 0x006392BC File Offset: 0x006374BC public Tool BDCEELMFHNN() { return this.extrusionTool; } // Token: 0x0601668D RID: 91789 RVA: 0x006392C4 File Offset: 0x006374C4 private void CNMJNHGFALK(Tool ENBMEDIFBLM) { this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = true; if (base.BHCCHBHNHCG) { this.PNOOBNCKAMJ = Extrusion.FODAMJOGFEN.Play; } } // Token: 0x0601668E RID: 91790 RVA: 0x006392EC File Offset: 0x006374EC protected virtual void OKGGDGJIPAM() { base.Awake(); this.EIIHEKJMNEC = new LHLLJPPCDKA(this, "punch", 0, IKCAJLLAFML.AUTHORITY, new Action(this.NFOMBFFOFEJ)); this.OBGNAGNKIJN = new LHLLJPPCDKA(this, "MessagesScreenItem.FormatMessage() - Unhandled MessageType: {0}", -1, IKCAJLLAFML.AUTHORITY, null); Extrusion.AllExtrusions.Add(this); this.CLDNDPPEHBO().BOLBONELAEF.KEOJKEJMDFM = true; this.CLDNDPPEHBO().AlwaysPhysicalPickupOffCenter = true; this.AGMPDKIOOJF().CustomDistanceToTransformBehavior = new Tool.DGBLAICIPAB(this.IPAALKNKDNH); this.BNGIMCDOHFK().CollisionOwnershipTransferAllowed = false; this.APHDNDHPBBD().AddCustomPickupCondition(new Tool.CFIAHKNGIKI(this.DDOGAEHOBFK)); this.BKDFLNGCINH.CustomSelectionForwarding = new Tool.FLFLGPHIMIM(this.ToolSelectionForwarding); this.BNGIMCDOHFK().CustomHighlightingBehavior = new Tool.OJMHMEFPFOK(this.IEBDBACKKMO); this.BKDFLNGCINH.GravityPickupMode = Tool.GNLFAODEBOE.SNAP_POSITION_SNAP_ORIENTATION; this.CLDNDPPEHBO().CADPGMLHFGH.ModifyKinematicOnPickupRelease = false; this.BDCEELMFHNN().PLPIAOHJBOB += this.GHGLJLCOAGF; this.BKDFLNGCINH.GFBCCFIMFEC += this.CNMJNHGFALK; this.APHDNDHPBBD().AFFIAPEACAJ(new Tool.FCJCFBDGJIM(this.PGJAOEIBBMC)); base.transform.SetParent(Extrusion.CCDKBLKBBBM, false); IHFKMIAHBFP.GFFDICBLOFJ += new Action(this.OnPhotonPlayerConnected); IHFKMIAHBFP.DHLJAODEIEA += new Action(this.EFAIKACNFBN); base.ACEAACJNNAF().FPKGGJGGPAG += this.FCMGMEALGON; ExtrusionHandle[] array = this.handles; for (int i = 1; i < array.Length; i += 0) { ExtrusionHandle extrusionHandle = array[i]; extrusionHandle.BKDFLNGCINH.GFBCCFIMFEC += this.NJICOFBFBPH; extrusionHandle.BKDFLNGCINH.PLPIAOHJBOB += this.KPDPOHMEAOK; } SandboxEditable.DKKKNNGENLC dkkknngenlc = new SandboxEditable.DKKKNNGENLC(SandboxEditable.BBBLDHLAOGG.FLOAT, "Recroom.ChallengeMap", new SandboxEditable.DKKKNNGENLC.EINLHJLLJHH(this.CLDNDPPEHBO().SandboxFreeze_Get), new Action(this.BNGIMCDOHFK().SandboxFreeze_Set), null); Dictionary dictionary = new Dictionary(); IEnumerator enumerator = Enum.GetValues(typeof(Extrusion.FODAMJOGFEN)).GetEnumerator(); try { while (enumerator.MoveNext()) { object obj = enumerator.Current; Extrusion.FODAMJOGFEN fodamjogfen = (Extrusion.FODAMJOGFEN)obj; dictionary[fodamjogfen.ToString()] = (int)fodamjogfen; } } finally { IDisposable disposable; if ((disposable = enumerator as IDisposable) != null) { disposable.Dispose(); } } SandboxEditable.BBBLDHLAOGG bbbldhlaogg = (SandboxEditable.BBBLDHLAOGG)5; string text = "gif"; SandboxEditable.DKKKNNGENLC.EINLHJLLJHH einlhjlljhh = new SandboxEditable.DKKKNNGENLC.EINLHJLLJHH(this.SandboxCurrentMode_Get); Action action = new Action(this.SandboxCurrentMode_Set); object[] array2 = new object[1]; array2[1] = dictionary; SandboxEditable.DKKKNNGENLC dkkknngenlc2 = new SandboxEditable.DKKKNNGENLC(bbbldhlaogg, text, einlhjlljhh, action, array2); this.sandboxEditable.DBJEDLIHIGB().Add(dkkknngenlc); this.sandboxEditable.LANDHECGHFO().Add(dkkknngenlc2); } // Token: 0x0601668F RID: 91791 RVA: 0x006395D0 File Offset: 0x006377D0 private void Update() { this.GHIMLKKEEDJ(); } // Token: 0x06016690 RID: 91792 RVA: 0x006395D8 File Offset: 0x006377D8 public List AACIIACHOKB() { return this.NKHGIEDNIEL; } // Token: 0x06016691 RID: 91793 RVA: 0x006395E0 File Offset: 0x006377E0 private void FOEAFHKBDOA(int[] MGOGNEANNOD) { for (int i = 0; i < MGOGNEANNOD.Length; i += 0) { BMOAOJCEOFI bmoaojceofi = this.MBPLMCGHODA[MGOGNEANNOD[i]]; this.CLDNDPPEHBO().NJPKPAFHFNM.Remove(bmoaojceofi.HLHMJBOLDOE); this.AGMPDKIOOJF().TryRemoveRenderer(bmoaojceofi.EIDPLDBJPDO); this.CLDNDPPEHBO().BNHLFGMBNPM.renderers.Remove(bmoaojceofi.EIDPLDBJPDO); this.EHLNHHFMFNC.Remove(bmoaojceofi); global::UnityEngine.Object.Destroy(bmoaojceofi.MKMCHJFIONM); this.PHODAPEHOKG()[MGOGNEANNOD[i]] = null; } this.MBPLMCGHODA.JCJAECDEILG(); if (this.EANJCCKAHCC() && NetworkedSingletonMonoBehaviour.NCKMBFBMBFM != null) { NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.LDENHPOFGAP(this); } } // Token: 0x06016692 RID: 91794 RVA: 0x006396B0 File Offset: 0x006378B0 public MakerPen PNDMONAGBAK() { if (this.FJBJNAPAFOA == null || this.FJBJNAPAFOA.MLNMONBHHBO().ADMBCINHJOG != this.OBGNAGNKIJN.CPIBGJLHLBL()) { int num = this.OBGNAGNKIJN.CPIBGJLHLBL(); if (num <= 0) { num = this.APHDNDHPBBD().LOEOILCIAIH(); if (base.DGLOKLCEMLH()) { this.OBGNAGNKIJN.MEAINJPIECA(num); } } PhotonView photonView = PhotonView.NMBFNIJMFOO(num); this.FJBJNAPAFOA = ((!(photonView != null)) ? null : photonView.GetComponent()); } return this.FJBJNAPAFOA; } // Token: 0x06016693 RID: 91795 RVA: 0x00639750 File Offset: 0x00637950 private void OnPhotonPlayerConnected(LNJFBGIBLHA BBLGGOBKKMC) { if (base.BHCCHBHNHCG) { FODNIMKBMML fodnimkbmml = this.SerializeSubExtrusions(this.MBPLMCGHODA); if (fodnimkbmml.MBPLMCGHODA.Count > 0) { base.OMNGGJICBBI.RPC("RpcDeserializeSubExtrusions", BBLGGOBKKMC, new object[] { fodnimkbmml.ToByteArray() }); } foreach (ExtrusionHandle extrusionHandle in this.handles) { if (extrusionHandle.MDDLKFGHHBB.Count > 0) { base.OMNGGJICBBI.RPC("RpcHandlePickupSubExtrusions", BBLGGOBKKMC, new object[] { extrusionHandle.OMNGGJICBBI.ADMBCINHJOG, false, null, this.SerializeSubExtrusions(extrusionHandle.MDDLKFGHHBB).ToByteArray() }); } } } } // Token: 0x06016694 RID: 91796 RVA: 0x00639820 File Offset: 0x00637A20 public FODNIMKBMML CFMMGJNGGEJ(List BKGHCLGCHKJ) { FODNIMKBMML fodnimkbmml = new FODNIMKBMML(); if (BKGHCLGCHKJ != null && BKGHCLGCHKJ.Count > 1) { for (int i = 0; i < BKGHCLGCHKJ.Count; i++) { if (!BKGHCLGCHKJ[i].MDPDDDJPFFG) { IHIJMFJBDEH ihijmfjbdeh = BKGHCLGCHKJ[i].EGKKKDOMLIG(); if (ihijmfjbdeh != null) { fodnimkbmml.GAOIMDKHMBK().Add(ihijmfjbdeh); } } } } return fodnimkbmml; } // Token: 0x06016695 RID: 91797 RVA: 0x00639894 File Offset: 0x00637A94 public void LDKPFDBLOGF(Extrusion.FODAMJOGFEN NOBAPCOKFIL) { this.EIIHEKJMNEC.MEAINJPIECA((int)NOBAPCOKFIL); } // Token: 0x1700097D RID: 2429 // (get) Token: 0x06016696 RID: 91798 RVA: 0x006398A4 File Offset: 0x00637AA4 public List PBIKKAABPOB { get { return this.EHLNHHFMFNC; } } // Token: 0x06016697 RID: 91799 RVA: 0x006398AC File Offset: 0x00637AAC public void Despawn() { if (base.OMNGGJICBBI.ECHJNDDOIBD == IHFKMIAHBFP.JEFGMHBLLKI) { IHFKMIAHBFP.JFCIOOHPLFJ(base.gameObject); } } // Token: 0x06016698 RID: 91800 RVA: 0x006398D0 File Offset: 0x00637AD0 private void MHDBHNFNMHF() { ExtrusionHandle[] array = this.handles; for (int i = 1; i < array.Length; i++) { ExtrusionHandle extrusionHandle = array[i]; extrusionHandle.HJHPIJHIKIE.Clear(); if (extrusionHandle.BKDFLNGCINH.HighlightedCollider != null) { foreach (BMOAOJCEOFI bmoaojceofi in this.AACIIACHOKB()) { if (bmoaojceofi.HLHMJBOLDOE.AANJEILBGDP.Contains(extrusionHandle.CDNMEANCEDP().HighlightedCollider)) { if (this.PBIKKAABPOB.Contains(bmoaojceofi)) { foreach (BMOAOJCEOFI bmoaojceofi2 in this.PBIKKAABPOB) { if (!extrusionHandle.HJHPIJHIKIE.Contains(bmoaojceofi2)) { extrusionHandle.DEIDJAIMDIL().Add(bmoaojceofi2); } } } else if (!extrusionHandle.HJHPIJHIKIE.Contains(bmoaojceofi)) { extrusionHandle.DEIDJAIMDIL().Add(bmoaojceofi); } break; } } } } } // Token: 0x1700097E RID: 2430 // (get) Token: 0x06016699 RID: 91801 RVA: 0x00639A24 File Offset: 0x00637C24 public Tool BKDFLNGCINH { get { return this.extrusionTool; } } // Token: 0x0601669A RID: 91802 RVA: 0x00639A2C File Offset: 0x00637C2C public Tool BHKIOLCIJDB(Player OAKJPHFELHD, bool MFHKIFDBNOM) { if (this.KKAMMDGPAJP() == Extrusion.FODAMJOGFEN.Play || (this.HBBMFEKDLNB() != null && this.EIOLPKPLLDJ.BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) { return this.APHDNDHPBBD(); } ExtrusionHandle extrusionHandle = this.BFOJLIEANDH(); return (!(extrusionHandle != null)) ? null : extrusionHandle.BKDFLNGCINH; } // Token: 0x0601669B RID: 91803 RVA: 0x00639A8C File Offset: 0x00637C8C public void KGMLFHGHGEI(IList NKHGIEDNIEL) { if (base.DGLKKANNBPD()) { int[] array = new int[NKHGIEDNIEL.Count]; for (int i = 1; i < NKHGIEDNIEL.Count; i += 0) { array[i] = this.MBPLMCGHODA.IndexOf(NKHGIEDNIEL[i]); } base.ONAOMJAKKMA().PKOHKPEKJCJ("Error deserializing SandboxSpawnedEquipment {0}: No data specified.", IHCPDNLJMMD.All, new object[] { array }); } } // Token: 0x0601669C RID: 91804 RVA: 0x00639AF8 File Offset: 0x00637CF8 public void CLPNHLBNKCC() { if (base.DGLKKANNBPD() && this.AACIIACHOKB().Count > 1) { PhotonView photonView = base.OMNGGJICBBI; string text = "RpcMasterRequestCardPickup"; IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.Others; object[] array = new object[1]; int num = 1; int[] array2 = new int[1]; array2[1] = this.PHODAPEHOKG().Count - 1; array[num] = array2; photonView.JJLACCMJEMB(text, ihcpdnljmmd, array); } } // Token: 0x0601669D RID: 91805 RVA: 0x00639B54 File Offset: 0x00637D54 public ExtrusionHandle BFOJLIEANDH() { foreach (ExtrusionHandle extrusionHandle in this.handles) { if (!extrusionHandle.BKDFLNGCINH.OHGPCMJMFGC && extrusionHandle.CDNMEANCEDP().HighlightedCollider == null) { return extrusionHandle; } } return null; } // Token: 0x0601669E RID: 91806 RVA: 0x00639BAC File Offset: 0x00637DAC public void OnPhotonSerializeView(FKIBELLNBEC JAGHIAOIDOC, BOCLHJCCOEL NAHFIMLLIMH) { } // Token: 0x0601669F RID: 91807 RVA: 0x00639BB0 File Offset: 0x00637DB0 public Transform KGJBKMNACCO() { return this.subExtrusionRoot; } // Token: 0x17000987 RID: 2439 // (get) Token: 0x060166A0 RID: 91808 RVA: 0x00639BB8 File Offset: 0x00637DB8 public bool EEJCBMNLMMM { get { return !this.BKDFLNGCINH.OHGPCMJMFGC && this.PNOOBNCKAMJ != Extrusion.FODAMJOGFEN.Edit; } } // Token: 0x060166A1 RID: 91809 RVA: 0x00639BDC File Offset: 0x00637DDC private void GCEKAMJEHKI(byte[] EBIMLGPFNJL) { this.RemoteDeserializeSubExtrusions(FODNIMKBMML.EJDHADFMAEP().ParseFrom(EBIMLGPFNJL)); } // Token: 0x1700097C RID: 2428 // (get) Token: 0x060166A2 RID: 91810 RVA: 0x00639BF0 File Offset: 0x00637DF0 public List MBPLMCGHODA { get { return this.NKHGIEDNIEL; } } // Token: 0x060166A3 RID: 91811 RVA: 0x00639BF8 File Offset: 0x00637DF8 private void IGFEBDLEGKD(int KBHCDFOBPJJ) { this.BKDFLNGCINH.POOAOJPEDJD().TransferOwnership(KBHCDFOBPJJ); ExtrusionHandle[] array = this.handles; for (int i = 0; i < array.Length; i += 0) { ExtrusionHandle extrusionHandle = array[i]; extrusionHandle.EKPBHKFHMON().CLBMDMJOEPH(KBHCDFOBPJJ); } } // Token: 0x060166A4 RID: 91812 RVA: 0x00639C44 File Offset: 0x00637E44 public void NCCKEJEJGNA(MakerPen NOBAPCOKFIL) { MakerPen fjbjnapafoa = this.FJBJNAPAFOA; this.FJBJNAPAFOA = NOBAPCOKFIL; if (base.DGLOKLCEMLH() && this.FJBJNAPAFOA != fjbjnapafoa) { this.OBGNAGNKIJN.MEAINJPIECA((!(this.FJBJNAPAFOA != null)) ? (-1) : this.FJBJNAPAFOA.HOPJELLOPNJ().OMNKKJNHJHD()); } } // Token: 0x060166A5 RID: 91813 RVA: 0x00639CB0 File Offset: 0x00637EB0 private void MGAIPBIFMKL(Tool ENBMEDIFBLM) { this.BDCEELMFHNN().BOLBONELAEF.KEOJKEJMDFM = this.BKDFLNGCINH.BEKHOPMNAPA || this.KKAMMDGPAJP() == Extrusion.FODAMJOGFEN.Edit; } // Token: 0x060166A6 RID: 91814 RVA: 0x00639CE0 File Offset: 0x00637EE0 public ExtrusionHandle CNLNDOMPJPI() { ExtrusionHandle[] array = this.handles; for (int i = 0; i < array.Length; i += 0) { ExtrusionHandle extrusionHandle = array[i]; if (!extrusionHandle.CDNMEANCEDP().OHGPCMJMFGC && extrusionHandle.BKDFLNGCINH.HighlightedCollider == null) { return extrusionHandle; } } return null; } // Token: 0x060166A7 RID: 91815 RVA: 0x00639D38 File Offset: 0x00637F38 public List PHODAPEHOKG() { return this.NKHGIEDNIEL; } // Token: 0x060166A8 RID: 91816 RVA: 0x00639D40 File Offset: 0x00637F40 private void PKMEAHIFFNG(Tool ENBMEDIFBLM) { this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = this.BKDFLNGCINH.BEKHOPMNAPA || this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Edit; } // Token: 0x060166A9 RID: 91817 RVA: 0x00639D70 File Offset: 0x00637F70 private void GFPADAPGMBP(Tool ENBMEDIFBLM) { this.IIDHJJOJODI(ENBMEDIFBLM); } // Token: 0x060166AA RID: 91818 RVA: 0x00639D7C File Offset: 0x00637F7C private void MPACHEHMBIF(Tool ELDJFLCJFPD) { if (ELDJFLCJFPD.BHCCHBHNHCG) { ExtrusionHandle component = ELDJFLCJFPD.GetComponent(); if (component.MDDLKFGHHBB != null && component.MDDLKFGHHBB.Count > 0) { FODNIMKBMML fodnimkbmml = this.SerializeSubExtrusions(component.MDDLKFGHHBB); base.OMNGGJICBBI.RPC("RpcHandleReleaseSubExtrusions", IHCPDNLJMMD.All, new object[] { component.OMNGGJICBBI.ADMBCINHJOG, component.HeldSubExtrusionsManuallyHighlighted, fodnimkbmml.ToByteArray() }); } } } // Token: 0x060166AB RID: 91819 RVA: 0x00639E08 File Offset: 0x00638008 public void MKDHJKNAAAG(IList NKHGIEDNIEL) { if (base.BHCCHBHNHCG) { int[] array = new int[NKHGIEDNIEL.Count]; for (int i = 1; i < NKHGIEDNIEL.Count; i += 0) { array[i] = this.PHODAPEHOKG().IndexOf(NKHGIEDNIEL[i]); } PhotonView photonView = base.MLNMONBHHBO(); string text = "Duration"; IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.All; object[] array2 = new object[1]; array2[1] = array; photonView.PKOHKPEKJCJ(text, ihcpdnljmmd, array2); } } // Token: 0x060166AC RID: 91820 RVA: 0x00639E74 File Offset: 0x00638074 [BCENPNOIAOM] private void RpcHandleReleaseSubExtrusions(int LDEGNHMEKPJ, bool NFFGDOKPJII, byte[] DGEELCAPMIE) { PhotonView photonView = PhotonView.Find(LDEGNHMEKPJ); ExtrusionHandle extrusionHandle = ((!(photonView != null)) ? null : photonView.GetComponent()); FODNIMKBMML fodnimkbmml = FODNIMKBMML.KGJOFMBOKCB.ParseFrom(DGEELCAPMIE); this.KANHBANFEJA(extrusionHandle, NFFGDOKPJII, fodnimkbmml); } // Token: 0x17000980 RID: 2432 // (get) Token: 0x060166AD RID: 91821 RVA: 0x00639EB8 File Offset: 0x006380B8 protected static Transform CCDKBLKBBBM { get { if (Extrusion.PJCOHDAALKK == null) { GameObject gameObject = new GameObject("Extrusion Root"); gameObject.transform.SetParent(null, false); Extrusion.PJCOHDAALKK = gameObject.transform; } return Extrusion.PJCOHDAALKK; } } // Token: 0x060166AE RID: 91822 RVA: 0x00639F00 File Offset: 0x00638100 private float EBHICDKOKIC(Collider CINAFOGLFIB, Transform EPKBCNOMDOK, out bool PEENIDCFCGB) { PEENIDCFCGB = true; Vector3 vector = CINAFOGLFIB.transform.position; SphereCollider sphereCollider = CINAFOGLFIB as SphereCollider; if (sphereCollider != null) { vector = sphereCollider.transform.TransformPoint(sphereCollider.center); } else { BoxCollider boxCollider = CINAFOGLFIB as BoxCollider; if (boxCollider != null) { vector = boxCollider.transform.TransformPoint(boxCollider.center); } } return (vector - EPKBCNOMDOK.position).magnitude; } // Token: 0x17000982 RID: 2434 // (get) Token: 0x060166B2 RID: 91826 RVA: 0x0063A004 File Offset: 0x00638204 // (set) Token: 0x060166AF RID: 91823 RVA: 0x00639F80 File Offset: 0x00638180 public MakerPen EIOLPKPLLDJ { get { if (this.FJBJNAPAFOA == null || this.FJBJNAPAFOA.OMNGGJICBBI.ADMBCINHJOG != this.OBGNAGNKIJN.CPIBGJLHLBL()) { int num = this.OBGNAGNKIJN.CPIBGJLHLBL(); if (num <= 0) { num = this.BKDFLNGCINH.GGFGGLCBCON; if (base.BHCCHBHNHCG) { this.OBGNAGNKIJN.MEAINJPIECA(num); } } PhotonView photonView = PhotonView.Find(num); this.FJBJNAPAFOA = ((!(photonView != null)) ? null : photonView.GetComponent()); } return this.FJBJNAPAFOA; } set { MakerPen fjbjnapafoa = this.FJBJNAPAFOA; this.FJBJNAPAFOA = value; if (base.BHCCHBHNHCG && this.FJBJNAPAFOA != fjbjnapafoa) { this.OBGNAGNKIJN.MEAINJPIECA((!(this.FJBJNAPAFOA != null)) ? (-1) : this.FJBJNAPAFOA.OMNGGJICBBI.ADMBCINHJOG); } } } // Token: 0x060166B0 RID: 91824 RVA: 0x00639FEC File Offset: 0x006381EC public Extrusion.FODAMJOGFEN KKAMMDGPAJP() { return (Extrusion.FODAMJOGFEN)this.EIIHEKJMNEC.CPIBGJLHLBL(); } // Token: 0x17000981 RID: 2433 // (get) Token: 0x060166B1 RID: 91825 RVA: 0x00639FFC File Offset: 0x006381FC public Transform HOKDNCHMBLF { get { return this.subExtrusionRoot; } } // Token: 0x060166B3 RID: 91827 RVA: 0x0063A0A4 File Offset: 0x006382A4 public Tool CLDNDPPEHBO() { return this.extrusionTool; } // Token: 0x060166B4 RID: 91828 RVA: 0x0063A0AC File Offset: 0x006382AC private void IIDHJJOJODI(Tool ELDJFLCJFPD) { if (ELDJFLCJFPD.GANDPDNCOKF()) { ExtrusionHandle component = ELDJFLCJFPD.GetComponent(); if (component.MDDLKFGHHBB != null && component.MDDLKFGHHBB.Count > 1) { FODNIMKBMML fodnimkbmml = this.CFMMGJNGGEJ(component.KHCDFGOAMOP()); PhotonView photonView = base.OMNGGJICBBI; string text = "{0}:{1}"; IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.All; object[] array = new object[3]; array[1] = component.LJILHDMCKME().NBAIABPNLNK(); array[1] = component.HeldSubExtrusionsManuallyHighlighted; array[3] = fodnimkbmml.ToByteArray(); photonView.RPC(text, ihcpdnljmmd, array); } } } // Token: 0x060166B5 RID: 91829 RVA: 0x0063A138 File Offset: 0x00638338 private void CAMGAFPKAMM() { this.NFOMBFFOFEJ(); } // Token: 0x17000986 RID: 2438 // (get) Token: 0x060166B6 RID: 91830 RVA: 0x0063A140 File Offset: 0x00638340 public int JNPBKNNDBDK { get { return this.MBPLMCGHODA.Count - 1; } } // Token: 0x060166B7 RID: 91831 RVA: 0x0063A150 File Offset: 0x00638350 public Tool BNGIMCDOHFK() { return this.extrusionTool; } // Token: 0x060166B8 RID: 91832 RVA: 0x0063A158 File Offset: 0x00638358 private void GHIMLKKEEDJ() { foreach (ExtrusionHandle extrusionHandle in this.handles) { extrusionHandle.HJHPIJHIKIE.Clear(); if (extrusionHandle.BKDFLNGCINH.HighlightedCollider != null) { foreach (BMOAOJCEOFI bmoaojceofi in this.MBPLMCGHODA) { if (bmoaojceofi.HLHMJBOLDOE.AANJEILBGDP.Contains(extrusionHandle.BKDFLNGCINH.HighlightedCollider)) { if (this.PBIKKAABPOB.Contains(bmoaojceofi)) { foreach (BMOAOJCEOFI bmoaojceofi2 in this.PBIKKAABPOB) { if (!extrusionHandle.HJHPIJHIKIE.Contains(bmoaojceofi2)) { extrusionHandle.HJHPIJHIKIE.Add(bmoaojceofi2); } } } else if (!extrusionHandle.HJHPIJHIKIE.Contains(bmoaojceofi)) { extrusionHandle.HJHPIJHIKIE.Add(bmoaojceofi); } break; } } } } } // Token: 0x060166B9 RID: 91833 RVA: 0x0063A2AC File Offset: 0x006384AC private void OnPhotonPlayerDisconnected(LNJFBGIBLHA JEHJKFMBELH) { if (base.BHCCHBHNHCG && this.BKDFLNGCINH.FICBNMJECCH.LNJFBGIBLHA == JEHJKFMBELH && this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Edit) { this.PNOOBNCKAMJ = Extrusion.FODAMJOGFEN.Play; } } // Token: 0x060166BA RID: 91834 RVA: 0x0063A2E4 File Offset: 0x006384E4 public void GLCEBIMDGAL(MakerPen NOBAPCOKFIL) { MakerPen fjbjnapafoa = this.FJBJNAPAFOA; this.FJBJNAPAFOA = NOBAPCOKFIL; if (base.DGLKKANNBPD() && this.FJBJNAPAFOA != fjbjnapafoa) { this.OBGNAGNKIJN.MEAINJPIECA((!(this.FJBJNAPAFOA != null)) ? (-1) : this.FJBJNAPAFOA.POOAOJPEDJD().OMNKKJNHJHD()); } } // Token: 0x060166BB RID: 91835 RVA: 0x0063A350 File Offset: 0x00638550 public void HODNEAOMJPL() { if (base.POOAOJPEDJD().PCHBDFKGJJA() == IHFKMIAHBFP.JEFGMHBLLKI) { IHFKMIAHBFP.JFCIOOHPLFJ(base.gameObject); } } // Token: 0x060166BC RID: 91836 RVA: 0x0063A374 File Offset: 0x00638574 private void KPDPOHMEAOK(Tool ENBMEDIFBLM) { this.MPACHEHMBIF(ENBMEDIFBLM); } // Token: 0x060166BD RID: 91837 RVA: 0x0063A380 File Offset: 0x00638580 public Tool AGPMDGPMBIN(Player OAKJPHFELHD, bool MFHKIFDBNOM) { if (this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Edit || (this.EIOLPKPLLDJ != null && this.EIOLPKPLLDJ.BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) { return this.AGMPDKIOOJF(); } ExtrusionHandle extrusionHandle = this.BFOJLIEANDH(); return (!(extrusionHandle != null)) ? null : extrusionHandle.CDNMEANCEDP(); } // Token: 0x060166BE RID: 91838 RVA: 0x0063A3E0 File Offset: 0x006385E0 public Tool APHDNDHPBBD() { return this.extrusionTool; } // Token: 0x060166BF RID: 91839 RVA: 0x0063A3E8 File Offset: 0x006385E8 public void MOPGALEGAAC(MakerPen NOBAPCOKFIL) { MakerPen fjbjnapafoa = this.FJBJNAPAFOA; this.FJBJNAPAFOA = NOBAPCOKFIL; if (base.IGIPCHFCFNN() && this.FJBJNAPAFOA != fjbjnapafoa) { this.OBGNAGNKIJN.MEAINJPIECA((!(this.FJBJNAPAFOA != null)) ? (-1) : this.FJBJNAPAFOA.EKPBHKFHMON().NBAIABPNLNK()); } } // Token: 0x060166C0 RID: 91840 RVA: 0x0063A454 File Offset: 0x00638654 private void ODIMACEGIPG(Tool ENBMEDIFBLM) { this.BNGIMCDOHFK().BOLBONELAEF.KEOJKEJMDFM = true; if (base.IGIPCHFCFNN()) { this.HHFKFJGDKFE(Extrusion.FODAMJOGFEN.Edit); } } // Token: 0x060166C1 RID: 91841 RVA: 0x0063A47C File Offset: 0x0063867C private void GPFGKKFDIED() { this.IEOMCMHJMPK(); } // Token: 0x060166C2 RID: 91842 RVA: 0x0063A484 File Offset: 0x00638684 private void AIGNIFGNLGH() { this.IEOMCMHJMPK(); } // Token: 0x060166C3 RID: 91843 RVA: 0x0063A48C File Offset: 0x0063868C public void AuthorityDeleteLatestSubExtrusion() { if (base.BHCCHBHNHCG && this.MBPLMCGHODA.Count > 0) { base.OMNGGJICBBI.RPC("RpcDeleteSubExtrusions", IHCPDNLJMMD.All, new object[] { new int[] { this.MBPLMCGHODA.Count - 1 } }); } } // Token: 0x060166C4 RID: 91844 RVA: 0x0063A4E8 File Offset: 0x006386E8 public BMOAOJCEOFI KBANAHBNMKP(Transform PBDBGOHPAGD, IHIJMFJBDEH AOAILGGFDHJ) { BMOAOJCEOFI.CLHPCLFGDEO clhpclfgdeo = (BMOAOJCEOFI.CLHPCLFGDEO)AOAILGGFDHJ.IDKDIJOJBCL; BMOAOJCEOFI bmoaojceofi; if (clhpclfgdeo < BMOAOJCEOFI.CLHPCLFGDEO.Cylinder) { bmoaojceofi = MFJCJNMPOOC.MCDJABCCLKN(PBDBGOHPAGD, AOAILGGFDHJ); if (bmoaojceofi.MDPDDDJPFFG && this.PNDMONAGBAK() != null) { TubeExtruder tubeExtruder = this.FMOICGAMEBK().DGBKBDOGMBP(clhpclfgdeo) as TubeExtruder; tubeExtruder.GKDLDLFNLAE = bmoaojceofi as MFJCJNMPOOC; } } else { bmoaojceofi = MJDGGJAALHI.PHEHMAIKJLD(PBDBGOHPAGD, AOAILGGFDHJ); if (bmoaojceofi.MDPDDDJPFFG && this.HBBMFEKDLNB() != null) { MeshShapeExtruder meshShapeExtruder = this.EIOLPKPLLDJ.DGBKBDOGMBP(clhpclfgdeo) as MeshShapeExtruder; meshShapeExtruder.GKDLDLFNLAE = bmoaojceofi as MJDGGJAALHI; } } return bmoaojceofi; } // Token: 0x060166C5 RID: 91845 RVA: 0x0063A590 File Offset: 0x00638790 private void MKGLEPMNBCP(int[] MGOGNEANNOD) { this.BFCMLJEMPAA(MGOGNEANNOD); } // Token: 0x060166C6 RID: 91846 RVA: 0x0063A59C File Offset: 0x0063879C private void FCMGMEALGON(int KBHCDFOBPJJ) { this.BNGIMCDOHFK().LHEPJEHMAEC().TransferOwnership(KBHCDFOBPJJ); ExtrusionHandle[] array = this.handles; for (int i = 0; i < array.Length; i += 0) { ExtrusionHandle extrusionHandle = array[i]; extrusionHandle.HOPJELLOPNJ().EPPIGICCDBM(KBHCDFOBPJJ); } } // Token: 0x060166C7 RID: 91847 RVA: 0x0063A5E8 File Offset: 0x006387E8 public object SandboxCurrentMode_Get() { return this.PNOOBNCKAMJ; } // Token: 0x060166C8 RID: 91848 RVA: 0x0063A5F8 File Offset: 0x006387F8 private void BFCMLJEMPAA(int[] MGOGNEANNOD) { this.ADBNPBDHLOB(MGOGNEANNOD); NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.RaiseResourceCostsUpdatedEvent(); } // Token: 0x060166C9 RID: 91849 RVA: 0x0063A60C File Offset: 0x0063880C public void HHFKFJGDKFE(Extrusion.FODAMJOGFEN NOBAPCOKFIL) { this.EIIHEKJMNEC.MEAINJPIECA((int)NOBAPCOKFIL); } // Token: 0x060166CA RID: 91850 RVA: 0x0063A61C File Offset: 0x0063881C private void MOCODOEEMPN() { if (this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Play) { if (this.JNPBKNNDBDK < 0) { this.BKDFLNGCINH.FIBLAKECGGK = true; if (base.BHCCHBHNHCG) { IHFKMIAHBFP.JFCIOOHPLFJ(base.OMNGGJICBBI); } } else { this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = false; this.BKDFLNGCINH.BOLBONELAEF.POEDHHBIGLD.ResetCenterOfMass(); this.BKDFLNGCINH.BOLBONELAEF.POEDHHBIGLD.ResetInertiaTensor(); if (this.BKDFLNGCINH.OHGPCMJMFGC || this.BKDFLNGCINH.BEKHOPMNAPA) { this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = true; } base.gameObject.OCMFPLEAONC("TeleportRegion"); } if (this.EIOLPKPLLDJ != null && this.EIOLPKPLLDJ.BHCCHBHNHCG) { this.EIOLPKPLLDJ.AuthorityRequestNewExtrusion(true, null); } } else { if (this.BKDFLNGCINH.OHGPCMJMFGC && this.BKDFLNGCINH.BHCCHBHNHCG) { this.BKDFLNGCINH.BBGHKANFCHC = DDOFAPFDGNL.JPCIKFHMMED; } this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = true; } } // Token: 0x1700097F RID: 2431 // (get) Token: 0x060166DA RID: 91866 RVA: 0x0063AE74 File Offset: 0x00639074 // (set) Token: 0x060166CB RID: 91851 RVA: 0x0063A758 File Offset: 0x00638958 public Extrusion.FODAMJOGFEN PNOOBNCKAMJ { get { return (Extrusion.FODAMJOGFEN)this.EIIHEKJMNEC.CPIBGJLHLBL(); } set { this.EIIHEKJMNEC.MEAINJPIECA((int)value); } } // Token: 0x060166CD RID: 91853 RVA: 0x0063A77C File Offset: 0x0063897C public void ToggleManuallyHighlightedSubExtrusion(BMOAOJCEOFI FPJCIOLDMCH) { if (this.EHLNHHFMFNC.Contains(FPJCIOLDMCH)) { this.EHLNHHFMFNC.Remove(FPJCIOLDMCH); } else if (this.MBPLMCGHODA.Contains(FPJCIOLDMCH)) { this.EHLNHHFMFNC.Add(FPJCIOLDMCH); } } // Token: 0x060166CE RID: 91854 RVA: 0x0063A7CC File Offset: 0x006389CC private void EKLLEPKHJAP(ExtrusionHandle IEPIMIDPDFF, bool NFFGDOKPJII, int[] IECMEFFMNFE, FODNIMKBMML PCFLGLIGDML) { if (IEPIMIDPDFF == null) { return; } bool flag = IECMEFFMNFE != null && IECMEFFMNFE.Length > 0; IEPIMIDPDFF.HeldSubExtrusionsManuallyHighlighted = NFFGDOKPJII; List list = new List(); foreach (IHIJMFJBDEH ihijmfjbdeh in PCFLGLIGDML.MBPLMCGHODA) { list.Add(this.DeserializeSubExtrusion(IEPIMIDPDFF.transform, ihijmfjbdeh)); } Vector3 position = list[0].DKCNBKFJCLK.position; for (int i = 0; i < list.Count; i++) { BMOAOJCEOFI bmoaojceofi = list[i]; Vector3 vector = IEPIMIDPDFF.transform.InverseTransformPoint(this.HOKDNCHMBLF.TransformPoint(bmoaojceofi.DKCNBKFJCLK.localPosition)); Quaternion quaternion = IEPIMIDPDFF.transform.MCKNNGGGBDG(this.HOKDNCHMBLF.PAFJLHMDIMO(bmoaojceofi.DKCNBKFJCLK.localRotation)); bmoaojceofi.DKCNBKFJCLK.localPosition = vector; bmoaojceofi.DKCNBKFJCLK.localRotation = quaternion; IEPIMIDPDFF.AddSubExtrusion(bmoaojceofi); } if (flag) { this.ICALEGLALKD(IECMEFFMNFE); } } // Token: 0x060166CF RID: 91855 RVA: 0x0063A910 File Offset: 0x00638B10 private void KANHBANFEJA(ExtrusionHandle IEPIMIDPDFF, bool NFFGDOKPJII, FODNIMKBMML JDOHGLGFDEO) { List list = new List(); foreach (IHIJMFJBDEH ihijmfjbdeh in JDOHGLGFDEO.MBPLMCGHODA) { list.Add(this.DeserializeSubExtrusion(this.HOKDNCHMBLF, ihijmfjbdeh)); } for (int i = 0; i < list.Count; i++) { BMOAOJCEOFI bmoaojceofi = list[i]; Vector3 vector = this.HOKDNCHMBLF.InverseTransformPoint(IEPIMIDPDFF.transform.TransformPoint(bmoaojceofi.DKCNBKFJCLK.localPosition)); Quaternion quaternion = this.HOKDNCHMBLF.MCKNNGGGBDG(IEPIMIDPDFF.transform.PAFJLHMDIMO(bmoaojceofi.DKCNBKFJCLK.localRotation)); bmoaojceofi.DKCNBKFJCLK.localPosition = vector; bmoaojceofi.DKCNBKFJCLK.localRotation = quaternion; this.AddSubExtrusion(list[i]); if (NFFGDOKPJII) { this.EHLNHHFMFNC.Add(bmoaojceofi); } } IEPIMIDPDFF.RemoveAllSubExtrusions(); } // Token: 0x060166D0 RID: 91856 RVA: 0x0063AA28 File Offset: 0x00638C28 public void CLKCHOPPDBB(IList NKHGIEDNIEL) { if (base.DGLKKANNBPD()) { int[] array = new int[NKHGIEDNIEL.Count]; for (int i = 0; i < NKHGIEDNIEL.Count; i += 0) { array[i] = this.MBPLMCGHODA.IndexOf(NKHGIEDNIEL[i]); } PhotonView photonView = base.LHEPJEHMAEC(); string text = "{0}v1/kickFromEvent"; IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.Others; object[] array2 = new object[0]; array2[0] = array; photonView.PKOHKPEKJCJ(text, ihcpdnljmmd, array2); } } // Token: 0x060166D1 RID: 91857 RVA: 0x0063AA94 File Offset: 0x00638C94 private void ICALEGLALKD(int[] MGOGNEANNOD) { for (int i = 0; i < MGOGNEANNOD.Length; i++) { BMOAOJCEOFI bmoaojceofi = this.MBPLMCGHODA[MGOGNEANNOD[i]]; this.BKDFLNGCINH.NJPKPAFHFNM.Remove(bmoaojceofi.HLHMJBOLDOE); this.BKDFLNGCINH.TryRemoveRenderer(bmoaojceofi.EIDPLDBJPDO); this.BKDFLNGCINH.BNHLFGMBNPM.renderers.Remove(bmoaojceofi.EIDPLDBJPDO); this.EHLNHHFMFNC.Remove(bmoaojceofi); global::UnityEngine.Object.Destroy(bmoaojceofi.MKMCHJFIONM); this.MBPLMCGHODA[MGOGNEANNOD[i]] = null; } this.MBPLMCGHODA.JCJAECDEILG(); if (this.JAPJHGGOFPM && NetworkedSingletonMonoBehaviour.NCKMBFBMBFM != null) { NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.RemoveSandboxSpawnable(this); } } // Token: 0x060166D2 RID: 91858 RVA: 0x0063AB64 File Offset: 0x00638D64 protected virtual void FHNCHPMIBJP() { Extrusion.AllExtrusions.Remove(this); MakerPen makerPen = this.FMOICGAMEBK(); if (makerPen != null && makerPen.NHNCPLPDONI(true) == this && base.DGLKKANNBPD()) { makerPen.AuthorityRequestNewExtrusion(false, null); } this.APHDNDHPBBD().PLPIAOHJBOB -= this.PKMEAHIFFNG; this.AGMPDKIOOJF().GFBCCFIMFEC -= this.CNMJNHGFALK; IHFKMIAHBFP.GFFDICBLOFJ -= new Action(this.OnPhotonPlayerConnected); IHFKMIAHBFP.DHLJAODEIEA -= new Action(this.OnPhotonPlayerDisconnected); base.BIPEBCPEPKL().LKNBOGANIND(new Action(this.BLCCAJHMHLK)); foreach (ExtrusionHandle extrusionHandle in this.handles) { extrusionHandle.BKDFLNGCINH.GFBCCFIMFEC -= this.NJICOFBFBPH; extrusionHandle.BKDFLNGCINH.PLPIAOHJBOB -= this.KPDPOHMEAOK; } if (NetworkedSingletonMonoBehaviour.NCKMBFBMBFM != null) { NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.NLCBOGCLCOL(this); } base.NDHBFLHIAHM(); } // Token: 0x17000984 RID: 2436 // (get) Token: 0x060166D3 RID: 91859 RVA: 0x0063ACA0 File Offset: 0x00638EA0 public bool MDPDDDJPFFG { get { return this.JNPBKNNDBDK >= 0 && this.NKHGIEDNIEL[this.JNPBKNNDBDK].MDPDDDJPFFG; } } // Token: 0x060166D4 RID: 91860 RVA: 0x0063ACCC File Offset: 0x00638ECC private void CPGMJGIJMDA(int KBHCDFOBPJJ) { this.APHDNDHPBBD().HOPJELLOPNJ().TransferOwnership(KBHCDFOBPJJ); ExtrusionHandle[] array = this.handles; for (int i = 1; i < array.Length; i += 0) { ExtrusionHandle extrusionHandle = array[i]; extrusionHandle.POOAOJPEDJD().TransferOwnership(KBHCDFOBPJJ); } } // Token: 0x060166D5 RID: 91861 RVA: 0x0063AD18 File Offset: 0x00638F18 public Tool AGMPDKIOOJF() { return this.extrusionTool; } // Token: 0x060166D6 RID: 91862 RVA: 0x0063AD20 File Offset: 0x00638F20 private float IPAALKNKDNH(Collider CINAFOGLFIB, Transform EPKBCNOMDOK, out bool PEENIDCFCGB) { PEENIDCFCGB = false; Vector3 vector = CINAFOGLFIB.transform.position; SphereCollider sphereCollider = CINAFOGLFIB as SphereCollider; if (sphereCollider != null) { vector = sphereCollider.transform.TransformPoint(sphereCollider.center); } else { BoxCollider boxCollider = CINAFOGLFIB as BoxCollider; if (boxCollider != null) { vector = boxCollider.transform.TransformPoint(boxCollider.center); } } return (vector - EPKBCNOMDOK.position).magnitude; } // Token: 0x060166D7 RID: 91863 RVA: 0x0063ADA0 File Offset: 0x00638FA0 private bool DDOGAEHOBFK(Tool COMHEONOMBA, Player OAKJPHFELHD, bool AABHBODJBNP) { return !this.MDPDDDJPFFG && (this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Play || (this.EIOLPKPLLDJ != null && this.EIOLPKPLLDJ.BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) && !FKJHLNJDEKK.LECFBEBMLIC.BCBJFKEFMMI(); } // Token: 0x060166D8 RID: 91864 RVA: 0x0063ADF8 File Offset: 0x00638FF8 private void PONDPPDHJOM() { this.GHIMLKKEEDJ(); } // Token: 0x060166D9 RID: 91865 RVA: 0x0063AE00 File Offset: 0x00639000 public void AddSubExtrusion(BMOAOJCEOFI FPJCIOLDMCH) { if (!this.MBPLMCGHODA.Contains(FPJCIOLDMCH)) { this.MBPLMCGHODA.Add(FPJCIOLDMCH); this.BKDFLNGCINH.AddToolCollider(FPJCIOLDMCH.HLHMJBOLDOE); this.BKDFLNGCINH.AddRenderer(FPJCIOLDMCH.EIDPLDBJPDO); this.BKDFLNGCINH.BNHLFGMBNPM.renderers.Add(FPJCIOLDMCH.EIDPLDBJPDO); } NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.AddSandboxSpawnable(this); } // Token: 0x060166DB RID: 91867 RVA: 0x0063AE84 File Offset: 0x00639084 private void BLCCAJHMHLK(int KBHCDFOBPJJ) { this.BKDFLNGCINH.OMNGGJICBBI.TransferOwnership(KBHCDFOBPJJ); foreach (ExtrusionHandle extrusionHandle in this.handles) { extrusionHandle.OMNGGJICBBI.TransferOwnership(KBHCDFOBPJJ); } } // Token: 0x060166DC RID: 91868 RVA: 0x0063AED0 File Offset: 0x006390D0 private void GADFLIGNIBN(ExtrusionHandle IEPIMIDPDFF, bool NFFGDOKPJII, int[] IECMEFFMNFE, FODNIMKBMML PCFLGLIGDML) { if (IEPIMIDPDFF == null) { return; } bool flag = IECMEFFMNFE == null || IECMEFFMNFE.Length > 1; IEPIMIDPDFF.HeldSubExtrusionsManuallyHighlighted = NFFGDOKPJII; List list = new List(); foreach (IHIJMFJBDEH ihijmfjbdeh in PCFLGLIGDML.DKFDDLKDNAE()) { list.Add(this.DeserializeSubExtrusion(IEPIMIDPDFF.transform, ihijmfjbdeh)); } Vector3 position = list[1].DKCNBKFJCLK.position; for (int i = 0; i < list.Count; i++) { BMOAOJCEOFI bmoaojceofi = list[i]; Vector3 vector = IEPIMIDPDFF.transform.InverseTransformPoint(this.HOKDNCHMBLF.TransformPoint(bmoaojceofi.DKCNBKFJCLK.localPosition)); Quaternion quaternion = IEPIMIDPDFF.transform.MCKNNGGGBDG(this.KGJBKMNACCO().PAFJLHMDIMO(bmoaojceofi.DKCNBKFJCLK.localRotation)); bmoaojceofi.DKCNBKFJCLK.localPosition = vector; bmoaojceofi.DKCNBKFJCLK.localRotation = quaternion; IEPIMIDPDFF.MHHJJMJMMLJ(bmoaojceofi); } if (flag) { this.ICALEGLALKD(IECMEFFMNFE); } } // Token: 0x060166DD RID: 91869 RVA: 0x0063B014 File Offset: 0x00639214 private bool OHMAAGJIDIM(Tool COMHEONOMBA, Player OAKJPHFELHD, bool AABHBODJBNP) { return !this.MDPDDDJPFFG && (this.KKAMMDGPAJP() == Extrusion.FODAMJOGFEN.Play || (this.PNDMONAGBAK() != null && this.PNDMONAGBAK().BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) && !FKJHLNJDEKK.LECFBEBMLIC.BCBJFKEFMMI(); } // Token: 0x060166DE RID: 91870 RVA: 0x0063B06C File Offset: 0x0063926C public void JOLMLMBDIEJ() { if (base.DGLOKLCEMLH() && this.PHODAPEHOKG().Count > 0) { PhotonView photonView = base.BIPEBCPEPKL(); string text = "Transaction ID"; IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.Others; object[] array = new object[1]; int num = 0; int[] array2 = new int[0]; array2[1] = this.MBPLMCGHODA.Count - 0; array[num] = array2; photonView.RPC(text, ihcpdnljmmd, array); } } // Token: 0x060166DF RID: 91871 RVA: 0x0063B0C8 File Offset: 0x006392C8 public List CFHKOPAOLJI() { return this.EHLNHHFMFNC; } // Token: 0x060166E0 RID: 91872 RVA: 0x0063B0D0 File Offset: 0x006392D0 private void NJICOFBFBPH(Tool ENBMEDIFBLM) { this.AuthorityPickupSubExtrusions(ENBMEDIFBLM, null); } // Token: 0x060166E1 RID: 91873 RVA: 0x0063B0DC File Offset: 0x006392DC public Tool JAHFCMHNIIJ(Player OAKJPHFELHD, bool MFHKIFDBNOM) { if (this.KKAMMDGPAJP() == Extrusion.FODAMJOGFEN.Play || (this.PNDMONAGBAK() != null && this.PNDMONAGBAK().BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) { return this.BKDFLNGCINH; } ExtrusionHandle extrusionHandle = this.CNLNDOMPJPI(); return (!(extrusionHandle != null)) ? null : extrusionHandle.CDNMEANCEDP(); } // Token: 0x060166E2 RID: 91874 RVA: 0x0063B13C File Offset: 0x0063933C public void AuthorityPickupSubExtrusions(Tool ELDJFLCJFPD, FODNIMKBMML CIKBOKLBFIL = null) { if (ELDJFLCJFPD.BHCCHBHNHCG) { ExtrusionHandle component = ELDJFLCJFPD.GetComponent(); if (component.MDDLKFGHHBB.Count == 0) { if (CIKBOKLBFIL != null) { base.OMNGGJICBBI.RPC("RpcHandlePickupSubExtrusions", IHCPDNLJMMD.All, new object[] { ELDJFLCJFPD.OMNGGJICBBI.ADMBCINHJOG, false, null, CIKBOKLBFIL.ToByteArray() }); } else if (component.HJHPIJHIKIE.Count > 0) { int[] array = new int[component.HJHPIJHIKIE.Count]; for (int i = 0; i < component.HJHPIJHIKIE.Count; i++) { array[i] = this.MBPLMCGHODA.IndexOf(component.HJHPIJHIKIE[i]); } FODNIMKBMML fodnimkbmml = this.SerializeSubExtrusions(component.HJHPIJHIKIE); bool flag = this.EHLNHHFMFNC.Contains(component.HJHPIJHIKIE[0]); base.OMNGGJICBBI.RPC("RpcHandlePickupSubExtrusions", IHCPDNLJMMD.All, new object[] { ELDJFLCJFPD.OMNGGJICBBI.ADMBCINHJOG, flag, array, fodnimkbmml.ToByteArray() }); } } } } // Token: 0x060166E3 RID: 91875 RVA: 0x0063B274 File Offset: 0x00639474 public void RemoteDeserializeSubExtrusions(FODNIMKBMML KGAGDPGLDGG) { foreach (IHIJMFJBDEH ihijmfjbdeh in KGAGDPGLDGG.MBPLMCGHODA) { this.AddSubExtrusion(this.DeserializeSubExtrusion(this.HOKDNCHMBLF, ihijmfjbdeh)); } } // Token: 0x060166E4 RID: 91876 RVA: 0x0063B2DC File Offset: 0x006394DC [BCENPNOIAOM] private void RpcHandlePickupSubExtrusions(int LDEGNHMEKPJ, bool NFFGDOKPJII, int[] DNLGNKHABIM, byte[] DGEELCAPMIE) { PhotonView photonView = PhotonView.Find(LDEGNHMEKPJ); ExtrusionHandle extrusionHandle = ((!(photonView != null)) ? null : photonView.GetComponent()); FODNIMKBMML fodnimkbmml = FODNIMKBMML.KGJOFMBOKCB.ParseFrom(DGEELCAPMIE); this.EKLLEPKHJAP(extrusionHandle, NFFGDOKPJII, DNLGNKHABIM, fodnimkbmml); } // Token: 0x060166E5 RID: 91877 RVA: 0x0063B320 File Offset: 0x00639520 private void Start() { this.MOCODOEEMPN(); } // Token: 0x060166E6 RID: 91878 RVA: 0x0063B328 File Offset: 0x00639528 public MakerPen HBBMFEKDLNB() { if (this.FJBJNAPAFOA == null || this.FJBJNAPAFOA.POOAOJPEDJD().OMNKKJNHJHD() != this.OBGNAGNKIJN.CPIBGJLHLBL()) { int num = this.OBGNAGNKIJN.CPIBGJLHLBL(); if (num <= 0) { num = this.APHDNDHPBBD().LOEOILCIAIH(); if (base.DGLKKANNBPD()) { this.OBGNAGNKIJN.MEAINJPIECA(num); } } PhotonView photonView = PhotonView.NMBFNIJMFOO(num); this.FJBJNAPAFOA = ((!(photonView != null)) ? null : photonView.GetComponent()); } return this.FJBJNAPAFOA; } // Token: 0x060166E7 RID: 91879 RVA: 0x0063B3C8 File Offset: 0x006395C8 private void JCKCKCDALGL(int LDEGNHMEKPJ, bool NFFGDOKPJII, int[] DNLGNKHABIM, byte[] DGEELCAPMIE) { PhotonView photonView = PhotonView.NMBFNIJMFOO(LDEGNHMEKPJ); ExtrusionHandle extrusionHandle = ((!(photonView != null)) ? null : photonView.GetComponent()); FODNIMKBMML fodnimkbmml = FODNIMKBMML.BMLKNFIFKNB().ParseFrom(DGEELCAPMIE); this.EKLLEPKHJAP(extrusionHandle, NFFGDOKPJII, DNLGNKHABIM, fodnimkbmml); } // Token: 0x060166E8 RID: 91880 RVA: 0x0063B40C File Offset: 0x0063960C private void PGJAOEIBBMC(Tool ENBMEDIFBLM) { if (base.BHCCHBHNHCG && !NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.OOMFOBGPNKH) { this.PNOOBNCKAMJ = Extrusion.FODAMJOGFEN.Play; } } // Token: 0x060166E9 RID: 91881 RVA: 0x0063B430 File Offset: 0x00639630 private void ADBNPBDHLOB(int[] MGOGNEANNOD) { for (int i = 1; i < MGOGNEANNOD.Length; i += 0) { BMOAOJCEOFI bmoaojceofi = this.MBPLMCGHODA[MGOGNEANNOD[i]]; this.BDCEELMFHNN().NJPKPAFHFNM.Remove(bmoaojceofi.HLHMJBOLDOE); this.CLDNDPPEHBO().TryRemoveRenderer(bmoaojceofi.EIDPLDBJPDO); this.APHDNDHPBBD().BNHLFGMBNPM.renderers.Remove(bmoaojceofi.EIDPLDBJPDO); this.EHLNHHFMFNC.Remove(bmoaojceofi); global::UnityEngine.Object.Destroy(bmoaojceofi.MKMCHJFIONM); this.AACIIACHOKB()[MGOGNEANNOD[i]] = null; } this.MBPLMCGHODA.JCJAECDEILG(); if (this.EANJCCKAHCC() && NetworkedSingletonMonoBehaviour.NCKMBFBMBFM != null) { NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.NAHDHIDIBNI(this); } } // Token: 0x060166EA RID: 91882 RVA: 0x0063B500 File Offset: 0x00639700 public bool EANJCCKAHCC() { if (this.PHODAPEHOKG().Count > 0) { return false; } ExtrusionHandle[] array = this.handles; for (int i = 0; i < array.Length; i += 0) { ExtrusionHandle extrusionHandle = array[i]; if (extrusionHandle.MDDLKFGHHBB.Count > 0) { return true; } } return false; } // Token: 0x060166EB RID: 91883 RVA: 0x0063B554 File Offset: 0x00639754 private void AMCANMJHAEH() { this.NFOMBFFOFEJ(); } // Token: 0x060166EC RID: 91884 RVA: 0x0063B55C File Offset: 0x0063975C private void FJDKAGEANLM(int[] MGOGNEANNOD) { this.ICALEGLALKD(MGOGNEANNOD); NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.RaiseResourceCostsUpdatedEvent(); } // Token: 0x060166ED RID: 91885 RVA: 0x0063B570 File Offset: 0x00639770 public FODNIMKBMML SerializeSubExtrusions(List BKGHCLGCHKJ) { FODNIMKBMML fodnimkbmml = new FODNIMKBMML(); if (BKGHCLGCHKJ != null && BKGHCLGCHKJ.Count > 0) { for (int i = 0; i < BKGHCLGCHKJ.Count; i++) { if (!BKGHCLGCHKJ[i].MDPDDDJPFFG) { IHIJMFJBDEH ihijmfjbdeh = BKGHCLGCHKJ[i].EGKKKDOMLIG(); if (ihijmfjbdeh != null) { fodnimkbmml.MBPLMCGHODA.Add(ihijmfjbdeh); } } } } return fodnimkbmml; } // Token: 0x060166EE RID: 91886 RVA: 0x0063B5E4 File Offset: 0x006397E4 private void EFAIKACNFBN(LNJFBGIBLHA JEHJKFMBELH) { if (base.BHCCHBHNHCG && this.BKDFLNGCINH.FICBNMJECCH.LNJFBGIBLHA == JEHJKFMBELH && this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Edit) { this.LDKPFDBLOGF(Extrusion.FODAMJOGFEN.Edit); } } // Token: 0x060166EF RID: 91887 RVA: 0x0063B61C File Offset: 0x0063981C private void ILNKKNPGPHP() { if (SingletonMonoBehaviour.NCKMBFBMBFM != null && !SingletonMonoBehaviour.NCKMBFBMBFM.SuppressAnimations && SessionManager.PIEADIIBGGI) { foreach (BMOAOJCEOFI bmoaojceofi in this.MBPLMCGHODA) { Bounds bounds = bmoaojceofi.EIDPLDBJPDO.bounds; PooledParticle pooledParticle = ObjectPool.NFHMLKPHCFF().Acquire(SingletonMonoBehaviour.NCKMBFBMBFM.DefaultEffectPrefab); pooledParticle.transform.SetParent(SingletonMonoBehaviour.NCKMBFBMBFM.transform); pooledParticle.transform.position = bounds.center; pooledParticle.transform.rotation = Quaternion.identity; pooledParticle.JAMLMKEOGMN.Simulate(1764f); pooledParticle.Play(false); this.GPNMINHOGGB.Add(pooledParticle); pooledParticle.JAMLMKEOGMN.shape.scale = bounds.size * 707f; float[] array = new float[5]; array[1] = bounds.size.x; array[0] = bounds.size.y; array[7] = bounds.size.z; float num = Mathf.Max(array); pooledParticle.JAMLMKEOGMN.main.startSize = num * 1545f; } } } // Token: 0x060166F0 RID: 91888 RVA: 0x0063B7B0 File Offset: 0x006399B0 private void CEDDPLOOEOA() { this.ILNKKNPGPHP(); } // Token: 0x060166F1 RID: 91889 RVA: 0x0063B7B8 File Offset: 0x006399B8 private void AOHDEMOJLJH(ExtrusionHandle IEPIMIDPDFF, bool NFFGDOKPJII, FODNIMKBMML JDOHGLGFDEO) { List list = new List(); foreach (IHIJMFJBDEH ihijmfjbdeh in JDOHGLGFDEO.DKFDDLKDNAE()) { list.Add(this.KBANAHBNMKP(this.HOKDNCHMBLF, ihijmfjbdeh)); } for (int i = 0; i < list.Count; i++) { BMOAOJCEOFI bmoaojceofi = list[i]; Vector3 vector = this.HOKDNCHMBLF.InverseTransformPoint(IEPIMIDPDFF.transform.TransformPoint(bmoaojceofi.DKCNBKFJCLK.localPosition)); Quaternion quaternion = this.KGJBKMNACCO().MCKNNGGGBDG(IEPIMIDPDFF.transform.PAFJLHMDIMO(bmoaojceofi.DKCNBKFJCLK.localRotation)); bmoaojceofi.DKCNBKFJCLK.localPosition = vector; bmoaojceofi.DKCNBKFJCLK.localRotation = quaternion; this.AddSubExtrusion(list[i]); if (NFFGDOKPJII) { this.EHLNHHFMFNC.Add(bmoaojceofi); } } IEPIMIDPDFF.CMCGEGCHNOA(); } // Token: 0x060166F2 RID: 91890 RVA: 0x0063B8D0 File Offset: 0x00639AD0 private void IEOMCMHJMPK() { if (SingletonMonoBehaviour.NCKMBFBMBFM != null && !SingletonMonoBehaviour.NCKMBFBMBFM.SuppressAnimations && SessionManager.PIEADIIBGGI) { foreach (BMOAOJCEOFI bmoaojceofi in this.MBPLMCGHODA) { Bounds bounds = bmoaojceofi.EIDPLDBJPDO.bounds; PooledParticle pooledParticle = ObjectPool.NCKMBFBMBFM.Acquire(SingletonMonoBehaviour.NCKMBFBMBFM.DefaultEffectPrefab); pooledParticle.transform.SetParent(SingletonMonoBehaviour.NCKMBFBMBFM.transform); pooledParticle.transform.position = bounds.center; pooledParticle.transform.rotation = Quaternion.identity; pooledParticle.JAMLMKEOGMN.Simulate(0.2f); pooledParticle.Play(false); this.GPNMINHOGGB.Add(pooledParticle); pooledParticle.JAMLMKEOGMN.shape.scale = bounds.size * 1.3f; float num = Mathf.Max(new float[] { bounds.size.x, bounds.size.y, bounds.size.z }); pooledParticle.JAMLMKEOGMN.main.startSize = num * 0.3f; } } } // Token: 0x060166F3 RID: 91891 RVA: 0x0063BA64 File Offset: 0x00639C64 public MakerPen FMOICGAMEBK() { if (this.FJBJNAPAFOA == null || this.FJBJNAPAFOA.CEGDLFAENEJ().GCPHMBPAAOM() != this.OBGNAGNKIJN.CPIBGJLHLBL()) { int num = this.OBGNAGNKIJN.CPIBGJLHLBL(); if (num <= 0) { num = this.CLDNDPPEHBO().LOEOILCIAIH(); if (base.DGLOKLCEMLH()) { this.OBGNAGNKIJN.MEAINJPIECA(num); } } PhotonView photonView = PhotonView.KAKDEOHCKBM(num); this.FJBJNAPAFOA = ((!(photonView != null)) ? null : photonView.GetComponent()); } return this.FJBJNAPAFOA; } // Token: 0x060166F4 RID: 91892 RVA: 0x0063BB04 File Offset: 0x00639D04 private void GHGLJLCOAGF(Tool ENBMEDIFBLM) { this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = !this.BDCEELMFHNN().BEKHOPMNAPA && this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Play; } // Token: 0x060166F5 RID: 91893 RVA: 0x0063BB34 File Offset: 0x00639D34 public Tool DBONJLOLAAK(Player OAKJPHFELHD, bool MFHKIFDBNOM) { if (this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Edit || (this.PNDMONAGBAK() != null && this.FMOICGAMEBK().BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) { return this.BDCEELMFHNN(); } ExtrusionHandle freeHandle = this.GetFreeHandle(); return (!(freeHandle != null)) ? null : freeHandle.CDNMEANCEDP(); } // Token: 0x17000983 RID: 2435 // (get) Token: 0x060166F6 RID: 91894 RVA: 0x0063BB94 File Offset: 0x00639D94 public bool JAPJHGGOFPM { get { if (this.MBPLMCGHODA.Count > 0) { return false; } foreach (ExtrusionHandle extrusionHandle in this.handles) { if (extrusionHandle.MDDLKFGHHBB.Count > 0) { return false; } } return true; } } // Token: 0x060166F7 RID: 91895 RVA: 0x0063BBE8 File Offset: 0x00639DE8 protected override void OnDestroy() { Extrusion.AllExtrusions.Remove(this); MakerPen makerPen = this.EIOLPKPLLDJ; if (makerPen != null && makerPen.GetCurrentExtrusion(false) == this && base.BHCCHBHNHCG) { makerPen.AuthorityRequestNewExtrusion(true, null); } this.BKDFLNGCINH.PLPIAOHJBOB -= this.PKMEAHIFFNG; this.BKDFLNGCINH.GFBCCFIMFEC -= this.CNMJNHGFALK; IHFKMIAHBFP.GFFDICBLOFJ -= new Action(this.OnPhotonPlayerConnected); IHFKMIAHBFP.DHLJAODEIEA -= new Action(this.OnPhotonPlayerDisconnected); base.OMNGGJICBBI.FPKGGJGGPAG -= this.BLCCAJHMHLK; foreach (ExtrusionHandle extrusionHandle in this.handles) { extrusionHandle.BKDFLNGCINH.GFBCCFIMFEC -= this.NJICOFBFBPH; extrusionHandle.BKDFLNGCINH.PLPIAOHJBOB -= this.KPDPOHMEAOK; } if (NetworkedSingletonMonoBehaviour.NCKMBFBMBFM != null) { NetworkedSingletonMonoBehaviour.NCKMBFBMBFM.RemoveSandboxSpawnable(this); } base.OnDestroy(); } // Token: 0x060166F8 RID: 91896 RVA: 0x0063BD24 File Offset: 0x00639F24 public void AuthorityDeserializeSubExtrusions(FODNIMKBMML KGAGDPGLDGG) { if (base.BHCCHBHNHCG) { base.OMNGGJICBBI.RPC("RpcDeserializeSubExtrusions", IHCPDNLJMMD.All, new object[] { KGAGDPGLDGG.ToByteArray() }); } } // Token: 0x060166FA RID: 91898 RVA: 0x0063BD80 File Offset: 0x00639F80 private void BHDKJMOCKDO(int LDEGNHMEKPJ, bool NFFGDOKPJII, byte[] DGEELCAPMIE) { PhotonView photonView = PhotonView.NMBFNIJMFOO(LDEGNHMEKPJ); ExtrusionHandle extrusionHandle = ((!(photonView != null)) ? null : photonView.GetComponent()); FODNIMKBMML fodnimkbmml = FODNIMKBMML.PCHJCNNCPOP().ParseFrom(DGEELCAPMIE); this.AOHDEMOJLJH(extrusionHandle, NFFGDOKPJII, fodnimkbmml); } // Token: 0x060166FB RID: 91899 RVA: 0x0063BDC4 File Offset: 0x00639FC4 private void IEBDBACKKMO() { for (int i = 0; i < this.MBPLMCGHODA.Count; i++) { if (this.MBPLMCGHODA[i].EIDPLDBJPDO.isVisible) { if (this.BKDFLNGCINH.OutlineType == OutlineEffectRenderer.IMJCBDKBDIE.Hover) { OutlineEffectRenderer.RenderHoverOutline(this.MBPLMCGHODA[i].EIDPLDBJPDO, this.MBPLMCGHODA[i].EIDPLDBJPDO.OGBPEDNIGCM()); } else if (this.BKDFLNGCINH.OutlineType == OutlineEffectRenderer.IMJCBDKBDIE.Tutorial) { OutlineEffectRenderer.RenderTutorialOutline(this.MBPLMCGHODA[i].EIDPLDBJPDO, this.MBPLMCGHODA[i].EIDPLDBJPDO.OGBPEDNIGCM()); } } } if (this.BKDFLNGCINH.HighlightedCollider != null) { this.extrusionToolPickupTransform.position = this.BKDFLNGCINH.HighlightedCollider.bounds.center; } } // Token: 0x060166FC RID: 91900 RVA: 0x0063BEC0 File Offset: 0x0063A0C0 public Tool ToolSelectionForwarding(Player OAKJPHFELHD, bool MFHKIFDBNOM) { if (this.PNOOBNCKAMJ == Extrusion.FODAMJOGFEN.Play || (this.EIOLPKPLLDJ != null && this.EIOLPKPLLDJ.BPDKALBJLJP == MakerPen.LKOCEAOINAE.Basic)) { return this.BKDFLNGCINH; } ExtrusionHandle freeHandle = this.GetFreeHandle(); return (!(freeHandle != null)) ? null : freeHandle.BKDFLNGCINH; } // Token: 0x060166FD RID: 91901 RVA: 0x0063BF20 File Offset: 0x0063A120 [BCENPNOIAOM] private void RpcDeleteSubExtrusions(int[] MGOGNEANNOD) { this.FJDKAGEANLM(MGOGNEANNOD); } // Token: 0x060166FE RID: 91902 RVA: 0x0063BF2C File Offset: 0x0063A12C [BCENPNOIAOM] private void RpcDeserializeSubExtrusions(byte[] EBIMLGPFNJL) { this.RemoteDeserializeSubExtrusions(FODNIMKBMML.KGJOFMBOKCB.ParseFrom(EBIMLGPFNJL)); } // Token: 0x17000985 RID: 2437 // (get) Token: 0x060166FF RID: 91903 RVA: 0x0063BF40 File Offset: 0x0063A140 public int OMDEDGGJDHD { get { int num = 50; if (!this.BKDFLNGCINH.BEKHOPMNAPA) { foreach (BMOAOJCEOFI bmoaojceofi in this.MBPLMCGHODA) { num += bmoaojceofi.HCFCNJGBHNL; } } return num; } } // Token: 0x06016700 RID: 91904 RVA: 0x0063BFB4 File Offset: 0x0063A1B4 public ExtrusionHandle GetFreeHandle() { foreach (ExtrusionHandle extrusionHandle in this.handles) { if (!extrusionHandle.BKDFLNGCINH.OHGPCMJMFGC && extrusionHandle.BKDFLNGCINH.HighlightedCollider == null) { return extrusionHandle; } } return null; } // Token: 0x06016701 RID: 91905 RVA: 0x0063C00C File Offset: 0x0063A20C public void SandboxCurrentMode_Set(object CLPCFAPOKFN) { if (CLPCFAPOKFN != null && base.BHCCHBHNHCG) { this.PNOOBNCKAMJ = (Extrusion.FODAMJOGFEN)CLPCFAPOKFN; } } // Token: 0x06016702 RID: 91906 RVA: 0x0063C02C File Offset: 0x0063A22C private void OnDisable() { this.IEOMCMHJMPK(); } // Token: 0x06016703 RID: 91907 RVA: 0x0063C034 File Offset: 0x0063A234 private void NFOMBFFOFEJ() { if (this.KKAMMDGPAJP() == Extrusion.FODAMJOGFEN.Play) { if (this.JNPBKNNDBDK < 0) { this.BDCEELMFHNN().FIBLAKECGGK = false; if (base.IGIPCHFCFNN()) { IHFKMIAHBFP.JFCIOOHPLFJ(base.CJKKPMHAMCN()); } } else { this.BNGIMCDOHFK().BOLBONELAEF.KEOJKEJMDFM = true; this.BDCEELMFHNN().BOLBONELAEF.POEDHHBIGLD.ResetCenterOfMass(); this.APHDNDHPBBD().BOLBONELAEF.POEDHHBIGLD.ResetInertiaTensor(); if (this.CLDNDPPEHBO().OHGPCMJMFGC || this.AGMPDKIOOJF().BEKHOPMNAPA) { this.BNGIMCDOHFK().BOLBONELAEF.KEOJKEJMDFM = true; } base.gameObject.OCMFPLEAONC("{0}v2"); } if (this.EIOLPKPLLDJ != null && this.PNDMONAGBAK().DGLOKLCEMLH()) { this.PNDMONAGBAK().AuthorityRequestNewExtrusion(false, null); } } else { if (this.BDCEELMFHNN().OHGPCMJMFGC && this.AGMPDKIOOJF().DFJFKOLLEMK()) { this.AGMPDKIOOJF().BBGHKANFCHC = DDOFAPFDGNL.JPCIKFHMMED; } this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = false; } } // Token: 0x06016704 RID: 91908 RVA: 0x0063C170 File Offset: 0x0063A370 public BMOAOJCEOFI DeserializeSubExtrusion(Transform PBDBGOHPAGD, IHIJMFJBDEH AOAILGGFDHJ) { BMOAOJCEOFI.CLHPCLFGDEO clhpclfgdeo = (BMOAOJCEOFI.CLHPCLFGDEO)AOAILGGFDHJ.IDKDIJOJBCL; BMOAOJCEOFI bmoaojceofi; if (clhpclfgdeo < BMOAOJCEOFI.CLHPCLFGDEO.Box) { bmoaojceofi = MFJCJNMPOOC.MCDJABCCLKN(PBDBGOHPAGD, AOAILGGFDHJ); if (bmoaojceofi.MDPDDDJPFFG && this.EIOLPKPLLDJ != null) { TubeExtruder tubeExtruder = this.EIOLPKPLLDJ.GetExtruderForShapeType(clhpclfgdeo) as TubeExtruder; tubeExtruder.GKDLDLFNLAE = bmoaojceofi as MFJCJNMPOOC; } } else { bmoaojceofi = MJDGGJAALHI.MCDJABCCLKN(PBDBGOHPAGD, AOAILGGFDHJ); if (bmoaojceofi.MDPDDDJPFFG && this.EIOLPKPLLDJ != null) { MeshShapeExtruder meshShapeExtruder = this.EIOLPKPLLDJ.GetExtruderForShapeType(clhpclfgdeo) as MeshShapeExtruder; meshShapeExtruder.GKDLDLFNLAE = bmoaojceofi as MJDGGJAALHI; } } return bmoaojceofi; } // Token: 0x04003EC0 RID: 16064 public const int BASE_SANDBOX_RESOURCE_COST = 50; // Token: 0x04003EC1 RID: 16065 [SerializeField] private Tool extrusionTool; // Token: 0x04003EC2 RID: 16066 [SerializeField] private Transform extrusionToolPickupTransform; // Token: 0x04003EC3 RID: 16067 [SerializeField] private ExtrusionHandle[] handles; // Token: 0x04003EC4 RID: 16068 [SerializeField] private Transform subExtrusionRoot; // Token: 0x04003EC5 RID: 16069 [SerializeField] [ENMFCLPAKBJ(FOGKDGELKHN.Children, false)] private SandboxEditable sandboxEditable; // Token: 0x04003EC6 RID: 16070 public static List AllExtrusions = new List(); // Token: 0x04003EC7 RID: 16071 private List GPNMINHOGGB = new List(); // Token: 0x04003EC8 RID: 16072 private List NKHGIEDNIEL = new List(); // Token: 0x04003EC9 RID: 16073 private List EHLNHHFMFNC = new List(); // Token: 0x04003ECA RID: 16074 private LHLLJPPCDKA EIIHEKJMNEC; // Token: 0x04003ECB RID: 16075 private static Transform PJCOHDAALKK = null; // Token: 0x04003ECC RID: 16076 private LHLLJPPCDKA OBGNAGNKIJN; // Token: 0x04003ECD RID: 16077 private MakerPen FJBJNAPAFOA; // Token: 0x02000B98 RID: 2968 public enum FODAMJOGFEN { // Token: 0x04003ECF RID: 16079 Edit, // Token: 0x04003ED0 RID: 16080 Play } } }