349 lines
11 KiB
C#
349 lines
11 KiB
C#
using System;
|
|
using System.Runtime.CompilerServices;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Players.Watch
|
|
{
|
|
// Token: 0x02002960 RID: 10592
|
|
[Token(Token = "0x2002960")]
|
|
public class WatchGazeTracker : MonoBehaviour
|
|
{
|
|
// Token: 0x06011A86 RID: 72326 RVA: 0x003FEC90 File Offset: 0x003FCE90
|
|
[Token(Token = "0x6011A86")]
|
|
[Address(RVA = "0x1354740", Offset = "0x1353740", VA = "0x181354740")]
|
|
private void Awake()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06011A87 RID: 72327 RVA: 0x003FECA0 File Offset: 0x003FCEA0
|
|
[Token(Token = "0x6011A87")]
|
|
[Address(RVA = "0x1354860", Offset = "0x1353860", VA = "0x181354860")]
|
|
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: 0x06011A88 RID: 72328 RVA: 0x003FECD4 File Offset: 0x003FCED4
|
|
[Token(Token = "0x6011A88")]
|
|
[Address(RVA = "0x1354D60", Offset = "0x1353D60", VA = "0x181354D60")]
|
|
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 <NEHKABOEJKI>k__BackingField = watchMenuProjector.<NEHKABOEJKI>k__BackingField;
|
|
Renderer dwellVisual = <NEHKABOEJKI>k__BackingField.dwellVisual;
|
|
int num6 = 0;
|
|
if (dwellVisual != num6)
|
|
{
|
|
<NEHKABOEJKI>k__BackingField.dwellVisual.enabled = true;
|
|
Material[] materialArray = <NEHKABOEJKI>k__BackingField.dwellVisual.GetMaterialArray();
|
|
int dwellVisualMaterialIndex = <NEHKABOEJKI>k__BackingField.dwellVisualMaterialIndex;
|
|
Material material = materialArray[dwellVisualMaterialIndex];
|
|
int idlmodlpido = <NEHKABOEJKI>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.<NEHKABOEJKI>k__BackingField.ResetDwellVisual();
|
|
WatchMenuProjector watchMenuProjector2 = this.watchMenuProjector;
|
|
WatchGazeTracker.GazeParameters gazeParameters2 = this.watchOpenParameters;
|
|
Player <LCBGICCHKJE>k__BackingField = watchMenuProjector2.<LCBGICCHKJE>k__BackingField;
|
|
bool flag3;
|
|
bool flag4;
|
|
PlayerHand leftHand;
|
|
if (flag3 || flag4)
|
|
{
|
|
leftHand = <LCBGICCHKJE>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 <NEHKABOEJKI>k__BackingField2 = this.watchMenuProjector.<NEHKABOEJKI>k__BackingField;
|
|
KHINMMJIENE khinmmjiene;
|
|
if (khinmmjiene == 0 || (<NEHKABOEJKI>k__BackingField2._tapToOpenWatch.BOJCHEEMADH ? 1 : 0) != num7)
|
|
{
|
|
WatchMenuProjector watchMenuProjector4 = this.watchMenuProjector;
|
|
PlayerHand jhmmfmagnhk4 = this.JHMMFMAGNHK;
|
|
if (watchMenuProjector4.EFKDJJHEMKG.IAHDANBDAAM() == 0)
|
|
{
|
|
HCKAGCOEFNM<bool, Vector3, Quaternion, float> eoohemglpoc = watchMenuProjector4.EOOHEMGLPOC;
|
|
int num9 = 0;
|
|
eoohemglpoc.IOFAAIEOLKL(num9);
|
|
watchMenuProjector4.EKKDJEIFGMJ = jhmmfmagnhk4;
|
|
KLLMCPFPIIE<bool> efkdjjhemkg = watchMenuProjector4.EFKDJJHEMKG;
|
|
}
|
|
this.JHMMFMAGNHK = num7;
|
|
this.MHMKFMNGHJM = num7 != 0;
|
|
<NEHKABOEJKI>k__BackingField2.ResetDwellVisual();
|
|
TapToOpenWatch tapToOpenWatch = <NEHKABOEJKI>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: 0x06011A89 RID: 72329 RVA: 0x003FEF38 File Offset: 0x003FD138
|
|
[Token(Token = "0x6011A89")]
|
|
[Address(RVA = "0x1354910", Offset = "0x1353910", VA = "0x181354910")]
|
|
public bool IsGazingAtWatch()
|
|
{
|
|
bool flag;
|
|
return flag;
|
|
}
|
|
|
|
// Token: 0x06011A8A RID: 72330 RVA: 0x003FEF48 File Offset: 0x003FD148
|
|
[Token(Token = "0x6011A8A")]
|
|
[Address(RVA = "0x1354930", Offset = "0x1353930", VA = "0x181354930")]
|
|
public bool IsGazingAtWatch(out bool LINFELAENFN)
|
|
{
|
|
if (this.watchMenuProjector.EFKDJJHEMKG.IAHDANBDAAM() != 0)
|
|
{
|
|
WatchGazeTracker.GazeParameters gazeParameters = this.watchCloseParameters;
|
|
}
|
|
WatchGazeTracker.GazeParameters gazeParameters2 = this.watchOpenParameters;
|
|
PlayerHand attachedHand = this.watchMenuProjector.EKKDJEIFGMJ;
|
|
return this.LEALCCIDCDA(attachedHand, gazeParameters2, out LINFELAENFN);
|
|
}
|
|
|
|
// Token: 0x06011A8B RID: 72331 RVA: 0x003FEF94 File Offset: 0x003FD194
|
|
[Token(Token = "0x6011A8B")]
|
|
[Address(RVA = "0x1354A10", Offset = "0x1353A10", VA = "0x181354A10")]
|
|
private bool LEALCCIDCDA(PlayerHand ONFJHABGCIP, WatchGazeTracker.GazeParameters KDMGDPJLIBN, out bool LINFELAENFN)
|
|
{
|
|
int num = 0;
|
|
if (!(ONFJHABGCIP == num))
|
|
{
|
|
Player <LCBGICCHKJE>k__BackingField = this.watchMenuProjector.<LCBGICCHKJE>k__BackingField;
|
|
Transform watchFaceTransform = ONFJHABGCIP.watchFaceTransform;
|
|
Transform transform = <LCBGICCHKJE>k__BackingField.head.transform;
|
|
Transform transform2 = <LCBGICCHKJE>k__BackingField.head.transform;
|
|
Transform watchFaceTransform2 = ONFJHABGCIP.watchFaceTransform;
|
|
Transform watchFaceTransform3 = ONFJHABGCIP.watchFaceTransform;
|
|
Transform transform3 = <LCBGICCHKJE>k__BackingField.head.transform;
|
|
Vector3 vector;
|
|
LINFELAENFN.m_value = vector != null;
|
|
if (vector != 0)
|
|
{
|
|
}
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06011A8C RID: 72332 RVA: 0x003FF010 File Offset: 0x003FD210
|
|
[Token(Token = "0x6011A8C")]
|
|
[Address(RVA = "0x1354770", Offset = "0x1353770", VA = "0x181354770")]
|
|
private PlayerHand BDHEDNELDEN(WatchGazeTracker.GazeParameters KOHCNJJMNIN)
|
|
{
|
|
Player <LCBGICCHKJE>k__BackingField = this.watchMenuProjector.<LCBGICCHKJE>k__BackingField;
|
|
bool flag;
|
|
if (!flag)
|
|
{
|
|
bool flag2;
|
|
if (!flag2)
|
|
{
|
|
}
|
|
return <LCBGICCHKJE>k__BackingField.rightHand;
|
|
}
|
|
return <LCBGICCHKJE>k__BackingField.leftHand;
|
|
}
|
|
|
|
// Token: 0x06011A8D RID: 72333 RVA: 0x003FF048 File Offset: 0x003FD248
|
|
[Token(Token = "0x6011A8D")]
|
|
[Address(RVA = "0x1355320", Offset = "0x1354320", VA = "0x181355320")]
|
|
public WatchGazeTracker()
|
|
{
|
|
PlayerHand.ALGBCDINEKF[] array = new PlayerHand.ALGBCDINEKF[3];
|
|
RuntimeHelpers.InitializeArray(array, fieldof(<PrivateImplementationDetails>.B16D2F56AC5C9F3BFA8636DD8D30EC16B72A22FB).FieldHandle);
|
|
this.preventsGazeOpenMenuHandStates = array;
|
|
this.MHMKFMNGHJM = true;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400B501 RID: 46337
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400B501")]
|
|
[SerializeField]
|
|
private WatchGazeTracker.GazeParameters watchOpenParameters;
|
|
|
|
// Token: 0x0400B502 RID: 46338
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400B502")]
|
|
[SerializeField]
|
|
private WatchGazeTracker.GazeParameters watchCloseParameters;
|
|
|
|
// Token: 0x0400B503 RID: 46339
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400B503")]
|
|
[SerializeField]
|
|
private float watchOpenDwellDuration = 1f;
|
|
|
|
// Token: 0x0400B504 RID: 46340
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x400B504")]
|
|
[SerializeField]
|
|
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
|
|
private WatchMenuProjector watchMenuProjector;
|
|
|
|
// Token: 0x0400B505 RID: 46341
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x400B505")]
|
|
[SerializeField]
|
|
private PlayerHand.ALGBCDINEKF[] preventsGazeOpenMenuHandStates;
|
|
|
|
// Token: 0x0400B506 RID: 46342
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400B506")]
|
|
private PlayerHand JHMMFMAGNHK;
|
|
|
|
// Token: 0x0400B507 RID: 46343
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400B507")]
|
|
private float OANKBDBMHNC;
|
|
|
|
// Token: 0x0400B508 RID: 46344
|
|
[FieldOffset(Offset = "0x6C")]
|
|
[Token(Token = "0x400B508")]
|
|
private bool MHMKFMNGHJM;
|
|
|
|
// Token: 0x02002961 RID: 10593
|
|
[Token(Token = "0x2002961")]
|
|
[Serializable]
|
|
public struct GazeParameters
|
|
{
|
|
// Token: 0x1700315D RID: 12637
|
|
// (get) Token: 0x06011A8E RID: 72334 RVA: 0x003FF088 File Offset: 0x003FD288
|
|
// (set) Token: 0x06011A8F RID: 72335 RVA: 0x003FF09C File Offset: 0x003FD29C
|
|
[Token(Token = "0x1700315D")]
|
|
public float MaxFovDot
|
|
{
|
|
[Token(Token = "0x6011A8E")]
|
|
[Address(RVA = "0x428290", Offset = "0x427290", VA = "0x180428290")]
|
|
get;
|
|
[Token(Token = "0x6011A8F")]
|
|
[Address(RVA = "0x4284F0", Offset = "0x4274F0", VA = "0x1804284F0")]
|
|
private set;
|
|
}
|
|
|
|
// Token: 0x1700315E RID: 12638
|
|
// (get) Token: 0x06011A90 RID: 72336 RVA: 0x003FF0B0 File Offset: 0x003FD2B0
|
|
// (set) Token: 0x06011A91 RID: 72337 RVA: 0x003FF0C4 File Offset: 0x003FD2C4
|
|
[Token(Token = "0x1700315E")]
|
|
public float MaxPitchDot
|
|
{
|
|
[Token(Token = "0x6011A90")]
|
|
[Address(RVA = "0x5ABDD0", Offset = "0x5AADD0", VA = "0x1805ABDD0")]
|
|
get;
|
|
[Token(Token = "0x6011A91")]
|
|
[Address(RVA = "0x5ABE90", Offset = "0x5AAE90", VA = "0x1805ABE90")]
|
|
private set;
|
|
}
|
|
|
|
// Token: 0x1700315F RID: 12639
|
|
// (get) Token: 0x06011A92 RID: 72338 RVA: 0x003FF0D8 File Offset: 0x003FD2D8
|
|
// (set) Token: 0x06011A93 RID: 72339 RVA: 0x003FF0EC File Offset: 0x003FD2EC
|
|
[Token(Token = "0x1700315F")]
|
|
public float MaxRollDot
|
|
{
|
|
[Token(Token = "0x6011A92")]
|
|
[Address(RVA = "0x7A91E0", Offset = "0x7A81E0", VA = "0x1807A91E0")]
|
|
get;
|
|
[Token(Token = "0x6011A93")]
|
|
[Address(RVA = "0x7A9200", Offset = "0x7A8200", VA = "0x1807A9200")]
|
|
private set;
|
|
}
|
|
|
|
// Token: 0x06011A94 RID: 72340 RVA: 0x003FF100 File Offset: 0x003FD300
|
|
[Token(Token = "0x6011A94")]
|
|
[Address(RVA = "0x133D270", Offset = "0x133C270", VA = "0x18133D270")]
|
|
public void LECMHMNLJMG()
|
|
{
|
|
float num;
|
|
this.<MaxFovDot>k__BackingField = num;
|
|
float num2 = this.maxPitchAngle * 0.017453292f;
|
|
this.<MaxPitchDot>k__BackingField = num2;
|
|
float num3 = this.maxRollAngle * 0.017453292f;
|
|
this.<MaxRollDot>k__BackingField = num3;
|
|
}
|
|
|
|
// Token: 0x0400B509 RID: 46345
|
|
[FieldOffset(Offset = "0x0")]
|
|
[Token(Token = "0x400B509")]
|
|
[SerializeField]
|
|
private float maxFovAngle;
|
|
|
|
// Token: 0x0400B50A RID: 46346
|
|
[FieldOffset(Offset = "0x4")]
|
|
[Token(Token = "0x400B50A")]
|
|
[SerializeField]
|
|
private float maxPitchAngle;
|
|
|
|
// Token: 0x0400B50B RID: 46347
|
|
[FieldOffset(Offset = "0x8")]
|
|
[Token(Token = "0x400B50B")]
|
|
[SerializeField]
|
|
private float maxRollAngle;
|
|
}
|
|
}
|
|
}
|