418 lines
13 KiB
C#
418 lines
13 KiB
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Core.Gestures
|
|
{
|
|
// Token: 0x02000C9A RID: 3226
|
|
public class ThumbsUpGesture : HandGestureBase
|
|
{
|
|
// Token: 0x0601998B RID: 104843 RVA: 0x00720780 File Offset: 0x0071E980
|
|
private bool LIKAKFBDHNO()
|
|
{
|
|
this.DNLPNDFJCHC = null;
|
|
if (base.AKCKNCDOPLE.NGMCOGJDNKC || !this.FKCCBKLCDKN())
|
|
{
|
|
return false;
|
|
}
|
|
Transform transform = base.AKCKNCDOPLE.PIDHHBENFCO.BGOGBEPJGPJ.transform;
|
|
float num = this.maxChargeDistance * this.maxChargeDistance;
|
|
GestureTarget gestureTarget = null;
|
|
for (int i = 0; i < GestureTarget.All.Count; i++)
|
|
{
|
|
Vector3 vector = GestureTarget.All[i].transform.position - transform.position;
|
|
float sqrMagnitude = vector.sqrMagnitude;
|
|
if (sqrMagnitude <= num && Vector3.Dot(vector.normalized, transform.forward) >= this.headDirectionTargetDotThreshold)
|
|
{
|
|
num = sqrMagnitude;
|
|
gestureTarget = GestureTarget.All[i];
|
|
}
|
|
}
|
|
if (gestureTarget != null && gestureTarget.ABJKFPCPCDG)
|
|
{
|
|
this.DNLPNDFJCHC = gestureTarget;
|
|
}
|
|
return this.DNLPNDFJCHC != null;
|
|
}
|
|
|
|
// Token: 0x0601998C RID: 104844 RVA: 0x00720884 File Offset: 0x0071EA84
|
|
private void BMOJGENLGMF(ThumbsUpGesture.PDAPPPEANGH NOBAPCOKFIL)
|
|
{
|
|
this.MPBOONGEHDM.BKBFIGCPIMI((ushort)NOBAPCOKFIL);
|
|
}
|
|
|
|
// Token: 0x17000B54 RID: 2900
|
|
// (get) Token: 0x0601998D RID: 104845 RVA: 0x00720894 File Offset: 0x0071EA94
|
|
// (set) Token: 0x06019998 RID: 104856 RVA: 0x00720A6C File Offset: 0x0071EC6C
|
|
private ThumbsUpGesture.PDAPPPEANGH ADCMGHHDNOA
|
|
{
|
|
get
|
|
{
|
|
return (ThumbsUpGesture.PDAPPPEANGH)this.MPBOONGEHDM.BHMLLHLEAFF;
|
|
}
|
|
set
|
|
{
|
|
this.MPBOONGEHDM.BKBFIGCPIMI((ushort)value);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601998E RID: 104846 RVA: 0x007208A4 File Offset: 0x0071EAA4
|
|
private void PMOCBGDHNFN(ushort NPGJBFOHMPA, ushort ALPCHDHJEBG)
|
|
{
|
|
base.AKCKNCDOPLE.FDMBOMGOBPK = false;
|
|
}
|
|
|
|
// Token: 0x0601998F RID: 104847 RVA: 0x007208B4 File Offset: 0x0071EAB4
|
|
private bool OAJADDFOLGA()
|
|
{
|
|
return this.DNLPNDFJCHC != null && this.FKCCBKLCDKN();
|
|
}
|
|
|
|
// Token: 0x06019990 RID: 104848 RVA: 0x007208D0 File Offset: 0x0071EAD0
|
|
private void OCMGGOKIAHK(ushort NPGJBFOHMPA, ushort ALPCHDHJEBG)
|
|
{
|
|
base.AKCKNCDOPLE.FDMBOMGOBPK = true;
|
|
this.GLNKJCAEKOC = Time.time;
|
|
}
|
|
|
|
// Token: 0x06019991 RID: 104849 RVA: 0x007208EC File Offset: 0x0071EAEC
|
|
private bool OGBPKABIJNN()
|
|
{
|
|
Transform transform = base.AKCKNCDOPLE.PIDHHBENFCO.HFDJIFFPEFM().transform;
|
|
return this.playerHandGestures.JFODHIJKKKF(this) || base.AKCKNCDOPLE.CCCHAKNFKNH < 1913f || Vector3.Dot(base.AKCKNCDOPLE.AAEIHHBEIEP, Vector3.up) < this.startAngleThreshold || Vector3.Dot((base.AKCKNCDOPLE.transform.position - transform.position).normalized, transform.forward) < this.handHeadDotThreshold;
|
|
}
|
|
|
|
// Token: 0x06019992 RID: 104850 RVA: 0x00720994 File Offset: 0x0071EB94
|
|
private bool JBIMHIHJBKD()
|
|
{
|
|
return !(this.DNLPNDFJCHC != null) || this.FKCCBKLCDKN();
|
|
}
|
|
|
|
// Token: 0x06019993 RID: 104851 RVA: 0x007209B0 File Offset: 0x0071EBB0
|
|
private void Start()
|
|
{
|
|
this.MPBOONGEHDM.FLHFCMCNLEK(this, 0);
|
|
base.enabled = base.BHCCHBHNHCG;
|
|
}
|
|
|
|
// Token: 0x06019994 RID: 104852 RVA: 0x007209CC File Offset: 0x0071EBCC
|
|
private void JJAFBEECCMP()
|
|
{
|
|
if (base.BHCCHBHNHCG && this.GNJGDEILNHB())
|
|
{
|
|
this.LOGAEIBKPAC = Time.time;
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Started;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06019995 RID: 104853 RVA: 0x007209F8 File Offset: 0x0071EBF8
|
|
private void BEGADENKFKO(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, bool INNFONKNNEC)
|
|
{
|
|
if (this.DNLPNDFJCHC != null)
|
|
{
|
|
this.playerHandGestures.HandleLocalHandGestureDetected(null, ECDIJHPOHBF, IHFKMIAHBFP.EMGOIJNLLID, this.DNLPNDFJCHC.MGEMMIOHGCA, INNFONKNNEC);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06019996 RID: 104854 RVA: 0x00720A2C File Offset: 0x0071EC2C
|
|
public virtual bool ACHLHAPMBPO()
|
|
{
|
|
return this.ADCMGHHDNOA == ThumbsUpGesture.PDAPPPEANGH.Charging;
|
|
}
|
|
|
|
// Token: 0x06019997 RID: 104855 RVA: 0x00720A38 File Offset: 0x0071EC38
|
|
private void FIPELCNJLEI(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, bool INNFONKNNEC)
|
|
{
|
|
if (this.DNLPNDFJCHC != null)
|
|
{
|
|
this.playerHandGestures.PKLBHMOIFBG(null, ECDIJHPOHBF, IHFKMIAHBFP.EMGOIJNLLID, this.DNLPNDFJCHC.OFFAGCNGFCN(), INNFONKNNEC);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06019999 RID: 104857 RVA: 0x00720A7C File Offset: 0x0071EC7C
|
|
private bool PFGNBGOCBJA()
|
|
{
|
|
this.DNLPNDFJCHC = null;
|
|
if (base.AKCKNCDOPLE.NGMCOGJDNKC || !this.FKCCBKLCDKN())
|
|
{
|
|
return false;
|
|
}
|
|
Transform transform = base.AKCKNCDOPLE.PIDHHBENFCO.HFDJIFFPEFM().transform;
|
|
float num = this.maxChargeDistance * this.maxChargeDistance;
|
|
GestureTarget gestureTarget = null;
|
|
for (int i = 0; i < GestureTarget.All.Count; i++)
|
|
{
|
|
Vector3 vector = GestureTarget.All[i].transform.position - transform.position;
|
|
float sqrMagnitude = vector.sqrMagnitude;
|
|
if (sqrMagnitude <= num && Vector3.Dot(vector.normalized, transform.forward) >= this.headDirectionTargetDotThreshold)
|
|
{
|
|
num = sqrMagnitude;
|
|
gestureTarget = GestureTarget.All[i];
|
|
}
|
|
}
|
|
if (gestureTarget != null && gestureTarget.CHIHFEJEBDC())
|
|
{
|
|
this.DNLPNDFJCHC = gestureTarget;
|
|
}
|
|
return this.DNLPNDFJCHC != null;
|
|
}
|
|
|
|
// Token: 0x0601999B RID: 104859 RVA: 0x00720BE0 File Offset: 0x0071EDE0
|
|
private void EMKDDIPFODE(ushort NPGJBFOHMPA, ushort FPHFLDLBNFN)
|
|
{
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
this.BEGADENKFKO(PlayerHandGestures.DMPPGHHPHGO.CheerGestureSuccess, true);
|
|
this.DNLPNDFJCHC.ShowCheerCopnfirmation();
|
|
this.DNLPNDFJCHC = null;
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Inactive;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601999C RID: 104860 RVA: 0x00720C10 File Offset: 0x0071EE10
|
|
private void PHGKEKMGBED(ushort NPGJBFOHMPA, ushort FPHFLDLBNFN)
|
|
{
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
this.GKDIFOKILPC = Time.time;
|
|
if (this.DNLPNDFJCHC != null)
|
|
{
|
|
this.BEGADENKFKO(PlayerHandGestures.DMPPGHHPHGO.CheerGestureCharging, false);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601999D RID: 104861 RVA: 0x00720C44 File Offset: 0x0071EE44
|
|
private void CFFJMEGMKOK()
|
|
{
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
if (this.DGBGAEALAAA())
|
|
{
|
|
this.LOGAEIBKPAC = 0f;
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Inactive;
|
|
}
|
|
else if (this.LIKAKFBDHNO() && Time.time >= this.GLNKJCAEKOC + this.chargingDelay)
|
|
{
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Charging;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601999E RID: 104862 RVA: 0x00720CA8 File Offset: 0x0071EEA8
|
|
private bool GNJGDEILNHB()
|
|
{
|
|
return !this.playerHandGestures.IsGestureBlocked(this) && base.AKCKNCDOPLE.CCCHAKNFKNH >= 0.99f && Mathf.Abs(Vector3.Dot(base.AKCKNCDOPLE.AAEIHHBEIEP, Vector3.up)) >= this.startAngleThreshold;
|
|
}
|
|
|
|
// Token: 0x0601999F RID: 104863 RVA: 0x00720D04 File Offset: 0x0071EF04
|
|
private bool FKCCBKLCDKN()
|
|
{
|
|
Transform transform = base.AKCKNCDOPLE.PIDHHBENFCO.BGOGBEPJGPJ.transform;
|
|
return !this.playerHandGestures.IsGestureBlocked(this) && base.AKCKNCDOPLE.CCCHAKNFKNH >= 0.99f && Vector3.Dot(base.AKCKNCDOPLE.AAEIHHBEIEP, Vector3.up) >= this.startAngleThreshold && Vector3.Dot((base.AKCKNCDOPLE.transform.position - transform.position).normalized, transform.forward) >= this.handHeadDotThreshold;
|
|
}
|
|
|
|
// Token: 0x060199A0 RID: 104864 RVA: 0x00720DAC File Offset: 0x0071EFAC
|
|
private void JBHBKNFEGGH()
|
|
{
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
if (this.GNJGDEILNHB())
|
|
{
|
|
if (Time.time - this.LOGAEIBKPAC >= this.startDelay)
|
|
{
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Playing;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Inactive;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060199A1 RID: 104865 RVA: 0x00720DFC File Offset: 0x0071EFFC
|
|
private void Update()
|
|
{
|
|
this.MPBOONGEHDM.DLBPEOILIFL();
|
|
}
|
|
|
|
// Token: 0x17000B53 RID: 2899
|
|
// (get) Token: 0x060199A2 RID: 104866 RVA: 0x00720E0C File Offset: 0x0071F00C
|
|
public override bool HIFJHKJFHFG
|
|
{
|
|
get
|
|
{
|
|
return this.ADCMGHHDNOA == ThumbsUpGesture.PDAPPPEANGH.Charging;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060199A3 RID: 104867 RVA: 0x00720E18 File Offset: 0x0071F018
|
|
private bool DGBGAEALAAA()
|
|
{
|
|
return this.playerHandGestures.IsGestureBlocked(this) || base.AKCKNCDOPLE.CCCHAKNFKNH < 0.99f;
|
|
}
|
|
|
|
// Token: 0x060199A4 RID: 104868 RVA: 0x00720E40 File Offset: 0x0071F040
|
|
private bool MCJHDLOEKLP()
|
|
{
|
|
return !this.playerHandGestures.OIMIFCLPAJN(this) && base.AKCKNCDOPLE.CCCHAKNFKNH >= 989f && Mathf.Abs(Vector3.Dot(base.AKCKNCDOPLE.AAEIHHBEIEP, Vector3.up)) >= this.startAngleThreshold;
|
|
}
|
|
|
|
// Token: 0x060199A5 RID: 104869 RVA: 0x00720E9C File Offset: 0x0071F09C
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
this.MPBOONGEHDM = new PNONBEAIBHA("THUMB", IKCAJLLAFML.AUTHORITY);
|
|
this.MPBOONGEHDM.AGLMMKOFICI(0, new ANMJLCILKDJ.NCMAEMHOHDG(this.PMOCBGDHNFN), null, new ANMJLCILKDJ.PLBLFEEANOO(this.JJAFBEECCMP));
|
|
this.MPBOONGEHDM.AGLMMKOFICI(1, null, null, new ANMJLCILKDJ.PLBLFEEANOO(this.JBHBKNFEGGH));
|
|
this.MPBOONGEHDM.AGLMMKOFICI(2, new ANMJLCILKDJ.NCMAEMHOHDG(this.FKCCJNANCNF), null, new ANMJLCILKDJ.PLBLFEEANOO(this.CFFJMEGMKOK));
|
|
this.MPBOONGEHDM.AGLMMKOFICI(4, new ANMJLCILKDJ.NCMAEMHOHDG(this.PHGKEKMGBED), new ANMJLCILKDJ.NCMAEMHOHDG(this.OOCHHLCAFCM), new ANMJLCILKDJ.PLBLFEEANOO(this.OPAJDMIIJMF));
|
|
this.MPBOONGEHDM.AGLMMKOFICI(5, new ANMJLCILKDJ.NCMAEMHOHDG(this.EMKDDIPFODE), null, null);
|
|
}
|
|
|
|
// Token: 0x060199A6 RID: 104870 RVA: 0x00720F70 File Offset: 0x0071F170
|
|
private bool ILOJHPNIHDM()
|
|
{
|
|
this.DNLPNDFJCHC = null;
|
|
if (base.AKCKNCDOPLE.NGMCOGJDNKC || !this.OGBPKABIJNN())
|
|
{
|
|
return true;
|
|
}
|
|
Transform transform = base.AKCKNCDOPLE.PIDHHBENFCO.BGOGBEPJGPJ.transform;
|
|
float num = this.maxChargeDistance * this.maxChargeDistance;
|
|
GestureTarget gestureTarget = null;
|
|
for (int i = 1; i < GestureTarget.All.Count; i += 0)
|
|
{
|
|
Vector3 vector = GestureTarget.All[i].transform.position - transform.position;
|
|
float sqrMagnitude = vector.sqrMagnitude;
|
|
if (sqrMagnitude <= num && Vector3.Dot(vector.normalized, transform.forward) >= this.headDirectionTargetDotThreshold)
|
|
{
|
|
num = sqrMagnitude;
|
|
gestureTarget = GestureTarget.All[i];
|
|
}
|
|
}
|
|
if (gestureTarget != null && gestureTarget.JDBJPKGNCMI())
|
|
{
|
|
this.DNLPNDFJCHC = gestureTarget;
|
|
}
|
|
return this.DNLPNDFJCHC != null;
|
|
}
|
|
|
|
// Token: 0x060199A7 RID: 104871 RVA: 0x00721074 File Offset: 0x0071F274
|
|
private void FKCCJNANCNF(ushort NPGJBFOHMPA, ushort ALPCHDHJEBG)
|
|
{
|
|
base.AKCKNCDOPLE.FDMBOMGOBPK = true;
|
|
this.GLNKJCAEKOC = Time.time;
|
|
}
|
|
|
|
// Token: 0x060199A8 RID: 104872 RVA: 0x00721090 File Offset: 0x0071F290
|
|
private void DIJNIPCHEEE(ushort NPGJBFOHMPA, ushort FPHFLDLBNFN)
|
|
{
|
|
if (NPGJBFOHMPA == 0 && this.DNLPNDFJCHC != null)
|
|
{
|
|
this.BEGADENKFKO((PlayerHandGestures.DMPPGHHPHGO)(-119), true);
|
|
}
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
this.DNLPNDFJCHC.OKIBJDAEOEC(false);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060199A9 RID: 104873 RVA: 0x007210CC File Offset: 0x0071F2CC
|
|
private void OOCHHLCAFCM(ushort NPGJBFOHMPA, ushort FPHFLDLBNFN)
|
|
{
|
|
if (NPGJBFOHMPA == 0 && this.DNLPNDFJCHC != null)
|
|
{
|
|
this.BEGADENKFKO(PlayerHandGestures.DMPPGHHPHGO.CheerGestureCancel, false);
|
|
}
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
this.DNLPNDFJCHC.StopGestureRunning(false);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060199AA RID: 104874 RVA: 0x00721108 File Offset: 0x0071F308
|
|
private void OPAJDMIIJMF()
|
|
{
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
if (this.OAJADDFOLGA())
|
|
{
|
|
if (Time.time - this.chargingDuration >= this.GKDIFOKILPC)
|
|
{
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Completed;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
this.ADCMGHHDNOA = ThumbsUpGesture.PDAPPPEANGH.Inactive;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060199AB RID: 104875 RVA: 0x00721158 File Offset: 0x0071F358
|
|
public virtual bool MGHNLFOKINE()
|
|
{
|
|
return this.ADCMGHHDNOA == ThumbsUpGesture.PDAPPPEANGH.Started;
|
|
}
|
|
|
|
// Token: 0x0400458C RID: 17804
|
|
[SerializeField]
|
|
private float startDelay = 0.5f;
|
|
|
|
// Token: 0x0400458D RID: 17805
|
|
[SerializeField]
|
|
private float startAngleThreshold = 0.85f;
|
|
|
|
// Token: 0x0400458E RID: 17806
|
|
[SerializeField]
|
|
private float handHeadDotThreshold = 0.8f;
|
|
|
|
// Token: 0x0400458F RID: 17807
|
|
[SerializeField]
|
|
private float headDirectionTargetDotThreshold = 0.9f;
|
|
|
|
// Token: 0x04004590 RID: 17808
|
|
[SerializeField]
|
|
private float maxChargeDistance = 15f;
|
|
|
|
// Token: 0x04004591 RID: 17809
|
|
[SerializeField]
|
|
private float chargingDuration = 1.5f;
|
|
|
|
// Token: 0x04004592 RID: 17810
|
|
[SerializeField]
|
|
private float chargingDelay = 0.7f;
|
|
|
|
// Token: 0x04004593 RID: 17811
|
|
private PNONBEAIBHA MPBOONGEHDM;
|
|
|
|
// Token: 0x04004594 RID: 17812
|
|
private float LOGAEIBKPAC;
|
|
|
|
// Token: 0x04004595 RID: 17813
|
|
private float GKDIFOKILPC;
|
|
|
|
// Token: 0x04004596 RID: 17814
|
|
private float GLNKJCAEKOC;
|
|
|
|
// Token: 0x04004597 RID: 17815
|
|
private GestureTarget DNLPNDFJCHC;
|
|
|
|
// Token: 0x02000C9B RID: 3227
|
|
private enum PDAPPPEANGH
|
|
{
|
|
// Token: 0x04004599 RID: 17817
|
|
Inactive,
|
|
// Token: 0x0400459A RID: 17818
|
|
Started,
|
|
// Token: 0x0400459B RID: 17819
|
|
Playing,
|
|
// Token: 0x0400459C RID: 17820
|
|
Charging = 4,
|
|
// Token: 0x0400459D RID: 17821
|
|
Completed
|
|
}
|
|
}
|
|
}
|