Files
niko 8fc35183db a
2026-04-11 22:19:20 +02:00

527 lines
17 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Persistence;
using UnityEngine;
// Token: 0x02000065 RID: 101
[Token(Token = "0x2000065")]
public class ToolHolder : MonoBehaviourPun, EOCLMMENCKH, CHJEFIDMANE
{
// Token: 0x17000077 RID: 119
// (get) Token: 0x060002C3 RID: 707 RVA: 0x0000EAF8 File Offset: 0x0000CCF8
// (set) Token: 0x060002C4 RID: 708 RVA: 0x0000EB30 File Offset: 0x0000CD30
[Token(Token = "0x17000077")]
public Tool OIDGJKOGAIJ
{
[Token(Token = "0x60002C3")]
[Address(RVA = "0x8417D0", Offset = "0x8405D0", VA = "0x1808417D0")]
get
{
PhotonView photonView = KKPBCOOONNK.BGOPDFHFLOG(this.PJACOKMDMKK.IAHDANBDAAM());
int num = 0;
if (photonView != num)
{
return photonView.GetComponent<Tool>();
}
throw new NullReferenceException();
}
[Token(Token = "0x60002C4")]
[Address(RVA = "0x841890", Offset = "0x840690", VA = "0x180841890")]
set
{
KLLMCPFPIIE<int> pjacokmdmkk = this.PJACOKMDMKK;
int num = 0;
if (value != num)
{
PhotonView photonView = value.JDHMIOJKLCK;
}
}
}
// Token: 0x060002C5 RID: 709 RVA: 0x0000EB60 File Offset: 0x0000CD60
[Token(Token = "0x60002C5")]
[Address(RVA = "0x83FA00", Offset = "0x83E800", VA = "0x18083FA00", Slot = "13")]
protected override void Awake()
{
base..ctor();
Action action = new Action(this.PACLDOILAOG);
KLLMCPFPIIE<int> kllmcpfpiie;
this.PJACOKMDMKK = kllmcpfpiie;
Tool component = base.GetComponent<Tool>();
this.NBHJPDBHDHB = component;
int num = 0;
if (component != num)
{
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
MFBGLIHGCGO<Tool> postPickupEvent = nbhjpdbhdhb.PostPickupEvent;
Action<Tool> action2 = new Action(this.KEDINPKONNH);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action2);
nbhjpdbhdhb.PostPickupEvent = mfbglihgcgo;
}
Transform transform = this.toolCouplingTransform;
int num2 = 0;
if (transform == num2)
{
Transform transform2 = base.transform;
this.toolCouplingTransform = transform2;
}
MFBGLIHGCGO<Tool> staticToolInstantiatedEvent = Tool.StaticToolInstantiatedEvent;
Action<Tool> action3 = new Action(this.KDGFJOBEFLB);
Tool.StaticToolInstantiatedEvent = MFBGLIHGCGO.BPJDFPACLMK(staticToolInstantiatedEvent, action3);
}
// Token: 0x060002C6 RID: 710 RVA: 0x0000EC2C File Offset: 0x0000CE2C
[Token(Token = "0x60002C6")]
[Address(RVA = "0x8413D0", Offset = "0x8401D0", VA = "0x1808413D0")]
private void Start()
{
Tool[] array = global::UnityEngine.Object.FindObjectsOfType<Tool>();
int num = 0;
int length = array.Length;
if (num < length)
{
Tool tool = array[num];
if (!this.JIOFJDJIDHO.Contains(tool))
{
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
if (tool != nbhjpdbhdhb)
{
MFBGLIHGCGO<Tool> postPickupEvent = tool.PostPickupEvent;
Action<Tool> action = new Action(this.OBHCKBMPGII);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action);
tool.PostPickupEvent = mfbglihgcgo;
MFBGLIHGCGO<Tool> postReleaseEvent = tool.PostReleaseEvent;
Action<Tool> action2 = new Action(this.AGGEPLMBAFK);
MFBGLIHGCGO<Tool> mfbglihgcgo2 = MFBGLIHGCGO.BPJDFPACLMK(postReleaseEvent, action2);
tool.PostReleaseEvent = mfbglihgcgo2;
MFBGLIHGCGO<Tool> destroyEvent = tool.DestroyEvent;
Action<Tool> action3 = new Action(this.IOAEKELABOE);
MFBGLIHGCGO<Tool> mfbglihgcgo3 = MFBGLIHGCGO.BPJDFPACLMK(destroyEvent, action3);
tool.DestroyEvent = mfbglihgcgo3;
bool flag = this.JIOFJDJIDHO.Add(tool);
}
}
num++;
}
Tool tool2 = this.initiallyCoupledTool;
int num2 = 0;
if (tool2 != num2)
{
Tool tool3 = this.initiallyCoupledTool;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool3.PostResetEvent;
Action<Tool, Vector3, Quaternion, Vector3, bool> action4 = new Action(this.IAMGBCKGKME);
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd = EAHPNACBLDD.BPJDFPACLMK(postResetEvent, action4);
tool3.PostResetEvent = eahpnacbldd;
Tool tool4 = this.initiallyCoupledTool;
bool hasHolder = tool4.FNFNLDBILFE;
if (this.NCMIKLKBJKK(tool4, hasHolder))
{
if (this.initiallyCoupledTool.OGIBLNIIHDK)
{
Tool tool5 = this.initiallyCoupledTool;
this.OIDGJKOGAIJ = tool5;
throw new NullReferenceException();
}
Tool heldTool = this.OIDGJKOGAIJ;
int num3 = 0;
if (heldTool != num3)
{
this.LCALMKBLEFL(heldTool);
}
}
}
}
// Token: 0x060002C7 RID: 711 RVA: 0x0000EDBC File Offset: 0x0000CFBC
[Token(Token = "0x60002C7")]
[Address(RVA = "0x840570", Offset = "0x83F370", VA = "0x180840570", Slot = "14")]
protected override void OnDestroy()
{
int num;
do
{
num = 0;
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
int num2 = 0;
if (nbhjpdbhdhb != num2)
{
Tool nbhjpdbhdhb2 = this.NBHJPDBHDHB;
MFBGLIHGCGO<Tool> postPickupEvent = nbhjpdbhdhb2.PostPickupEvent;
Action<Tool> action = new Action(this.KEDINPKONNH);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postPickupEvent, action);
nbhjpdbhdhb2.PostPickupEvent = mfbglihgcgo;
}
Tool tool = this.initiallyCoupledTool;
int num3 = 0;
if (tool != num3)
{
Tool tool2 = this.initiallyCoupledTool;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool2.PostResetEvent;
Action<Tool, Vector3, Quaternion, Vector3, bool> action2 = new Action(this.IAMGBCKGKME);
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd = EAHPNACBLDD.GMNMHGMFGOL(postResetEvent, action2);
tool2.PostResetEvent = eahpnacbldd;
}
List<Tool>.Enumerator enumerator = new List(this.JIOFJDJIDHO).GetEnumerator();
bool flag;
if (flag)
{
HashSet<Tool> jiofjdjidho = this.JIOFJDJIDHO;
bool flag2;
while (!flag2)
{
}
bool flag3;
if (flag3)
{
this.initiallyCoupledTool = num;
}
Action<Tool> action3 = new Action(this.OBHCKBMPGII);
Action<Tool> action4 = new Action(this.AGGEPLMBAFK);
Action<Tool> action5 = new Action(this.IOAEKELABOE);
HashSet<Tool> jiofjdjidho2 = this.JIOFJDJIDHO;
}
}
while (num != 0);
MFBGLIHGCGO<Tool> staticToolInstantiatedEvent = Tool.StaticToolInstantiatedEvent;
Action<Tool> action6 = new Action(this.KDGFJOBEFLB);
EAHPNACBLDD eahpnacbldd2;
Tool.StaticToolInstantiatedEvent = eahpnacbldd2;
base.OnDestroy();
}
// Token: 0x060002C8 RID: 712 RVA: 0x0000EEEC File Offset: 0x0000D0EC
[Token(Token = "0x60002C8")]
[Address(RVA = "0x83FE70", Offset = "0x83EC70", VA = "0x18083FE70")]
private void KDGFJOBEFLB(Tool EGFEJGHDNAI)
{
if (!this.JIOFJDJIDHO.Contains(EGFEJGHDNAI))
{
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
if (EGFEJGHDNAI != nbhjpdbhdhb)
{
MFBGLIHGCGO<Tool> postPickupEvent = EGFEJGHDNAI.PostPickupEvent;
Action<Tool> action = new Action(this.OBHCKBMPGII);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action);
EGFEJGHDNAI.PostPickupEvent = mfbglihgcgo;
MFBGLIHGCGO<Tool> postReleaseEvent = EGFEJGHDNAI.PostReleaseEvent;
Action<Tool> action2 = new Action(this.AGGEPLMBAFK);
MFBGLIHGCGO<Tool> mfbglihgcgo2 = MFBGLIHGCGO.BPJDFPACLMK(postReleaseEvent, action2);
EGFEJGHDNAI.PostReleaseEvent = mfbglihgcgo2;
MFBGLIHGCGO<Tool> destroyEvent = EGFEJGHDNAI.DestroyEvent;
Action<Tool> action3 = new Action(this.IOAEKELABOE);
MFBGLIHGCGO<Tool> mfbglihgcgo3 = MFBGLIHGCGO.BPJDFPACLMK(destroyEvent, action3);
EGFEJGHDNAI.DestroyEvent = mfbglihgcgo3;
bool flag = this.JIOFJDJIDHO.Add(EGFEJGHDNAI);
}
}
}
// Token: 0x060002C9 RID: 713 RVA: 0x0000EFA8 File Offset: 0x0000D1A8
[Token(Token = "0x60002C9")]
[Address(RVA = "0x83FCC0", Offset = "0x83EAC0", VA = "0x18083FCC0")]
private void IOAEKELABOE(Tool EGFEJGHDNAI)
{
if (this.JIOFJDJIDHO.Contains(EGFEJGHDNAI))
{
Tool tool = this.initiallyCoupledTool;
if (EGFEJGHDNAI == tool)
{
}
MFBGLIHGCGO<Tool> postPickupEvent = EGFEJGHDNAI.PostPickupEvent;
Action<Tool> action = new Action(this.OBHCKBMPGII);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postPickupEvent, action);
EGFEJGHDNAI.PostPickupEvent = mfbglihgcgo;
MFBGLIHGCGO<Tool> postReleaseEvent = EGFEJGHDNAI.PostReleaseEvent;
Action<Tool> action2 = new Action(this.AGGEPLMBAFK);
MFBGLIHGCGO<Tool> mfbglihgcgo2 = MFBGLIHGCGO.GMNMHGMFGOL(postReleaseEvent, action2);
EGFEJGHDNAI.PostReleaseEvent = mfbglihgcgo2;
MFBGLIHGCGO<Tool> destroyEvent = EGFEJGHDNAI.DestroyEvent;
Action<Tool> action3 = new Action(this.IOAEKELABOE);
MFBGLIHGCGO<Tool> mfbglihgcgo3 = MFBGLIHGCGO.GMNMHGMFGOL(destroyEvent, action3);
EGFEJGHDNAI.DestroyEvent = mfbglihgcgo3;
bool flag = this.JIOFJDJIDHO.Remove(EGFEJGHDNAI);
}
}
// Token: 0x060002CA RID: 714 RVA: 0x0000F064 File Offset: 0x0000D264
[Token(Token = "0x60002CA")]
[Address(RVA = "0x840AB0", Offset = "0x83F8B0", VA = "0x180840AB0")]
private void PACLDOILAOG()
{
Tool heldTool = this.OIDGJKOGAIJ;
int num = 0;
if (heldTool != num)
{
this.LCALMKBLEFL(heldTool);
}
}
// Token: 0x060002CB RID: 715 RVA: 0x0000F08C File Offset: 0x0000D28C
[Token(Token = "0x60002CB")]
[Address(RVA = "0x8400F0", Offset = "0x83EEF0", VA = "0x1808400F0")]
private void LCALMKBLEFL(Tool EGFEJGHDNAI)
{
int num = 0;
if (this.NCMIKLKBJKK(EGFEJGHDNAI, num != 0))
{
AGAJMBPABDL owner = EGFEJGHDNAI.FAGBHOMBNBP;
AGAJMBPABDL owner2 = base.FAGBHOMBNBP;
if (owner != owner2 && EGFEJGHDNAI.OGIBLNIIHDK)
{
if (!this.NBHJPDBHDHB.FNFNLDBILFE)
{
PhotonView photonView = base.JDHMIOJKLCK;
AGAJMBPABDL owner3 = EGFEJGHDNAI.FAGBHOMBNBP;
}
PhotonView photonView2 = EGFEJGHDNAI.JDHMIOJKLCK;
int inpoaaaoahi = this.NBHJPDBHDHB.BHAAHKEILOG.BHNPNHMILIF.INPOAAAOAHI;
photonView2.TransferOwnership(inpoaaaoahi);
}
EGFEJGHDNAI.SetCollisionLayer(DAJFOCGPHGP.DynamicPhysicsIgnoreDynamicAndPlayerPhysics);
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
RigidbodyPickup rigidbodyPickup = EGFEJGHDNAI.rigidbodyPickup;
Transform transform = this.toolCouplingTransform;
Transform transform2 = this.toolCouplingTransform;
Vector3 vector;
float z = vector.z;
}
}
// Token: 0x060002CC RID: 716 RVA: 0x0000F140 File Offset: 0x0000D340
[Token(Token = "0x60002CC")]
[Address(RVA = "0x83F870", Offset = "0x83E670", VA = "0x18083F870")]
private void AGGEPLMBAFK(Tool EGFEJGHDNAI)
{
if (EGFEJGHDNAI.OGIBLNIIHDK)
{
Transform transform = EGFEJGHDNAI.transform;
Transform transform2 = this.toolCouplingTransform;
Vector3 vector;
float z = vector.z;
Vector3 vector2;
float z2 = vector2.z;
Vector3 vector3;
float z3 = vector3.z;
float num;
if (this.couplingRadius > num)
{
int num2 = 0;
if (this.NCMIKLKBJKK(EGFEJGHDNAI, num2 != 0))
{
this.OIDGJKOGAIJ = EGFEJGHDNAI;
}
}
}
}
// Token: 0x060002CD RID: 717 RVA: 0x0000F1A8 File Offset: 0x0000D3A8
[Token(Token = "0x60002CD")]
[Address(RVA = "0x840430", Offset = "0x83F230", VA = "0x180840430")]
private void OBHCKBMPGII(Tool EGFEJGHDNAI)
{
if (EGFEJGHDNAI.OGIBLNIIHDK)
{
Tool heldTool = this.OIDGJKOGAIJ;
int num = 0;
if (heldTool != num && EGFEJGHDNAI == heldTool)
{
KLLMCPFPIIE<int> pjacokmdmkk = this.PJACOKMDMKK;
int num2 = 0;
bool flag = 0 != num2;
}
}
}
// Token: 0x060002CE RID: 718 RVA: 0x0000F1F4 File Offset: 0x0000D3F4
[Token(Token = "0x60002CE")]
[Address(RVA = "0x840020", Offset = "0x83EE20", VA = "0x180840020")]
private void KEDINPKONNH(Tool EGFEJGHDNAI)
{
Tool heldTool = this.OIDGJKOGAIJ;
int num = 0;
if (heldTool != num)
{
AGAJMBPABDL owner = heldTool.FAGBHOMBNBP;
AGAJMBPABDL owner2 = base.FAGBHOMBNBP;
if (owner != owner2)
{
PhotonView photonView = heldTool.JDHMIOJKLCK;
int inpoaaaoahi = base.FAGBHOMBNBP.INPOAAAOAHI;
photonView.TransferOwnership(inpoaaaoahi);
}
}
}
// Token: 0x060002CF RID: 719 RVA: 0x0000F24C File Offset: 0x0000D44C
[Token(Token = "0x60002CF")]
[Address(RVA = "0x8402A0", Offset = "0x83F0A0", VA = "0x1808402A0")]
private bool NCMIKLKBJKK(Tool EGFEJGHDNAI, bool JPABLMHNOLD)
{
Tool heldTool = this.OIDGJKOGAIJ;
int num = 0;
if (EGFEJGHDNAI != num)
{
Tool nbhjpdbhdhb = this.NBHJPDBHDHB;
if (EGFEJGHDNAI != nbhjpdbhdhb && !JPABLMHNOLD && EGFEJGHDNAI.EFOHKKFPHIB)
{
int num2 = 0;
if (heldTool == num2 || heldTool == EGFEJGHDNAI)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField = EGFEJGHDNAI.<FLFJCIPBAPA>k__BackingField;
int num3 = 0;
bool flag = <FLFJCIPBAPA>k__BackingField == num3;
}
}
}
throw new NullReferenceException();
}
// Token: 0x060002D0 RID: 720 RVA: 0x0000F2C0 File Offset: 0x0000D4C0
[Token(Token = "0x60002D0")]
[Address(RVA = "0x83FC50", Offset = "0x83EA50", VA = "0x18083FC50")]
private void IAMGBCKGKME(Tool EGFEJGHDNAI, Vector3 BNMOCBJEEPN, Quaternion LPHCCEOHNIN, Vector3 GMMJHABHDHE, bool ACPOOMGHPKJ)
{
if (EGFEJGHDNAI.OGIBLNIIHDK)
{
bool hasHolder = EGFEJGHDNAI.FNFNLDBILFE;
if (this.NCMIKLKBJKK(EGFEJGHDNAI, hasHolder))
{
this.OIDGJKOGAIJ = EGFEJGHDNAI;
}
}
}
// Token: 0x17000078 RID: 120
// (get) Token: 0x060002D1 RID: 721 RVA: 0x0000F2F8 File Offset: 0x0000D4F8
[Token(Token = "0x17000078")]
public bool JBMFJOBFJHP
{
[Token(Token = "0x60002D1")]
[Address(RVA = "0x403930", Offset = "0x402730", VA = "0x180403930", Slot = "15")]
get
{
}
}
// Token: 0x060002D2 RID: 722 RVA: 0x0000F308 File Offset: 0x0000D508
[Token(Token = "0x60002D2")]
[Address(RVA = "0x83FC30", Offset = "0x83EA30", VA = "0x18083FC30", Slot = "16")]
public void DeserializeFrom(KPNDFONGDGF HFBJGCHOANH)
{
}
// Token: 0x060002D3 RID: 723 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60002D3")]
[Address(RVA = "0x840B30", Offset = "0x83F930", VA = "0x180840B30", Slot = "18")]
public void PostDeserialize(LJJOCDFAMGA FLIPBCAPDGC)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060002D4 RID: 724 RVA: 0x0000F318 File Offset: 0x0000D518
[Token(Token = "0x60002D4")]
[Address(RVA = "0x841090", Offset = "0x83FE90", VA = "0x180841090", Slot = "17")]
public void SerializeTo(ref PDEKIHFJKHJ IABNDBNHMKF, ref MKNCHKCCIHK NHFINJNIPGK, StringBuilder BIPOIFGEMGB)
{
JBHHCGDLNEF jbhhcgdlnef = new JBHHCGDLNEF();
Tool heldTool = this.OIDGJKOGAIJ;
int num = 0;
if (heldTool != num)
{
PersistenceView component = this.OIDGJKOGAIJ.GetComponent<PersistenceView>();
int num2 = 0;
if (component != num2)
{
object[] array = new object[1];
GameObject gameObject = base.gameObject;
if (gameObject != 0)
{
}
array[0] = gameObject;
Debug.LogErrorFormat(this, "Error serializing ToolHolder {0}: Data already specified.", array);
throw new NullReferenceException();
}
object[] array2 = new object[2];
GameObject gameObject2 = base.gameObject;
if (gameObject2 != 0)
{
}
array2[0] = gameObject2;
GameObject gameObject3 = this.OIDGJKOGAIJ.gameObject;
if (gameObject3 != 0)
{
}
array2[1] = gameObject3;
Debug.LogFormat(this, "Serializing ToolHolder {0}: HeldTool {1} has no corresponding PersistenceView.", array2);
}
}
// Token: 0x060002D5 RID: 725 RVA: 0x0000F3D4 File Offset: 0x0000D5D4
[Token(Token = "0x60002D5")]
[Address(RVA = "0x8409D0", Offset = "0x83F7D0", VA = "0x1808409D0")]
private void OnDrawGizmos()
{
Color cyan = Color.cyan;
Transform transform = this.toolCouplingTransform;
int num = 0;
if (transform != num)
{
Transform transform2 = this.toolCouplingTransform;
}
Transform transform3 = base.transform;
Vector3 vector;
float z = vector.z;
}
// Token: 0x060002D6 RID: 726 RVA: 0x0000F418 File Offset: 0x0000D618
[Token(Token = "0x60002D6")]
[Address(RVA = "0x841760", Offset = "0x840560", VA = "0x180841760")]
public ToolHolder()
{
HashSet<Tool> hashSet = new HashSet();
this.JIOFJDJIDHO = hashSet;
base..ctor();
}
// Token: 0x04000256 RID: 598
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4000256")]
[SerializeField]
private Transform toolCouplingTransform;
// Token: 0x04000257 RID: 599
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4000257")]
[SerializeField]
private float couplingRadius = 0.2f;
// Token: 0x04000258 RID: 600
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4000258")]
[SerializeField]
private Tool initiallyCoupledTool;
// Token: 0x04000259 RID: 601
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4000259")]
private Tool NBHJPDBHDHB;
// Token: 0x0400025A RID: 602
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400025A")]
private KLLMCPFPIIE<int> PJACOKMDMKK;
// Token: 0x0400025B RID: 603
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400025B")]
private readonly HashSet<Tool> JIOFJDJIDHO;
// Token: 0x0400025C RID: 604
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x400025C")]
private PDEKIHFJKHJ LPPMPHKELIF;
}