Files
2026-06-04 11:42:34 +02:00

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
}
}
}