This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
@@ -0,0 +1,391 @@
using System;
using RecRoom.Core.AI;
using UnityEngine;
namespace RecRoom.Activities.Quest
{
// Token: 0x02000178 RID: 376
public class QuestMeleeAttackEnemy : Enemy
{
// Token: 0x06004ECF RID: 20175 RVA: 0x00185C7C File Offset: 0x00183E7C
protected virtual void DHNFBJDLIDK()
{
base.KPFMEFNKDKL();
base.BKHECJODPHF.StopLooking();
}
// Token: 0x06004ED0 RID: 20176 RVA: 0x00185C90 File Offset: 0x00183E90
private void ECGMIHMKJHC(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
{
base.BKHECJODPHF.StopAll();
base.BKHECJODPHF.FMFCBADCFCK = this.movementSpeed;
base.BKHECJODPHF.GKJLNANPDNC = this.movementMaxForce;
}
// Token: 0x06004ED1 RID: 20177 RVA: 0x00185CC0 File Offset: 0x00183EC0
private void EAGGLMHOOAM(bool CAAAFEKOAAF)
{
if (base.MIJIFCKMAIE != CAAAFEKOAAF)
{
base.MIJIFCKMAIE = CAAAFEKOAAF;
}
}
// Token: 0x06004ED2 RID: 20178 RVA: 0x00185CD8 File Offset: 0x00183ED8
protected override void Update()
{
base.Update();
this.LIBIBOMFIOI.DLBPEOILIFL();
this.OLLJJMGJJEN.KHJKJGDBPMF();
}
// Token: 0x06004ED3 RID: 20179 RVA: 0x00185CF8 File Offset: 0x00183EF8
protected virtual void LHMGNEDHIHI()
{
base.Update();
this.LIBIBOMFIOI.DLBPEOILIFL();
this.OLLJJMGJJEN.AOKPPLPAKIO();
}
// Token: 0x06004ED4 RID: 20180 RVA: 0x00185D18 File Offset: 0x00183F18
protected override void GILFLDGMJHI()
{
base.GILFLDGMJHI();
if (base.BHCCHBHNHCG)
{
base.BKHECJODPHF.Look(Vector3.ProjectOnPlane(base.transform.forward, Vector3.up).normalized);
}
}
// Token: 0x06004ED5 RID: 20181 RVA: 0x00185D60 File Offset: 0x00183F60
private void IMIJNPEFLDF()
{
if (base.BHCCHBHNHCG)
{
if (this.OLLJJMGJJEN.CGELFKLLMBA)
{
this.LIBIBOMFIOI.BKBFIGCPIMI(0);
}
if (base.LMDJJEGNOGM.AJFBOLHPEJC)
{
base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(true));
}
}
}
// Token: 0x06004ED6 RID: 20182 RVA: 0x00185DBC File Offset: 0x00183FBC
protected virtual void CPLOFHHAACI()
{
base.KPFMEFNKDKL();
base.BKHECJODPHF.StopLooking();
}
// Token: 0x06004ED8 RID: 20184 RVA: 0x00185E10 File Offset: 0x00184010
protected virtual void NEMJOAJFMIO()
{
base.CBAEJNFNPGJ();
if (base.JNOCCMDBMIO())
{
this.LIBIBOMFIOI.BKBFIGCPIMI((ushort)(-162));
}
}
// Token: 0x06004ED9 RID: 20185 RVA: 0x00185E34 File Offset: 0x00184034
private void BMFHMDAINCH()
{
if (base.DGLKKANNBPD())
{
if (!SingletonMonoBehaviour<EnemyManager>.NCKMBFBMBFM.PKDPGEMPCHI(base.LMDJJEGNOGM))
{
this.LIBIBOMFIOI.BKBFIGCPIMI(1);
return;
}
Vector3 vector = base.LMDJJEGNOGM.JFKAKCBEIDL;
if ((base.BKHECJODPHF.EFBJHLLLPJC - vector).sqrMagnitude <= this.desiredTargetDistance * this.desiredTargetDistance && base.HasLineOfSight(vector))
{
this.LIBIBOMFIOI.BKBFIGCPIMI(3);
return;
}
if (!base.BKHECJODPHF.PathIsValid(vector, this.desiredTargetDistance * 1181f) || base.BKHECJODPHF.JAHIBHNGMHE)
{
vector = base.ADCEHILEGLI(vector, this.desiredTargetDistance, this.minRandomTargetOffsetAngle, this.maxRandomTargetOffsetAngle);
base.BKHECJODPHF.Path(vector);
}
}
}
// Token: 0x06004EDA RID: 20186 RVA: 0x00185F14 File Offset: 0x00184114
protected override EIDNMNCOAAJ IJCDBKLCFIE(bool GHGNJLIBGFA = false)
{
if (base.JNOJEJMFADM())
{
return base.GPBFOEHJJFO;
}
return base.KAHAFAHMEKP(GHGNJLIBGFA, false);
}
// Token: 0x06004EDB RID: 20187 RVA: 0x00185F30 File Offset: 0x00184130
private void FOLJMCGHGOB(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
{
this.enemyAnimator.PlayMeleeAttack();
if (base.BHCCHBHNHCG)
{
this.OLLJJMGJJEN.BJOJLPHBGMN(this.attackDuration + this.postAttackDuration);
}
}
// Token: 0x06004EDC RID: 20188 RVA: 0x00185F60 File Offset: 0x00184160
private void FEGBCPPMBDN()
{
if (base.BHCCHBHNHCG)
{
if (!SingletonMonoBehaviour<EnemyManager>.NCKMBFBMBFM.TargetIsAlive(base.LMDJJEGNOGM))
{
this.LIBIBOMFIOI.BKBFIGCPIMI(0);
return;
}
Vector3 vector = base.LMDJJEGNOGM.JFKAKCBEIDL;
if ((base.BKHECJODPHF.EFBJHLLLPJC - vector).sqrMagnitude <= this.desiredTargetDistance * this.desiredTargetDistance && base.HasLineOfSight(vector))
{
this.LIBIBOMFIOI.BKBFIGCPIMI(2);
return;
}
if (!base.BKHECJODPHF.PathIsValid(vector, this.desiredTargetDistance * 1.1f) || base.BKHECJODPHF.JAHIBHNGMHE)
{
vector = base.ADCEHILEGLI(vector, this.desiredTargetDistance, this.minRandomTargetOffsetAngle, this.maxRandomTargetOffsetAngle);
base.BKHECJODPHF.Path(vector);
}
}
}
// Token: 0x06004EDD RID: 20189 RVA: 0x00186040 File Offset: 0x00184240
protected override void Start()
{
base.Start();
this.LIBIBOMFIOI.FLHFCMCNLEK(this, ushort.MaxValue);
}
// Token: 0x06004EDE RID: 20190 RVA: 0x0018605C File Offset: 0x0018425C
private void KLEBDALIDNB()
{
if (base.BHCCHBHNHCG)
{
EIDNMNCOAAJ eidnmncoaaj = this.IJCDBKLCFIE(false);
if (eidnmncoaaj.AJFBOLHPEJC)
{
base.LMDJJEGNOGM = eidnmncoaaj;
base.GPBFOEHJJFO = EIDNMNCOAAJ.CGNKKAKJIJL;
this.LIBIBOMFIOI.BKBFIGCPIMI(1);
}
else
{
base.HCGGDDPJBHE(1f);
}
}
}
// Token: 0x06004EDF RID: 20191 RVA: 0x001860B8 File Offset: 0x001842B8
protected virtual void FHOMCLDMDID()
{
base.GILFLDGMJHI();
if (base.DGLKKANNBPD())
{
base.BKHECJODPHF.Look(Vector3.ProjectOnPlane(base.transform.forward, Vector3.up).normalized);
}
}
// Token: 0x06004EE0 RID: 20192 RVA: 0x00186100 File Offset: 0x00184300
private void JAKGGGEFENB()
{
if (base.JNOCCMDBMIO())
{
if (!SingletonMonoBehaviour<EnemyManager>.NCKMBFBMBFM.TargetIsAlive(base.LMDJJEGNOGM))
{
this.LIBIBOMFIOI.BKBFIGCPIMI(0);
return;
}
Vector3 vector = base.LMDJJEGNOGM.KAAIICFGDLO();
if ((base.BKHECJODPHF.EFBJHLLLPJC - vector).sqrMagnitude <= this.desiredTargetDistance * this.desiredTargetDistance && base.HasLineOfSight(vector))
{
this.LIBIBOMFIOI.BKBFIGCPIMI(0);
return;
}
if (!base.BKHECJODPHF.PathIsValid(vector, this.desiredTargetDistance * 1294f) || base.BKHECJODPHF.JAHIBHNGMHE)
{
vector = base.ADCEHILEGLI(vector, this.desiredTargetDistance, this.minRandomTargetOffsetAngle, this.maxRandomTargetOffsetAngle);
base.BKHECJODPHF.Path(vector);
}
}
}
// Token: 0x06004EE1 RID: 20193 RVA: 0x001861E0 File Offset: 0x001843E0
protected override void EKEGOFIPIPE()
{
base.EKEGOFIPIPE();
if (base.BHCCHBHNHCG)
{
this.LIBIBOMFIOI.BKBFIGCPIMI(0);
}
}
// Token: 0x06004EE2 RID: 20194 RVA: 0x00186200 File Offset: 0x00184400
private void PHGNPFAAJOJ(ushort OIMHGOONBEB, ushort LPFGCCKCIEB)
{
base.BKHECJODPHF.StopLooking();
}
// Token: 0x06004EE3 RID: 20195 RVA: 0x00186210 File Offset: 0x00184410
protected override void KPFMEFNKDKL()
{
base.KPFMEFNKDKL();
base.BKHECJODPHF.StopLooking();
}
// Token: 0x06004EE4 RID: 20196 RVA: 0x00186224 File Offset: 0x00184424
protected override void CBAEJNFNPGJ()
{
base.CBAEJNFNPGJ();
if (base.BHCCHBHNHCG)
{
this.LIBIBOMFIOI.BKBFIGCPIMI(ushort.MaxValue);
}
}
// Token: 0x06004EE5 RID: 20197 RVA: 0x00186248 File Offset: 0x00184448
protected override void OnDestroy()
{
base.OnDestroy();
if (this.HHMPOPAHGMD != null)
{
this.HHMPOPAHGMD.NBHEMLAPLLL -= this.GLDJCILGPGM;
}
}
// Token: 0x06004EE6 RID: 20198 RVA: 0x00186278 File Offset: 0x00184478
public override void AuthorityOnDamageChangeVelocity(FLDPCEKNKCA BDOBLEKAEAM, MHEBDODJGOA JJGLGHCMDEN, Vector3 IGOFELJMFOF, Vector3 CCHAEPGJJLI)
{
if (base.BHCCHBHNHCG)
{
float num = Vector3.Dot(IGOFELJMFOF.normalized, Vector3.up);
if (num < 0f)
{
float magnitude = IGOFELJMFOF.magnitude;
IGOFELJMFOF = Vector3.ProjectOnPlane(IGOFELJMFOF, Vector3.up).normalized * magnitude;
}
base.AuthorityOnDamageChangeVelocity(BDOBLEKAEAM, JJGLGHCMDEN, IGOFELJMFOF, CCHAEPGJJLI);
}
}
// Token: 0x06004EE7 RID: 20199 RVA: 0x001862DC File Offset: 0x001844DC
protected override void Awake()
{
base.Awake();
this.HHMPOPAHGMD = base.GetComponentInChildren<AnimationAttackTrigger>(true);
if (this.HHMPOPAHGMD == null)
{
Debug.LogError(base.name + " is missing Animation Attack Trigger.");
}
else
{
this.HHMPOPAHGMD.NBHEMLAPLLL += this.GLDJCILGPGM;
}
this.enemyAudio.BMBFCDOIIMM = true;
this.OLLJJMGJJEN = new AONMNAEOJAL(this, "BEHAVIOR", IKCAJLLAFML.AUTHORITY);
this.LIBIBOMFIOI = new PNONBEAIBHA("BEHAVIOR", IKCAJLLAFML.AUTHORITY);
this.LIBIBOMFIOI.AGLMMKOFICI(ushort.MaxValue, null, null, null);
this.LIBIBOMFIOI.AGLMMKOFICI(0, null, null, new ANMJLCILKDJ.PLBLFEEANOO(this.KLEBDALIDNB));
this.LIBIBOMFIOI.AGLMMKOFICI(1, new ANMJLCILKDJ.NCMAEMHOHDG(this.ECGMIHMKJHC), new ANMJLCILKDJ.NCMAEMHOHDG(this.LJFJPFJADBA), new ANMJLCILKDJ.PLBLFEEANOO(this.FEGBCPPMBDN));
this.LIBIBOMFIOI.AGLMMKOFICI(2, new ANMJLCILKDJ.NCMAEMHOHDG(this.FOLJMCGHGOB), new ANMJLCILKDJ.NCMAEMHOHDG(this.PHGNPFAAJOJ), new ANMJLCILKDJ.PLBLFEEANOO(this.IMIJNPEFLDF));
}
// Token: 0x06004EE8 RID: 20200 RVA: 0x001863FC File Offset: 0x001845FC
private void LJFJPFJADBA(ushort OIMHGOONBEB, ushort LPFGCCKCIEB)
{
base.BKHECJODPHF.StopPathing();
}
// Token: 0x06004EE9 RID: 20201 RVA: 0x0018640C File Offset: 0x0018460C
protected override void EMELAMHAAKC(Enemy OELGAHAMCLH, Tool EEPPNAIKGEO, IHEAKAOGCIF CACIBBKDNIH)
{
Weapon component = EEPPNAIKGEO.GetComponent<Weapon>();
if (EEPPNAIKGEO.OHGPCMJMFGC && EEPPNAIKGEO.BHCCHBHNHCG && component != null && component.JNFCPPPFGAM == FLDPCEKNKCA.MELEE_SHIELD)
{
if (!base.BHCCHBHNHCG)
{
base.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
}
this.AuthorityStun(FLDPCEKNKCA.SELF_ATTACK, MHEBDODJGOA.NORMAL);
}
}
// Token: 0x06004EEA RID: 20202 RVA: 0x0018647C File Offset: 0x0018467C
private void GLDJCILGPGM(bool CAAAFEKOAAF)
{
if (base.MIJIFCKMAIE != CAAAFEKOAAF)
{
base.MIJIFCKMAIE = CAAAFEKOAAF;
}
}
// Token: 0x06004EEB RID: 20203 RVA: 0x00186494 File Offset: 0x00184694
protected virtual void ONJGKDHFGJK()
{
base.EKEGOFIPIPE();
if (base.DFJFKOLLEMK())
{
this.LIBIBOMFIOI.BKBFIGCPIMI(0);
}
}
// Token: 0x06004EEC RID: 20204 RVA: 0x001864B4 File Offset: 0x001846B4
protected virtual void GMBFJHIHJFB()
{
base.Start();
this.LIBIBOMFIOI.PGELJEHELFN(this, 188);
}
// Token: 0x040009E5 RID: 2533
[Header("Target Selection")]
[SerializeField]
private float desiredTargetDistance = 1f;
// Token: 0x040009E6 RID: 2534
[SerializeField]
private float minRandomTargetOffsetAngle = 15f;
// Token: 0x040009E7 RID: 2535
[SerializeField]
private float maxRandomTargetOffsetAngle = 30f;
// Token: 0x040009E8 RID: 2536
[Header("Melee Attack")]
[SerializeField]
private float attackDuration = 1.5f;
// Token: 0x040009E9 RID: 2537
[SerializeField]
private float postAttackDuration = 1.5f;
// Token: 0x040009EA RID: 2538
private PNONBEAIBHA LIBIBOMFIOI;
// Token: 0x040009EB RID: 2539
private AONMNAEOJAL OLLJJMGJJEN;
// Token: 0x040009EC RID: 2540
private AnimationAttackTrigger HHMPOPAHGMD;
// Token: 0x02000179 RID: 377
private enum GJCLFGJEIJL
{
// Token: 0x040009EE RID: 2542
FIND_TARGET,
// Token: 0x040009EF RID: 2543
FOLLOW_TARGET,
// Token: 0x040009F0 RID: 2544
ATTACK,
// Token: 0x040009F1 RID: 2545
INVALID = 65535
}
}
}