316 lines
10 KiB
C#
316 lines
10 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using Photon.Pun;
|
|
using Photon.Realtime;
|
|
using RecRoom.Core.AI;
|
|
using RecRoom.Core.Combat;
|
|
using RecRoom.Core.Pools;
|
|
using RecRoom.Networking.RPC;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Tools.Weapons
|
|
{
|
|
// Token: 0x02002682 RID: 9858
|
|
[Token(Token = "0x2002682")]
|
|
[StructLayout(3)]
|
|
public class ExplosiveWeaponAddon : MonoBehaviourPun
|
|
{
|
|
// Token: 0x060111B9 RID: 70073 RVA: 0x00408FA0 File Offset: 0x004071A0
|
|
[Token(Token = "0x60111B9")]
|
|
[Address(RVA = "0x1942340", Offset = "0x1940D40", VA = "0x181942340", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
base..ctor();
|
|
EMPJPPLIPMG oejmnkbjchc = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.HCEABLFOLPA hceablfolpa = new EMPJPPLIPMG.HCEABLFOLPA(this.CDIOEBNIGJF);
|
|
oejmnkbjchc.BEKCCHHMPEH += hceablfolpa;
|
|
EMPJPPLIPMG oejmnkbjchc2 = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.HPBJOLBAKDB hpbjolbakdb = new EMPJPPLIPMG.HPBJOLBAKDB(this.EEHAEDNIDDK);
|
|
oejmnkbjchc2.JMKEOLOEKFM += hpbjolbakdb;
|
|
EMPJPPLIPMG oejmnkbjchc3 = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.EKKCNCNMEOB ekkcncnmeob = new EMPJPPLIPMG.EKKCNCNMEOB(this.DJIINLLBBHH);
|
|
oejmnkbjchc3.EIMFCMEGGPP += ekkcncnmeob;
|
|
EMPJPPLIPMG oejmnkbjchc4 = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.KNGHDKHHMIK knghdkhhmik = new EMPJPPLIPMG.KNGHDKHHMIK(this.HMOBOJKIGPO);
|
|
oejmnkbjchc4.KBMHDAGMLAF += knghdkhhmik;
|
|
Weapon weapon = this.weapon;
|
|
int num = 0;
|
|
if (weapon != num)
|
|
{
|
|
Weapon weapon2 = this.weapon;
|
|
Weapon.GOJEHKCBHJO gojehkcbhjo = new Weapon.GOJEHKCBHJO(this.KMMBHPBHFMC);
|
|
weapon2.NLGDEPFDHJO += gojehkcbhjo;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111BA RID: 70074 RVA: 0x00409064 File Offset: 0x00407264
|
|
[Token(Token = "0x60111BA")]
|
|
[Address(RVA = "0x1943090", Offset = "0x1941A90", VA = "0x181943090", Slot = "14")]
|
|
protected override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
EMPJPPLIPMG oejmnkbjchc = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.HCEABLFOLPA hceablfolpa = new EMPJPPLIPMG.HCEABLFOLPA(this.CDIOEBNIGJF);
|
|
oejmnkbjchc.BEKCCHHMPEH -= hceablfolpa;
|
|
EMPJPPLIPMG oejmnkbjchc2 = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.HPBJOLBAKDB hpbjolbakdb = new EMPJPPLIPMG.HPBJOLBAKDB(this.EEHAEDNIDDK);
|
|
oejmnkbjchc2.JMKEOLOEKFM -= hpbjolbakdb;
|
|
EMPJPPLIPMG oejmnkbjchc3 = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.EKKCNCNMEOB ekkcncnmeob = new EMPJPPLIPMG.EKKCNCNMEOB(this.DJIINLLBBHH);
|
|
oejmnkbjchc3.EIMFCMEGGPP -= ekkcncnmeob;
|
|
EMPJPPLIPMG oejmnkbjchc4 = this.OEJMNKBJCHC;
|
|
EMPJPPLIPMG.KNGHDKHHMIK knghdkhhmik = new EMPJPPLIPMG.KNGHDKHHMIK(this.HMOBOJKIGPO);
|
|
oejmnkbjchc4.KBMHDAGMLAF -= knghdkhhmik;
|
|
Weapon weapon = this.weapon;
|
|
int num = 0;
|
|
if (weapon != num)
|
|
{
|
|
Weapon weapon2 = this.weapon;
|
|
Weapon.GOJEHKCBHJO gojehkcbhjo = new Weapon.GOJEHKCBHJO(this.KMMBHPBHFMC);
|
|
weapon2.NLGDEPFDHJO -= gojehkcbhjo;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111BB RID: 70075 RVA: 0x00409128 File Offset: 0x00407328
|
|
[Token(Token = "0x60111BB")]
|
|
[Address(RVA = "0x1942C30", Offset = "0x1941630", VA = "0x181942C30")]
|
|
private void KMMBHPBHFMC(Weapon GDIGKHINJCG, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
|
|
{
|
|
if (MJJOHHLGOGK && base.hasAuthority)
|
|
{
|
|
BreakableObject breakableObject = this.breakableObject;
|
|
int num = 0;
|
|
if ((!(breakableObject != num) || this.breakableObject.MGPIPKGDLIO) && (this.canExplodeWhenHeld || !GDIGKHINJCG._tool.FNFNLDBILFE))
|
|
{
|
|
PhotonView photonView = base.photonView;
|
|
RPCActions.RPCAction<Vector3> rpcaction = new RPCActions.RPCAction(this.RpcExplode);
|
|
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
|
|
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111BC RID: 70076 RVA: 0x004091B0 File Offset: 0x004073B0
|
|
[Token(Token = "0x60111BC")]
|
|
[Address(RVA = "0x1942DA0", Offset = "0x19417A0", VA = "0x181942DA0")]
|
|
private void NHLAPKJKCLJ(Vector3 KPLDEODOJID)
|
|
{
|
|
PooledParticle pooledParticle = this.explosionParticles;
|
|
int num = 0;
|
|
if (pooledParticle != num)
|
|
{
|
|
GlobalPool instance = GlobalPool.ONCPNMDGGKG;
|
|
PooledParticle pooledParticle2 = this.explosionParticles;
|
|
PooledParticle pooledParticle3 = instance.Acquire<PooledParticle>(pooledParticle2);
|
|
int num2 = 0;
|
|
if (pooledParticle3 != num2)
|
|
{
|
|
Quaternion identity = Quaternion.identity;
|
|
float z = KPLDEODOJID.z;
|
|
}
|
|
}
|
|
RecRoomAudioClip recRoomAudioClip = this.explosionAudio;
|
|
float z2 = KPLDEODOJID.z;
|
|
int num3 = 0;
|
|
if ((this.canDamageHolderPlayer ? 1 : 0) == num3)
|
|
{
|
|
Weapon weapon = this.weapon;
|
|
int num4 = 0;
|
|
if (weapon != num4)
|
|
{
|
|
Tool tool = this.weapon._tool;
|
|
int num5 = 0;
|
|
if (tool != num5)
|
|
{
|
|
global::Player <OKDFEPHLKCB>k__BackingField = this.weapon._tool.<OKDFEPHLKCB>k__BackingField;
|
|
int num6 = 0;
|
|
if (<OKDFEPHLKCB>k__BackingField != num6)
|
|
{
|
|
global::Player <OKDFEPHLKCB>k__BackingField2 = this.weapon._tool.<OKDFEPHLKCB>k__BackingField;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
EMPJPPLIPMG oejmnkbjchc = this.OEJMNKBJCHC;
|
|
float z3 = KPLDEODOJID.z;
|
|
}
|
|
|
|
// Token: 0x060111BD RID: 70077 RVA: 0x004092A4 File Offset: 0x004074A4
|
|
[Token(Token = "0x60111BD")]
|
|
[Address(RVA = "0x1942500", Offset = "0x1940F00", VA = "0x181942500")]
|
|
private void CDIOEBNIGJF(global::Player EDIBICHIJJH, global::Player.GAHEJKDCLLE EAMJHCGHCIE, GHMDIDJLFMC KNLMJBAKCGF)
|
|
{
|
|
Weapon weapon = this.weapon;
|
|
int num = 0;
|
|
bool flag;
|
|
if (weapon != num && flag)
|
|
{
|
|
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
|
|
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
|
|
float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111BE RID: 70078 RVA: 0x004092F8 File Offset: 0x004074F8
|
|
[Token(Token = "0x60111BE")]
|
|
[Address(RVA = "0x1942960", Offset = "0x1941360", VA = "0x181942960")]
|
|
private void EEHAEDNIDDK(Tool BKKNJFFJBKN, GHMDIDJLFMC KNLMJBAKCGF)
|
|
{
|
|
Weapon weapon = this.weapon;
|
|
int num = 0;
|
|
if (weapon != num)
|
|
{
|
|
Tool tool = this.weapon._tool;
|
|
if (BKKNJFFJBKN != tool && base.hasAuthority)
|
|
{
|
|
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
|
|
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
|
|
float y2 = KNLMJBAKCGF.NKKJICPFILJ.y;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111BF RID: 70079 RVA: 0x00409364 File Offset: 0x00407564
|
|
[Token(Token = "0x60111BF")]
|
|
[Address(RVA = "0x19426A0", Offset = "0x19410A0", VA = "0x1819426A0")]
|
|
private void DJIINLLBBHH(Enemy FDJDEJIKCFH, ANBBFGKPJFD PAKELHPNJDI, GHMDIDJLFMC KNLMJBAKCGF)
|
|
{
|
|
Weapon weapon = this.weapon;
|
|
int num = 0;
|
|
if (weapon != num)
|
|
{
|
|
Weapon weapon2 = this.weapon;
|
|
ENDNBHFKNFL wielder = weapon.PJGAFFNGBMO;
|
|
bool flag;
|
|
if (flag)
|
|
{
|
|
if (base.hasAuthority)
|
|
{
|
|
if (!FDJDEJIKCFH.hasAuthority)
|
|
{
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
bool flag2 = FDJDEJIKCFH.IOGGJAMKGNG();
|
|
}
|
|
Photon.Realtime.Player authority = base.authority;
|
|
int num2 = this.damage;
|
|
}
|
|
Weapon weapon3 = this.weapon;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111C0 RID: 70080 RVA: 0x004093E0 File Offset: 0x004075E0
|
|
[Token(Token = "0x60111C0")]
|
|
[Address(RVA = "0x1942AD0", Offset = "0x19414D0", VA = "0x181942AD0")]
|
|
private void HMOBOJKIGPO(Trap JHIDLPIGNBD, GHMDIDJLFMC KNLMJBAKCGF)
|
|
{
|
|
Weapon weapon = this.weapon;
|
|
int num = 0;
|
|
if (weapon != num && base.hasAuthority)
|
|
{
|
|
if (!JHIDLPIGNBD.hasAuthority)
|
|
{
|
|
PhotonView photonView = JHIDLPIGNBD.photonView;
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
photonView.TransferOwnership(localPlayer);
|
|
}
|
|
JHIDLPIGNBD.MKBHMJKBMIB();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111C1 RID: 70081 RVA: 0x00409438 File Offset: 0x00407638
|
|
[Token(Token = "0x60111C1")]
|
|
[Address(RVA = "0x1943250", Offset = "0x1941C50", VA = "0x181943250")]
|
|
private void OnDrawGizmosSelected()
|
|
{
|
|
Color blue = Color.blue;
|
|
Transform transform = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
}
|
|
|
|
// Token: 0x060111C2 RID: 70082 RVA: 0x00409460 File Offset: 0x00407660
|
|
[Token(Token = "0x60111C2")]
|
|
[Address(RVA = "0x19432D0", Offset = "0x1941CD0", VA = "0x1819432D0")]
|
|
[PunRPC]
|
|
private void RpcExplode(Vector3 KPLDEODOJID)
|
|
{
|
|
float z = KPLDEODOJID.z;
|
|
}
|
|
|
|
// Token: 0x060111C3 RID: 70083 RVA: 0x00409474 File Offset: 0x00407674
|
|
[Token(Token = "0x60111C3")]
|
|
[Address(RVA = "0x1943300", Offset = "0x1941D00", VA = "0x181943300")]
|
|
public ExplosiveWeaponAddon()
|
|
{
|
|
EMPJPPLIPMG empjpplipmg = new EMPJPPLIPMG();
|
|
this.OEJMNKBJCHC = empjpplipmg;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400B5F9 RID: 46585
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400B5F9")]
|
|
[SerializeField]
|
|
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
|
|
private Weapon weapon;
|
|
|
|
// Token: 0x0400B5FA RID: 46586
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400B5FA")]
|
|
[SerializeField]
|
|
[OCIDFHDICIP(JIBDPHMGEGO.Self, false, false)]
|
|
private BreakableObject breakableObject;
|
|
|
|
// Token: 0x0400B5FB RID: 46587
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x400B5FB")]
|
|
[SerializeField]
|
|
[Header("Explosion")]
|
|
private float radius = 3f;
|
|
|
|
// Token: 0x0400B5FC RID: 46588
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
|
|
[Token(Token = "0x400B5FC")]
|
|
[SerializeField]
|
|
private float force = 30f;
|
|
|
|
// Token: 0x0400B5FD RID: 46589
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x400B5FD")]
|
|
[SerializeField]
|
|
private int damage = (int)((ulong)100L);
|
|
|
|
// Token: 0x0400B5FE RID: 46590
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x400B5FE")]
|
|
[SerializeField]
|
|
private bool canDamageHolderPlayer;
|
|
|
|
// Token: 0x0400B5FF RID: 46591
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x5D")]
|
|
[Token(Token = "0x400B5FF")]
|
|
[SerializeField]
|
|
private bool canExplodeWhenHeld;
|
|
|
|
// Token: 0x0400B600 RID: 46592
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400B600")]
|
|
[SerializeField]
|
|
[Header("Feedback")]
|
|
private PooledParticle explosionParticles;
|
|
|
|
// Token: 0x0400B601 RID: 46593
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400B601")]
|
|
[SerializeField]
|
|
private RecRoomAudioClip explosionAudio;
|
|
|
|
// Token: 0x0400B602 RID: 46594
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400B602")]
|
|
private EMPJPPLIPMG OEJMNKBJCHC;
|
|
}
|
|
}
|