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

451 lines
15 KiB
C#

using System;
using Photon;
using UnityEngine;
namespace RecRoom.Tools
{
// Token: 0x02000C71 RID: 3185
public class ToolHolster : global::Photon.MonoBehaviour
{
// Token: 0x17000B05 RID: 2821
// (get) Token: 0x060193B0 RID: 103344 RVA: 0x006FC6FC File Offset: 0x006FA8FC
// (set) Token: 0x060193C6 RID: 103366 RVA: 0x006FCE00 File Offset: 0x006FB000
public Tool EIJJPHKNKJF
{
get
{
PhotonView photonView = PhotonView.Find(this.JENOGJHDEJJ.CPIBGJLHLBL());
return (!(photonView != null)) ? null : photonView.GetComponent<Tool>();
}
set
{
this.JENOGJHDEJJ.MEAINJPIECA((!(value != null)) ? (-1) : value.GLPEGFMPABJ);
}
}
// Token: 0x060193B1 RID: 103345 RVA: 0x006FC734 File Offset: 0x006FA934
public void CKCKABFBOAL(Tool NOBAPCOKFIL)
{
this.JENOGJHDEJJ.MEAINJPIECA((!(NOBAPCOKFIL != null)) ? (-1) : NOBAPCOKFIL.GLPEGFMPABJ);
}
// Token: 0x060193B2 RID: 103346 RVA: 0x006FC75C File Offset: 0x006FA95C
public Tool ELMBDLJMIIC()
{
PhotonView photonView = PhotonView.KAKDEOHCKBM(this.JENOGJHDEJJ.CPIBGJLHLBL());
return (!(photonView != null)) ? null : photonView.GetComponent<Tool>();
}
// Token: 0x060193B3 RID: 103347 RVA: 0x006FC794 File Offset: 0x006FA994
private void LJFJILFBKHF()
{
if (this.IOBHAJEGIPI().KKDEBGNKDMG())
{
Vector3 vector = Vector3.zero;
if (Vector3.Dot(this.IOBHAJEGIPI().HFDJIFFPEFM().transform.forward, Vector3.down) < 1009f)
{
vector = Vector3.ProjectOnPlane(this.ADDBOILLBMC().BGOGBEPJGPJ.transform.forward, Vector3.up);
}
else
{
vector = Vector3.ProjectOnPlane(this.CCFHFNOLAIE().AJHHFNCFKNF().transform.up, Vector3.up);
}
float num = Vector3.SignedAngle(Vector3.forward, vector, Vector3.up);
Quaternion quaternion = Quaternion.Euler(534f, num, 1959f);
Vector3 vector2 = this.ADDBOILLBMC().BGOGBEPJGPJ.transform.position + quaternion * this.AEGPAFLFJOM;
this.holsteringTransform.position = vector2;
this.holsteringTransform.rotation = quaternion * this.DECANHNIEFL;
}
}
// Token: 0x060193B4 RID: 103348 RVA: 0x006FC894 File Offset: 0x006FAA94
private bool PDJHPHHIFGN(Tool COMHEONOMBA, Player OAKJPHFELHD, bool AABHBODJBNP)
{
return OAKJPHFELHD == this.MBHLIAEFEAD;
}
// Token: 0x060193B5 RID: 103349 RVA: 0x006FC8A4 File Offset: 0x006FAAA4
private void GKHIDEDLHEF()
{
Tool tool = this.ELMBDLJMIIC();
if (tool != null)
{
tool.CADPGMLHFGH.EMKMANCBLJH();
tool.ONHHDMJGJOA((NILFAGNKNMH)(-9));
tool.RemoveCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
if (base.IGIPCHFCFNN())
{
this.GJBCCMBCBJP(null);
}
}
}
// Token: 0x060193B6 RID: 103350 RVA: 0x006FC8FC File Offset: 0x006FAAFC
public void ANCHPGDFJKM(Tool NOBAPCOKFIL)
{
this.JENOGJHDEJJ.MEAINJPIECA((!(NOBAPCOKFIL != null)) ? (-1) : NOBAPCOKFIL.GLPEGFMPABJ);
}
// Token: 0x060193B7 RID: 103351 RVA: 0x006FC924 File Offset: 0x006FAB24
public void JBLGBAHEGHD(Tool NOBAPCOKFIL)
{
this.JENOGJHDEJJ.MEAINJPIECA((!(NOBAPCOKFIL != null)) ? (-1) : NOBAPCOKFIL.GLPEGFMPABJ);
}
// Token: 0x060193B8 RID: 103352 RVA: 0x006FC94C File Offset: 0x006FAB4C
private void KLICCNGMOHD()
{
Tool holsteredTool = this.EIJJPHKNKJF;
if (holsteredTool != null)
{
holsteredTool.SetCollisionLayer((NILFAGNKNMH)(-74));
Vector3 vector;
Quaternion quaternion;
if (holsteredTool.JPNPCFOFONK != null)
{
vector = holsteredTool.JPNPCFOFONK.InverseTransformPoint(holsteredTool.transform.position);
quaternion = holsteredTool.NAGNAECONBM().MCKNNGGGBDG(holsteredTool.transform.rotation);
}
else
{
holsteredTool.GetHolderSpacePickupTransform(this.holsteringTransform, false, out vector, out quaternion);
}
holsteredTool.CADPGMLHFGH.IKPODAPKACL(this.holsteringTransform, vector, quaternion);
holsteredTool.AddCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
holsteredTool.GravityPickupMode = Tool.GNLFAODEBOE.DISABLED;
holsteredTool.GFBCCFIMFEC += this.CEFAEMMBCPK;
}
}
// Token: 0x060193B9 RID: 103353 RVA: 0x006FCA08 File Offset: 0x006FAC08
private void BHKPBNEPNOC(PlayerHand GAEKGDCFOJM, Tool ENBMEDIFBLM)
{
if (ENBMEDIFBLM.DOGLBLFCGBC && this.ELMBDLJMIIC() == null)
{
int num = this.holsterCollider.BILCNCNIFDJ(-1, QueryTriggerInteraction.UseGlobal, this.NKMCKLCNGEE);
bool flag = this.holsterCollider.FOHLEHDCHCA(GAEKGDCFOJM.transform.position);
if (flag && ENBMEDIFBLM.NEONGIONACF)
{
this.GODAFOJAFAN(ENBMEDIFBLM);
}
}
}
// Token: 0x060193BA RID: 103354 RVA: 0x006FCA78 File Offset: 0x006FAC78
public Player FIDJMMPDCDN()
{
return this._player;
}
// Token: 0x060193BB RID: 103355 RVA: 0x006FCA80 File Offset: 0x006FAC80
public Player CCFHFNOLAIE()
{
return this._player;
}
// Token: 0x060193BC RID: 103356 RVA: 0x006FCA88 File Offset: 0x006FAC88
public void JMHADLKHMLE(Tool NOBAPCOKFIL)
{
this.JENOGJHDEJJ.MEAINJPIECA((!(NOBAPCOKFIL != null)) ? (-1) : NOBAPCOKFIL.GLPEGFMPABJ);
}
// Token: 0x060193BD RID: 103357 RVA: 0x006FCAB0 File Offset: 0x006FACB0
protected virtual void BACNJJKPEOO()
{
base.MICFHMAIGIB();
this.JENOGJHDEJJ = new LHLLJPPCDKA<int>(this, "Missing canvas on ", -1, IKCAJLLAFML.AUTHORITY, new Action(this.KLICCNGMOHD));
this.AEGPAFLFJOM = this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.InverseTransformPoint(this.holsteringTransform.position);
this.DECANHNIEFL = this.NPIAOMGFACJ().HFDJIFFPEFM().transform.MCKNNGGGBDG(this.holsteringTransform.rotation);
if (this.CCFHFNOLAIE().HEGAPJJIPCA())
{
foreach (PlayerHand playerHand in this.ADDBOILLBMC().JPICHJGANKL)
{
playerHand.JALKKMAPMLM += this.BHKPBNEPNOC;
}
}
}
// Token: 0x060193BE RID: 103358 RVA: 0x006FCBA0 File Offset: 0x006FADA0
private void HPELFKJJPPD()
{
Tool holsteredTool = this.EIJJPHKNKJF;
if (holsteredTool != null)
{
holsteredTool.SetCollisionLayer(NILFAGNKNMH.DynamicPhysicsIgnoreDynamicAndPlayerPhysics);
Vector3 vector;
Quaternion quaternion;
if (holsteredTool.JPNPCFOFONK != null)
{
vector = holsteredTool.JPNPCFOFONK.InverseTransformPoint(holsteredTool.transform.position);
quaternion = holsteredTool.JPNPCFOFONK.MCKNNGGGBDG(holsteredTool.transform.rotation);
}
else
{
holsteredTool.GetHolderSpacePickupTransform(this.holsteringTransform, false, out vector, out quaternion);
}
holsteredTool.CADPGMLHFGH.Pickup(this.holsteringTransform, vector, quaternion);
holsteredTool.AddCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
holsteredTool.GravityPickupMode = Tool.GNLFAODEBOE.DISABLED;
holsteredTool.GFBCCFIMFEC += this.CEFAEMMBCPK;
}
}
// Token: 0x060193BF RID: 103359 RVA: 0x006FCC5C File Offset: 0x006FAE5C
private void LPBAEFFPOCH(PlayerHand GAEKGDCFOJM, Tool ENBMEDIFBLM)
{
if (ENBMEDIFBLM.DOGLBLFCGBC && this.EIJJPHKNKJF == null)
{
int num = this.holsterCollider.BILCNCNIFDJ(1049088, QueryTriggerInteraction.Ignore, this.NKMCKLCNGEE);
bool flag = this.holsterCollider.FOHLEHDCHCA(GAEKGDCFOJM.transform.position);
if (flag && ENBMEDIFBLM.NEONGIONACF)
{
this.GODAFOJAFAN(ENBMEDIFBLM);
}
}
}
// Token: 0x17000B04 RID: 2820
// (get) Token: 0x060193C0 RID: 103360 RVA: 0x006FCCCC File Offset: 0x006FAECC
public Player MBHLIAEFEAD
{
get
{
return this._player;
}
}
// Token: 0x060193C1 RID: 103361 RVA: 0x006FCCD4 File Offset: 0x006FAED4
public Player IOBHAJEGIPI()
{
return this._player;
}
// Token: 0x060193C2 RID: 103362 RVA: 0x006FCCDC File Offset: 0x006FAEDC
private void NPFCOFCFFEE()
{
Tool tool = this.ELMBDLJMIIC();
if (tool != null)
{
tool.ONHHDMJGJOA((NILFAGNKNMH)96);
Vector3 vector;
Quaternion quaternion;
if (tool.NAGNAECONBM() != null)
{
vector = tool.NAGNAECONBM().InverseTransformPoint(tool.transform.position);
quaternion = tool.NAGNAECONBM().MCKNNGGGBDG(tool.transform.rotation);
}
else
{
tool.GetHolderSpacePickupTransform(this.holsteringTransform, false, out vector, out quaternion);
}
tool.CADPGMLHFGH.DKMPHIJMFNC(this.holsteringTransform, vector, quaternion);
tool.AddCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
tool.GravityPickupMode = Tool.GNLFAODEBOE.DISABLED;
tool.GFBCCFIMFEC += this.CEFAEMMBCPK;
}
}
// Token: 0x060193C3 RID: 103363 RVA: 0x006FCD98 File Offset: 0x006FAF98
public Player ADDBOILLBMC()
{
return this._player;
}
// Token: 0x060193C4 RID: 103364 RVA: 0x006FCDA0 File Offset: 0x006FAFA0
private void PHJPOJHKODE()
{
Tool tool = this.ELMBDLJMIIC();
if (tool != null)
{
tool.CADPGMLHFGH.BDJINEJMDHH();
tool.SetCollisionLayer((NILFAGNKNMH)126);
tool.RemoveCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
if (base.JNOCCMDBMIO())
{
this.JBLGBAHEGHD(null);
}
}
}
// Token: 0x060193C5 RID: 103365 RVA: 0x006FCDF8 File Offset: 0x006FAFF8
public Player NPIAOMGFACJ()
{
return this._player;
}
// Token: 0x060193C7 RID: 103367 RVA: 0x006FCE28 File Offset: 0x006FB028
protected virtual void MPFILNDGMBF()
{
this.GKHIDEDLHEF();
base.DDJMPFMAKDO();
}
// Token: 0x060193C8 RID: 103368 RVA: 0x006FCE38 File Offset: 0x006FB038
private void CEFAEMMBCPK(Tool ENBMEDIFBLM)
{
ENBMEDIFBLM.GFBCCFIMFEC -= this.CEFAEMMBCPK;
ENBMEDIFBLM.RemoveCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
ENBMEDIFBLM.GravityPickupMode = Tool.GNLFAODEBOE.SNAP_POSITION_SNAP_ORIENTATION;
if (base.BHCCHBHNHCG)
{
this.EIJJPHKNKJF = null;
}
}
// Token: 0x060193C9 RID: 103369 RVA: 0x006FCE78 File Offset: 0x006FB078
private void GODAFOJAFAN(Tool ENBMEDIFBLM)
{
if (base.BHCCHBHNHCG && ENBMEDIFBLM.BHCCHBHNHCG)
{
this.EIJJPHKNKJF = ENBMEDIFBLM;
}
}
// Token: 0x060193CA RID: 103370 RVA: 0x006FCE98 File Offset: 0x006FB098
protected override void Awake()
{
base.Awake();
this.JENOGJHDEJJ = new LHLLJPPCDKA<int>(this, "H_TL", -1, IKCAJLLAFML.AUTHORITY, new Action(this.HPELFKJJPPD));
this.AEGPAFLFJOM = this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.InverseTransformPoint(this.holsteringTransform.position);
this.DECANHNIEFL = this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.MCKNNGGGBDG(this.holsteringTransform.rotation);
if (this.MBHLIAEFEAD.NHDDPGADJPJ)
{
foreach (PlayerHand playerHand in this.MBHLIAEFEAD.JPICHJGANKL)
{
playerHand.JALKKMAPMLM += this.LPBAEFFPOCH;
}
}
}
// Token: 0x060193CB RID: 103371 RVA: 0x006FCF88 File Offset: 0x006FB188
private void LPEMGNLAHMJ(Tool ENBMEDIFBLM)
{
ENBMEDIFBLM.GFBCCFIMFEC -= this.LPEMGNLAHMJ;
ENBMEDIFBLM.RemoveCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
ENBMEDIFBLM.GravityPickupMode = Tool.GNLFAODEBOE.SNAP_POSITION_SNAP_ORIENTATION;
if (base.DFJFKOLLEMK())
{
this.JBLGBAHEGHD(null);
}
}
// Token: 0x060193CC RID: 103372 RVA: 0x006FCFC8 File Offset: 0x006FB1C8
public void DMGJHIPOAOK(Tool NOBAPCOKFIL)
{
this.JENOGJHDEJJ.MEAINJPIECA((!(NOBAPCOKFIL != null)) ? (-1) : NOBAPCOKFIL.GLPEGFMPABJ);
}
// Token: 0x060193CD RID: 103373 RVA: 0x006FCFF0 File Offset: 0x006FB1F0
private void GMHBKENFHDD(PlayerHand GAEKGDCFOJM, Tool ENBMEDIFBLM)
{
if (ENBMEDIFBLM.DOGLBLFCGBC && this.ELMBDLJMIIC() == null)
{
int num = this.holsterCollider.BILCNCNIFDJ(-155, QueryTriggerInteraction.Ignore, this.NKMCKLCNGEE);
bool flag = this.holsterCollider.FOHLEHDCHCA(GAEKGDCFOJM.transform.position);
if (flag && ENBMEDIFBLM.NEONGIONACF)
{
this.GODAFOJAFAN(ENBMEDIFBLM);
}
}
}
// Token: 0x060193CE RID: 103374 RVA: 0x006FD060 File Offset: 0x006FB260
private void Update()
{
if (this.MBHLIAEFEAD.NHDDPGADJPJ)
{
Vector3 vector = Vector3.zero;
if (Vector3.Dot(this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.forward, Vector3.down) < 0.45f)
{
vector = Vector3.ProjectOnPlane(this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.forward, Vector3.up);
}
else
{
vector = Vector3.ProjectOnPlane(this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.up, Vector3.up);
}
float num = Vector3.SignedAngle(Vector3.forward, vector, Vector3.up);
Quaternion quaternion = Quaternion.Euler(0f, num, 0f);
Vector3 vector2 = this.MBHLIAEFEAD.BGOGBEPJGPJ.transform.position + quaternion * this.AEGPAFLFJOM;
this.holsteringTransform.position = vector2;
this.holsteringTransform.rotation = quaternion * this.DECANHNIEFL;
}
}
// Token: 0x060193CF RID: 103375 RVA: 0x006FD160 File Offset: 0x006FB360
private void JBDJGBLFIHJ()
{
Tool holsteredTool = this.EIJJPHKNKJF;
if (holsteredTool != null)
{
holsteredTool.CADPGMLHFGH.Release();
holsteredTool.SetCollisionLayer(NILFAGNKNMH.DynamicPhysics);
holsteredTool.RemoveCustomPickupCondition(new Tool.CFIAHKNGIKI(this.PDJHPHHIFGN));
if (base.BHCCHBHNHCG)
{
this.EIJJPHKNKJF = null;
}
}
}
// Token: 0x060193D0 RID: 103376 RVA: 0x006FD1B8 File Offset: 0x006FB3B8
public void GJBCCMBCBJP(Tool NOBAPCOKFIL)
{
this.JENOGJHDEJJ.MEAINJPIECA((!(NOBAPCOKFIL != null)) ? (-1) : NOBAPCOKFIL.GLPEGFMPABJ);
}
// Token: 0x060193D1 RID: 103377 RVA: 0x006FD1E0 File Offset: 0x006FB3E0
protected override void OnDestroy()
{
this.JBDJGBLFIHJ();
base.OnDestroy();
}
// Token: 0x060193D3 RID: 103379 RVA: 0x006FD21C File Offset: 0x006FB41C
private void EEPEOCMOGIL()
{
if (this.ADDBOILLBMC().NHDDPGADJPJ)
{
Vector3 vector = Vector3.zero;
if (Vector3.Dot(this.ADDBOILLBMC().BGOGBEPJGPJ.transform.forward, Vector3.down) < 234f)
{
vector = Vector3.ProjectOnPlane(this.IOBHAJEGIPI().BGOGBEPJGPJ.transform.forward, Vector3.up);
}
else
{
vector = Vector3.ProjectOnPlane(this.ADDBOILLBMC().AJHHFNCFKNF().transform.up, Vector3.up);
}
float num = Vector3.SignedAngle(Vector3.forward, vector, Vector3.up);
Quaternion quaternion = Quaternion.Euler(486f, num, 908f);
Vector3 vector2 = this.MBHLIAEFEAD.AJHHFNCFKNF().transform.position + quaternion * this.AEGPAFLFJOM;
this.holsteringTransform.position = vector2;
this.holsteringTransform.rotation = quaternion * this.DECANHNIEFL;
}
}
// Token: 0x0400447C RID: 17532
[SerializeField]
private BoxCollider holsterCollider;
// Token: 0x0400447D RID: 17533
[SerializeField]
private Transform holsteringTransform;
// Token: 0x0400447E RID: 17534
[ENMFCLPAKBJ(FOGKDGELKHN.Parent, false)]
[SerializeField]
private Player _player;
// Token: 0x0400447F RID: 17535
private Collider[] NKMCKLCNGEE = new Collider[32];
// Token: 0x04004480 RID: 17536
private Vector3 AEGPAFLFJOM = Vector3.zero;
// Token: 0x04004481 RID: 17537
private Quaternion DECANHNIEFL = Quaternion.identity;
// Token: 0x04004482 RID: 17538
private LHLLJPPCDKA<int> JENOGJHDEJJ;
}
}