using System; using Cpp2IlInjected; using Photon.Pun; using UnityEngine; namespace RecRoom.Tools { // Token: 0x02002AE9 RID: 10985 [Token(Token = "0x2002AE9")] public abstract class DrawingToolBase : MonoBehaviourPun { // Token: 0x17003311 RID: 13073 // (get) Token: 0x0601243A RID: 74810 RVA: 0x0042560C File Offset: 0x0042380C // (set) Token: 0x0601243B RID: 74811 RVA: 0x0042562C File Offset: 0x0042382C [Token(Token = "0x17003311")] private bool NHCKPNPMDMO { [Token(Token = "0x601243A")] [Address(RVA = "0x1D67730", Offset = "0x1D66730", VA = "0x181D67730")] get { return this.GPGPKKALPPB.IAHDANBDAAM() != null; } [Token(Token = "0x601243B")] [Address(RVA = "0x1D679C0", Offset = "0x1D669C0", VA = "0x181D679C0")] set { KLLMCPFPIIE gpgpkkalppb = this.GPGPKKALPPB; } } // Token: 0x17003312 RID: 13074 // (get) Token: 0x0601243C RID: 74812 RVA: 0x00425648 File Offset: 0x00423848 [Token(Token = "0x17003312")] public Tool PBBJCLJPFMI { [Token(Token = "0x601243C")] [Address(RVA = "0x417680", Offset = "0x416680", VA = "0x180417680")] get { return this.tool; } } // Token: 0x17003313 RID: 13075 // (get) Token: 0x0601243D RID: 74813 RVA: 0x0042565C File Offset: 0x0042385C // (set) Token: 0x0601243E RID: 74814 RVA: 0x00425670 File Offset: 0x00423870 [Token(Token = "0x17003313")] public DrawingSurface EPLIJLKMAAE { [Token(Token = "0x601243D")] [Address(RVA = "0x56D550", Offset = "0x56C550", VA = "0x18056D550")] get; [Token(Token = "0x601243E")] [Address(RVA = "0x56D560", Offset = "0x56C560", VA = "0x18056D560")] set; } // Token: 0x17003314 RID: 13076 // (get) Token: 0x0601243F RID: 74815 RVA: 0x00425684 File Offset: 0x00423884 // (set) Token: 0x06012440 RID: 74816 RVA: 0x00425698 File Offset: 0x00423898 [Token(Token = "0x17003314")] public bool LMNMPICOEMJ { [Token(Token = "0x601243F")] [Address(RVA = "0xBF45E0", Offset = "0xBF35E0", VA = "0x180BF45E0")] get; [Token(Token = "0x6012440")] [Address(RVA = "0xBF45F0", Offset = "0xBF35F0", VA = "0x180BF45F0")] set; } // Token: 0x17003315 RID: 13077 // (get) Token: 0x06012441 RID: 74817 RVA: 0x004256AC File Offset: 0x004238AC [Token(Token = "0x17003315")] public Transform AOLKEGOFKLG { [Token(Token = "0x6012441")] [Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")] get { return this._brushTip; } } // Token: 0x17003316 RID: 13078 // (get) Token: 0x06012442 RID: 74818 RVA: 0x004256C0 File Offset: 0x004238C0 [Token(Token = "0x17003316")] public Material JGLFCAMFGDN { [Token(Token = "0x6012442")] [Address(RVA = "0x1D68470", Offset = "0x1D67470", VA = "0x181D68470")] get { Material gbilnhkbmea = this.GBILNHKBMEA; int num = 0; if (gbilnhkbmea == num) { Material material = global::UnityEngine.Object.Instantiate(this._drawingMaterial); this.GBILNHKBMEA = material; } return this.GBILNHKBMEA; } } // Token: 0x17003317 RID: 13079 // (get) Token: 0x06012443 RID: 74819 RVA: 0x004256FC File Offset: 0x004238FC [Token(Token = "0x17003317")] public DrawingSurface.OMBBAPFJEDF KJPCOCIKGGJ { [Token(Token = "0x6012443")] [Address(RVA = "0x4AF0F0", Offset = "0x4AE0F0", VA = "0x1804AF0F0")] get { return this._drawingSurfaceType; } } // Token: 0x06012444 RID: 74820 RVA: 0x00425710 File Offset: 0x00423910 [Token(Token = "0x6012444")] [Address(RVA = "0x1D66FC0", Offset = "0x1D65FC0", VA = "0x181D66FC0", Slot = "13")] protected override void Awake() { base..ctor(); Action action = new Action(this.FDGJLBKFIKI); int num; int num2; KLLMCPFPIIE kllmcpfpiie = new KLLMCPFPIIE(this, "IS_DRAWING", num, (OHOEENCHJJE)num2, action, num2); num2 = 0; num = 0; Tool tool = this.tool; this.GPGPKKALPPB = kllmcpfpiie; MFBGLIHGCGO postReleaseEvent = tool.PostReleaseEvent; Action action2 = new Action(this.OIOCPLEKMEK); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postReleaseEvent, action2); tool.PostReleaseEvent = mfbglihgcgo; } // Token: 0x06012445 RID: 74821 RVA: 0x00425784 File Offset: 0x00423984 [Token(Token = "0x6012445")] [Address(RVA = "0x1D67FF0", Offset = "0x1D66FF0", VA = "0x181D67FF0", Slot = "14")] protected override void OnDestroy() { Tool tool = this.tool; MFBGLIHGCGO postReleaseEvent = tool.PostReleaseEvent; Action action = new Action(this.OIOCPLEKMEK); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postReleaseEvent, action); tool.PostReleaseEvent = mfbglihgcgo; base.OnDestroy(); } // Token: 0x06012446 RID: 74822 RVA: 0x004257C8 File Offset: 0x004239C8 [Token(Token = "0x6012446")] [Address(RVA = "0x1D68300", Offset = "0x1D67300", VA = "0x181D68300")] private void Update() { if (this.k__BackingField) { this.OIOEGKAEMOI(); } this.ADCHIMGGOOK(); if (base.OGIBLNIIHDK) { this.NMFEHBBMAEC(); return; } } // Token: 0x06012447 RID: 74823 RVA: 0x004257FC File Offset: 0x004239FC [Token(Token = "0x6012447")] [Address(RVA = "0x1D67BD0", Offset = "0x1D66BD0", VA = "0x181D67BD0")] private void OIOCPLEKMEK(Tool EGFEJGHDNAI) { this.MPKNLGHLDEN(); } // Token: 0x06012448 RID: 74824 RVA: 0x00425810 File Offset: 0x00423A10 [Token(Token = "0x6012448")] [Address(RVA = "0x1D680A0", Offset = "0x1D670A0", VA = "0x181D680A0")] public void UpdateManualDrawing(Vector3 LLGILECIIGJ, Quaternion NDKHIBFGBND, float JDLIOHICNLB) { if (!this.k__BackingField && base.OGIBLNIIHDK) { int num = 0; float z = Vector3.zero.z; Vector2 zero = Vector2.zero; DrawingSurface drawingSurface = this.k__BackingField; int num2 = 0; if (!(drawingSurface == num2)) { DrawingSurface drawingSurface2 = this.k__BackingField; float z2 = LLGILECIIGJ.z; float z3 = LLGILECIIGJ.z; } this.CKHBHODLIDP.z = z; this.GPGPKKALPPB.BDJFGEJFPPO(num); } } // Token: 0x06012449 RID: 74825 RVA: 0x00425898 File Offset: 0x00423A98 [Token(Token = "0x6012449")] [Address(RVA = "0x1D676B0", Offset = "0x1D666B0", VA = "0x181D676B0")] public void FinishManualDrawing() { if (!this.k__BackingField && base.OGIBLNIIHDK) { KLLMCPFPIIE gpgpkkalppb = this.GPGPKKALPPB; int num = 0; gpgpkkalppb.BDJFGEJFPPO(num); return; } } // Token: 0x0601244A RID: 74826 [Token(Token = "0x601244A")] [Address(Slot = "15")] protected abstract void AHDFJOCELJC(DrawingSurface NIHMPEPNBBA, Vector3 BNKHIHFFIIN, Quaternion FDBDEKJEPOP, Vector2 OEGCIIBMIGI, float JDLIOHICNLB); // Token: 0x0601244B RID: 74827 [Token(Token = "0x601244B")] [Address(Slot = "16")] protected abstract void PCNENEELBCF(); // Token: 0x0601244C RID: 74828 RVA: 0x004258D0 File Offset: 0x00423AD0 [Token(Token = "0x601244C")] [Address(RVA = "0x1D67500", Offset = "0x1D66500", VA = "0x181D67500")] private void FDGJLBKFIKI() { while (this.GPGPKKALPPB.IAHDANBDAAM() != 0) { RecRoomAudioClip recRoomAudioClip = this.brushDownClip; if (recRoomAudioClip != 0) { Transform transform = base.transform; int num = 0; int num2 = 0; SFXAudioSource sfxaudioSource = AudioManager.Play3DSFX(recRoomAudioClip, transform, num2, num); } Tool tool = this.tool; int num3 = 0; if (tool != num3) { PlayerHand k__BackingField = this.tool.k__BackingField; int num4 = 0; if (k__BackingField != num4) { this.tool.k__BackingField.Vibrate(1, 1f); return; } } } this.MPKNLGHLDEN(); } // Token: 0x0601244D RID: 74829 RVA: 0x00425964 File Offset: 0x00423B64 [Token(Token = "0x601244D")] [Address(RVA = "0x1D67BE0", Offset = "0x1D66BE0", VA = "0x181D67BE0")] private void OIOEGKAEMOI() { bool flag = this.GPGPKKALPPB.IAHDANBDAAM() != null; Transform brushTip = this._brushTip; Transform transform = brushTip.transform; Vector3 position = brushTip.position; Transform brushTip2 = this._brushTip; Transform transform2 = brushTip2.transform; Quaternion rotation = brushTip2.rotation; Vector3 zero = Vector3.zero; int num = 0; Vector2 zero2 = Vector2.zero; DrawingSurface drawingSurface = this.k__BackingField; int num2 = 0; int num3 = 0; if (!(drawingSurface == num3)) { DrawingSurface drawingSurface2 = this.k__BackingField; int num4 = 0; if (num4 != 0) { int num5 = 0; int num6 = 0; float num7 = Mathf.InverseLerp(0.02f, (float)num6, (float)num2); bool flag2 = this.BNPPDDLLGEB(num3, num2, num5, num7, num4); } } this.CKHBHODLIDP.z = drawingSurface; this.GPGPKKALPPB.BDJFGEJFPPO(num); if (!flag || this.GPGPKKALPPB.IAHDANBDAAM() == 0) { } } // Token: 0x0601244E RID: 74830 RVA: 0x00425A48 File Offset: 0x00423C48 [Token(Token = "0x601244E")] [Address(RVA = "0x1D670E0", Offset = "0x1D660E0", VA = "0x181D670E0")] private bool BKCCPADKBLL(Vector3 LLGILECIIGJ, out Vector2 ABCAKNAFPFC, out bool MICDNMMLDBD, out float APBKNLDFAHH) { Vector2 zero = Vector2.zero; ABCAKNAFPFC.x = zero; ABCAKNAFPFC.y = (float)0; DrawingSurface drawingSurface = this.k__BackingField; int num = 0; if (!(drawingSurface == num)) { DrawingSurface drawingSurface2 = this.k__BackingField; float z = LLGILECIIGJ.z; Vector2 vector; ABCAKNAFPFC.x = vector; } throw new NullReferenceException(); } // Token: 0x0601244F RID: 74831 RVA: 0x00425AA0 File Offset: 0x00423CA0 [Token(Token = "0x601244F")] [Address(RVA = "0x1D67F80", Offset = "0x1D66F80", VA = "0x181D67F80")] private float OLGHNPJAPKF(float CLIPDDBCFHJ) { int num = 0; return Mathf.InverseLerp(0.02f, (float)num, CLIPDDBCFHJ); } // Token: 0x06012450 RID: 74832 RVA: 0x00425ABC File Offset: 0x00423CBC [Token(Token = "0x6012450")] [Address(RVA = "0x1D67220", Offset = "0x1D66220", VA = "0x181D67220")] private bool BNPPDDLLGEB(Vector3 OKLAMJMMHAF, Quaternion CKAAAFMONEH, Vector2 NGNACIBCFJP, float JDLIOHICNLB, out Vector3 AGPCONOLEHB) { Vector2 zero = Vector2.zero; DrawingSurface drawingSurface = this.k__BackingField; int num = 0; if (!(drawingSurface == num)) { Vector2 ncjlmgpahcc = this.NCJLMGPAHCC; float y = this.NCJLMGPAHCC.y; APDBOLKPCBO apehgjnlmhf = this.APEHGJNLMHF; this.NCJLMGPAHCC = 0; this.NCJLMGPAHCC.y = (float)0; float time = Time.time; Vector3 vector; float z = vector.z; APDBOLKPCBO apehgjnlmhf2 = this.APEHGJNLMHF; float time2 = Time.time; float time3 = Time.time; bool flag; if (!flag) { } Vector2 vector2 = this.k__BackingField.NormalizedBoardSpace(ncjlmgpahcc); float z2 = OKLAMJMMHAF.z; this.OnDestroy(); return true; } throw new NullReferenceException(); } // Token: 0x06012451 RID: 74833 RVA: 0x00425B78 File Offset: 0x00423D78 [Token(Token = "0x6012451")] [Address(RVA = "0x1D67A20", Offset = "0x1D66A20", VA = "0x181D67A20")] private void NMFEHBBMAEC() { if (this.GPGPKKALPPB.IAHDANBDAAM() != 0) { float num; if (num > this.minVelocityForVibrate) { float num3; float num2 = this.vibrationCurve.Evaluate(num3); } float dmhejfffdlk = this.DMHEJFFFDLK; Tool tool = this.tool; int num4 = 0; if (tool != num4) { PlayerHand k__BackingField = this.tool.k__BackingField; int num5 = 0; if (k__BackingField != num5) { this.tool.k__BackingField.Vibrate(1, 0.5f); } } this.DMHEJFFFDLK = 0f; float deltaTime = Time.deltaTime; this.DMHEJFFFDLK = deltaTime; } } // Token: 0x06012452 RID: 74834 RVA: 0x00425C20 File Offset: 0x00423E20 [Token(Token = "0x6012452")] [Address(RVA = "0x1D67870", Offset = "0x1D66870", VA = "0x181D67870")] private void NKHKDPDHLLD() { RecRoomAudioClip recRoomAudioClip = this.brushDownClip; if (recRoomAudioClip != 0) { Transform transform = base.transform; int num = 0; int num2 = 0; SFXAudioSource sfxaudioSource = AudioManager.Play3DSFX(recRoomAudioClip, transform, num2, num); } Tool tool = this.tool; int num3 = 0; if (tool != num3) { PlayerHand k__BackingField = this.tool.k__BackingField; int num4 = 0; if (k__BackingField != num4) { this.tool.k__BackingField.Vibrate(1, 1f); } } } // Token: 0x06012453 RID: 74835 RVA: 0x00425CA0 File Offset: 0x00423EA0 [Token(Token = "0x6012453")] [Address(RVA = "0x1D67780", Offset = "0x1D66780", VA = "0x181D67780")] private void MPKNLGHLDEN() { Tool tool = this.tool; int num = 0; if (tool != num) { PlayerHand k__BackingField = this.tool.k__BackingField; int num2 = 0; if (k__BackingField != num2) { this.tool.k__BackingField.Vibrate(1, 1f); } } } // Token: 0x06012454 RID: 74836 RVA: 0x00425CF4 File Offset: 0x00423EF4 [Token(Token = "0x6012454")] [Address(RVA = "0x1D66DE0", Offset = "0x1D65DE0", VA = "0x181D66DE0")] private void ADCHIMGGOOK() { for (;;) { RecRoomAudioClip recRoomAudioClip = this.brushLoopClip; if (recRoomAudioClip == 0) { return; } AudioClip audioClip = recRoomAudioClip.audioClip; int num = 0; if (audioClip == num) { return; } float num2; if (this.GPGPKKALPPB.IAHDANBDAAM() != 0 && num2 > this.soundVelocityThreshold) { break; } SFXAudioSource jgpdaejiifi = this.JGPDAEJIIFI; int num3 = 0; if (jgpdaejiifi != num3) { goto Block_5; } } SFXAudioSource jgpdaejiifi2 = this.JGPDAEJIIFI; int num4 = 0; if (jgpdaejiifi2 == num4) { RecRoomAudioClip recRoomAudioClip2 = this.brushLoopClip; Transform transform = base.transform; int num5 = 0; int num6 = 0; SFXAudioSource sfxaudioSource = AudioManager.Play3DSFX(recRoomAudioClip2, transform, num6, num5); this.JGPDAEJIIFI = sfxaudioSource; sfxaudioSource.Loop(); } return; Block_5: this.JGPDAEJIIFI.Stop(); this.JGPDAEJIIFI = (ulong)0L; } // Token: 0x06012455 RID: 74837 RVA: 0x00425DBC File Offset: 0x00423FBC [Token(Token = "0x6012455")] [Address(RVA = "0x1D68350", Offset = "0x1D67350", VA = "0x181D68350")] protected DrawingToolBase() { int num = 0; this.maxDrawingOffset = 0.1f; this.minControlPointDistance = 0.001f; AnimationCurve animationCurve = AnimationCurve.Linear((float)num, 1f, 1f, 1f); this.vibrationCurve = animationCurve; this.minVelocityForVibrate = 0.001f; this.LMNMPICOEMJ = true; Vector2 zero = Vector2.zero; this.NCJLMGPAHCC = zero; this.NCJLMGPAHCC.y = (float)0; APDBOLKPCBO apdbolkpcbo = new APDBOLKPCBO(); this.APEHGJNLMHF = apdbolkpcbo; Vector2 zero2 = Vector2.zero; Vector3 vector; float z = vector.z; this.CKHBHODLIDP.z = z; this.DMHEJFFFDLK = float.MaxValue; base..ctor(); } // Token: 0x0400BC06 RID: 48134 [Token(Token = "0x400BC06")] private const float GCOONGANBFK = 0.02f; // Token: 0x0400BC07 RID: 48135 [FieldOffset(Offset = "0x40")] [Token(Token = "0x400BC07")] [SerializeField] [NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)] private Tool tool; // Token: 0x0400BC08 RID: 48136 [FieldOffset(Offset = "0x48")] [Token(Token = "0x400BC08")] [SerializeField] [Header("Brush Properties")] private DrawingSurface.OMBBAPFJEDF _drawingSurfaceType; // Token: 0x0400BC09 RID: 48137 [FieldOffset(Offset = "0x50")] [Token(Token = "0x400BC09")] [SerializeField] private Transform _brushTip; // Token: 0x0400BC0A RID: 48138 [FieldOffset(Offset = "0x58")] [Token(Token = "0x400BC0A")] [SerializeField] protected float maxDrawingOffset; // Token: 0x0400BC0B RID: 48139 [FieldOffset(Offset = "0x5C")] [Token(Token = "0x400BC0B")] [SerializeField] protected float minControlPointDistance; // Token: 0x0400BC0C RID: 48140 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400BC0C")] [SerializeField] private AnimationCurve vibrationCurve; // Token: 0x0400BC0D RID: 48141 [FieldOffset(Offset = "0x68")] [Token(Token = "0x400BC0D")] [SerializeField] private float minVelocityForVibrate; // Token: 0x0400BC0E RID: 48142 [FieldOffset(Offset = "0x70")] [Token(Token = "0x400BC0E")] [SerializeField] private Material _drawingMaterial; // Token: 0x0400BC0F RID: 48143 [FieldOffset(Offset = "0x78")] [Token(Token = "0x400BC0F")] [SerializeField] private float soundVelocityThreshold; // Token: 0x0400BC10 RID: 48144 [FieldOffset(Offset = "0x80")] [Token(Token = "0x400BC10")] [SerializeField] private RecRoomAudioClip brushDownClip; // Token: 0x0400BC11 RID: 48145 [FieldOffset(Offset = "0x88")] [Token(Token = "0x400BC11")] [SerializeField] private RecRoomAudioClip brushLoopClip; // Token: 0x0400BC12 RID: 48146 [FieldOffset(Offset = "0x90")] [Token(Token = "0x400BC12")] private KLLMCPFPIIE GPGPKKALPPB; // Token: 0x0400BC15 RID: 48149 [FieldOffset(Offset = "0xA4")] [Token(Token = "0x400BC15")] private Vector2 NCJLMGPAHCC; // Token: 0x0400BC16 RID: 48150 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x400BC16")] private APDBOLKPCBO APEHGJNLMHF; // Token: 0x0400BC17 RID: 48151 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x400BC17")] private Vector3 CKHBHODLIDP; // Token: 0x0400BC18 RID: 48152 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x400BC18")] private Material GBILNHKBMEA; // Token: 0x0400BC19 RID: 48153 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x400BC19")] private SFXAudioSource JGPDAEJIIFI; // Token: 0x0400BC1A RID: 48154 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x400BC1A")] private float DMHEJFFFDLK; } }