using System; using System.Runtime.CompilerServices; using Cpp2IlInjected; using UnityEngine; namespace RecRoom.Players.Watch { // Token: 0x02002877 RID: 10359 [Token(Token = "0x2002877")] public class WatchGazeTracker : MonoBehaviour { // Token: 0x06011651 RID: 71249 RVA: 0x003F53AC File Offset: 0x003F35AC [Token(Token = "0x6011651")] [Address(RVA = "0x7DDC20", Offset = "0x7DCA20", VA = "0x1807DDC20")] private void Awake() { } // Token: 0x06011652 RID: 71250 RVA: 0x003F53BC File Offset: 0x003F35BC [Token(Token = "0x6011652")] [Address(RVA = "0x7DDD40", Offset = "0x7DCB40", VA = "0x1807DDD40")] private bool CPHDGEDJMDG(PlayerHand ONFJHABGCIP) { int num = 0; if (!(ONFJHABGCIP == num)) { PlayerHand.ALGBCDINEKF[] array = this.preventsGazeOpenMenuHandStates; PlayerHand.ALGBCDINEKF currentHandState = ONFJHABGCIP.CHNPKMIOAGG; bool flag; return !flag; } throw new NullReferenceException(); } // Token: 0x06011653 RID: 71251 RVA: 0x003F53F0 File Offset: 0x003F35F0 [Token(Token = "0x6011653")] [Address(RVA = "0x7DE290", Offset = "0x7DD090", VA = "0x1807DE290")] public void UpdateWatchDwelling() { int num7; for (;;) { PlayerHand jhmmfmagnhk = this.JHMMFMAGNHK; int num = 0; if (!(jhmmfmagnhk == num)) { float num2 = this.OANKBDBMHNC; float num3 = this.watchOpenDwellDuration; float num4 = Time.time; num4 = num2; float num5 = Mathf.InverseLerp(num4, num3, num4); WatchMenuProjector watchMenuProjector = this.watchMenuProjector; num2 = num5; WatchVisual k__BackingField = watchMenuProjector.k__BackingField; Renderer dwellVisual = k__BackingField.dwellVisual; int num6 = 0; if (dwellVisual != num6) { k__BackingField.dwellVisual.enabled = true; Material[] materialArray = k__BackingField.dwellVisual.GetMaterialArray(); int dwellVisualMaterialIndex = k__BackingField.dwellVisualMaterialIndex; Material material = materialArray[dwellVisualMaterialIndex]; int idlmodlpido = k__BackingField.IDLMODLPIDO; num4 = num2; num4 = Mathf.Lerp((float)0, num3, num4); material.SetFloatImpl(idlmodlpido, num4); } PlayerHand jhmmfmagnhk2 = this.JHMMFMAGNHK; bool flag = this.CPHDGEDJMDG(jhmmfmagnhk2); num7 = 0; if (flag) { WatchGazeTracker.GazeParameters gazeParameters = this.watchCloseParameters; bool flag2; if (flag2) { break; } } this.JHMMFMAGNHK = num7; } this.watchMenuProjector.k__BackingField.ResetDwellVisual(); WatchMenuProjector watchMenuProjector2 = this.watchMenuProjector; WatchGazeTracker.GazeParameters gazeParameters2 = this.watchOpenParameters; Player k__BackingField = watchMenuProjector2.k__BackingField; bool flag3; bool flag4; PlayerHand leftHand; if (flag3 || flag4) { leftHand = k__BackingField.leftHand; } int num8 = 0; if (leftHand == num8) { goto IL_24A; } if (this.CPHDGEDJMDG(leftHand)) { while (!this.MHMKFMNGHJM) { } this.JHMMFMAGNHK = leftHand; float time = Time.time; WatchMenuProjector watchMenuProjector3 = this.watchMenuProjector; PlayerHand jhmmfmagnhk3 = this.JHMMFMAGNHK; this.OANKBDBMHNC = time; PlayerHand attachedHand = watchMenuProjector3.EKKDJEIFGMJ; if (jhmmfmagnhk3 != attachedHand) { goto Block_9; } } } WatchVisual k__BackingField2 = this.watchMenuProjector.k__BackingField; KHINMMJIENE khinmmjiene; if (khinmmjiene == 0 || (k__BackingField2._tapToOpenWatch.BOJCHEEMADH ? 1 : 0) != num7) { WatchMenuProjector watchMenuProjector4 = this.watchMenuProjector; PlayerHand jhmmfmagnhk4 = this.JHMMFMAGNHK; if (watchMenuProjector4.EFKDJJHEMKG.IAHDANBDAAM() == 0) { HCKAGCOEFNM eoohemglpoc = watchMenuProjector4.EOOHEMGLPOC; int num9 = 0; eoohemglpoc.IOFAAIEOLKL(num9); watchMenuProjector4.EKKDJEIFGMJ = jhmmfmagnhk4; KLLMCPFPIIE efkdjjhemkg = watchMenuProjector4.EFKDJJHEMKG; } this.JHMMFMAGNHK = num7; this.MHMKFMNGHJM = num7 != 0; k__BackingField2.ResetDwellVisual(); TapToOpenWatch tapToOpenWatch = k__BackingField2._tapToOpenWatch; int num10 = 0; tapToOpenWatch.EILLILEAEIO = num10 != 0; } return; Block_9: WatchMenuProjector watchMenuProjector5 = this.watchMenuProjector; PlayerHand jhmmfmagnhk5 = this.JHMMFMAGNHK; watchMenuProjector5.EKKDJEIFGMJ = jhmmfmagnhk5; IL_24A: this.MHMKFMNGHJM = true; throw new NullReferenceException(); } // Token: 0x06011654 RID: 71252 RVA: 0x003F5654 File Offset: 0x003F3854 [Token(Token = "0x6011654")] [Address(RVA = "0x7DDDF0", Offset = "0x7DCBF0", VA = "0x1807DDDF0")] public bool IsGazingAtWatch() { bool flag; return flag; } // Token: 0x06011655 RID: 71253 RVA: 0x003F5664 File Offset: 0x003F3864 [Token(Token = "0x6011655")] [Address(RVA = "0x7DDE10", Offset = "0x7DCC10", VA = "0x1807DDE10")] public bool IsGazingAtWatch(out bool LINFELAENFN) { if (this.watchMenuProjector.EFKDJJHEMKG.IAHDANBDAAM() != 0) { WatchGazeTracker.GazeParameters gazeParameters = this.watchCloseParameters; } WatchGazeTracker.GazeParameters gazeParameters2 = this.watchOpenParameters; WatchMenuProjector watchMenuProjector = this.watchMenuProjector; bool flag = watchMenuProjector.AHJHBAGFMGM.IAHDANBDAAM() != null; Player k__BackingField = watchMenuProjector.k__BackingField; if (flag) { } PlayerHand rightHand = k__BackingField.rightHand; return this.LEALCCIDCDA(rightHand, gazeParameters2, out LINFELAENFN); } // Token: 0x06011656 RID: 71254 RVA: 0x003F56CC File Offset: 0x003F38CC [Token(Token = "0x6011656")] [Address(RVA = "0x7DDF40", Offset = "0x7DCD40", VA = "0x1807DDF40")] private bool LEALCCIDCDA(PlayerHand ONFJHABGCIP, WatchGazeTracker.GazeParameters KDMGDPJLIBN, out bool LINFELAENFN) { int num = 0; if (!(ONFJHABGCIP == num)) { Player k__BackingField = this.watchMenuProjector.k__BackingField; Transform watchFaceTransform = ONFJHABGCIP.watchFaceTransform; Transform transform = k__BackingField.head.transform; Transform transform2 = k__BackingField.head.transform; Transform watchFaceTransform2 = ONFJHABGCIP.watchFaceTransform; Transform watchFaceTransform3 = ONFJHABGCIP.watchFaceTransform; Transform transform3 = k__BackingField.head.transform; Vector3 vector; LINFELAENFN.m_value = vector != null; if (vector != 0) { } } throw new NullReferenceException(); } // Token: 0x06011657 RID: 71255 RVA: 0x003F5748 File Offset: 0x003F3948 [Token(Token = "0x6011657")] [Address(RVA = "0x7DDC50", Offset = "0x7DCA50", VA = "0x1807DDC50")] private PlayerHand BDHEDNELDEN(WatchGazeTracker.GazeParameters KOHCNJJMNIN) { Player k__BackingField = this.watchMenuProjector.k__BackingField; bool flag; if (!flag) { bool flag2; if (!flag2) { } return k__BackingField.rightHand; } return k__BackingField.leftHand; } // Token: 0x06011658 RID: 71256 RVA: 0x003F5780 File Offset: 0x003F3980 [Token(Token = "0x6011658")] [Address(RVA = "0x7DE850", Offset = "0x7DD650", VA = "0x1807DE850")] public WatchGazeTracker() { PlayerHand.ALGBCDINEKF[] array = new PlayerHand.ALGBCDINEKF[3]; RuntimeHelpers.InitializeArray(array, fieldof(.B16D2F56AC5C9F3BFA8636DD8D30EC16B72A22FB).FieldHandle); this.preventsGazeOpenMenuHandStates = array; this.MHMKFMNGHJM = true; base..ctor(); } // Token: 0x0400B2F3 RID: 45811 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400B2F3")] [SerializeField] private WatchGazeTracker.GazeParameters watchOpenParameters; // Token: 0x0400B2F4 RID: 45812 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400B2F4")] [SerializeField] private WatchGazeTracker.GazeParameters watchCloseParameters; // Token: 0x0400B2F5 RID: 45813 [FieldOffset(Offset = "0x48")] [Token(Token = "0x400B2F5")] [SerializeField] private float watchOpenDwellDuration = 1f; // Token: 0x0400B2F6 RID: 45814 [FieldOffset(Offset = "0x50")] [Token(Token = "0x400B2F6")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false, false)] private WatchMenuProjector watchMenuProjector; // Token: 0x0400B2F7 RID: 45815 [FieldOffset(Offset = "0x58")] [Token(Token = "0x400B2F7")] [SerializeField] private PlayerHand.ALGBCDINEKF[] preventsGazeOpenMenuHandStates; // Token: 0x0400B2F8 RID: 45816 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400B2F8")] private PlayerHand JHMMFMAGNHK; // Token: 0x0400B2F9 RID: 45817 [FieldOffset(Offset = "0x68")] [Token(Token = "0x400B2F9")] private float OANKBDBMHNC; // Token: 0x0400B2FA RID: 45818 [FieldOffset(Offset = "0x6C")] [Token(Token = "0x400B2FA")] private bool MHMKFMNGHJM; // Token: 0x02002878 RID: 10360 [Token(Token = "0x2002878")] [Serializable] public struct GazeParameters { // Token: 0x170030AE RID: 12462 // (get) Token: 0x06011659 RID: 71257 RVA: 0x003F57C0 File Offset: 0x003F39C0 // (set) Token: 0x0601165A RID: 71258 RVA: 0x003F57D4 File Offset: 0x003F39D4 [Token(Token = "0x170030AE")] public float MaxFovDot { [Token(Token = "0x6011659")] [Address(RVA = "0x7C3050", Offset = "0x7C1E50", VA = "0x1807C3050")] get; [Token(Token = "0x601165A")] [Address(RVA = "0x7C3060", Offset = "0x7C1E60", VA = "0x1807C3060")] private set; } // Token: 0x170030AF RID: 12463 // (get) Token: 0x0601165B RID: 71259 RVA: 0x003F57E8 File Offset: 0x003F39E8 // (set) Token: 0x0601165C RID: 71260 RVA: 0x003F57FC File Offset: 0x003F39FC [Token(Token = "0x170030AF")] public float MaxPitchDot { [Token(Token = "0x601165B")] [Address(RVA = "0x7630B0", Offset = "0x761EB0", VA = "0x1807630B0")] get; [Token(Token = "0x601165C")] [Address(RVA = "0x7630C0", Offset = "0x761EC0", VA = "0x1807630C0")] private set; } // Token: 0x170030B0 RID: 12464 // (get) Token: 0x0601165D RID: 71261 RVA: 0x003F5810 File Offset: 0x003F3A10 // (set) Token: 0x0601165E RID: 71262 RVA: 0x003F5824 File Offset: 0x003F3A24 [Token(Token = "0x170030B0")] public float MaxRollDot { [Token(Token = "0x601165D")] [Address(RVA = "0x763220", Offset = "0x762020", VA = "0x180763220")] get; [Token(Token = "0x601165E")] [Address(RVA = "0x762DC0", Offset = "0x761BC0", VA = "0x180762DC0")] private set; } // Token: 0x0601165F RID: 71263 RVA: 0x003F5838 File Offset: 0x003F3A38 [Token(Token = "0x601165F")] [Address(RVA = "0x7C2FB0", Offset = "0x7C1DB0", VA = "0x1807C2FB0")] public void LECMHMNLJMG() { float num; this.k__BackingField = num; float num2 = this.maxPitchAngle * 0.017453292f; this.k__BackingField = num2; float num3 = this.maxRollAngle * 0.017453292f; this.k__BackingField = num3; } // Token: 0x0400B2FB RID: 45819 [FieldOffset(Offset = "0x0")] [Token(Token = "0x400B2FB")] [SerializeField] private float maxFovAngle; // Token: 0x0400B2FC RID: 45820 [FieldOffset(Offset = "0x4")] [Token(Token = "0x400B2FC")] [SerializeField] private float maxPitchAngle; // Token: 0x0400B2FD RID: 45821 [FieldOffset(Offset = "0x8")] [Token(Token = "0x400B2FD")] [SerializeField] private float maxRollAngle; } } }