811 lines
23 KiB
C#
811 lines
23 KiB
C#
using System;
|
|
using System.Collections;
|
|
using Photon;
|
|
using RecRoom.Core.AI;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x02000176 RID: 374
|
|
[RequireComponent(typeof(Tool))]
|
|
public class BreakableObject : global::Photon.MonoBehaviour
|
|
{
|
|
// Token: 0x06004E3A RID: 20026 RVA: 0x00183B18 File Offset: 0x00181D18
|
|
protected bool EAOKGDKMOON()
|
|
{
|
|
return this.CNHBPJFLDCE <= 0 || this.BJIPCMECDNK().CADPGMLHFGH.LALEBNJLDAN() || !this.AKKGBNFCCEO().OHGPCMJMFGC;
|
|
}
|
|
|
|
// Token: 0x06004E3B RID: 20027 RVA: 0x00183B4C File Offset: 0x00181D4C
|
|
private void OnDisable()
|
|
{
|
|
this.NIGLIMBINJB();
|
|
}
|
|
|
|
// Token: 0x06004E3C RID: 20028 RVA: 0x00183B54 File Offset: 0x00181D54
|
|
private void MCDEAPGMOPH(Vector3 IGOFELJMFOF)
|
|
{
|
|
if (this.MKDIKOHNIJN() > 1)
|
|
{
|
|
return;
|
|
}
|
|
if (base.DFJFKOLLEMK() && !this.MEBKEANPEDH && this.CNHBPJFLDCE <= 0)
|
|
{
|
|
PhotonView photonView = base.EKPBHKFHMON();
|
|
string text = "Forced experiment value {0} for test {1} isn't valid";
|
|
IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.All;
|
|
object[] array = new object[0];
|
|
array[1] = IGOFELJMFOF;
|
|
photonView.JJLACCMJEMB(text, ihcpdnljmmd, array);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E3D RID: 20029 RVA: 0x00183BB0 File Offset: 0x00181DB0
|
|
public Tool BJIPCMECDNK()
|
|
{
|
|
return this.<BNFAJPHLEFC>k__BackingField;
|
|
}
|
|
|
|
// Token: 0x06004E3E RID: 20030 RVA: 0x00183BB8 File Offset: 0x00181DB8
|
|
private IEnumerator EGABOICNIPF()
|
|
{
|
|
for (float num = 0f; num < this.brokenLifetime; num += Time.deltaTime)
|
|
{
|
|
yield return null;
|
|
}
|
|
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BKDFLNGCINH != null)
|
|
{
|
|
this.BKDFLNGCINH.MasterDisableAndMoveToLastSpawnPosition();
|
|
}
|
|
this.AAMGCOILKKB = null;
|
|
yield break;
|
|
}
|
|
|
|
// Token: 0x06004E3F RID: 20031 RVA: 0x00183BD4 File Offset: 0x00181DD4
|
|
public int MMIAMJJMKKF()
|
|
{
|
|
return this.JIHKECPJGJI.CPIBGJLHLBL();
|
|
}
|
|
|
|
// Token: 0x06004E40 RID: 20032 RVA: 0x00183BE4 File Offset: 0x00181DE4
|
|
private void CADEDHJGPMM()
|
|
{
|
|
if (this.BJIPCMECDNK() != null && this.BKDFLNGCINH.ACAJJPKPKBH != null)
|
|
{
|
|
this.AKKGBNFCCEO().ACAJJPKPKBH.supportsAnimateOut = false;
|
|
}
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(false);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.fracturedObject.SetActive(false);
|
|
}
|
|
this.FFBEABHGHNH();
|
|
}
|
|
|
|
// Token: 0x06004E41 RID: 20033 RVA: 0x00183C6C File Offset: 0x00181E6C
|
|
private void GIEADMMJCKD()
|
|
{
|
|
this.GONPABMHKIO();
|
|
}
|
|
|
|
// Token: 0x06004E42 RID: 20034 RVA: 0x00183C74 File Offset: 0x00181E74
|
|
protected void OLOMPJBEGFH(Tool COMHEONOMBA, Vector3 MMBLAFNAPPJ, Vector3 FHFHOMKFHCI)
|
|
{
|
|
this.IOPLBBFDOBI(MMBLAFNAPPJ);
|
|
}
|
|
|
|
// Token: 0x06004E43 RID: 20035 RVA: 0x00183C80 File Offset: 0x00181E80
|
|
protected virtual void EELLOJHIKNI(Tool COMHEONOMBA, Weapon BLBPGNFCBEO, FLDPCEKNKCA BDOBLEKAEAM, Vector3 FHFHOMKFHCI)
|
|
{
|
|
if (base.DGLOKLCEMLH() && this.CNHBPJFLDCE > 0 && this.IsBreakable)
|
|
{
|
|
this.KDKHBPGMLMC(0);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E44 RID: 20036 RVA: 0x00183CAC File Offset: 0x00181EAC
|
|
private void OFBGNDHLOLH(Tool NOBAPCOKFIL)
|
|
{
|
|
this.<BNFAJPHLEFC>k__BackingField = NOBAPCOKFIL;
|
|
}
|
|
|
|
// Token: 0x06004E45 RID: 20037 RVA: 0x00183CB8 File Offset: 0x00181EB8
|
|
protected virtual void AGOFPJFKBAD(Tool COMHEONOMBA, Weapon BLBPGNFCBEO, FLDPCEKNKCA BDOBLEKAEAM, Vector3 FHFHOMKFHCI)
|
|
{
|
|
if (base.BHCCHBHNHCG && this.CNHBPJFLDCE > 0 && this.IsBreakable)
|
|
{
|
|
this.CNHBPJFLDCE = 0;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E47 RID: 20039 RVA: 0x00183D14 File Offset: 0x00181F14
|
|
private void EMNDANKLMGF(MeleeWeaponCollider CINAFOGLFIB, Enemy AKICADDPOIF, MHEBDODJGOA BLKHNALGIKL, IHEAKAOGCIF CACIBBKDNIH)
|
|
{
|
|
if (!this.EAOKGDKMOON())
|
|
{
|
|
return;
|
|
}
|
|
if (base.JNOCCMDBMIO())
|
|
{
|
|
if (!AKICADDPOIF.DFJFKOLLEMK())
|
|
{
|
|
AKICADDPOIF.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
|
|
}
|
|
AKICADDPOIF.AuthorityApplyAttack(base.BBHPOAFPKAE(), null, FLDPCEKNKCA.NON_COMBAT_COLLISION, BLKHNALGIKL, this.enemyDamage, CACIBBKDNIH.LLKJDBBNPKB, CACIBBKDNIH.EPIJGDAJDJN);
|
|
AKICADDPOIF.AuthorityOnDamageApplyForce(FLDPCEKNKCA.NON_COMBAT_COLLISION, BLKHNALGIKL, CACIBBKDNIH.PMEFMHLCPMF, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
Vector3 vector = Vector3.Reflect(CACIBBKDNIH.JIIJIFKCMFK, CACIBBKDNIH.EPIJGDAJDJN);
|
|
this.KHKNADICOPF(vector, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
|
|
// Token: 0x06004E48 RID: 20040 RVA: 0x00183DAC File Offset: 0x00181FAC
|
|
private void KANKPHDBOML(Tool NOBAPCOKFIL)
|
|
{
|
|
this.<BNFAJPHLEFC>k__BackingField = NOBAPCOKFIL;
|
|
}
|
|
|
|
// Token: 0x06004E49 RID: 20041 RVA: 0x00183DB8 File Offset: 0x00181FB8
|
|
private void EFLKGLEBHFM(Tool COMHEONOMBA)
|
|
{
|
|
if (this.FPNDEAHEGEM != null)
|
|
{
|
|
for (int i = 0; i < this.FPNDEAHEGEM.Length; i++)
|
|
{
|
|
this.FPNDEAHEGEM[i].enabled = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E4A RID: 20042 RVA: 0x00183DF8 File Offset: 0x00181FF8
|
|
protected virtual void OHPGCELKNLE(Tool ENBMEDIFBLM, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, Vector3 BEDLPFBGLLP, bool JKGMHGAFHPB)
|
|
{
|
|
this.NIGLIMBINJB();
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
this.CNHBPJFLDCE = 1;
|
|
}
|
|
this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = false;
|
|
this.BKDFLNGCINH.NEONGIONACF = true;
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(true);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
for (int i = 0; i < this.EPIODCCPKKH.Length; i++)
|
|
{
|
|
this.EPIODCCPKKH[i].transform.position = base.transform.TransformPoint(this.DFPOIGIMLFM[i]);
|
|
this.EPIODCCPKKH[i].transform.rotation = base.transform.PAFJLHMDIMO(this.EEEEKGHNGKA[i]);
|
|
}
|
|
this.fracturedObject.SetActive(false);
|
|
}
|
|
if (this.FPNDEAHEGEM != null)
|
|
{
|
|
for (int j = 0; j < this.FPNDEAHEGEM.Length; j++)
|
|
{
|
|
this.FPNDEAHEGEM[j].enabled = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E4B RID: 20043 RVA: 0x00183F1C File Offset: 0x0018211C
|
|
private void HGKOIFBANBK(MeleeWeaponCollider CINAFOGLFIB, Tool EEPPNAIKGEO, IHEAKAOGCIF CACIBBKDNIH)
|
|
{
|
|
if (EEPPNAIKGEO != this.BKDFLNGCINH && this.CCMOGPAGILG)
|
|
{
|
|
Vector3 vector = Vector3.Reflect(CACIBBKDNIH.JIIJIFKCMFK, CACIBBKDNIH.EPIJGDAJDJN);
|
|
this.KHKNADICOPF(vector, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E4C RID: 20044 RVA: 0x00183F68 File Offset: 0x00182168
|
|
private void IICJGDIMPLP(Tool NOBAPCOKFIL)
|
|
{
|
|
this.<BNFAJPHLEFC>k__BackingField = NOBAPCOKFIL;
|
|
}
|
|
|
|
// Token: 0x06004E4D RID: 20045 RVA: 0x00183F74 File Offset: 0x00182174
|
|
private void FLDFDOCHDII(Tool COMHEONOMBA)
|
|
{
|
|
if (this.FPNDEAHEGEM != null)
|
|
{
|
|
for (int i = 1; i < this.FPNDEAHEGEM.Length; i += 0)
|
|
{
|
|
this.FPNDEAHEGEM[i].enabled = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E4E RID: 20046 RVA: 0x00183FB4 File Offset: 0x001821B4
|
|
private void NIGLIMBINJB()
|
|
{
|
|
this.MEBKEANPEDH = false;
|
|
if (this.EPIODCCPKKH != null)
|
|
{
|
|
foreach (RagdollPiece ragdollPiece in this.EPIODCCPKKH)
|
|
{
|
|
ragdollPiece.StopRagdoll();
|
|
}
|
|
}
|
|
this.DHGKHIBIEJB();
|
|
}
|
|
|
|
// Token: 0x06004E4F RID: 20047 RVA: 0x00184000 File Offset: 0x00182200
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
this.BKDFLNGCINH = base.GetComponent<Tool>();
|
|
if (this.BKDFLNGCINH == null)
|
|
{
|
|
Debug.LogError(base.name + " is missing Tool component.");
|
|
}
|
|
else
|
|
{
|
|
this.BKDFLNGCINH.CDDKIBBMALJ += this.AGOFPJFKBAD;
|
|
this.BKDFLNGCINH.KFIDJCACMHH += this.OLOMPJBEGFH;
|
|
this.BKDFLNGCINH.MIENIOGEAAB += this.IAHMALMNCML;
|
|
this.BKDFLNGCINH.POJJFNOCIGE += this.OHPGCELKNLE;
|
|
this.BKDFLNGCINH.PLPIAOHJBOB += this.EFLKGLEBHFM;
|
|
}
|
|
this.JIHKECPJGJI = new LHLLJPPCDKA<int>(this, "HP", 1, IKCAJLLAFML.AUTHORITY, new Action(this.FFBEABHGHNH));
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.EPIODCCPKKH = this.fracturedObject.GetComponentsInChildren<RagdollPiece>(true);
|
|
this.DFPOIGIMLFM = new Vector3[this.EPIODCCPKKH.Length];
|
|
this.EEEEKGHNGKA = new Quaternion[this.EPIODCCPKKH.Length];
|
|
for (int i = 0; i < this.EPIODCCPKKH.Length; i++)
|
|
{
|
|
this.DFPOIGIMLFM[i] = base.transform.InverseTransformPoint(this.EPIODCCPKKH[i].transform.position);
|
|
this.EEEEKGHNGKA[i] = base.transform.MCKNNGGGBDG(this.EPIODCCPKKH[i].transform.rotation);
|
|
}
|
|
this.fracturedObject.SetActive(false);
|
|
}
|
|
this.FPNDEAHEGEM = base.GetComponentsInChildren<MeleeWeaponCollider>();
|
|
if (this.FPNDEAHEGEM != null && this.FPNDEAHEGEM.Length > 0)
|
|
{
|
|
foreach (MeleeWeaponCollider meleeWeaponCollider in this.FPNDEAHEGEM)
|
|
{
|
|
meleeWeaponCollider.PAOJGBKGGDK += this.BBIIPGLDAHI;
|
|
meleeWeaponCollider.OELFEIGJEHI += this.HGKOIFBANBK;
|
|
meleeWeaponCollider.OFMHAGBKEHG += this.DLFGGGPIKFI;
|
|
meleeWeaponCollider.enabled = false;
|
|
}
|
|
}
|
|
this.MEBKEANPEDH = false;
|
|
}
|
|
|
|
// Token: 0x17000163 RID: 355
|
|
// (get) Token: 0x06004E50 RID: 20048 RVA: 0x00184234 File Offset: 0x00182434
|
|
// (set) Token: 0x06004E70 RID: 20080 RVA: 0x00184DAC File Offset: 0x00182FAC
|
|
public Tool BKDFLNGCINH { get; private set; }
|
|
|
|
// Token: 0x06004E51 RID: 20049 RVA: 0x0018423C File Offset: 0x0018243C
|
|
private void EAKGKEKHPOI()
|
|
{
|
|
if (this.KGOGOGJBFBM() != null && this.BKDFLNGCINH.ACAJJPKPKBH != null)
|
|
{
|
|
this.BKDFLNGCINH.ACAJJPKPKBH.supportsAnimateOut = true;
|
|
}
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(false);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.fracturedObject.SetActive(true);
|
|
}
|
|
this.FFBEABHGHNH();
|
|
}
|
|
|
|
// Token: 0x17000162 RID: 354
|
|
// (get) Token: 0x06004E54 RID: 20052 RVA: 0x001842F8 File Offset: 0x001824F8
|
|
// (set) Token: 0x06004E52 RID: 20050 RVA: 0x001842C4 File Offset: 0x001824C4
|
|
public int CNHBPJFLDCE
|
|
{
|
|
get
|
|
{
|
|
return this.JIHKECPJGJI.CPIBGJLHLBL();
|
|
}
|
|
set
|
|
{
|
|
this.JIHKECPJGJI.MEAINJPIECA(Mathf.Clamp(value, 0, 1));
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E53 RID: 20051 RVA: 0x001842DC File Offset: 0x001824DC
|
|
private IEnumerator GKPIJPLDHLF()
|
|
{
|
|
for (num = 0f; num < this.brokenLifetime; num += Time.deltaTime)
|
|
{
|
|
yield return null;
|
|
}
|
|
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BKDFLNGCINH != null)
|
|
{
|
|
this.BKDFLNGCINH.MasterDisableAndMoveToLastSpawnPosition();
|
|
}
|
|
this.AAMGCOILKKB = null;
|
|
yield break;
|
|
}
|
|
|
|
// Token: 0x06004E55 RID: 20053 RVA: 0x00184308 File Offset: 0x00182508
|
|
private void KHKNADICOPF(Vector3 IGOFELJMFOF, Vector3 FHFHOMKFHCI)
|
|
{
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
this.AGOFPJFKBAD(this.BKDFLNGCINH, null, FLDPCEKNKCA.DEFAULT, FHFHOMKFHCI);
|
|
this.IOPLBBFDOBI(IGOFELJMFOF);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E56 RID: 20054 RVA: 0x0018432C File Offset: 0x0018252C
|
|
private void GEIBNKHFJHA()
|
|
{
|
|
this.DHGKHIBIEJB();
|
|
this.AAMGCOILKKB = base.StartCoroutine(this.EGABOICNIPF());
|
|
}
|
|
|
|
// Token: 0x06004E57 RID: 20055 RVA: 0x00184348 File Offset: 0x00182548
|
|
protected void LILBBKGLONF(Tool COMHEONOMBA, Vector3 MMBLAFNAPPJ, Vector3 FHFHOMKFHCI)
|
|
{
|
|
this.FBHJFIPDFJF(MMBLAFNAPPJ);
|
|
}
|
|
|
|
// Token: 0x17000164 RID: 356
|
|
// (get) Token: 0x06004E58 RID: 20056 RVA: 0x00184354 File Offset: 0x00182554
|
|
protected bool CCMOGPAGILG
|
|
{
|
|
get
|
|
{
|
|
return this.CNHBPJFLDCE > 0 && !this.BKDFLNGCINH.CADPGMLHFGH.NPLEFCHDLIK && !this.BKDFLNGCINH.OHGPCMJMFGC;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E59 RID: 20057 RVA: 0x00184388 File Offset: 0x00182588
|
|
private void GONPABMHKIO()
|
|
{
|
|
this.MEBKEANPEDH = false;
|
|
if (this.EPIODCCPKKH != null)
|
|
{
|
|
RagdollPiece[] epiodccpkkh = this.EPIODCCPKKH;
|
|
for (int i = 0; i < epiodccpkkh.Length; i += 0)
|
|
{
|
|
RagdollPiece ragdollPiece = epiodccpkkh[i];
|
|
ragdollPiece.HCJEEPNBLNJ();
|
|
}
|
|
}
|
|
this.DHGKHIBIEJB();
|
|
}
|
|
|
|
// Token: 0x06004E5A RID: 20058 RVA: 0x001843D4 File Offset: 0x001825D4
|
|
protected void MPOMLHFPLMH(Tool COMHEONOMBA, Vector3 MMBLAFNAPPJ, Vector3 FHFHOMKFHCI)
|
|
{
|
|
this.FBHJFIPDFJF(MMBLAFNAPPJ);
|
|
}
|
|
|
|
// Token: 0x06004E5B RID: 20059 RVA: 0x001843E0 File Offset: 0x001825E0
|
|
private void BBIIPGLDAHI(MeleeWeaponCollider CINAFOGLFIB, Enemy AKICADDPOIF, MHEBDODJGOA BLKHNALGIKL, IHEAKAOGCIF CACIBBKDNIH)
|
|
{
|
|
if (!this.CCMOGPAGILG)
|
|
{
|
|
return;
|
|
}
|
|
if (base.BHCCHBHNHCG)
|
|
{
|
|
if (!AKICADDPOIF.BHCCHBHNHCG)
|
|
{
|
|
AKICADDPOIF.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
|
|
}
|
|
AKICADDPOIF.AuthorityApplyAttack(base.ECHJNDDOIBD, null, FLDPCEKNKCA.DEFAULT, BLKHNALGIKL, this.enemyDamage, CACIBBKDNIH.LLKJDBBNPKB, CACIBBKDNIH.EPIJGDAJDJN);
|
|
AKICADDPOIF.AuthorityOnDamageApplyForce(FLDPCEKNKCA.DEFAULT, BLKHNALGIKL, CACIBBKDNIH.PMEFMHLCPMF, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
Vector3 vector = Vector3.Reflect(CACIBBKDNIH.JIIJIFKCMFK, CACIBBKDNIH.EPIJGDAJDJN);
|
|
this.KHKNADICOPF(vector, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
|
|
// Token: 0x06004E5C RID: 20060 RVA: 0x00184478 File Offset: 0x00182678
|
|
private void IOPLBBFDOBI(Vector3 IGOFELJMFOF)
|
|
{
|
|
if (this.CNHBPJFLDCE > 0)
|
|
{
|
|
return;
|
|
}
|
|
if (base.BHCCHBHNHCG && !this.MEBKEANPEDH && this.CNHBPJFLDCE <= 0)
|
|
{
|
|
base.OMNGGJICBBI.RPC("RpcShatter", IHCPDNLJMMD.All, new object[] { IGOFELJMFOF });
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E5D RID: 20061 RVA: 0x001844D4 File Offset: 0x001826D4
|
|
private IEnumerator CMJHIPNGKLK()
|
|
{
|
|
for (num = 0f; num < this.brokenLifetime; num += Time.deltaTime)
|
|
{
|
|
yield return null;
|
|
}
|
|
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BKDFLNGCINH != null)
|
|
{
|
|
this.BKDFLNGCINH.MasterDisableAndMoveToLastSpawnPosition();
|
|
}
|
|
this.AAMGCOILKKB = null;
|
|
yield break;
|
|
}
|
|
|
|
// Token: 0x06004E5E RID: 20062 RVA: 0x001844F0 File Offset: 0x001826F0
|
|
private void Start()
|
|
{
|
|
if (this.BKDFLNGCINH != null && this.BKDFLNGCINH.ACAJJPKPKBH != null)
|
|
{
|
|
this.BKDFLNGCINH.ACAJJPKPKBH.supportsAnimateOut = false;
|
|
}
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(true);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.fracturedObject.SetActive(false);
|
|
}
|
|
this.FFBEABHGHNH();
|
|
}
|
|
|
|
// Token: 0x06004E5F RID: 20063 RVA: 0x00184578 File Offset: 0x00182778
|
|
public int MKDIKOHNIJN()
|
|
{
|
|
return this.JIHKECPJGJI.CPIBGJLHLBL();
|
|
}
|
|
|
|
// Token: 0x06004E60 RID: 20064 RVA: 0x00184588 File Offset: 0x00182788
|
|
public Tool KGOGOGJBFBM()
|
|
{
|
|
return this.<BNFAJPHLEFC>k__BackingField;
|
|
}
|
|
|
|
// Token: 0x06004E61 RID: 20065 RVA: 0x00184590 File Offset: 0x00182790
|
|
protected virtual void MMPNGEHLEKG(Vector3 ONDBGEBPLHB)
|
|
{
|
|
if (this.BKDFLNGCINH.OHGPCMJMFGC && this.BJIPCMECDNK().FICBNMJECCH.OBFPLPPCJLL())
|
|
{
|
|
this.KGOGOGJBFBM().BBGHKANFCHC = DDOFAPFDGNL.JPCIKFHMMED;
|
|
}
|
|
this.MEBKEANPEDH = true;
|
|
this.BJIPCMECDNK().BOLBONELAEF.KEOJKEJMDFM = true;
|
|
this.KGOGOGJBFBM().NEONGIONACF = true;
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(true);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.fracturedObject.SetActive(false);
|
|
if (this.EPIODCCPKKH != null)
|
|
{
|
|
foreach (RagdollPiece ragdollPiece in this.EPIODCCPKKH)
|
|
{
|
|
ragdollPiece.StartRagdoll(ONDBGEBPLHB, base.transform.position, this.shatterSpeed);
|
|
}
|
|
}
|
|
}
|
|
if (this.smashSounds != null)
|
|
{
|
|
AudioManager.PlayRandom3DSFX(this.smashSounds, base.transform, null, true);
|
|
}
|
|
if (this.smashParticlePrefab != null)
|
|
{
|
|
PooledParticle pooledParticle = ObjectPool.NCKMBFBMBFM.Acquire<PooledParticle>(this.smashParticlePrefab);
|
|
if (pooledParticle != null)
|
|
{
|
|
pooledParticle.Play(base.transform.position, base.transform.rotation, false);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E62 RID: 20066 RVA: 0x001846DC File Offset: 0x001828DC
|
|
protected override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
if (this.BKDFLNGCINH != null)
|
|
{
|
|
this.BKDFLNGCINH.CDDKIBBMALJ -= this.AGOFPJFKBAD;
|
|
this.BKDFLNGCINH.KFIDJCACMHH -= this.OLOMPJBEGFH;
|
|
this.BKDFLNGCINH.MIENIOGEAAB -= this.IAHMALMNCML;
|
|
this.BKDFLNGCINH.POJJFNOCIGE -= this.OHPGCELKNLE;
|
|
this.BKDFLNGCINH.PLPIAOHJBOB -= this.EFLKGLEBHFM;
|
|
}
|
|
if (this.FPNDEAHEGEM != null && this.FPNDEAHEGEM.Length > 0)
|
|
{
|
|
foreach (MeleeWeaponCollider meleeWeaponCollider in this.FPNDEAHEGEM)
|
|
{
|
|
meleeWeaponCollider.PAOJGBKGGDK -= this.BBIIPGLDAHI;
|
|
meleeWeaponCollider.OELFEIGJEHI -= this.HGKOIFBANBK;
|
|
meleeWeaponCollider.OFMHAGBKEHG -= this.DLFGGGPIKFI;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E63 RID: 20067 RVA: 0x001847E4 File Offset: 0x001829E4
|
|
protected virtual void KCFPFLJPKHM(Tool ENBMEDIFBLM, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, Vector3 BEDLPFBGLLP, bool JKGMHGAFHPB)
|
|
{
|
|
this.NIGLIMBINJB();
|
|
if (base.DFJFKOLLEMK())
|
|
{
|
|
this.CNHBPJFLDCE = 1;
|
|
}
|
|
this.AKKGBNFCCEO().BOLBONELAEF.KEOJKEJMDFM = false;
|
|
this.BKDFLNGCINH.NEONGIONACF = true;
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(false);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
for (int i = 0; i < this.EPIODCCPKKH.Length; i++)
|
|
{
|
|
this.EPIODCCPKKH[i].transform.position = base.transform.TransformPoint(this.DFPOIGIMLFM[i]);
|
|
this.EPIODCCPKKH[i].transform.rotation = base.transform.PAFJLHMDIMO(this.EEEEKGHNGKA[i]);
|
|
}
|
|
this.fracturedObject.SetActive(false);
|
|
}
|
|
if (this.FPNDEAHEGEM != null)
|
|
{
|
|
for (int j = 1; j < this.FPNDEAHEGEM.Length; j += 0)
|
|
{
|
|
this.FPNDEAHEGEM[j].enabled = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E64 RID: 20068 RVA: 0x00184908 File Offset: 0x00182B08
|
|
private void IFIDJGPDOBI(MeleeWeaponCollider CINAFOGLFIB, Enemy AKICADDPOIF, MHEBDODJGOA BLKHNALGIKL, IHEAKAOGCIF CACIBBKDNIH)
|
|
{
|
|
if (!this.EAOKGDKMOON())
|
|
{
|
|
return;
|
|
}
|
|
if (base.JNOCCMDBMIO())
|
|
{
|
|
if (!AKICADDPOIF.IGIPCHFCFNN())
|
|
{
|
|
AKICADDPOIF.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
|
|
}
|
|
AKICADDPOIF.AuthorityApplyAttack(base.AKKFJNDBOJL(), null, FLDPCEKNKCA.NON_COMBAT_COLLISION, BLKHNALGIKL, this.enemyDamage, CACIBBKDNIH.LLKJDBBNPKB, CACIBBKDNIH.EPIJGDAJDJN);
|
|
AKICADDPOIF.AuthorityOnDamageApplyForce(FLDPCEKNKCA.NON_COMBAT_COLLISION, BLKHNALGIKL, CACIBBKDNIH.PMEFMHLCPMF, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
Vector3 vector = Vector3.Reflect(CACIBBKDNIH.JIIJIFKCMFK, CACIBBKDNIH.EPIJGDAJDJN);
|
|
this.KHKNADICOPF(vector, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
|
|
// Token: 0x06004E65 RID: 20069 RVA: 0x001849A0 File Offset: 0x00182BA0
|
|
public void KDKHBPGMLMC(int NOBAPCOKFIL)
|
|
{
|
|
this.JIHKECPJGJI.MEAINJPIECA(Mathf.Clamp(NOBAPCOKFIL, 0, 0));
|
|
}
|
|
|
|
// Token: 0x06004E66 RID: 20070 RVA: 0x001849B8 File Offset: 0x00182BB8
|
|
private void FBHJFIPDFJF(Vector3 IGOFELJMFOF)
|
|
{
|
|
if (this.CNHBPJFLDCE > 1)
|
|
{
|
|
return;
|
|
}
|
|
if (base.IGIPCHFCFNN() && !this.MEBKEANPEDH && this.CNHBPJFLDCE <= 1)
|
|
{
|
|
PhotonView photonView = base.ONAOMJAKKMA();
|
|
string text = "tt_";
|
|
IHCPDNLJMMD ihcpdnljmmd = IHCPDNLJMMD.Others;
|
|
object[] array = new object[0];
|
|
array[1] = IGOFELJMFOF;
|
|
photonView.JJLACCMJEMB(text, ihcpdnljmmd, array);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E67 RID: 20071 RVA: 0x00184A14 File Offset: 0x00182C14
|
|
protected virtual void FFBEABHGHNH()
|
|
{
|
|
if (this.CNHBPJFLDCE <= 0 && base.gameObject.activeSelf)
|
|
{
|
|
this.GEIBNKHFJHA();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E68 RID: 20072 RVA: 0x00184A38 File Offset: 0x00182C38
|
|
protected virtual void HNBLIGEOJOI()
|
|
{
|
|
base.ILNOFPMNPKH();
|
|
if (this.BKDFLNGCINH != null)
|
|
{
|
|
this.AKKGBNFCCEO().CDDKIBBMALJ -= this.EELLOJHIKNI;
|
|
this.BJIPCMECDNK().NMLFACMANJE(new Tool.BBKLBEHIJOK(this.LILBBKGLONF));
|
|
this.BJIPCMECDNK().MIENIOGEAAB -= this.IAHMALMNCML;
|
|
this.BKDFLNGCINH.POJJFNOCIGE -= this.OHPGCELKNLE;
|
|
this.BKDFLNGCINH.PLPIAOHJBOB -= this.FLDFDOCHDII;
|
|
}
|
|
if (this.FPNDEAHEGEM != null && this.FPNDEAHEGEM.Length > 0)
|
|
{
|
|
MeleeWeaponCollider[] fpndeahegem = this.FPNDEAHEGEM;
|
|
for (int i = 0; i < fpndeahegem.Length; i += 0)
|
|
{
|
|
MeleeWeaponCollider meleeWeaponCollider = fpndeahegem[i];
|
|
meleeWeaponCollider.PAOJGBKGGDK -= this.BBIIPGLDAHI;
|
|
meleeWeaponCollider.OELFEIGJEHI -= this.HGKOIFBANBK;
|
|
meleeWeaponCollider.OFMHAGBKEHG -= this.DLFGGGPIKFI;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E69 RID: 20073 RVA: 0x00184B40 File Offset: 0x00182D40
|
|
protected virtual void MLBBEAOCKDB(Vector3 ONDBGEBPLHB)
|
|
{
|
|
if (this.BKDFLNGCINH.OHGPCMJMFGC && this.BKDFLNGCINH.FICBNMJECCH.NHDDPGADJPJ)
|
|
{
|
|
this.BKDFLNGCINH.BBGHKANFCHC = DDOFAPFDGNL.JPCIKFHMMED;
|
|
}
|
|
this.MEBKEANPEDH = true;
|
|
this.BKDFLNGCINH.BOLBONELAEF.KEOJKEJMDFM = true;
|
|
this.BKDFLNGCINH.NEONGIONACF = false;
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(false);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.fracturedObject.SetActive(true);
|
|
if (this.EPIODCCPKKH != null)
|
|
{
|
|
foreach (RagdollPiece ragdollPiece in this.EPIODCCPKKH)
|
|
{
|
|
ragdollPiece.StartRagdoll(ONDBGEBPLHB, base.transform.position, this.shatterSpeed);
|
|
}
|
|
}
|
|
}
|
|
if (this.smashSounds != null)
|
|
{
|
|
AudioManager.PlayRandom3DSFX(this.smashSounds, base.transform, null, false);
|
|
}
|
|
if (this.smashParticlePrefab != null)
|
|
{
|
|
PooledParticle pooledParticle = ObjectPool.NCKMBFBMBFM.Acquire<PooledParticle>(this.smashParticlePrefab);
|
|
if (pooledParticle != null)
|
|
{
|
|
pooledParticle.Play(base.transform.position, base.transform.rotation, false);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E6A RID: 20074 RVA: 0x00184C8C File Offset: 0x00182E8C
|
|
protected void MBKPAALFGJG(Tool COMHEONOMBA, Vector3 MMBLAFNAPPJ, Vector3 FHFHOMKFHCI)
|
|
{
|
|
this.MCDEAPGMOPH(MMBLAFNAPPJ);
|
|
}
|
|
|
|
// Token: 0x06004E6B RID: 20075 RVA: 0x00184C98 File Offset: 0x00182E98
|
|
[BCENPNOIAOM]
|
|
protected void RpcShatter(Vector3 ONDBGEBPLHB)
|
|
{
|
|
this.MLBBEAOCKDB(ONDBGEBPLHB);
|
|
}
|
|
|
|
// Token: 0x06004E6C RID: 20076 RVA: 0x00184CA4 File Offset: 0x00182EA4
|
|
private void ACPLMPGPIPH()
|
|
{
|
|
if (this.AAMGCOILKKB != null)
|
|
{
|
|
base.StopCoroutine(this.AAMGCOILKKB);
|
|
this.AAMGCOILKKB = null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E6D RID: 20077 RVA: 0x00184CC4 File Offset: 0x00182EC4
|
|
private void BABKFIKEOCG()
|
|
{
|
|
if (this.BJIPCMECDNK() != null && this.BKDFLNGCINH.ACAJJPKPKBH != null)
|
|
{
|
|
this.BJIPCMECDNK().ACAJJPKPKBH.supportsAnimateOut = true;
|
|
}
|
|
if (this.wholeObject != null)
|
|
{
|
|
this.wholeObject.SetActive(false);
|
|
}
|
|
if (this.fracturedObject != null)
|
|
{
|
|
this.fracturedObject.SetActive(true);
|
|
}
|
|
this.FFBEABHGHNH();
|
|
}
|
|
|
|
// Token: 0x06004E6E RID: 20078 RVA: 0x00184D4C File Offset: 0x00182F4C
|
|
private void DLFGGGPIKFI(MeleeWeaponCollider CINAFOGLFIB, IHEAKAOGCIF CACIBBKDNIH)
|
|
{
|
|
if (CACIBBKDNIH.JFCOFBFGGFL != base.gameObject && this.CCMOGPAGILG)
|
|
{
|
|
Vector3 vector = Vector3.Reflect(CACIBBKDNIH.JIIJIFKCMFK, CACIBBKDNIH.EPIJGDAJDJN);
|
|
this.KHKNADICOPF(vector, CACIBBKDNIH.LLKJDBBNPKB);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E6F RID: 20079 RVA: 0x00184DA0 File Offset: 0x00182FA0
|
|
protected void IAHMALMNCML(Tool COMHEONOMBA, Vector3 HFIONFHEFGP, Vector3 CCHAEPGJJLI)
|
|
{
|
|
this.IOPLBBFDOBI(HFIONFHEFGP);
|
|
}
|
|
|
|
// Token: 0x06004E71 RID: 20081 RVA: 0x00184DB8 File Offset: 0x00182FB8
|
|
private void DHGKHIBIEJB()
|
|
{
|
|
if (this.AAMGCOILKKB != null)
|
|
{
|
|
base.StopCoroutine(this.AAMGCOILKKB);
|
|
this.AAMGCOILKKB = null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06004E72 RID: 20082 RVA: 0x00184DD8 File Offset: 0x00182FD8
|
|
public Tool AKKGBNFCCEO()
|
|
{
|
|
return this.<BNFAJPHLEFC>k__BackingField;
|
|
}
|
|
|
|
// Token: 0x06004E73 RID: 20083 RVA: 0x00184DE0 File Offset: 0x00182FE0
|
|
private void APGBLABBIOC(Tool NOBAPCOKFIL)
|
|
{
|
|
this.<BNFAJPHLEFC>k__BackingField = NOBAPCOKFIL;
|
|
}
|
|
|
|
// Token: 0x040009D0 RID: 2512
|
|
[SerializeField]
|
|
[Header("Meshes")]
|
|
private GameObject wholeObject;
|
|
|
|
// Token: 0x040009D1 RID: 2513
|
|
[SerializeField]
|
|
private GameObject fracturedObject;
|
|
|
|
// Token: 0x040009D2 RID: 2514
|
|
[SerializeField]
|
|
[Header("Destruction")]
|
|
private float shatterSpeed = 2f;
|
|
|
|
// Token: 0x040009D3 RID: 2515
|
|
[SerializeField]
|
|
private float brokenLifetime = 5f;
|
|
|
|
// Token: 0x040009D4 RID: 2516
|
|
[SerializeField]
|
|
[Header("Collision")]
|
|
private int enemyDamage = 50;
|
|
|
|
// Token: 0x040009D5 RID: 2517
|
|
[SerializeField]
|
|
[Header("Feedback")]
|
|
private PooledParticle smashParticlePrefab;
|
|
|
|
// Token: 0x040009D6 RID: 2518
|
|
[SerializeField]
|
|
private RecRoomAudioClip[] smashSounds;
|
|
|
|
// Token: 0x040009D8 RID: 2520
|
|
[NonSerialized]
|
|
public bool IsBreakable = true;
|
|
|
|
// Token: 0x040009D9 RID: 2521
|
|
private LHLLJPPCDKA<int> JIHKECPJGJI;
|
|
|
|
// Token: 0x040009DA RID: 2522
|
|
private RagdollPiece[] EPIODCCPKKH;
|
|
|
|
// Token: 0x040009DB RID: 2523
|
|
private Vector3[] DFPOIGIMLFM;
|
|
|
|
// Token: 0x040009DC RID: 2524
|
|
private Quaternion[] EEEEKGHNGKA;
|
|
|
|
// Token: 0x040009DD RID: 2525
|
|
private bool MEBKEANPEDH;
|
|
|
|
// Token: 0x040009DE RID: 2526
|
|
private Coroutine AAMGCOILKKB;
|
|
|
|
// Token: 0x040009DF RID: 2527
|
|
private MeleeWeaponCollider[] FPNDEAHEGEM;
|
|
}
|