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

1740 lines
52 KiB
C#

using System;
using System.Collections.Generic;
using System.Diagnostics;
using Photon;
using RecRoom;
using RecRoom.Core.Gestures;
using UnityEngine;
using UnityEngine.Serialization;
// Token: 0x02000CC0 RID: 3264
public class PlayerHand : global::Photon.MonoBehaviour, MOJNPEJBHGK
{
// Token: 0x0601A2AF RID: 107183 RVA: 0x0074E898 File Offset: 0x0074CA98
private Vector3 BKGMPOGLLEP()
{
return (this.DEBNECHCBFD != PlayerHand.GCANEEGJKOG.HAND_HALF_VECTOR) ? (this.FLPFLKNOKLB - this.PIDHHBENFCO.BGOGBEPJGPJ.transform.position).normalized : (this.handCenter.forward + this.handCenter.right).normalized;
}
// Token: 0x17000BD7 RID: 3031
// (get) Token: 0x0601A2D1 RID: 107217 RVA: 0x0074F248 File Offset: 0x0074D448
// (set) Token: 0x0601A2B0 RID: 107184 RVA: 0x0074E904 File Offset: 0x0074CB04
public Tool OOIMAEHGBIC { get; private set; }
// Token: 0x17000BE0 RID: 3040
// (get) Token: 0x0601A313 RID: 107283 RVA: 0x00750964 File Offset: 0x0074EB64
// (set) Token: 0x0601A2B1 RID: 107185 RVA: 0x0074E910 File Offset: 0x0074CB10
public PlayerHand.PECNKPNHFPM KADNEOOJIAB
{
get
{
return this.OEDFDADBEPD.CPIBGJLHLBL();
}
set
{
this.OEDFDADBEPD.MEAINJPIECA(value);
}
}
// Token: 0x17000BCB RID: 3019
// (get) Token: 0x0601A2DF RID: 107231 RVA: 0x0074F5C8 File Offset: 0x0074D7C8
// (set) Token: 0x0601A2B2 RID: 107186 RVA: 0x0074E920 File Offset: 0x0074CB20
public float OJOCJMPNIFM { get; set; }
// Token: 0x17000BD6 RID: 3030
// (get) Token: 0x0601A2B3 RID: 107187 RVA: 0x0074E92C File Offset: 0x0074CB2C
private Vector3 FLPFLKNOKLB
{
get
{
return this.handCenter.position + this.handCenter.forward * this.JLCDJABNNAK;
}
}
// Token: 0x17000BCE RID: 3022
// (get) Token: 0x0601A2B4 RID: 107188 RVA: 0x0074E954 File Offset: 0x0074CB54
// (set) Token: 0x0601A2C0 RID: 107200 RVA: 0x0074EB38 File Offset: 0x0074CD38
public PlayerHand.GCANEEGJKOG DEBNECHCBFD { get; set; }
// Token: 0x17000BDD RID: 3037
// (get) Token: 0x0601A2B5 RID: 107189 RVA: 0x0074E95C File Offset: 0x0074CB5C
// (set) Token: 0x0601A31B RID: 107291 RVA: 0x00750ACC File Offset: 0x0074ECCC
private TeleportationPortal GNNILNKJJMH
{
get
{
return this.HDJHBOLHKOP;
}
set
{
if (this.HDJHBOLHKOP != value)
{
if (this.HDJHBOLHKOP != null)
{
this.HDJHBOLHKOP.AHPMPAMKKFI = false;
}
this.HDJHBOLHKOP = value;
if (this.HDJHBOLHKOP != null)
{
this.HDJHBOLHKOP.AHPMPAMKKFI = true;
}
}
}
}
// Token: 0x17000BDF RID: 3039
// (get) Token: 0x0601A312 RID: 107282 RVA: 0x00750954 File Offset: 0x0074EB54
// (set) Token: 0x0601A2B6 RID: 107190 RVA: 0x0074E964 File Offset: 0x0074CB64
public PlayerHand.AKCKIFINDJE ILGCMIFHJOJ
{
get
{
return this.HDFJCNOFFOM.CPIBGJLHLBL();
}
set
{
this.HDFJCNOFFOM.MEAINJPIECA(value);
}
}
// Token: 0x17000BCC RID: 3020
// (get) Token: 0x0601A2FD RID: 107261 RVA: 0x0075003C File Offset: 0x0074E23C
// (set) Token: 0x0601A2B7 RID: 107191 RVA: 0x0074E974 File Offset: 0x0074CB74
public float GIEJDBFCDNJ { get; set; }
// Token: 0x17000BD1 RID: 3025
// (get) Token: 0x0601A2B8 RID: 107192 RVA: 0x0074E980 File Offset: 0x0074CB80
public PlayerHand.HMMEBFHABKA EEAOGJHMFII
{
get
{
return this.type;
}
}
// Token: 0x17000BD2 RID: 3026
// (get) Token: 0x0601A2B9 RID: 107193 RVA: 0x0074E988 File Offset: 0x0074CB88
public Vector3 CDNCEOOIOHP
{
get
{
return (this.type != PlayerHand.HMMEBFHABKA.Left) ? (-base.transform.right) : base.transform.right;
}
}
// Token: 0x17000BC5 RID: 3013
// (get) Token: 0x0601A2BA RID: 107194 RVA: 0x0074E9B8 File Offset: 0x0074CBB8
public PlayerHandGestures IIJAOBHBHLI
{
get
{
return this._gestures;
}
}
// Token: 0x140000FE RID: 254
// (add) Token: 0x0601A2FE RID: 107262 RVA: 0x00750044 File Offset: 0x0074E244
// (remove) Token: 0x0601A2BB RID: 107195 RVA: 0x0074E9C0 File Offset: 0x0074CBC0
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
public event Action<PlayerHand, Tool> JALKKMAPMLM;
// Token: 0x17000BE4 RID: 3044
// (set) Token: 0x0601A2BC RID: 107196 RVA: 0x0074E9F8 File Offset: 0x0074CBF8
public bool HOGLPJCAEEL
{
set
{
this.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, value);
}
}
// Token: 0x0601A2BD RID: 107197 RVA: 0x0074EA0C File Offset: 0x0074CC0C
public float PBECMBCGFIE()
{
return this._openClosedAxis;
}
// Token: 0x0601A2BE RID: 107198 RVA: 0x0074EA14 File Offset: 0x0074CC14
protected virtual void POMCHIPOPEA()
{
base.MICFHMAIGIB();
this.ResetGravityPickupParameters();
this.GEJENMPDCJJ = this.defaultPhysicalPickupSphereRadius;
this.ABMDMDFANAI = base.GetComponentsInChildren<PlayerHandCollider>(false);
this.JHHOBMNHCKB = this.meshRoot.GetComponentsInChildren<Renderer>();
this.LPBPJANEHIN = global::UnityEngine.Object.Instantiate<LaserTeleporter>(this.playerHandRemotePrefab);
this.BMBAGHFDMIE().MBHLIAEFEAD = this.PIDHHBENFCO;
this.LPBPJANEHIN.NIINKFICGGB(this);
this.PIDHHBENFCO.SetParentPlayerRoot(this.BMBAGHFDMIE().transform);
this.LNAKPBMMKIL().calculateVelocityWhenKinematic = !this.GDOFKAIDDNA();
this.menuLaser.enabled = false;
this.menuLaser.material.renderQueue = -130;
this.HDFJCNOFFOM = new LHLLJPPCDKA<PlayerHand.AKCKIFINDJE>(this, "The host has restricted access to the stage", PlayerHand.AKCKIFINDJE.NOT_CONNECTED, IKCAJLLAFML.MASTER, null);
this.OEDFDADBEPD = new LHLLJPPCDKA<PlayerHand.PECNKPNHFPM>(this, "{0} Audio frames are not of size: {1} != {2}", PlayerHand.PECNKPNHFPM.None, IKCAJLLAFML.AUTHORITY, new Action(this.MMNFGHJMPON));
}
// Token: 0x0601A2BF RID: 107199 RVA: 0x0074EB04 File Offset: 0x0074CD04
public static void BreakNonPlayerGesture(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand GAEKGDCFOJM, NonPlayerGestureTarget MMEBLCBANIL)
{
MMEBLCBANIL.CADPGMLHFGH.Release();
MMEBLCBANIL.FinishGesture(ECDIJHPOHBF);
if (ECDIJHPOHBF == PlayerHandGestures.DMPPGHHPHGO.HandshakeCancel || ECDIJHPOHBF == PlayerHandGestures.DMPPGHHPHGO.HandshakeSuccess)
{
GAEKGDCFOJM.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, false);
}
}
// Token: 0x0601A2C1 RID: 107201 RVA: 0x0074EB44 File Offset: 0x0074CD44
public static void BreakCollisionGesture(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand DPIIIAGCMLK, PlayerHand BDKNHBMMGPK)
{
if (DPIIIAGCMLK == null || BDKNHBMMGPK == null)
{
return;
}
PlayerHand playerHand;
PlayerHand playerHand2;
PlayerHand.IMNIOCONBNP(DPIIIAGCMLK, BDKNHBMMGPK, out playerHand, out playerHand2);
playerHand2.CADPGMLHFGH.Release();
}
// Token: 0x17000BCD RID: 3021
// (get) Token: 0x0601A2DC RID: 107228 RVA: 0x0074F4F0 File Offset: 0x0074D6F0
// (set) Token: 0x0601A2C2 RID: 107202 RVA: 0x0074EB80 File Offset: 0x0074CD80
public float GEJENMPDCJJ { get; set; }
// Token: 0x0601A2C3 RID: 107203 RVA: 0x0074EB8C File Offset: 0x0074CD8C
public static void ConnectCollisionGesture(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand DPIIIAGCMLK, PlayerHand BDKNHBMMGPK)
{
if (DPIIIAGCMLK == null || BDKNHBMMGPK == null)
{
return;
}
PlayerHand playerHand;
PlayerHand playerHand2;
PlayerHand.IMNIOCONBNP(DPIIIAGCMLK, BDKNHBMMGPK, out playerHand, out playerHand2);
if (!playerHand2.CADPGMLHFGH.IsAttachedTo(playerHand.transform))
{
Transform transform = ((ECDIJHPOHBF != PlayerHandGestures.DMPPGHHPHGO.Fistbump) ? playerHand.highFiveConnectionTransform : playerHand.fistbumpConnectionTransform);
if (transform == null)
{
transform = playerHand2.transform;
}
Vector3 vector = playerHand.transform.InverseTransformPoint(transform.position);
Quaternion quaternion = playerHand.transform.MCKNNGGGBDG(playerHand2.transform.rotation);
playerHand2.CADPGMLHFGH.Pickup(playerHand.transform, vector, quaternion);
}
}
// Token: 0x17000BC1 RID: 3009
// (get) Token: 0x0601A2C4 RID: 107204 RVA: 0x0074EC40 File Offset: 0x0074CE40
public Transform HKDMIAEFDJA
{
get
{
return this.watchMenuOrigin;
}
}
// Token: 0x17000BD4 RID: 3028
// (get) Token: 0x0601A2C5 RID: 107205 RVA: 0x0074EC48 File Offset: 0x0074CE48
public Vector3 AAEIHHBEIEP
{
get
{
return base.transform.up;
}
}
// Token: 0x0601A2C6 RID: 107206 RVA: 0x0074EC58 File Offset: 0x0074CE58
public void AddIntersectingUIRegion(GameObject MPGMOMPDOFE, bool CDFOIGLEBBF = false)
{
if (CDFOIGLEBBF && !this.JOCDAIMIIBA.Contains(MPGMOMPDOFE))
{
this.JOCDAIMIIBA.Add(MPGMOMPDOFE);
}
else if (!CDFOIGLEBBF && !this.CGEBKBGBMOC.Contains(MPGMOMPDOFE))
{
this.CGEBKBGBMOC.Add(MPGMOMPDOFE);
}
}
// Token: 0x0601A2C7 RID: 107207 RVA: 0x0074ECB0 File Offset: 0x0074CEB0
public Tool HJOIOHCOEOH()
{
return this.<LDLKANGMKFE>k__BackingField;
}
// Token: 0x0601A2C8 RID: 107208 RVA: 0x0074ECB8 File Offset: 0x0074CEB8
public void Vibrate(int MDMOMCDDFHH = 1, ushort GIDMADJPECM = 1000)
{
if (this.JKNCHBFALCJ != null)
{
this.JKNCHBFALCJ.Vibrate(MDMOMCDDFHH, GIDMADJPECM);
}
}
// Token: 0x0601A2C9 RID: 107209 RVA: 0x0074ECDC File Offset: 0x0074CEDC
private void MMNFGHJMPON()
{
bool flag = this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.DefaultHand);
bool flag2 = this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.HeldTool);
bool flag3 = this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.TeleportHand);
bool flag4 = this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.MenuHand);
foreach (Renderer renderer in this.JHHOBMNHCKB)
{
renderer.gameObject.SetActive(flag);
}
foreach (PlayerHandCollider playerHandCollider in this.ABMDMDFANAI)
{
if (playerHandCollider != null && !playerHandCollider.GJPHILMECKE)
{
playerHandCollider.gameObject.SetActive(flag);
}
}
this.PIDHHBENFCO.NMPMNBCNGBE.SetHandVisible(this.EEAOGJHMFII, flag);
if (!flag && !flag4)
{
this.GDJCOHMMKIA = null;
}
this.menuHandRoot.gameObject.SetActive(flag4);
if (this.OOIMAEHGBIC != null)
{
this.OOIMAEHGBIC.SetVisible(flag2, flag3);
}
this.LPBPJANEHIN.HEGHBOOMIOG = flag3;
}
// Token: 0x0601A2CA RID: 107210 RVA: 0x0074EDF4 File Offset: 0x0074CFF4
protected override void Awake()
{
base.Awake();
this.ResetGravityPickupParameters();
this.GEJENMPDCJJ = this.defaultPhysicalPickupSphereRadius;
this.ABMDMDFANAI = base.GetComponentsInChildren<PlayerHandCollider>(true);
this.JHHOBMNHCKB = this.meshRoot.GetComponentsInChildren<Renderer>();
this.LPBPJANEHIN = global::UnityEngine.Object.Instantiate<LaserTeleporter>(this.playerHandRemotePrefab);
this.LPBPJANEHIN.MBHLIAEFEAD = this.PIDHHBENFCO;
this.LPBPJANEHIN.AKCKNCDOPLE = this;
this.PIDHHBENFCO.SetParentPlayerRoot(this.LPBPJANEHIN.transform);
this.BOLBONELAEF.calculateVelocityWhenKinematic = !this.NHDDPGADJPJ;
this.menuLaser.enabled = false;
this.menuLaser.material.renderQueue = 3002;
this.HDFJCNOFFOM = new LHLLJPPCDKA<PlayerHand.AKCKIFINDJE>(this, "CS", PlayerHand.AKCKIFINDJE.NOT_CONNECTED, IKCAJLLAFML.AUTHORITY, null);
this.OEDFDADBEPD = new LHLLJPPCDKA<PlayerHand.PECNKPNHFPM>(this, "HS", PlayerHand.PECNKPNHFPM.None, IKCAJLLAFML.AUTHORITY, new Action(this.MMNFGHJMPON));
}
// Token: 0x17000BD0 RID: 3024
// (get) Token: 0x0601A2CB RID: 107211 RVA: 0x0074EEE4 File Offset: 0x0074D0E4
// (set) Token: 0x0601A305 RID: 107269 RVA: 0x007505E0 File Offset: 0x0074E7E0
public float CCCHAKNFKNH
{
get
{
return this._openClosedAxis;
}
private set
{
this._openClosedAxis = value;
if (this.BIOPIKIHJGN.isActiveAndEnabled)
{
this.BIOPIKIHJGN.SetFloat(PlayerHand.EMPIAOJJGML, this.CCCHAKNFKNH);
}
}
}
// Token: 0x0601A2CC RID: 107212 RVA: 0x0074EEEC File Offset: 0x0074D0EC
private void APFLFGBHOGN()
{
this.CCCHAKNFKNH = this.JKNCHBFALCJ.MDGFEPNJFJK;
}
// Token: 0x0601A2CD RID: 107213 RVA: 0x0074EF00 File Offset: 0x0074D100
private void OHNKNCPGJIC(Tool ENBMEDIFBLM)
{
if (ENBMEDIFBLM.EHFOKGIGIMF == this)
{
if (this.OOIMAEHGBIC != ENBMEDIFBLM)
{
if (this.OOIMAEHGBIC != null)
{
this.GNFFKDAHPAI();
}
this.LPNLEPDOEJP(ENBMEDIFBLM);
}
}
else if (this.OOIMAEHGBIC == ENBMEDIFBLM)
{
this.GNFFKDAHPAI();
}
}
// Token: 0x0601A2CE RID: 107214 RVA: 0x0074EF6C File Offset: 0x0074D16C
public void RemoveIntersectingUIRegion(GameObject MPGMOMPDOFE, bool CDFOIGLEBBF = false)
{
if (CDFOIGLEBBF && this.JOCDAIMIIBA.Contains(MPGMOMPDOFE))
{
this.JOCDAIMIIBA.Remove(MPGMOMPDOFE);
}
else if (!CDFOIGLEBBF && this.CGEBKBGBMOC.Contains(MPGMOMPDOFE))
{
this.CGEBKBGBMOC.Remove(MPGMOMPDOFE);
}
}
// Token: 0x17000BC3 RID: 3011
// (get) Token: 0x0601A2CF RID: 107215 RVA: 0x0074EFC8 File Offset: 0x0074D1C8
public Transform GNCEGCKBDHP
{
get
{
return this.watchFaceTransform;
}
}
// Token: 0x0601A2D0 RID: 107216 RVA: 0x0074EFD0 File Offset: 0x0074D1D0
private void BKLLMMNCKBI()
{
bool hairPickupButtonDown = this.JKNCHBFALCJ.CBCHNPOMNPF;
bool hairPickupButtonUp = this.JKNCHBFALCJ.OFDCCGLFEOJ;
bool flag = this.JKNCHBFALCJ.EAEKKFOJPKF && !Player.LocalPlayer.POJAICMNOFI.DBNCMMAHKCH;
bool flag2 = this.JKNCHBFALCJ.GJLECMFKAJD || (this.JKNCHBFALCJ.CMKCDHGNMIE && !this.JKNCHBFALCJ.NFMBOBOMJFG && Time.unscaledTime - this.JKNCHBFALCJ.DMAHDFACBJD <= this.hairTriggerReactionWindow);
bool hairTriggerButtonPressed = this.JKNCHBFALCJ.CMKCDHGNMIE;
bool hairTriggerButtonUp = this.JKNCHBFALCJ.JMFABNJFCIG;
float triggerAxis = this.JKNCHBFALCJ.HOIHCLJDHJB;
if (this.OOIMAEHGBIC != null)
{
if (this.OOIMAEHGBIC.JOEPFGLNGAJ)
{
if (this.OOIMAEHGBIC.IIEGGLHMOBH)
{
this.OOIMAEHGBIC.InputAmount = triggerAxis;
if (flag2)
{
this.OOIMAEHGBIC.InputDown();
this.JKNCHBFALCJ.NFMBOBOMJFG = true;
}
if (hairTriggerButtonPressed)
{
this.OOIMAEHGBIC.InputPressed();
}
if (hairTriggerButtonUp)
{
this.OOIMAEHGBIC.InputUp();
}
if (flag && this.OOIMAEHGBIC.JOEPFGLNGAJ)
{
if (this.ToolUnlockBehaviorOverride != null)
{
this.ToolUnlockBehaviorOverride();
}
else
{
this.OOIMAEHGBIC.JOEPFGLNGAJ = false;
this.Vibrate(500, 1000);
if (!hairTriggerButtonPressed)
{
this.ReleaseTool(true);
}
}
}
}
}
else if (!this.OOIMAEHGBIC.JOEPFGLNGAJ && flag && this.OOIMAEHGBIC.CanBeLocked)
{
this.OOIMAEHGBIC.JOEPFGLNGAJ = true;
this.Vibrate(500, 1000);
}
else if (hairPickupButtonUp)
{
this.JKNCHBFALCJ.KFGEOMPOOLM = true;
this.ReleaseTool(true);
}
}
else if (this.ILGCMIFHJOJ != PlayerHand.AKCKIFINDJE.NOT_CONNECTED)
{
if (!this.DFAOEJBBDII(hairPickupButtonDown) && this.GDJCOHMMKIA != null)
{
if (hairPickupButtonDown)
{
this.LAGDBMFEJNP();
this.JKNCHBFALCJ.KFGEOMPOOLM = true;
}
}
else if (this.GNNILNKJJMH != null && hairPickupButtonDown)
{
this.GNNILNKJJMH.Use(this.PIDHHBENFCO);
}
}
}
// Token: 0x0601A2D2 RID: 107218 RVA: 0x0074F250 File Offset: 0x0074D450
public static void LIKCLENCPGA(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand GAEKGDCFOJM, NonPlayerGestureTarget MMEBLCBANIL)
{
if (GAEKGDCFOJM == null || MMEBLCBANIL == null)
{
return;
}
if (!MMEBLCBANIL.CADPGMLHFGH.IsAttachedTo(GAEKGDCFOJM.transform))
{
Transform transform;
switch (ECDIJHPOHBF)
{
case PlayerHandGestures.DMPPGHHPHGO.Highfive:
transform = GAEKGDCFOJM.highFiveConnectionTransform;
break;
case PlayerHandGestures.DMPPGHHPHGO.Fistbump:
transform = GAEKGDCFOJM.fistbumpConnectionTransform;
break;
case PlayerHandGestures.DMPPGHHPHGO.HandshakeStart:
transform = GAEKGDCFOJM.handshakeConnectionTransform;
GAEKGDCFOJM.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, true);
break;
default:
transform = MMEBLCBANIL.transform;
break;
}
Vector3 vector = GAEKGDCFOJM.transform.InverseTransformPoint(transform.position);
Quaternion quaternion = GAEKGDCFOJM.transform.MCKNNGGGBDG(MMEBLCBANIL.transform.transform.rotation);
MMEBLCBANIL.PMKEDOIFBHB().IKPODAPKACL(GAEKGDCFOJM.transform, vector, quaternion);
}
}
// Token: 0x17000BDA RID: 3034
// (get) Token: 0x0601A2D3 RID: 107219 RVA: 0x0074F328 File Offset: 0x0074D528
public bool AOAFMPELLPG
{
get
{
return this.JOCDAIMIIBA.Count > 0;
}
}
// Token: 0x0601A2D4 RID: 107220 RVA: 0x0074F338 File Offset: 0x0074D538
private void FJCHMJOGMCA()
{
this.BOLBONELAEF.IGOFELJMFOF = this.JKNCHBFALCJ.EFEKGINOBLK;
this.BOLBONELAEF.CCHAEPGJJLI = this.JKNCHBFALCJ.MOBLIEGOIDK;
this.BOLBONELAEF.CIGPHKLAAOD = this.JKNCHBFALCJ.transform.position;
this.BOLBONELAEF.IJGPPOIJDKO = this.JKNCHBFALCJ.transform.rotation;
if (this.FIACKCNDEMC)
{
this.ReleaseTool(false);
}
}
// Token: 0x0601A2D5 RID: 107221 RVA: 0x0074F3BC File Offset: 0x0074D5BC
public float JPKHGGPGPNA()
{
return this.<KBHOCALIMFA>k__BackingField;
}
// Token: 0x17000BD5 RID: 3029
// (get) Token: 0x0601A2D6 RID: 107222 RVA: 0x0074F3C4 File Offset: 0x0074D5C4
public Vector3 ILAAPJFLLBC
{
get
{
return this.handCenter.position;
}
}
// Token: 0x17000BC7 RID: 3015
// (get) Token: 0x0601A2D7 RID: 107223 RVA: 0x0074F3D4 File Offset: 0x0074D5D4
public PlayerHandRigidbodyPickup CADPGMLHFGH
{
get
{
return this._rigidbodyPickup;
}
}
// Token: 0x0601A2D8 RID: 107224 RVA: 0x0074F3DC File Offset: 0x0074D5DC
private bool GNAHJDGKLEM(PlayerHand.PECNKPNHFPM CIEGKPGKOMH)
{
return (this.KADNEOOJIAB & CIEGKPGKOMH) == CIEGKPGKOMH;
}
// Token: 0x0601A2D9 RID: 107225 RVA: 0x0074F3EC File Offset: 0x0074D5EC
public bool IsFingerOverlappingUI(Vector3 CIGPHKLAAOD)
{
return this.menuFinger.bounds.Contains(CIGPHKLAAOD);
}
// Token: 0x17000BDC RID: 3036
// (get) Token: 0x0601A318 RID: 107288 RVA: 0x007509A0 File Offset: 0x0074EBA0
// (set) Token: 0x0601A2DA RID: 107226 RVA: 0x0074F410 File Offset: 0x0074D610
private OutfitTrigger JPPGKCGAOHN
{
get
{
return this.JNDEPGMAIAG;
}
set
{
if (this.JNDEPGMAIAG != value)
{
if (this.JNDEPGMAIAG != null)
{
this.JNDEPGMAIAG.IFJFHJGNJDO.FLDANCEBDBO = false;
}
this.JNDEPGMAIAG = value;
if (this.JNDEPGMAIAG != null)
{
this.JNDEPGMAIAG.IFJFHJGNJDO.FLDANCEBDBO = true;
}
}
}
}
// Token: 0x0601A2DB RID: 107227 RVA: 0x0074F47C File Offset: 0x0074D67C
private void CGIJNFBMPFC()
{
Vector3 vector;
Vector3 vector2;
this.BOLBONELAEF.GetWorldVelocityAtPoint(this.OOIMAEHGBIC.BOLBONELAEF.LBPHKCKFPLK, (float)this.JKNCHBFALCJ.ICDGDLBGGGB * Time.fixedDeltaTime, (float)this.JKNCHBFALCJ.MAEDNALEGIO * Time.fixedDeltaTime, this.JKNCHBFALCJ.HBGKIHLMANG, this.JKNCHBFALCJ.EPJFCIJEGGL, out vector, out vector2);
this.OOIMAEHGBIC.SetReleaseVelocity(vector, vector2);
}
// Token: 0x0601A2DD RID: 107229 RVA: 0x0074F4F8 File Offset: 0x0074D6F8
private void LPNLEPDOEJP(Tool ENBMEDIFBLM)
{
foreach (PlayerHandCollider playerHandCollider in this.ABMDMDFANAI)
{
if (playerHandCollider != null)
{
playerHandCollider.DisableHandToolCollisions(ENBMEDIFBLM);
}
}
this.OOIMAEHGBIC = ENBMEDIFBLM;
this.BLGJCGFMGLI();
bool flag = this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.HeldTool);
bool flag2 = this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.TeleportHand);
this.OOIMAEHGBIC.SetVisible(flag, flag2);
this.Vibrate(50, 1000);
if (this.OFIHFCEOGGD != null)
{
this.OFIHFCEOGGD(this, ENBMEDIFBLM);
}
}
// Token: 0x0601A2DE RID: 107230 RVA: 0x0074F588 File Offset: 0x0074D788
private void LAGDBMFEJNP()
{
Tool tool = this.GDJCOHMMKIA;
this.GDJCOHMMKIA = null;
if (tool != null && tool.NIINOABKAPJ)
{
this.TryPickupTool(tool, this.DHELNNBEHPA);
}
}
// Token: 0x0601A2E0 RID: 107232 RVA: 0x0074F5D0 File Offset: 0x0074D7D0
public void ReleaseTool(bool FELOLOIAHFG = false)
{
if (FELOLOIAHFG && this.JKNCHBFALCJ != null && this.JKNCHBFALCJ.BMEPKKILAEH)
{
this.FIACKCNDEMC = true;
}
else
{
this.FIACKCNDEMC = false;
if (this.OOIMAEHGBIC != null)
{
if (this.JKNCHBFALCJ != null)
{
this.CGIJNFBMPFC();
}
this.OOIMAEHGBIC.BBGHKANFCHC = DDOFAPFDGNL.JPCIKFHMMED;
}
}
}
// Token: 0x0601A2E1 RID: 107233 RVA: 0x0074F650 File Offset: 0x0074D850
private void NADDMGABFFN()
{
if (Application.isPlaying)
{
Gizmos.color = Color.green;
float num = this.JPKHGGPGPNA();
float num2 = this.GOBPCNKPCHO - 1272f * num;
int num3 = (int)(num2 / (1078f * num));
Vector3 vector = this.BKGMPOGLLEP();
Vector3 vector2 = num2 / (float)num3 * vector;
Vector3 vector3 = this.FLPFLKNOKLB + vector * num;
for (int i = 1; i < num3; i += 0)
{
Gizmos.DrawWireSphere(vector3 + (float)i * vector2, num);
}
Gizmos.DrawWireSphere(vector3 + num2 * vector, num);
}
}
// Token: 0x0601A2E2 RID: 107234 RVA: 0x0074F6FC File Offset: 0x0074D8FC
private void Start()
{
if (this.JKNCHBFALCJ != null)
{
this.BOLBONELAEF.useFixedTime = this.JKNCHBFALCJ.LGPNIIKKMFN;
}
Tool.BDGLMDFFPLA += this.OHNKNCPGJIC;
foreach (Tool tool in global::UnityEngine.Object.FindObjectsOfType<Tool>())
{
this.OHNKNCPGJIC(tool);
}
this.MMNFGHJMPON();
}
// Token: 0x17000BD3 RID: 3027
// (get) Token: 0x0601A2E3 RID: 107235 RVA: 0x0074F76C File Offset: 0x0074D96C
public Vector3 HJIOPIFJEOE
{
get
{
return base.transform.forward;
}
}
// Token: 0x0601A2E4 RID: 107236 RVA: 0x0074F77C File Offset: 0x0074D97C
public static PlayerHand Find(int MLAHLLNCFLA)
{
PhotonView photonView = PhotonView.Find(MLAHLLNCFLA);
if (photonView != null)
{
return photonView.GetComponent<PlayerHand>();
}
return null;
}
// Token: 0x0601A2E5 RID: 107237 RVA: 0x0074F7A4 File Offset: 0x0074D9A4
protected override void OnDestroy()
{
base.OnDestroy();
if (this.JKNCHBFALCJ != null)
{
this.JKNCHBFALCJ.FKIMIOHBKML -= this.FJCHMJOGMCA;
this.JKNCHBFALCJ.AANDMKPEJFK = true;
}
Tool.BDGLMDFFPLA -= this.OHNKNCPGJIC;
if (this.LPBPJANEHIN != null)
{
global::UnityEngine.Object.Destroy(this.LPBPJANEHIN);
}
if (this.OOIMAEHGBIC != null)
{
this.ReleaseTool(false);
}
}
// Token: 0x0601A2E6 RID: 107238 RVA: 0x0074F830 File Offset: 0x0074DA30
private void OnDrawGizmos()
{
if (Application.isPlaying)
{
Gizmos.color = Color.green;
float gravityPickupCapsuleRadius = this.OJOCJMPNIFM;
float num = this.GOBPCNKPCHO - 2f * gravityPickupCapsuleRadius;
int num2 = (int)(num / (2f * gravityPickupCapsuleRadius));
Vector3 vector = this.BKGMPOGLLEP();
Vector3 vector2 = num / (float)num2 * vector;
Vector3 vector3 = this.FLPFLKNOKLB + vector * gravityPickupCapsuleRadius;
for (int i = 0; i < num2; i++)
{
Gizmos.DrawWireSphere(vector3 + (float)i * vector2, gravityPickupCapsuleRadius);
}
Gizmos.DrawWireSphere(vector3 + num * vector, gravityPickupCapsuleRadius);
}
}
// Token: 0x17000BCF RID: 3023
// (get) Token: 0x0601A317 RID: 107287 RVA: 0x00750998 File Offset: 0x0074EB98
// (set) Token: 0x0601A2E7 RID: 107239 RVA: 0x0074F8DC File Offset: 0x0074DADC
public LaserTeleporter LPBPJANEHIN { get; private set; }
// Token: 0x0601A2E8 RID: 107240 RVA: 0x0074F8E8 File Offset: 0x0074DAE8
private void GNFFKDAHPAI()
{
foreach (PlayerHandCollider playerHandCollider in this.ABMDMDFANAI)
{
if (playerHandCollider != null)
{
playerHandCollider.ReEnableHandToolCollisions(this.OOIMAEHGBIC);
}
}
if (this.JALKKMAPMLM != null)
{
this.JALKKMAPMLM(this, this.OOIMAEHGBIC);
}
this.OOIMAEHGBIC = null;
}
// Token: 0x17000BDB RID: 3035
// (get) Token: 0x0601A2EA RID: 107242 RVA: 0x0074F9A8 File Offset: 0x0074DBA8
// (set) Token: 0x0601A2F0 RID: 107248 RVA: 0x0074FB48 File Offset: 0x0074DD48
private Tool GDJCOHMMKIA
{
get
{
if (this.DCLHKOBFONK == null && this.CBDLPECELLI != null && Time.unscaledTime - this.GPGINLCBNHL <= this.hairTriggerReactionWindow)
{
return this.CBDLPECELLI;
}
return this.DCLHKOBFONK;
}
set
{
if (this.DCLHKOBFONK != value)
{
if (this.DCLHKOBFONK != null)
{
this.DCLHKOBFONK.HoverEnd();
}
this.CBDLPECELLI = this.DCLHKOBFONK;
this.GPGINLCBNHL = Time.unscaledTime;
this.DCLHKOBFONK = value;
if (this.DCLHKOBFONK != null)
{
this.DCLHKOBFONK.HoverStart();
}
}
}
}
// Token: 0x0601A2EB RID: 107243 RVA: 0x0074F9FC File Offset: 0x0074DBFC
public void OnPhotonSerializeView(FKIBELLNBEC JAGHIAOIDOC, BOCLHJCCOEL NAHFIMLLIMH)
{
if (JAGHIAOIDOC.DDNDOEKGJEI)
{
this.CCCHAKNFKNH = (float)JAGHIAOIDOC.MENJBBNMJOP();
}
else
{
JAGHIAOIDOC.NCELHBANFFO(this.CCCHAKNFKNH);
}
this.LPBPJANEHIN.HandlePhotonSerializeView(JAGHIAOIDOC, NAHFIMLLIMH);
}
// Token: 0x0601A2EC RID: 107244 RVA: 0x0074FA48 File Offset: 0x0074DC48
public static void ConnectNonPlayerGesture(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand GAEKGDCFOJM, NonPlayerGestureTarget MMEBLCBANIL)
{
if (GAEKGDCFOJM == null || MMEBLCBANIL == null)
{
return;
}
if (!MMEBLCBANIL.CADPGMLHFGH.IsAttachedTo(GAEKGDCFOJM.transform))
{
Transform transform;
switch (ECDIJHPOHBF)
{
case PlayerHandGestures.DMPPGHHPHGO.Highfive:
transform = GAEKGDCFOJM.highFiveConnectionTransform;
break;
case PlayerHandGestures.DMPPGHHPHGO.Fistbump:
transform = GAEKGDCFOJM.fistbumpConnectionTransform;
break;
case PlayerHandGestures.DMPPGHHPHGO.HandshakeStart:
transform = GAEKGDCFOJM.handshakeConnectionTransform;
GAEKGDCFOJM.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, true);
break;
default:
transform = MMEBLCBANIL.transform;
break;
}
Vector3 vector = GAEKGDCFOJM.transform.InverseTransformPoint(transform.position);
Quaternion quaternion = GAEKGDCFOJM.transform.MCKNNGGGBDG(MMEBLCBANIL.transform.transform.rotation);
MMEBLCBANIL.CADPGMLHFGH.Pickup(GAEKGDCFOJM.transform, vector, quaternion);
}
}
// Token: 0x17000BE1 RID: 3041
// (get) Token: 0x0601A2ED RID: 107245 RVA: 0x0074FB20 File Offset: 0x0074DD20
public bool EKLBNGHDMEM
{
get
{
return this.LCJGDOEIFPF || this.ANGJJOCHMEF;
}
}
// Token: 0x0601A2EE RID: 107246 RVA: 0x0074FB38 File Offset: 0x0074DD38
public RigidbodyEx LNAKPBMMKIL()
{
return this._rigidbodyEx;
}
// Token: 0x17000BC8 RID: 3016
// (get) Token: 0x0601A2EF RID: 107247 RVA: 0x0074FB40 File Offset: 0x0074DD40
public RigidbodyEx BOLBONELAEF
{
get
{
return this._rigidbodyEx;
}
}
// Token: 0x17000BD9 RID: 3033
// (get) Token: 0x0601A2F1 RID: 107249 RVA: 0x0074FBBC File Offset: 0x0074DDBC
public bool OENFNNKPPDO
{
get
{
return this.CGEBKBGBMOC.Count > 0 || this.JOCDAIMIIBA.Count > 0;
}
}
// Token: 0x0601A2F2 RID: 107250 RVA: 0x0074FBE0 File Offset: 0x0074DDE0
private Tool DJLJMHPBEHO()
{
Vector3 vector = this.BKGMPOGLLEP();
Vector3 vector2 = this.FLPFLKNOKLB + vector * this.OJOCJMPNIFM;
float num = this.GOBPCNKPCHO - 2f * this.OJOCJMPNIFM;
int num2 = Physics.SphereCastNonAlloc(vector2, this.OJOCJMPNIFM, vector, PlayerHand.CIDHHCELAFL, num, 495330304);
float num3 = float.MaxValue;
float num4 = float.MaxValue;
Tool tool = null;
Collider collider = null;
for (int i = 0; i < num2; i++)
{
Collider collider2 = PlayerHand.CIDHHCELAFL[i].collider;
Tool tool2 = collider2.OBFMDIEKHAN();
if (tool2 != null)
{
tool2 = tool2.SelectForwardedTool(this.PIDHHBENFCO, false);
}
if (tool2 != null && tool2.IsValidPickup(this.PIDHHBENFCO, false))
{
Bounds bounds = tool2.OIFMPLDILLP;
if (bounds.size.sqrMagnitude <= Mathf.Epsilon)
{
bounds = collider2.bounds;
}
Vector3 center = bounds.center;
Vector3 vector3 = this.FLPFLKNOKLB - center;
Vector3 vector4 = vector3 - Vector3.Project(vector3, vector);
float magnitude = bounds.extents.magnitude;
Vector3 vector5 = center + vector4.normalized * magnitude;
Vector3 vector6 = vector5 - this.FLPFLKNOKLB;
float num5 = Vector3.Dot(vector6, vector);
if (num5 >= 0f && num5 < num3)
{
tool = tool2;
num3 = num5;
collider = collider2;
num4 = vector3.magnitude;
}
}
}
this.EPHIIMAGKMG(ref tool, ref num4, this.GIEJDBFCDNJ, false);
if (tool != null && tool.HighlightedCollider == null)
{
tool.HighlightedCollider = collider;
}
return tool;
}
// Token: 0x0601A2F3 RID: 107251 RVA: 0x0074FDBC File Offset: 0x0074DFBC
private Tool HBEGCNGKELA()
{
Tool tool = null;
float maxValue = float.MaxValue;
this.EPHIIMAGKMG(ref tool, ref maxValue, this.GEJENMPDCJJ, true);
return tool;
}
// Token: 0x0601A2F4 RID: 107252 RVA: 0x0074FDE4 File Offset: 0x0074DFE4
private bool DFAOEJBBDII(bool JJAJABJMPIO)
{
if (this.LCJGDOEIFPF && JJAJABJMPIO && this.JPPGKCGAOHN != null && this.JPPGKCGAOHN.HGMHHPNDECD != null)
{
Outfit outfit = this.JPPGKCGAOHN.HGMHHPNDECD;
if (outfit != null)
{
this.PIDHHBENFCO.NMPMNBCNGBE.RemoveOutfitByHand(this.JPPGKCGAOHN.IFJFHJGNJDO.HPEJLADOJPP);
outfit.BKDFLNGCINH.NIINOABKAPJ = true;
outfit.DontCollideWithPlayer(1f);
outfit.transform.position = this.JPPGKCGAOHN.transform.position;
outfit.transform.localRotation = this.JPPGKCGAOHN.transform.rotation;
this.TryPickupTool(outfit.BKDFLNGCINH, false);
}
else
{
global::UnityEngine.Debug.LogWarning("Null outfitTool in TryRemoveTriggeredOutfit");
}
this.JKNCHBFALCJ.KFGEOMPOOLM = true;
return true;
}
return false;
}
// Token: 0x17000BCA RID: 3018
// (get) Token: 0x0601A2F5 RID: 107253 RVA: 0x0074FEDC File Offset: 0x0074E0DC
// (set) Token: 0x0601A316 RID: 107286 RVA: 0x0075098C File Offset: 0x0074EB8C
public float GOBPCNKPCHO { get; set; }
// Token: 0x17000BC4 RID: 3012
// (get) Token: 0x0601A2F6 RID: 107254 RVA: 0x0074FEE4 File Offset: 0x0074E0E4
public Player PIDHHBENFCO
{
get
{
return this._thisPlayer;
}
}
// Token: 0x17000BC2 RID: 3010
// (get) Token: 0x0601A2F8 RID: 107256 RVA: 0x0074FF74 File Offset: 0x0074E174
public Transform HBHCCNCFADO
{
get
{
return this.watchAnchor;
}
}
// Token: 0x17000BD8 RID: 3032
// (get) Token: 0x0601A2F9 RID: 107257 RVA: 0x0074FF7C File Offset: 0x0074E17C
public bool NGMCOGJDNKC
{
get
{
return this.OOIMAEHGBIC != null;
}
}
// Token: 0x17000BDE RID: 3038
// (get) Token: 0x0601A2FA RID: 107258 RVA: 0x0074FF8C File Offset: 0x0074E18C
// (set) Token: 0x0601A2FC RID: 107260 RVA: 0x0074FFC8 File Offset: 0x0074E1C8
public ControllerIO JKNCHBFALCJ
{
get
{
return this.NAMMKOKOGDH;
}
set
{
if (this.NAMMKOKOGDH != value)
{
if (this.NAMMKOKOGDH)
{
this.NAMMKOKOGDH.FKIMIOHBKML -= this.FJCHMJOGMCA;
}
this.NAMMKOKOGDH = value;
if (this.NAMMKOKOGDH)
{
this.NAMMKOKOGDH.FKIMIOHBKML += this.FJCHMJOGMCA;
}
}
}
}
// Token: 0x0601A2FB RID: 107259 RVA: 0x0074FF94 File Offset: 0x0074E194
public void ResetGravityPickupParameters()
{
this.JLCDJABNNAK = this.defaultGravityPickupFingerOffset;
this.GOBPCNKPCHO = this.defaultGravityPickupCapsuleLength;
this.OJOCJMPNIFM = this.defaultGravityPickupCapsuleRadius;
this.GIEJDBFCDNJ = this.defaultGravityPickupSphereRadius;
}
// Token: 0x0601A2FF RID: 107263 RVA: 0x0075007C File Offset: 0x0074E27C
private void FLMDAILOJME()
{
ViveControllerInput.Instance.OverrideControllerCameraPositions(this.JKNCHBFALCJ, this.menuRaycastStartTransform.position, this.menuRaycastStartTransform.forward);
if (!this.ANGJJOCHMEF || this.JKNCHBFALCJ.PFHCAGDPCDD == null)
{
this.menuLaser.enabled = false;
return;
}
this.menuLaser.enabled = true;
Vector3 value = this.JKNCHBFALCJ.PFHCAGDPCDD.Value;
this.menuLaser.SetPosition(0, this.menuHandVisibleLaserStartPosition.position);
this.menuLaser.SetPosition(1, value);
float num = 0.85f;
if (this.JKNCHBFALCJ.JEOMNPPGDEP.CompareTag("WatchMenu"))
{
if (!this.JKNCHBFALCJ.KCBBEAHDPGB)
{
WatchUI watchMenu = this.PIDHHBENFCO.POJAICMNOFI.MGKHEPFGLAE;
float num2 = Vector3.Dot(this.FingertipTransform.position - watchMenu.transform.position, -watchMenu.transform.forward);
num *= this.MenuLaserDistanceAlpha.Evaluate(num2);
}
}
else if (!this.JKNCHBFALCJ.LDHFKELEHJJ)
{
num = 0.1f;
}
Color black = Color.black;
Color color = Color.white * num;
this.menuLaser.startColor = black;
this.menuLaser.endColor = color;
}
// Token: 0x0601A300 RID: 107264 RVA: 0x007501F4 File Offset: 0x0074E3F4
public bool TryPickupTool(Tool ENBMEDIFBLM, bool BCNGEIAGDJE = false)
{
DDOFAPFDGNL holderInfo = ENBMEDIFBLM.BBGHKANFCHC;
PlayerHand playerHand = ((this.EEAOGJHMFII != PlayerHand.HMMEBFHABKA.Left) ? this.PIDHHBENFCO.BGIBHPOALJG : this.PIDHHBENFCO.KEJBPANGFKK);
bool flag = ENBMEDIFBLM.GEONLHPMMPG != null && ENBMEDIFBLM.GEONLHPMMPG.LNJFOAHGEEA;
bool flag2 = holderInfo.GLPEGFMPABJ == playerHand.OMNGGJICBBI.ADMBCINHJOG;
if (!this.PIDHHBENFCO.MFFGGGFFDAD || (holderInfo.OHGPCMJMFGC && !flag2 && !flag))
{
return false;
}
if (ENBMEDIFBLM.GEONLHPMMPG != null && !ENBMEDIFBLM.GEONLHPMMPG.TryPickupSpawnedEquipment(this.PIDHHBENFCO))
{
return false;
}
Vector3 vector;
Quaternion quaternion;
this.IHOPKMNGBNE(ENBMEDIFBLM, BCNGEIAGDJE, flag2, out vector, out quaternion);
ENBMEDIFBLM.BBGHKANFCHC = DDOFAPFDGNL.ALAHMNNAFLH(base.OMNGGJICBBI.ADMBCINHJOG, vector, quaternion);
return true;
}
// Token: 0x0601A301 RID: 107265 RVA: 0x007502E0 File Offset: 0x0074E4E0
private void BLGJCGFMGLI()
{
if (!this.NHDDPGADJPJ)
{
return;
}
bool flag = (this.NHDDPGADJPJ || this.PIDHHBENFCO.IIEGGLHMOBH) && this.ILGCMIFHJOJ != PlayerHand.AKCKIFINDJE.NOT_CONNECTED && this.JKNCHBFALCJ != null;
PlayerHand.PECNKPNHFPM pecnkpnhfpm = PlayerHand.PECNKPNHFPM.None;
if (flag)
{
bool teleportLaserVisible = this.LPBPJANEHIN.EEMAICNFODK;
bool flag2 = this.FJCNPDENNHN && !teleportLaserVisible && (this.OOIMAEHGBIC == null || this.OOIMAEHGBIC.GEONLHPMMPG == null) && (this.GDJCOHMMKIA == null || this.GDJCOHMMKIA.OHGPCMJMFGC || this.GDJCOHMMKIA.GEONLHPMMPG == null || this.AOAFMPELLPG);
bool flag3 = this.OOIMAEHGBIC != null;
if (teleportLaserVisible)
{
pecnkpnhfpm |= PlayerHand.PECNKPNHFPM.TeleportHand;
pecnkpnhfpm |= ((!flag3) ? PlayerHand.PECNKPNHFPM.DefaultHand : PlayerHand.PECNKPNHFPM.HeldTool);
}
if (flag2)
{
pecnkpnhfpm |= PlayerHand.PECNKPNHFPM.MenuHand;
}
if (flag3 && !flag2)
{
pecnkpnhfpm |= PlayerHand.PECNKPNHFPM.HeldTool;
}
if (!flag3 && !flag2 && !teleportLaserVisible)
{
pecnkpnhfpm |= PlayerHand.PECNKPNHFPM.DefaultHand;
}
}
if (this.KADNEOOJIAB != pecnkpnhfpm)
{
this.KADNEOOJIAB = pecnkpnhfpm;
}
}
// Token: 0x0601A302 RID: 107266 RVA: 0x00750430 File Offset: 0x0074E630
public static void OKPNIBFPKFL(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand DPIIIAGCMLK, PlayerHand BDKNHBMMGPK)
{
if (DPIIIAGCMLK == null || BDKNHBMMGPK == null)
{
return;
}
PlayerHand playerHand;
PlayerHand playerHand2;
PlayerHand.IMNIOCONBNP(DPIIIAGCMLK, BDKNHBMMGPK, out playerHand, out playerHand2);
if (!playerHand2.CADPGMLHFGH.BOFDEADHJKD(playerHand.transform))
{
Transform transform = ((ECDIJHPOHBF != PlayerHandGestures.DMPPGHHPHGO.Fistbump) ? playerHand.highFiveConnectionTransform : playerHand.fistbumpConnectionTransform);
if (transform == null)
{
transform = playerHand2.transform;
}
Vector3 vector = playerHand.transform.InverseTransformPoint(transform.position);
Quaternion quaternion = playerHand.transform.MCKNNGGGBDG(playerHand2.transform.rotation);
playerHand2.CADPGMLHFGH.Pickup(playerHand.transform, vector, quaternion);
}
}
// Token: 0x0601A303 RID: 107267 RVA: 0x007504E4 File Offset: 0x0074E6E4
private Tool EPHIIMAGKMG(ref Tool HKPMBDDDNIG, ref float JCKIPNKPFCH, float DNAIGDPNOEK, bool AABHBODJBNP)
{
int num = Physics.OverlapSphereNonAlloc(this.ILAAPJFLLBC, DNAIGDPNOEK, PlayerHand.KIPBKOCNOJL, 495330304);
Collider collider = null;
for (int i = 0; i < num; i++)
{
Collider collider2 = PlayerHand.KIPBKOCNOJL[i];
Tool tool = collider2.OBFMDIEKHAN();
if (tool != null)
{
tool = tool.SelectForwardedTool(this.PIDHHBENFCO, AABHBODJBNP);
}
if (tool != null && tool.IsValidPickup(this.PIDHHBENFCO, AABHBODJBNP))
{
bool flag;
float num2 = tool.DistanceToTransform(collider2, this.handCenter, out flag);
if ((flag || tool.IgnorePickupDirection) && num2 < JCKIPNKPFCH)
{
HKPMBDDDNIG = tool;
collider = collider2;
JCKIPNKPFCH = num2;
}
}
}
if (HKPMBDDDNIG != null && collider != null && HKPMBDDDNIG.HighlightedCollider == null)
{
HKPMBDDDNIG.HighlightedCollider = collider;
}
return HKPMBDDDNIG;
}
// Token: 0x0601A304 RID: 107268 RVA: 0x007505D8 File Offset: 0x0074E7D8
public LaserTeleporter BMBAGHFDMIE()
{
return this.<GDLAGJKHJJF>k__BackingField;
}
// Token: 0x17000BC9 RID: 3017
// (get) Token: 0x0601A30C RID: 107276 RVA: 0x007507E0 File Offset: 0x0074E9E0
// (set) Token: 0x0601A306 RID: 107270 RVA: 0x00750610 File Offset: 0x0074E810
public float JLCDJABNNAK { get; set; }
// Token: 0x17000BE5 RID: 3045
// (set) Token: 0x0601A307 RID: 107271 RVA: 0x0075061C File Offset: 0x0074E81C
public bool FDMBOMGOBPK
{
set
{
this.BIOPIKIHJGN.SetBool(PlayerHand.KLNDKFBDDOG, value);
}
}
// Token: 0x0601A308 RID: 107272 RVA: 0x00750630 File Offset: 0x0074E830
public Transform ELJHHEBJKHB()
{
return this.watchFaceTransform;
}
// Token: 0x0601A309 RID: 107273 RVA: 0x00750638 File Offset: 0x0074E838
private void NFEFHCMNEMA()
{
if (this.NHDDPGADJPJ)
{
bool flag = !this.LPBPJANEHIN.EEMAICNFODK && this.ILGCMIFHJOJ != PlayerHand.AKCKIFINDJE.NOT_CONNECTED && ((this.OOIMAEHGBIC == null && this.GDJCOHMMKIA == null) || this.menuLaser.enabled || this.OENFNNKPPDO);
this.JKNCHBFALCJ.AANDMKPEJFK = flag;
bool flag2 = (this.JKNCHBFALCJ.AANDMKPEJFK && this.JKNCHBFALCJ.PFHCAGDPCDD != null) || this.OENFNNKPPDO;
if (flag2)
{
this.MCIPFFJNIEE = Time.time;
}
if (flag2 || (!flag2 && Time.time - this.MCIPFFJNIEE > 0.1f))
{
this.FJCNPDENNHN = flag2;
}
}
}
// Token: 0x0601A30A RID: 107274 RVA: 0x00750724 File Offset: 0x0074E924
private bool ALFHHLNFENM(PlayerHand.PECNKPNHFPM CIEGKPGKOMH)
{
return (this.KADNEOOJIAB & CIEGKPGKOMH) == CIEGKPGKOMH;
}
// Token: 0x0601A30B RID: 107275 RVA: 0x00750734 File Offset: 0x0074E934
public static void ConnectHandshake(PlayerHand DPIIIAGCMLK, PlayerHand BDKNHBMMGPK)
{
if (DPIIIAGCMLK == null || BDKNHBMMGPK == null)
{
return;
}
PlayerHand playerHand;
PlayerHand playerHand2;
PlayerHand.IMNIOCONBNP(DPIIIAGCMLK, BDKNHBMMGPK, out playerHand, out playerHand2);
if (!playerHand2.CADPGMLHFGH.IsAttachedTo(playerHand.transform))
{
playerHand.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, true);
playerHand2.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, true);
Vector3 vector = playerHand.transform.InverseTransformPoint(playerHand.handshakeConnectionTransform.position);
Quaternion quaternion = playerHand.transform.MCKNNGGGBDG(playerHand.handshakeConnectionTransform.rotation);
playerHand2.CADPGMLHFGH.Pickup(playerHand.transform, vector, quaternion);
}
}
// Token: 0x140000FD RID: 253
// (add) Token: 0x0601A30D RID: 107277 RVA: 0x007507E8 File Offset: 0x0074E9E8
// (remove) Token: 0x0601A31E RID: 107294 RVA: 0x00750D14 File Offset: 0x0074EF14
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
public event Action<PlayerHand, Tool> OFIHFCEOGGD;
// Token: 0x0601A30E RID: 107278 RVA: 0x00750820 File Offset: 0x0074EA20
public static void FCIBDHOBNJH(PlayerHandGestures.DMPPGHHPHGO ECDIJHPOHBF, PlayerHand GAEKGDCFOJM, NonPlayerGestureTarget MMEBLCBANIL)
{
MMEBLCBANIL.MKGHOOECHGI().ONPCGBIMHKI();
MMEBLCBANIL.FinishGesture(ECDIJHPOHBF);
if (ECDIJHPOHBF == PlayerHandGestures.DMPPGHHPHGO.Fistbump || ECDIJHPOHBF == PlayerHandGestures.DMPPGHHPHGO.StopGestureCharging)
{
GAEKGDCFOJM.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, true);
}
}
// Token: 0x0601A30F RID: 107279 RVA: 0x00750854 File Offset: 0x0074EA54
public static void BreakHandshake(PlayerHand DPIIIAGCMLK, PlayerHand BDKNHBMMGPK)
{
if (DPIIIAGCMLK == null || BDKNHBMMGPK == null)
{
return;
}
PlayerHand playerHand;
PlayerHand playerHand2;
PlayerHand.IMNIOCONBNP(DPIIIAGCMLK, BDKNHBMMGPK, out playerHand, out playerHand2);
playerHand.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, false);
playerHand2.BIOPIKIHJGN.SetBool(PlayerHand.MEKBAGPKMOB, false);
playerHand2.CADPGMLHFGH.Release();
}
// Token: 0x0601A310 RID: 107280 RVA: 0x007508B4 File Offset: 0x0074EAB4
private void Update()
{
if (!this.NHDDPGADJPJ)
{
return;
}
if (this.JKNCHBFALCJ == null)
{
this.ILGCMIFHJOJ = PlayerHand.AKCKIFINDJE.NOT_CONNECTED;
return;
}
if (!this.JKNCHBFALCJ.HJNLIIKJJFO)
{
this.ILGCMIFHJOJ = PlayerHand.AKCKIFINDJE.NOT_CONNECTED;
}
else if (!this.JKNCHBFALCJ.NDPGGDEPEJG)
{
this.ILGCMIFHJOJ = PlayerHand.AKCKIFINDJE.NOT_TRACKING;
}
else
{
this.ILGCMIFHJOJ = PlayerHand.AKCKIFINDJE.CONNECTED_AND_TRACKING;
}
this.BLGJCGFMGLI();
this.OELPHPLPHGP();
this.APFLFGBHOGN();
this.BKLLMMNCKBI();
this.NFEFHCMNEMA();
this.FLMDAILOJME();
}
// Token: 0x17000BC6 RID: 3014
// (get) Token: 0x0601A311 RID: 107281 RVA: 0x0075094C File Offset: 0x0074EB4C
public Animator BIOPIKIHJGN
{
get
{
return this._handAnimator;
}
}
// Token: 0x17000BE2 RID: 3042
// (get) Token: 0x0601A314 RID: 107284 RVA: 0x00750974 File Offset: 0x0074EB74
public bool LCJGDOEIFPF
{
get
{
return this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.DefaultHand);
}
}
// Token: 0x17000BE3 RID: 3043
// (get) Token: 0x0601A315 RID: 107285 RVA: 0x00750980 File Offset: 0x0074EB80
public bool ANGJJOCHMEF
{
get
{
return this.ALFHHLNFENM(PlayerHand.PECNKPNHFPM.MenuHand);
}
}
// Token: 0x0601A319 RID: 107289 RVA: 0x007509A8 File Offset: 0x0074EBA8
private static void IMNIOCONBNP(PlayerHand OLAFDIPBLPA, PlayerHand KINCPHPHEJI, out PlayerHand MJLLPKGMAHG, out PlayerHand CLFFCHIGNLE)
{
if (OLAFDIPBLPA.NHDDPGADJPJ)
{
MJLLPKGMAHG = OLAFDIPBLPA;
CLFFCHIGNLE = KINCPHPHEJI;
}
else if (KINCPHPHEJI.NHDDPGADJPJ)
{
MJLLPKGMAHG = KINCPHPHEJI;
CLFFCHIGNLE = OLAFDIPBLPA;
}
else if (OLAFDIPBLPA.OMNGGJICBBI.ADMBCINHJOG < KINCPHPHEJI.OMNGGJICBBI.ADMBCINHJOG)
{
MJLLPKGMAHG = OLAFDIPBLPA;
CLFFCHIGNLE = KINCPHPHEJI;
}
else
{
MJLLPKGMAHG = KINCPHPHEJI;
CLFFCHIGNLE = OLAFDIPBLPA;
}
}
// Token: 0x0601A31A RID: 107290 RVA: 0x00750A10 File Offset: 0x0074EC10
private void OELPHPLPHGP()
{
MenuHandFollower menuHandFollower = this.PIDHHBENFCO.POJAICMNOFI.MALKDBPJAID;
bool flag = menuHandFollower.AJLEMEFOEKM && menuHandFollower.DHLFMMANFHG && menuHandFollower.GOOPEGBPGIL == this;
if (this.EKLBNGHDMEM && this.ILGCMIFHJOJ != PlayerHand.AKCKIFINDJE.NOT_CONNECTED && !flag && this.PIDHHBENFCO.MFFGGGFFDAD)
{
this.GJDMCCCIOKN();
Tool tool = this.HBEGCNGKELA();
if (tool != null)
{
this.DHELNNBEHPA = true;
}
else
{
tool = this.DJLJMHPBEHO();
this.DHELNNBEHPA = false;
}
this.GDJCOHMMKIA = tool;
}
else
{
this.GDJCOHMMKIA = null;
}
this.BADLOFGKKCD();
}
// Token: 0x0601A31C RID: 107292 RVA: 0x00750B2C File Offset: 0x0074ED2C
private void BADLOFGKKCD()
{
TeleportationPortal teleportationPortal = null;
RaycastHit raycastHit;
if (this.LCJGDOEIFPF && Physics.Raycast(this.handCenter.position - this.handCenter.forward * 0.1f, this.handCenter.forward, out raycastHit, 0.25f, 18433, QueryTriggerInteraction.Collide))
{
teleportationPortal = raycastHit.collider.GetComponent<TeleportationPortal>();
}
if (teleportationPortal != null && teleportationPortal.IHMFEBFHGJG && teleportationPortal.AJFBOLHPEJC)
{
this.GNNILNKJJMH = teleportationPortal;
}
else
{
this.GNNILNKJJMH = null;
}
}
// Token: 0x0601A31D RID: 107293 RVA: 0x00750BD0 File Offset: 0x0074EDD0
private void GJDMCCCIOKN()
{
bool flag = false;
if (SingletonMonoBehaviour<TutorialManager>.NCKMBFBMBFM.AAIPIPEJHLG)
{
int num = Physics.RaycastNonAlloc(this.handCenter.position - this.handCenter.forward * 0.1f, this.handCenter.forward, PlayerHand.CIDHHCELAFL, 0.25f, 32768);
if (num != 0)
{
PlayerHand.CIDHHCELAFL.NAGFLOBIOCK(num);
for (int i = 0; i < num; i++)
{
OutfitTrigger component = PlayerHand.CIDHHCELAFL[i].collider.GetComponent<OutfitTrigger>();
if (component != null && component.IFJFHJGNJDO != null && component.IFJFHJGNJDO.FICBNMJECCH == this.PIDHHBENFCO && component.IFJFHJGNJDO.CurrentBodyPart != ((this.EEAOGJHMFII != PlayerHand.HMMEBFHABKA.Left) ? Player.HDOICGIKKAO.RightHand : Player.HDOICGIKKAO.LeftHand) && component.IFJFHJGNJDO.Type != OutfitManager.AFPKFANHPHO.Shirt && (component.ADLFBEDFCCK || (SessionManager.LBLKKPKBOGD && SpawnedEquipmentDrawer.DrawersOpen)))
{
this.JPPGKCGAOHN = component;
flag = true;
break;
}
}
}
}
if (!flag)
{
this.JPPGKCGAOHN = null;
}
}
// Token: 0x0601A31F RID: 107295 RVA: 0x00750D4C File Offset: 0x0074EF4C
private void IHOPKMNGBNE(Tool ENBMEDIFBLM, bool BCNGEIAGDJE, bool ODIDIKEONLD, out Vector3 HDLALOAIBKA, out Quaternion BCIEAKKEBFA)
{
bool flag = (BCNGEIAGDJE && (ODIDIKEONLD || ENBMEDIFBLM.AlwaysPhysicalPickupOffCenter)) || ENBMEDIFBLM.GravityPickupMode == Tool.GNLFAODEBOE.MAINTAIN_POSITION_MAINTAIN_ORIENTATION;
if (flag)
{
BCIEAKKEBFA = base.transform.MCKNNGGGBDG(ENBMEDIFBLM.transform.rotation);
HDLALOAIBKA = base.transform.InverseTransformPoint(ENBMEDIFBLM.transform.position);
}
else if (ENBMEDIFBLM.GravityPickupMode == Tool.GNLFAODEBOE.SNAP_POSITION_MAINTAIN_ORIENTATION)
{
Transform pickupTransform = ENBMEDIFBLM.GetPickupTransform(this.EEAOGJHMFII == PlayerHand.HMMEBFHABKA.Left);
if (pickupTransform != null)
{
pickupTransform.rotation = base.transform.rotation;
ENBMEDIFBLM.GetHolderSpacePickupTransform(base.transform, this.EEAOGJHMFII == PlayerHand.HMMEBFHABKA.Left, out HDLALOAIBKA, out BCIEAKKEBFA);
}
else
{
Vector3 vector = base.transform.position + Vector3.ProjectOnPlane(ENBMEDIFBLM.transform.position - base.transform.position, this.BKGMPOGLLEP());
HDLALOAIBKA = base.transform.InverseTransformPoint(vector);
BCIEAKKEBFA = base.transform.MCKNNGGGBDG(ENBMEDIFBLM.transform.rotation);
}
}
else
{
ENBMEDIFBLM.GetHolderSpacePickupTransform(base.transform, this.EEAOGJHMFII == PlayerHand.HMMEBFHABKA.Left, out HDLALOAIBKA, out BCIEAKKEBFA);
}
}
// Token: 0x04004728 RID: 18216
[SerializeField]
[Header("Configuration")]
private PlayerHand.HMMEBFHABKA type = PlayerHand.HMMEBFHABKA.Unknown;
// Token: 0x04004729 RID: 18217
[SerializeField]
[Tooltip("Create a window of time before and after the hair trigger is pressed to attempt picking up items.")]
private float hairTriggerReactionWindow = 0.1f;
// Token: 0x0400472A RID: 18218
[SerializeField]
[Header("Magnet Pickup")]
private float defaultGravityPickupFingerOffset;
// Token: 0x0400472B RID: 18219
[SerializeField]
private float defaultGravityPickupCapsuleLength = 2f;
// Token: 0x0400472C RID: 18220
[SerializeField]
private float defaultGravityPickupCapsuleRadius = 0.15f;
// Token: 0x0400472D RID: 18221
[SerializeField]
private float defaultGravityPickupSphereRadius = 0.25f;
// Token: 0x0400472E RID: 18222
[Header("Physical Pickup")]
[SerializeField]
private float defaultPhysicalPickupSphereRadius = 0.11f;
// Token: 0x0400472F RID: 18223
[Header("Remote")]
[SerializeField]
private LaserTeleporter playerHandRemotePrefab;
// Token: 0x04004730 RID: 18224
[SerializeField]
[Header("Menu hand")]
private Transform menuHandRoot;
// Token: 0x04004731 RID: 18225
[Tooltip("Where the actual visible menu laser originates from")]
[FormerlySerializedAs("menuHandLaserStartPosition")]
[SerializeField]
private Transform menuHandVisibleLaserStartPosition;
// Token: 0x04004732 RID: 18226
[SerializeField]
[Tooltip("Where the menu laser raycast originates from")]
private Transform menuRaycastStartTransform;
// Token: 0x04004733 RID: 18227
[SerializeField]
private LineRenderer menuLaser;
// Token: 0x04004734 RID: 18228
[SerializeField]
private BoxCollider menuFinger;
// Token: 0x04004735 RID: 18229
private static readonly int EMPIAOJJGML = Animator.StringToHash("OpenClosed");
// Token: 0x04004736 RID: 18230
private static readonly int MEKBAGPKMOB = Animator.StringToHash("Handshake");
// Token: 0x04004737 RID: 18231
private static readonly int KLNDKFBDDOG = Animator.StringToHash("ThumbsUp");
// Token: 0x04004738 RID: 18232
private const float EAIIFKHKAJP = 0.1f;
// Token: 0x0400473B RID: 18235
public PlayerHand.DFPCNNBKEMA ToolUnlockBehaviorOverride;
// Token: 0x0400473C RID: 18236
[SerializeField]
[Header("Component References")]
private Transform watchMenuOrigin;
// Token: 0x0400473D RID: 18237
[SerializeField]
private Transform watchAnchor;
// Token: 0x0400473E RID: 18238
[SerializeField]
private Transform watchFaceTransform;
// Token: 0x0400473F RID: 18239
[SerializeField]
private Transform handCenter;
// Token: 0x04004740 RID: 18240
[SerializeField]
private Transform meshRoot;
// Token: 0x04004741 RID: 18241
[SerializeField]
private Transform handshakeConnectionTransform;
// Token: 0x04004742 RID: 18242
[SerializeField]
private Transform fistbumpConnectionTransform;
// Token: 0x04004743 RID: 18243
[SerializeField]
private Transform highFiveConnectionTransform;
// Token: 0x04004744 RID: 18244
private PlayerHandCollider[] ABMDMDFANAI;
// Token: 0x04004745 RID: 18245
private Renderer[] JHHOBMNHCKB;
// Token: 0x04004746 RID: 18246
private bool FIACKCNDEMC;
// Token: 0x04004747 RID: 18247
private bool DHELNNBEHPA;
// Token: 0x04004748 RID: 18248
private float MCIPFFJNIEE;
// Token: 0x04004749 RID: 18249
private bool FJCNPDENNHN;
// Token: 0x0400474A RID: 18250
[SerializeField]
[ENMFCLPAKBJ(FOGKDGELKHN.Parent, false)]
private Player _thisPlayer;
// Token: 0x0400474B RID: 18251
[ENMFCLPAKBJ(FOGKDGELKHN.Self, false)]
[SerializeField]
private PlayerHandGestures _gestures;
// Token: 0x0400474C RID: 18252
[SerializeField]
[ENMFCLPAKBJ(FOGKDGELKHN.SelfAndChildren, false)]
private Animator _handAnimator;
// Token: 0x0400474D RID: 18253
[SerializeField]
[ENMFCLPAKBJ(FOGKDGELKHN.Self, false)]
private PlayerHandRigidbodyPickup _rigidbodyPickup;
// Token: 0x0400474E RID: 18254
[SerializeField]
[ENMFCLPAKBJ(FOGKDGELKHN.Self, false)]
private RigidbodyEx _rigidbodyEx;
// Token: 0x04004756 RID: 18262
public float _openClosedAxis;
// Token: 0x04004758 RID: 18264
private readonly List<GameObject> CGEBKBGBMOC = new List<GameObject>();
// Token: 0x04004759 RID: 18265
private readonly List<GameObject> JOCDAIMIIBA = new List<GameObject>();
// Token: 0x0400475A RID: 18266
private Tool DCLHKOBFONK;
// Token: 0x0400475B RID: 18267
private Tool CBDLPECELLI;
// Token: 0x0400475C RID: 18268
private float GPGINLCBNHL;
// Token: 0x0400475D RID: 18269
private OutfitTrigger JNDEPGMAIAG;
// Token: 0x0400475E RID: 18270
private TeleportationPortal HDJHBOLHKOP;
// Token: 0x0400475F RID: 18271
private ControllerIO NAMMKOKOGDH;
// Token: 0x04004760 RID: 18272
private LHLLJPPCDKA<PlayerHand.AKCKIFINDJE> HDFJCNOFFOM;
// Token: 0x04004761 RID: 18273
private LHLLJPPCDKA<PlayerHand.PECNKPNHFPM> OEDFDADBEPD;
// Token: 0x04004762 RID: 18274
[SerializeField]
private AnimationCurve MenuLaserDistanceAlpha = AnimationCurve.Linear(0f, 0f, 0.25f, 1f);
// Token: 0x04004763 RID: 18275
private const int KJNPNCFBJLN = 256;
// Token: 0x04004764 RID: 18276
private static Collider[] KIPBKOCNOJL = new Collider[256];
// Token: 0x04004765 RID: 18277
private static RaycastHit[] CIDHHCELAFL = new RaycastHit[256];
// Token: 0x04004766 RID: 18278
private const float HNNGPEAIPKH = 0.15f;
// Token: 0x04004767 RID: 18279
private const float GDIMJHJMBME = 0.1f;
// Token: 0x04004768 RID: 18280
public Transform FingertipTransform;
// Token: 0x02000CC1 RID: 3265
public enum HMMEBFHABKA
{
// Token: 0x0400476A RID: 18282
Unknown = -1,
// Token: 0x0400476B RID: 18283
Left,
// Token: 0x0400476C RID: 18284
Right
}
// Token: 0x02000CC2 RID: 3266
public enum GCANEEGJKOG
{
// Token: 0x0400476E RID: 18286
HEAD_TO_HAND,
// Token: 0x0400476F RID: 18287
HAND_HALF_VECTOR
}
// Token: 0x02000CC3 RID: 3267
// (Invoke) Token: 0x0601A321 RID: 107297
public delegate void DFPCNNBKEMA();
// Token: 0x02000CC4 RID: 3268
[Flags]
public enum AKCKIFINDJE
{
// Token: 0x04004771 RID: 18289
NOT_CONNECTED = 0,
// Token: 0x04004772 RID: 18290
NOT_TRACKING = 1,
// Token: 0x04004773 RID: 18291
CONNECTED_AND_TRACKING = 2
}
// Token: 0x02000CC5 RID: 3269
[Flags]
public enum PECNKPNHFPM
{
// Token: 0x04004775 RID: 18293
None = 0,
// Token: 0x04004776 RID: 18294
DefaultHand = 1,
// Token: 0x04004777 RID: 18295
MenuHand = 2,
// Token: 0x04004778 RID: 18296
TeleportHand = 4,
// Token: 0x04004779 RID: 18297
HeldTool = 8
}
}