using System; using Photon; using RecRoom; using UnityEngine; // Token: 0x02000F0A RID: 3850 public abstract class DrawingBase : global::Photon.MonoBehaviour { // Token: 0x17000EB8 RID: 3768 // (get) Token: 0x0601FF15 RID: 130837 RVA: 0x008AF248 File Offset: 0x008AD448 public Tool BKDFLNGCINH { get { return this.tool; } } // Token: 0x17000EB9 RID: 3769 // (get) Token: 0x0601FF16 RID: 130838 RVA: 0x008AF250 File Offset: 0x008AD450 // (set) Token: 0x0601FF17 RID: 130839 RVA: 0x008AF258 File Offset: 0x008AD458 public DrawingSurface MPDOKKGLMOI { get; set; } // Token: 0x17000EBA RID: 3770 // (get) Token: 0x0601FF18 RID: 130840 RVA: 0x008AF264 File Offset: 0x008AD464 public DrawingSurface.KLDPAHHNJAG KLDPAHHNJAG { get { return this._drawingSurfaceType; } } // Token: 0x17000EBB RID: 3771 // (get) Token: 0x0601FF19 RID: 130841 RVA: 0x008AF26C File Offset: 0x008AD46C public Transform ELKDPLBCCLC { get { return this._brushTip; } } // Token: 0x17000EBC RID: 3772 // (get) Token: 0x0601FF1A RID: 130842 RVA: 0x008AF274 File Offset: 0x008AD474 public Material EELJGGKEAGC { get { if (this.MHMKHOKMONG == null) { this.MHMKHOKMONG = global::UnityEngine.Object.Instantiate(this._drawingMaterial); } return this.MHMKHOKMONG; } } // Token: 0x17000EBD RID: 3773 // (get) Token: 0x0601FF1B RID: 130843 RVA: 0x008AF2A0 File Offset: 0x008AD4A0 // (set) Token: 0x0601FF1C RID: 130844 RVA: 0x008AF2A8 File Offset: 0x008AD4A8 public Vector2 JIIJIFKCMFK { get; private set; } // Token: 0x17000EBE RID: 3774 // (get) Token: 0x0601FF1D RID: 130845 RVA: 0x008AF2B4 File Offset: 0x008AD4B4 public Vector2 IHJBDAJPEFK { get { return this.LCOHMGILMOH; } } // Token: 0x17000EBF RID: 3775 // (get) Token: 0x0601FF1E RID: 130846 RVA: 0x008AF2BC File Offset: 0x008AD4BC public Vector2 OOLFJEGLNEI { get { return this.HMJDFLNOOED; } } // Token: 0x17000EC0 RID: 3776 // (get) Token: 0x0601FF1F RID: 130847 RVA: 0x008AF2C4 File Offset: 0x008AD4C4 // (set) Token: 0x0601FF20 RID: 130848 RVA: 0x008AF2CC File Offset: 0x008AD4CC public bool PMADHGOGIOG { get { return this.MILJDHEJPPC; } set { if (this.MILJDHEJPPC != value) { this.MILJDHEJPPC = value; if (this.MILJDHEJPPC) { this.PenDown(); } else { this.PenUp(); } } } } // Token: 0x0601FF21 RID: 130849 RVA: 0x008AF300 File Offset: 0x008AD500 protected override void Awake() { base.Awake(); this.BKDFLNGCINH.PLPIAOHJBOB += this.NIPCADLOCJP; } // Token: 0x0601FF22 RID: 130850 RVA: 0x008AF320 File Offset: 0x008AD520 protected virtual void Update() { bool flag = false; if (this.MPDOKKGLMOI != null && this.MPDOKKGLMOI.IsOverPlane(this.ELKDPLBCCLC.transform.position, out this.LCOHMGILMOH, out this.OCNMFLBPPBL)) { this.HMJDFLNOOED = this.MPDOKKGLMOI.NormalizedBoardSpace(this.LCOHMGILMOH); if (this.OCNMFLBPPBL < this.maxDrawingOffset) { Vector2 vector = this.LCOHMGILMOH - this.CMJFPOIDLLF; this.NDLJMENDEJH.OPJKMCEACMD(Time.time, vector); Vector3 vector2 = vector; if (this.NDLJMENDEJH.MDAOINJBFAP(Time.time - 0.1f, Time.time, out vector2)) { this.JIIJIFKCMFK = vector2; } this.CMJFPOIDLLF = this.LCOHMGILMOH; flag = true; this.LJKJPDLIIGO(this.MPDOKKGLMOI); } } this.PMADHGOGIOG = flag; this.MOMCDNAKNCP(); this.MDDNCJKCGHG(); } // Token: 0x0601FF23 RID: 130851 protected abstract void LJKJPDLIIGO(DrawingSurface JGNIGMKDNDM); // Token: 0x0601FF24 RID: 130852 protected abstract void PLNJPCPCACB(); // Token: 0x0601FF25 RID: 130853 RVA: 0x008AF420 File Offset: 0x008AD620 private void MOMCDNAKNCP() { if (this.NHDDPGADJPJ && this.PMADHGOGIOG) { this.FPLEFJHCCGA = ((this.JIIJIFKCMFK.magnitude <= this.minVelocityForVibrate) ? float.MaxValue : this.vibrationCurve.Evaluate(this.JIIJIFKCMFK.magnitude)); if (this.ELCIFIDCOMI >= this.FPLEFJHCCGA) { if (this.BKDFLNGCINH != null && this.BKDFLNGCINH.EHFOKGIGIMF != null && this.BKDFLNGCINH.EHFOKGIGIMF.JKNCHBFALCJ != null) { this.BKDFLNGCINH.EHFOKGIGIMF.JKNCHBFALCJ.Vibrate(1, 500); } this.ELCIFIDCOMI = 0f; } this.ELCIFIDCOMI += Time.deltaTime; } } // Token: 0x0601FF26 RID: 130854 RVA: 0x008AF514 File Offset: 0x008AD714 public void PenDown() { if (this.brushDownClip != null) { AudioManager.Play3DSFX(this.brushDownClip, base.transform, null); } if (this.NHDDPGADJPJ && this.BKDFLNGCINH != null && this.BKDFLNGCINH.EHFOKGIGIMF != null && this.BKDFLNGCINH.EHFOKGIGIMF.JKNCHBFALCJ != null) { this.BKDFLNGCINH.EHFOKGIGIMF.JKNCHBFALCJ.Vibrate(1, 1000); } } // Token: 0x0601FF27 RID: 130855 RVA: 0x008AF5A8 File Offset: 0x008AD7A8 public void PenUp() { if (this.NHDDPGADJPJ && this.BKDFLNGCINH != null && this.BKDFLNGCINH.EHFOKGIGIMF != null && this.BKDFLNGCINH.EHFOKGIGIMF.JKNCHBFALCJ != null) { this.BKDFLNGCINH.EHFOKGIGIMF.JKNCHBFALCJ.Vibrate(1, 1000); } } // Token: 0x0601FF28 RID: 130856 RVA: 0x008AF620 File Offset: 0x008AD820 protected virtual void MDDNCJKCGHG() { if (this.brushLoopClip != null && this.brushLoopClip.audioClip != null) { if (this.PMADHGOGIOG && this.JIIJIFKCMFK.magnitude > this.soundVelocityThreshold) { if (this.DDILBLGFFON == null) { this.DDILBLGFFON = AudioManager.Play3DSFX(this.brushLoopClip, base.transform, null); this.DDILBLGFFON.Loop(); } } else if (this.DDILBLGFFON != null) { this.DDILBLGFFON.Stop(); this.DDILBLGFFON = null; } } } // Token: 0x0601FF29 RID: 130857 RVA: 0x008AF6D0 File Offset: 0x008AD8D0 private void NIPCADLOCJP(Tool ENBMEDIFBLM) { this.PenUp(); } // Token: 0x040052F5 RID: 21237 [SerializeField] [ENMFCLPAKBJ(FOGKDGELKHN.Self, false)] private Tool tool; // Token: 0x040052F7 RID: 21239 [SerializeField] [Header("Brush Properties")] private DrawingSurface.KLDPAHHNJAG _drawingSurfaceType; // Token: 0x040052F8 RID: 21240 [SerializeField] private Transform _brushTip; // Token: 0x040052F9 RID: 21241 [SerializeField] protected float maxDrawingOffset = 0.1f; // Token: 0x040052FA RID: 21242 [SerializeField] protected float minControlPointDistance = 0.001f; // Token: 0x040052FB RID: 21243 [SerializeField] private AnimationCurve vibrationCurve = AnimationCurve.Linear(0f, 1f, 1f, 1f); // Token: 0x040052FC RID: 21244 [SerializeField] private float minVelocityForVibrate = 0.001f; // Token: 0x040052FD RID: 21245 [SerializeField] private Material _drawingMaterial; // Token: 0x040052FE RID: 21246 private Material MHMKHOKMONG; // Token: 0x040052FF RID: 21247 private Vector2 CMJFPOIDLLF = Vector2.zero; // Token: 0x04005300 RID: 21248 private Vector2 LCOHMGILMOH = Vector2.zero; // Token: 0x04005301 RID: 21249 private Vector2 HMJDFLNOOED = Vector2.zero; // Token: 0x04005302 RID: 21250 protected float OCNMFLBPPBL = float.MaxValue; // Token: 0x04005304 RID: 21252 private MDCHLPPNFHA NDLJMENDEJH = new MDCHLPPNFHA(); // Token: 0x04005305 RID: 21253 private bool MILJDHEJPPC; // Token: 0x04005306 RID: 21254 private float ELCIFIDCOMI = float.MaxValue; // Token: 0x04005307 RID: 21255 private float FPLEFJHCCGA; // Token: 0x04005308 RID: 21256 [SerializeField] private float soundVelocityThreshold; // Token: 0x04005309 RID: 21257 [SerializeField] private RecRoomAudioClip brushDownClip; // Token: 0x0400530A RID: 21258 [SerializeField] private RecRoomAudioClip brushLoopClip; // Token: 0x0400530B RID: 21259 private SFXAudioSource DDILBLGFFON; }