using System; using Cpp2IlInjected; using Photon.Pun; using UnityEngine; namespace RecRoom.Tools { // Token: 0x02002A00 RID: 10752 [Token(Token = "0x2002A00")] public abstract class DrawingToolBase : MonoBehaviourPun { // Token: 0x1700325E RID: 12894 // (get) Token: 0x06011FFE RID: 73726 RVA: 0x0041BB10 File Offset: 0x00419D10 // (set) Token: 0x06011FFF RID: 73727 RVA: 0x0041BB30 File Offset: 0x00419D30 [Token(Token = "0x1700325E")] private bool NHCKPNPMDMO { [Token(Token = "0x6011FFE")] [Address(RVA = "0xACE090", Offset = "0xACCE90", VA = "0x180ACE090")] get { return this.GPGPKKALPPB.IAHDANBDAAM() != null; } [Token(Token = "0x6011FFF")] [Address(RVA = "0xACE320", Offset = "0xACD120", VA = "0x180ACE320")] set { KLLMCPFPIIE gpgpkkalppb = this.GPGPKKALPPB; } } // Token: 0x1700325F RID: 12895 // (get) Token: 0x06012000 RID: 73728 RVA: 0x0041BB4C File Offset: 0x00419D4C [Token(Token = "0x1700325F")] public Tool PBBJCLJPFMI { [Token(Token = "0x6012000")] [Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890")] get { return this.tool; } } // Token: 0x17003260 RID: 12896 // (get) Token: 0x06012001 RID: 73729 RVA: 0x0041BB60 File Offset: 0x00419D60 // (set) Token: 0x06012002 RID: 73730 RVA: 0x0041BB74 File Offset: 0x00419D74 [Token(Token = "0x17003260")] public DrawingSurface EPLIJLKMAAE { [Token(Token = "0x6012001")] [Address(RVA = "0x46AA30", Offset = "0x469830", VA = "0x18046AA30")] get; [Token(Token = "0x6012002")] [Address(RVA = "0x7A45D0", Offset = "0x7A33D0", VA = "0x1807A45D0")] set; } // Token: 0x17003261 RID: 12897 // (get) Token: 0x06012003 RID: 73731 RVA: 0x0041BB88 File Offset: 0x00419D88 // (set) Token: 0x06012004 RID: 73732 RVA: 0x0041BB9C File Offset: 0x00419D9C [Token(Token = "0x17003261")] public bool LMNMPICOEMJ { [Token(Token = "0x6012003")] [Address(RVA = "0xA45A50", Offset = "0xA44850", VA = "0x180A45A50")] get; [Token(Token = "0x6012004")] [Address(RVA = "0xACEE80", Offset = "0xACDC80", VA = "0x180ACEE80")] set; } // Token: 0x17003262 RID: 12898 // (get) Token: 0x06012005 RID: 73733 RVA: 0x0041BBB0 File Offset: 0x00419DB0 [Token(Token = "0x17003262")] public Transform AOLKEGOFKLG { [Token(Token = "0x6012005")] [Address(RVA = "0x415290", Offset = "0x414090", VA = "0x180415290")] get { return this._brushTip; } } // Token: 0x17003263 RID: 12899 // (get) Token: 0x06012006 RID: 73734 RVA: 0x0041BBC4 File Offset: 0x00419DC4 [Token(Token = "0x17003263")] public Material JGLFCAMFGDN { [Token(Token = "0x6012006")] [Address(RVA = "0xACEDD0", Offset = "0xACDBD0", VA = "0x180ACEDD0")] 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: 0x17003264 RID: 12900 // (get) Token: 0x06012007 RID: 73735 RVA: 0x0041BC00 File Offset: 0x00419E00 [Token(Token = "0x17003264")] public DrawingSurface.OMBBAPFJEDF KJPCOCIKGGJ { [Token(Token = "0x6012007")] [Address(RVA = "0x430CC0", Offset = "0x42FAC0", VA = "0x180430CC0")] get { return this._drawingSurfaceType; } } // Token: 0x06012008 RID: 73736 RVA: 0x0041BC14 File Offset: 0x00419E14 [Token(Token = "0x6012008")] [Address(RVA = "0xACD920", Offset = "0xACC720", VA = "0x180ACD920", 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: 0x06012009 RID: 73737 RVA: 0x0041BC88 File Offset: 0x00419E88 [Token(Token = "0x6012009")] [Address(RVA = "0xACE950", Offset = "0xACD750", VA = "0x180ACE950", 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: 0x0601200A RID: 73738 RVA: 0x0041BCCC File Offset: 0x00419ECC [Token(Token = "0x601200A")] [Address(RVA = "0xACEC60", Offset = "0xACDA60", VA = "0x180ACEC60")] private void Update() { if (this.k__BackingField) { this.OIOEGKAEMOI(); } this.ADCHIMGGOOK(); if (base.OGIBLNIIHDK) { this.NMFEHBBMAEC(); return; } } // Token: 0x0601200B RID: 73739 RVA: 0x0041BD00 File Offset: 0x00419F00 [Token(Token = "0x601200B")] [Address(RVA = "0xACE530", Offset = "0xACD330", VA = "0x180ACE530")] private void OIOCPLEKMEK(Tool EGFEJGHDNAI) { this.MPKNLGHLDEN(); } // Token: 0x0601200C RID: 73740 RVA: 0x0041BD14 File Offset: 0x00419F14 [Token(Token = "0x601200C")] [Address(RVA = "0xACEA00", Offset = "0xACD800", VA = "0x180ACEA00")] 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: 0x0601200D RID: 73741 RVA: 0x0041BD9C File Offset: 0x00419F9C [Token(Token = "0x601200D")] [Address(RVA = "0xACE010", Offset = "0xACCE10", VA = "0x180ACE010")] public void FinishManualDrawing() { if (!this.k__BackingField && base.OGIBLNIIHDK) { KLLMCPFPIIE gpgpkkalppb = this.GPGPKKALPPB; int num = 0; gpgpkkalppb.BDJFGEJFPPO(num); return; } } // Token: 0x0601200E RID: 73742 [Token(Token = "0x601200E")] [Address(Slot = "15")] protected abstract void AHDFJOCELJC(DrawingSurface NIHMPEPNBBA, Vector3 BNKHIHFFIIN, Quaternion FDBDEKJEPOP, Vector2 OEGCIIBMIGI, float JDLIOHICNLB); // Token: 0x0601200F RID: 73743 [Token(Token = "0x601200F")] [Address(Slot = "16")] protected abstract void PCNENEELBCF(); // Token: 0x06012010 RID: 73744 RVA: 0x0041BDD4 File Offset: 0x00419FD4 [Token(Token = "0x6012010")] [Address(RVA = "0xACDE60", Offset = "0xACCC60", VA = "0x180ACDE60")] 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: 0x06012011 RID: 73745 RVA: 0x0041BE68 File Offset: 0x0041A068 [Token(Token = "0x6012011")] [Address(RVA = "0xACE540", Offset = "0xACD340", VA = "0x180ACE540")] 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: 0x06012012 RID: 73746 RVA: 0x0041BF4C File Offset: 0x0041A14C [Token(Token = "0x6012012")] [Address(RVA = "0xACDA40", Offset = "0xACC840", VA = "0x180ACDA40")] 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: 0x06012013 RID: 73747 RVA: 0x0041BFA4 File Offset: 0x0041A1A4 [Token(Token = "0x6012013")] [Address(RVA = "0xACE8E0", Offset = "0xACD6E0", VA = "0x180ACE8E0")] private float OLGHNPJAPKF(float CLIPDDBCFHJ) { int num = 0; return Mathf.InverseLerp(0.02f, (float)num, CLIPDDBCFHJ); } // Token: 0x06012014 RID: 73748 RVA: 0x0041BFC0 File Offset: 0x0041A1C0 [Token(Token = "0x6012014")] [Address(RVA = "0xACDB80", Offset = "0xACC980", VA = "0x180ACDB80")] 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: 0x06012015 RID: 73749 RVA: 0x0041C07C File Offset: 0x0041A27C [Token(Token = "0x6012015")] [Address(RVA = "0xACE380", Offset = "0xACD180", VA = "0x180ACE380")] 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: 0x06012016 RID: 73750 RVA: 0x0041C124 File Offset: 0x0041A324 [Token(Token = "0x6012016")] [Address(RVA = "0xACE1D0", Offset = "0xACCFD0", VA = "0x180ACE1D0")] 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: 0x06012017 RID: 73751 RVA: 0x0041C1A4 File Offset: 0x0041A3A4 [Token(Token = "0x6012017")] [Address(RVA = "0xACE0E0", Offset = "0xACCEE0", VA = "0x180ACE0E0")] 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: 0x06012018 RID: 73752 RVA: 0x0041C1F8 File Offset: 0x0041A3F8 [Token(Token = "0x6012018")] [Address(RVA = "0xACD740", Offset = "0xACC540", VA = "0x180ACD740")] 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: 0x06012019 RID: 73753 RVA: 0x0041C2C0 File Offset: 0x0041A4C0 [Token(Token = "0x6012019")] [Address(RVA = "0xACECB0", Offset = "0xACDAB0", VA = "0x180ACECB0")] 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: 0x0400B9F6 RID: 47606 [Token(Token = "0x400B9F6")] private const float GCOONGANBFK = 0.02f; // Token: 0x0400B9F7 RID: 47607 [FieldOffset(Offset = "0x40")] [Token(Token = "0x400B9F7")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false, false)] private Tool tool; // Token: 0x0400B9F8 RID: 47608 [FieldOffset(Offset = "0x48")] [Token(Token = "0x400B9F8")] [SerializeField] [Header("Brush Properties")] private DrawingSurface.OMBBAPFJEDF _drawingSurfaceType; // Token: 0x0400B9F9 RID: 47609 [FieldOffset(Offset = "0x50")] [Token(Token = "0x400B9F9")] [SerializeField] private Transform _brushTip; // Token: 0x0400B9FA RID: 47610 [FieldOffset(Offset = "0x58")] [Token(Token = "0x400B9FA")] [SerializeField] protected float maxDrawingOffset; // Token: 0x0400B9FB RID: 47611 [FieldOffset(Offset = "0x5C")] [Token(Token = "0x400B9FB")] [SerializeField] protected float minControlPointDistance; // Token: 0x0400B9FC RID: 47612 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400B9FC")] [SerializeField] private AnimationCurve vibrationCurve; // Token: 0x0400B9FD RID: 47613 [FieldOffset(Offset = "0x68")] [Token(Token = "0x400B9FD")] [SerializeField] private float minVelocityForVibrate; // Token: 0x0400B9FE RID: 47614 [FieldOffset(Offset = "0x70")] [Token(Token = "0x400B9FE")] [SerializeField] private Material _drawingMaterial; // Token: 0x0400B9FF RID: 47615 [FieldOffset(Offset = "0x78")] [Token(Token = "0x400B9FF")] [SerializeField] private float soundVelocityThreshold; // Token: 0x0400BA00 RID: 47616 [FieldOffset(Offset = "0x80")] [Token(Token = "0x400BA00")] [SerializeField] private RecRoomAudioClip brushDownClip; // Token: 0x0400BA01 RID: 47617 [FieldOffset(Offset = "0x88")] [Token(Token = "0x400BA01")] [SerializeField] private RecRoomAudioClip brushLoopClip; // Token: 0x0400BA02 RID: 47618 [FieldOffset(Offset = "0x90")] [Token(Token = "0x400BA02")] private KLLMCPFPIIE GPGPKKALPPB; // Token: 0x0400BA05 RID: 47621 [FieldOffset(Offset = "0xA4")] [Token(Token = "0x400BA05")] private Vector2 NCJLMGPAHCC; // Token: 0x0400BA06 RID: 47622 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x400BA06")] private APDBOLKPCBO APEHGJNLMHF; // Token: 0x0400BA07 RID: 47623 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x400BA07")] private Vector3 CKHBHODLIDP; // Token: 0x0400BA08 RID: 47624 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x400BA08")] private Material GBILNHKBMEA; // Token: 0x0400BA09 RID: 47625 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x400BA09")] private SFXAudioSource JGPDAEJIIFI; // Token: 0x0400BA0A RID: 47626 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x400BA0A")] private float DMHEJFFFDLK; } }