using System; using RecRoom.Core.AI; using RecRoom.Tools.Weapons; using UnityEngine; namespace RecRoom.Activities.Quest { // Token: 0x02000146 RID: 326 public class QuestWitchBossEnemy : Enemy { // Token: 0x0600446C RID: 17516 RVA: 0x0015AB84 File Offset: 0x00158D84 private void LOMIPFOLBOO(ushort OIMHGOONBEB, ushort LPFGCCKCIEB) { base.BKHECJODPHF.NDGKHAMPONJ(); } // Token: 0x0600446D RID: 17517 RVA: 0x0015AB94 File Offset: 0x00158D94 private Vector3 LLHBCICLPME() { return this.JGIANBIAPLD.CPIBGJLHLBL(); } // Token: 0x0600446E RID: 17518 RVA: 0x0015ABA4 File Offset: 0x00158DA4 protected override void OAKBFGNNAEK() { base.OAKBFGNNAEK(); if (base.BHCCHBHNHCG && !base.BKHECJODPHF.FHLEFPDIIJL) { base.BKHECJODPHF.Seek(this.KINNCEKOLHI, this.movementSlowdownDistance, 0.25f, false); } } // Token: 0x0600446F RID: 17519 RVA: 0x0015ABE4 File Offset: 0x00158DE4 private void EPCJPECOKJH(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.DGLKKANNBPD()) { float num = this.postDisengageDelay; if (this.OJIPCPBHAJA()) { num = this.postPatrolDelay; this.EJOPENBGGHM(false); } this.GOOHDPLFNMC.BJOJLPHBGMN(num); } } // Token: 0x06004470 RID: 17520 RVA: 0x0015AC28 File Offset: 0x00158E28 private void JCLJLBEHMKN() { if (base.BHCCHBHNHCG) { EIDNMNCOAAJ eidnmncoaaj = base.LMDJJEGNOGM; if (this.GOOHDPLFNMC.CGELFKLLMBA) { if (!base.LMDJJEGNOGM.AJFBOLHPEJC) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); } if (base.LMDJJEGNOGM.AJFBOLHPEJC) { float num = Mathf.Clamp01((float)base.CNHBPJFLDCE / (float)base.BNBJJKCBDFC); float num2 = this.projectileSpeedByHealthCurve.Evaluate(num); this.KGKFMMHEMJJ.AuthorityFire(base.LMDJJEGNOGM.ICNCDGIKNNI + Vector3.up * this.projectileHeadTargetHeightOffset, num2); } this.LIBIBOMFIOI.BKBFIGCPIMI(3); return; } if (base.LMDJJEGNOGM.AJFBOLHPEJC) { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(!base.BKHECJODPHF.OGCGDMDPHBM)); } } } // Token: 0x06004471 RID: 17521 RVA: 0x0015AD20 File Offset: 0x00158F20 private void AHCNFHDHGFO(float NOBAPCOKFIL) { this.OPLJPIOLJNC.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x06004472 RID: 17522 RVA: 0x0015AD30 File Offset: 0x00158F30 private void NFJJKEGOHGH() { if (base.DGLOKLCEMLH() && this.GOOHDPLFNMC.ALEKFIMMFPH()) { this.LIBIBOMFIOI.BKBFIGCPIMI(7); } } // Token: 0x06004473 RID: 17523 RVA: 0x0015AD5C File Offset: 0x00158F5C private void PICIBJPPCOM(ProjectileTool FPKJFOJMMIM, EnemyProjectileToolRangedWeapon.GHOOEBGMCNO CBCMDLNIHKK, Vector3 FHFHOMKFHCI, Vector3 NCEMFEFKOEF) { if (FPKJFOJMMIM != null && FPKJFOJMMIM.JNOCCMDBMIO() && !base.FNGHOEFDKPO && !base.AOKGAGHHHIN && base.CNHBPJFLDCE > 0 && base.ACEACLFJOAA) { if (!base.DGLOKLCEMLH()) { base.BIPEBCPEPKL().NNOFBLMFKAH(IHFKMIAHBFP.JEFGMHBLLKI); } if (CBCMDLNIHKK == EnemyProjectileToolRangedWeapon.GHOOEBGMCNO.TO_ENEMY_SUCCESS) { this.CCFJDBJLOIK = NCEMFEFKOEF.normalized; Vector3 position = this.KGKFMMHEMJJ.DCBHLBNCLGP.position; Vector3 vector = position - FHFHOMKFHCI; float magnitude = vector.magnitude; Vector3 normalized = vector.normalized; float magnitude2 = Vector3.Project(NCEMFEFKOEF, normalized).magnitude; float num; if (magnitude2 <= Mathf.Epsilon) { num = this.reflectionDuration; } else { num = magnitude / magnitude2; if (num <= 19f || num >= 1924f) { num = this.reflectionDuration; } else if (num < this.reflectionDuration) { float num2 = num / this.reflectionDuration; FPKJFOJMMIM.NLNGBMAPIJC().SetDynamicMaxSpeed(magnitude2 * num2); num = this.reflectionDuration; } } this.HGBKCPONIMH(num); this.LIBIBOMFIOI.BKBFIGCPIMI(3); } else { this.LIBIBOMFIOI.BKBFIGCPIMI(1); } } } // Token: 0x06004474 RID: 17524 RVA: 0x0015AEB8 File Offset: 0x001590B8 protected virtual void CPJDPHHKBNB(EnemyRangedWeapon BLBPGNFCBEO) { } // Token: 0x06004475 RID: 17525 RVA: 0x0015AEBC File Offset: 0x001590BC private bool PLMFKOEKFOK() { return this.GCCAMFDHHOB.CPIBGJLHLBL(); } // Token: 0x06004476 RID: 17526 RVA: 0x0015AECC File Offset: 0x001590CC protected override void OnDestroy() { base.OnDestroy(); if (this.KGKFMMHEMJJ != null) { this.KGKFMMHEMJJ.KMMOAKOLBED -= this.PFCEKCBMFDC; } } // Token: 0x06004477 RID: 17527 RVA: 0x0015AEFC File Offset: 0x001590FC private bool DELDOBHCKJC(Vector3 FHFHOMKFHCI) { Vector3 velocity = this.KGKFMMHEMJJ.IPKEPKNMIOG.BKDFLNGCINH.BOLBONELAEF.IGOFELJMFOF; if (velocity.sqrMagnitude < 0.1f) { return false; } Vector3 vector = FHFHOMKFHCI - this.KGKFMMHEMJJ.IPKEPKNMIOG.transform.position; return Vector3.Dot(vector, velocity) >= 0f; } // Token: 0x06004478 RID: 17528 RVA: 0x0015AF70 File Offset: 0x00159170 private void LGPDILBGPCG() { if (base.BHCCHBHNHCG) { if (this.GOOHDPLFNMC.ALEKFIMMFPH() || base.BKHECJODPHF.FHLEFPDIIJL) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); return; } base.BKHECJODPHF.KMMCIOFAHJD(this.HJAACDHCIGI(), this.dashSlowdownDistance, 1726f, false); if (base.LMDJJEGNOGM.PBDDCCOAGOG() && base.BKHECJODPHF.OGCGDMDPHBM) { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(base.BKHECJODPHF.HAODGLCKEOF())); } } } // Token: 0x06004479 RID: 17529 RVA: 0x0015B014 File Offset: 0x00159214 protected virtual void PEEDIICMOLN() { base.PNDCOBGOEJA(); base.BKHECJODPHF.HKLEPIMIEFF(true); } // Token: 0x0600447A RID: 17530 RVA: 0x0015B028 File Offset: 0x00159228 private void HEPGAGLDJAI() { if (base.BHCCHBHNHCG) { if (this.GOOHDPLFNMC.CGELFKLLMBA || base.BKHECJODPHF.FHLEFPDIIJL) { this.LIBIBOMFIOI.BKBFIGCPIMI(1); return; } base.BKHECJODPHF.Seek(this.KINNCEKOLHI, this.dashSlowdownDistance, 0.01f, false); if (base.LMDJJEGNOGM.AJFBOLHPEJC && base.BKHECJODPHF.OGCGDMDPHBM) { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(!base.BKHECJODPHF.OGCGDMDPHBM)); } } } // Token: 0x0600447B RID: 17531 RVA: 0x0015B0CC File Offset: 0x001592CC private void HIAEPGNFAED(ushort OIMHGOONBEB, ushort LPFGCCKCIEB) { base.BKHECJODPHF.StopSeeking(); } // Token: 0x17000130 RID: 304 // (get) Token: 0x060044D1 RID: 17617 RVA: 0x0015C884 File Offset: 0x0015AA84 // (set) Token: 0x0600447C RID: 17532 RVA: 0x0015B0DC File Offset: 0x001592DC private int EIOLHHHJHBJ { get { return this.JOMANIMCEOO.CPIBGJLHLBL(); } set { this.JOMANIMCEOO.MEAINJPIECA(value); } } // Token: 0x0600447D RID: 17533 RVA: 0x0015B0EC File Offset: 0x001592EC private void BCPNGONCLOP() { if (base.JNOCCMDBMIO() && this.GOOHDPLFNMC.ALEKFIMMFPH()) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); if (!base.LMDJJEGNOGM.PBDDCCOAGOG()) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } else { float num = Mathf.Clamp01((float)base.CNHBPJFLDCE / (float)base.BNBJJKCBDFC); float num2 = this.projectileSpeedByHealthCurve.Evaluate(num); float num3 = num2 + (float)this.EIOLHHHJHBJ * this.volleySpeedDelta; Vector3 vector = base.LMDJJEGNOGM.BIDBADPMKBI() + Vector3.up * this.projectileHeadTargetHeightOffset; if (this.KGKFMMHEMJJ.LMBDPKPCIGB().NLNGBMAPIJC().NIINOABKAPJ) { this.KGKFMMHEMJJ.LKOEDNKIIHC(vector, num3, (EnemyProjectileToolRangedWeapon.GHOOEBGMCNO)4); } else { Vector3 position = this.KGKFMMHEMJJ.DCBHLBNCLGP.position; Quaternion rotation = this.KGKFMMHEMJJ.DCBHLBNCLGP.rotation; this.KGKFMMHEMJJ.FHGPJDHAEJN(vector, num3, position, rotation, EnemyProjectileToolRangedWeapon.GHOOEBGMCNO.TO_PLAYER); } this.LIBIBOMFIOI.BKBFIGCPIMI(0); } } } // Token: 0x0600447E RID: 17534 RVA: 0x0015B210 File Offset: 0x00159410 private void HKNHGIMCFIG() { if (base.BHCCHBHNHCG) { if (!base.LMDJJEGNOGM.AJFBOLHPEJC || !SingletonMonoBehaviour.NCKMBFBMBFM.TargetIsAlive(base.LMDJJEGNOGM) || !this.KGKFMMHEMJJ.IPKEPKNMIOG.BKDFLNGCINH.NIINOABKAPJ) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } else { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(!base.BKHECJODPHF.OGCGDMDPHBM)); } } } // Token: 0x0600447F RID: 17535 RVA: 0x0015B29C File Offset: 0x0015949C private void EJOPENBGGHM(bool NOBAPCOKFIL) { this.GCCAMFDHHOB.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x06004480 RID: 17536 RVA: 0x0015B2AC File Offset: 0x001594AC protected virtual void KLMFCLAAJBI() { base.EHPODFCEKML(); base.BKHECJODPHF.StopAll(); base.IDEPEMCKCNN = true; } // Token: 0x06004481 RID: 17537 RVA: 0x0015B2C8 File Offset: 0x001594C8 protected virtual void DIEMJHJBFNM() { base.CCBCNGHMMBJ(); if (base.DGLKKANNBPD()) { this.LIBIBOMFIOI.BKBFIGCPIMI(147); } } // Token: 0x06004482 RID: 17538 RVA: 0x0015B2EC File Offset: 0x001594EC private void DLHEHMNAPEL(ushort OIMHGOONBEB, ushort LPFGCCKCIEB) { this.enemyAnimator.StopStun(); } // Token: 0x06004483 RID: 17539 RVA: 0x0015B2FC File Offset: 0x001594FC private Vector3 JDMNIGLPBLF() { return this.JGIANBIAPLD.CPIBGJLHLBL(); } // Token: 0x06004484 RID: 17540 RVA: 0x0015B30C File Offset: 0x0015950C private void IHHCKCOKDDI() { if (base.DGLOKLCEMLH() && this.GOOHDPLFNMC.OAJDHNPMNCN()) { this.LIBIBOMFIOI.BKBFIGCPIMI(6); } } // Token: 0x06004485 RID: 17541 RVA: 0x0015B338 File Offset: 0x00159538 private float IJEJPFKHPFB() { return this.OPLJPIOLJNC.CPIBGJLHLBL(); } // Token: 0x06004486 RID: 17542 RVA: 0x0015B348 File Offset: 0x00159548 private void DPJDCLDECCN(ushort OIMHGOONBEB, ushort LPFGCCKCIEB) { this.enemyAnimator.PBOBHNICGEE(); } // Token: 0x06004487 RID: 17543 RVA: 0x0015B358 File Offset: 0x00159558 protected virtual void MCNEKPDJDFO() { base.Start(); this.LIBIBOMFIOI.PGELJEHELFN(this, (ushort)(-93)); } // Token: 0x06004488 RID: 17544 RVA: 0x0015B374 File Offset: 0x00159574 protected virtual void IOPCNFMPBFD() { base.OAKBFGNNAEK(); if (base.JNOCCMDBMIO() && !base.BKHECJODPHF.FHLEFPDIIJL) { base.BKHECJODPHF.KMMCIOFAHJD(this.KINNCEKOLHI, this.movementSlowdownDistance, 1420f, true); } } // Token: 0x06004489 RID: 17545 RVA: 0x0015B3B4 File Offset: 0x001595B4 protected override void LONJNLLINPO() { base.LONJNLLINPO(); base.BKHECJODPHF.PNBHCJPBNMA = false; if (base.BHCCHBHNHCG) { this.MHBJLBKGPHB = true; } } // Token: 0x0600448A RID: 17546 RVA: 0x0015B3DC File Offset: 0x001595DC protected override void Update() { base.Update(); this.LIBIBOMFIOI.DLBPEOILIFL(); this.GOOHDPLFNMC.KHJKJGDBPMF(); } // Token: 0x0600448B RID: 17547 RVA: 0x0015B3FC File Offset: 0x001595FC private void LEJGCCGIFJF(ProjectileTool CCPCPHGGOMF, Enemy LGJCKFEKBOO, Enemy AKICADDPOIF, MHEBDODJGOA FJJKLPKDCPP, IHEAKAOGCIF CACIBBKDNIH) { if (CCPCPHGGOMF.BHCCHBHNHCG) { CCPCPHGGOMF.BKDFLNGCINH.BOLBONELAEF.ClearVelocity(); } } // Token: 0x0600448C RID: 17548 RVA: 0x0015B41C File Offset: 0x0015961C private void JLIKGBAINBJ(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.IGIPCHFCFNN()) { float num = this.postDisengageDelay; if (this.MHBJLBKGPHB) { num = this.postPatrolDelay; this.EAIIPHHDHID(true); } this.GOOHDPLFNMC.KLIANKEOBGC(num); } } // Token: 0x0600448D RID: 17549 RVA: 0x0015B460 File Offset: 0x00159660 private void OMNELGAPDED() { if (base.DFJFKOLLEMK()) { if (!base.LMDJJEGNOGM.AJFBOLHPEJC || !SingletonMonoBehaviour.NCKMBFBMBFM.NJPHMMEEGIM(base.LMDJJEGNOGM) || !this.KGKFMMHEMJJ.IPKEPKNMIOG.KDFFFFBBHAM().NIINOABKAPJ) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } else { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(base.BKHECJODPHF.OGCGDMDPHBM)); } } } // Token: 0x1700012E RID: 302 // (get) Token: 0x0600448E RID: 17550 RVA: 0x0015B4EC File Offset: 0x001596EC // (set) Token: 0x060044BE RID: 17598 RVA: 0x0015C1E8 File Offset: 0x0015A3E8 private Vector3 CCFJDBJLOIK { get { return this.PMICPDNLKJJ.CPIBGJLHLBL(); } set { this.PMICPDNLKJJ.MEAINJPIECA(value); } } // Token: 0x17000131 RID: 305 // (get) Token: 0x060044C8 RID: 17608 RVA: 0x0015C760 File Offset: 0x0015A960 // (set) Token: 0x0600448F RID: 17551 RVA: 0x0015B4FC File Offset: 0x001596FC private Vector3 KINNCEKOLHI { get { return this.JGIANBIAPLD.CPIBGJLHLBL(); } set { this.JGIANBIAPLD.MEAINJPIECA(value); } } // Token: 0x06004490 RID: 17552 RVA: 0x0015B50C File Offset: 0x0015970C protected override void NDHBFLHIAHM() { base.OnDestroy(); if (this.KGKFMMHEMJJ != null) { this.KGKFMMHEMJJ.PONPFPPCKCD(new EnemyProjectileToolRangedWeapon.POPOOABBBIK(this.PFCEKCBMFDC)); } } // Token: 0x06004491 RID: 17553 RVA: 0x0015B53C File Offset: 0x0015973C protected virtual void MLJGPDEJMMB() { base.AKBEAKBPFLA(); base.IDEPEMCKCNN = false; base.BKHECJODPHF.FMFCBADCFCK = this.dashSpeed; base.BKHECJODPHF.GKJLNANPDNC = this.maxDashForce; if (base.GANDPDNCOKF()) { this.EAIIPHHDHID(true); this.PCJJFONMJGK(this.GOJNMALIOJA.KKOMILIFIPM()); base.BKHECJODPHF.Seek(this.LLHBCICLPME(), this.movementSlowdownDistance, 1115f, false); } } // Token: 0x06004492 RID: 17554 RVA: 0x0015B5B8 File Offset: 0x001597B8 protected virtual void EKBEMBMIJLH() { base.OnDestroy(); if (this.KGKFMMHEMJJ != null) { this.KGKFMMHEMJJ.LGLLGPPGMMD(new EnemyProjectileToolRangedWeapon.POPOOABBBIK(this.PICIBJPPCOM)); } } // Token: 0x06004493 RID: 17555 RVA: 0x0015B5E8 File Offset: 0x001597E8 private bool PFCMMPLEONE() { return this.GCCAMFDHHOB.CPIBGJLHLBL(); } // Token: 0x06004494 RID: 17556 RVA: 0x0015B5F8 File Offset: 0x001597F8 private void FKAOHBNJGEM() { if (base.BHCCHBHNHCG && this.GOOHDPLFNMC.CGELFKLLMBA) { this.LIBIBOMFIOI.BKBFIGCPIMI(2); } } // Token: 0x06004495 RID: 17557 RVA: 0x0015B624 File Offset: 0x00159824 private Vector3 BCABEMNMCFM() { return this.PMICPDNLKJJ.CPIBGJLHLBL(); } // Token: 0x06004496 RID: 17558 RVA: 0x0015B634 File Offset: 0x00159834 private void GLJGKOFDMCN() { if (base.GANDPDNCOKF() && this.GOOHDPLFNMC.OAJDHNPMNCN()) { this.LIBIBOMFIOI.BKBFIGCPIMI(8); } } // Token: 0x1700012F RID: 303 // (get) Token: 0x06004497 RID: 17559 RVA: 0x0015B660 File Offset: 0x00159860 // (set) Token: 0x060044C9 RID: 17609 RVA: 0x0015C770 File Offset: 0x0015A970 private bool MHBJLBKGPHB { get { return this.GCCAMFDHHOB.CPIBGJLHLBL(); } set { this.GCCAMFDHHOB.MEAINJPIECA(value); } } // Token: 0x06004498 RID: 17560 RVA: 0x0015B670 File Offset: 0x00159870 protected override void EKEGOFIPIPE() { base.EKEGOFIPIPE(); if (base.BHCCHBHNHCG) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } } // Token: 0x06004499 RID: 17561 RVA: 0x0015B690 File Offset: 0x00159890 private void EKDKODOHPFM(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.BHCCHBHNHCG) { float num = this.postDisengageDelay; if (this.PLMFKOEKFOK()) { num = this.postPatrolDelay; this.EAIIPHHDHID(false); } this.GOOHDPLFNMC.BJOJLPHBGMN(num); } } // Token: 0x0600449A RID: 17562 RVA: 0x0015B6D4 File Offset: 0x001598D4 private void EAIIPHHDHID(bool NOBAPCOKFIL) { this.GCCAMFDHHOB.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x0600449B RID: 17563 RVA: 0x0015B6E4 File Offset: 0x001598E4 private void NLEAAEGCNCF() { if (base.JNOCCMDBMIO()) { EIDNMNCOAAJ eidnmncoaaj = base.LMDJJEGNOGM; if (this.GOOHDPLFNMC.OAJDHNPMNCN()) { if (!base.LMDJJEGNOGM.PBDDCCOAGOG()) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); } if (base.LMDJJEGNOGM.AJFBOLHPEJC) { float num = Mathf.Clamp01((float)base.CNHBPJFLDCE / (float)base.BNBJJKCBDFC); float num2 = this.projectileSpeedByHealthCurve.Evaluate(num); this.KGKFMMHEMJJ.AuthorityFire(base.LMDJJEGNOGM.BIDBADPMKBI() + Vector3.up * this.projectileHeadTargetHeightOffset, num2); } this.LIBIBOMFIOI.BKBFIGCPIMI(5); return; } if (base.LMDJJEGNOGM.AEAKFIBHEPE()) { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(base.BKHECJODPHF.HAODGLCKEOF())); } } } // Token: 0x0600449C RID: 17564 RVA: 0x0015B7DC File Offset: 0x001599DC protected virtual void OLHOCHLIDFE() { base.OAKBFGNNAEK(); if (base.DFJFKOLLEMK() && !base.BKHECJODPHF.FHLEFPDIIJL) { base.BKHECJODPHF.Seek(this.HJAACDHCIGI(), this.movementSlowdownDistance, 351f, false); } } // Token: 0x0600449D RID: 17565 RVA: 0x0015B81C File Offset: 0x00159A1C private void FJADBEFIKKI(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { this.enemyAnimator.PlayMeleeAttack(); if (base.IGIPCHFCFNN()) { this.PCKCMNNEDFL(this.EENMGCGCBGO() + 0); this.GOOHDPLFNMC.KLIANKEOBGC(this.reflectionDuration); } } // Token: 0x0600449E RID: 17566 RVA: 0x0015B854 File Offset: 0x00159A54 protected override void PNDCOBGOEJA() { base.PNDCOBGOEJA(); base.BKHECJODPHF.PNBHCJPBNMA = true; } // Token: 0x0600449F RID: 17567 RVA: 0x0015B868 File Offset: 0x00159A68 private void NINACGHIFLO(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.BHCCHBHNHCG) { float num = this.postDisengageDelay; if (this.MHBJLBKGPHB) { num = this.postPatrolDelay; this.MHBJLBKGPHB = false; } this.GOOHDPLFNMC.BJOJLPHBGMN(num); } } // Token: 0x060044A0 RID: 17568 RVA: 0x0015B8AC File Offset: 0x00159AAC private void CEJGFJMKPIM() { if (base.DGLOKLCEMLH() && this.GOOHDPLFNMC.OAJDHNPMNCN()) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); if (!base.LMDJJEGNOGM.PBDDCCOAGOG()) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } else { float num = Mathf.Clamp01((float)base.CNHBPJFLDCE / (float)base.BNBJJKCBDFC); float num2 = this.projectileSpeedByHealthCurve.Evaluate(num); float num3 = num2 + (float)this.EENMGCGCBGO() * this.volleySpeedDelta; Vector3 vector = base.LMDJJEGNOGM.ICNCDGIKNNI + Vector3.up * this.projectileHeadTargetHeightOffset; if (this.KGKFMMHEMJJ.EEILDEHFFBM().EONLBDPAION().BBENILJAIMO()) { this.KGKFMMHEMJJ.PBFIHKMCNGL(vector, num3, (EnemyProjectileToolRangedWeapon.GHOOEBGMCNO)8); } else { Vector3 position = this.KGKFMMHEMJJ.DCBHLBNCLGP.position; Quaternion rotation = this.KGKFMMHEMJJ.DCBHLBNCLGP.rotation; this.KGKFMMHEMJJ.FHGPJDHAEJN(vector, num3, position, rotation, (EnemyProjectileToolRangedWeapon.GHOOEBGMCNO)8); } this.LIBIBOMFIOI.BKBFIGCPIMI(1); } } } // Token: 0x060044A1 RID: 17569 RVA: 0x0015B9D0 File Offset: 0x00159BD0 private void DDHBNEELCJO(ProjectileTool CCPCPHGGOMF, Enemy LGJCKFEKBOO, Enemy AKICADDPOIF, MHEBDODJGOA FJJKLPKDCPP, IHEAKAOGCIF CACIBBKDNIH) { if (CCPCPHGGOMF.DFJFKOLLEMK()) { CCPCPHGGOMF.EONLBDPAION().BOLBONELAEF.ClearVelocity(); } } // Token: 0x060044A2 RID: 17570 RVA: 0x0015B9F0 File Offset: 0x00159BF0 private void PAGLLFEHKMA(ushort OIMHGOONBEB, ushort LPFGCCKCIEB) { base.BKHECJODPHF.NDGKHAMPONJ(); } // Token: 0x060044A3 RID: 17571 RVA: 0x0015BA00 File Offset: 0x00159C00 private Vector3 KCPEHMOBEHK() { if (this.GOJNMALIOJA == null) { return base.BOLBONELAEF.CIGPHKLAAOD; } if (this.NHMFKINHCLF && this.MHBJLBKGPHB) { return this.GOJNMALIOJA.GetInitialWitchPoint(); } if (base.CNHBPJFLDCE < this.takeDamageAmount) { return this.GOJNMALIOJA.GetFinalWitchPoint(); } this.NHMFKINHCLF = false; return this.GOJNMALIOJA.GetRandomWitchPoint(); } // Token: 0x17000133 RID: 307 // (get) Token: 0x060044A4 RID: 17572 RVA: 0x0015BA7C File Offset: 0x00159C7C private int KNOAAFBIHIL { get { if (base.CNHBPJFLDCE > base.BNBJJKCBDFC - this.takeDamageAmount) { return this.firstVolleyRequiredReturnCount; } return this.requiredReturnCount; } } // Token: 0x060044A5 RID: 17573 RVA: 0x0015BAA4 File Offset: 0x00159CA4 protected virtual void HBOBJMJGBHG() { base.EHPODFCEKML(); base.BKHECJODPHF.StopAll(); base.IDEPEMCKCNN = true; } // Token: 0x060044A6 RID: 17574 RVA: 0x0015BAC0 File Offset: 0x00159CC0 private void HNNEGIMPAFL(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { this.enemyAnimator.GHKNJGNADCM(); if (base.JNOCCMDBMIO()) { this.EIOLHHHJHBJ += 0; this.GOOHDPLFNMC.BJOJLPHBGMN(this.reflectionDuration); } } // Token: 0x060044A7 RID: 17575 RVA: 0x0015BAF8 File Offset: 0x00159CF8 protected override void LIJLPOMHJLM(EnemyRangedWeapon BLBPGNFCBEO) { } // Token: 0x060044A8 RID: 17576 RVA: 0x0015BAFC File Offset: 0x00159CFC private void KJEFAFPDPNP(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.IGIPCHFCFNN()) { float num = this.postDisengageDelay; if (this.OJIPCPBHAJA()) { num = this.postPatrolDelay; this.MHBJLBKGPHB = false; } this.GOOHDPLFNMC.KLIANKEOBGC(num); } } // Token: 0x060044A9 RID: 17577 RVA: 0x0015BB40 File Offset: 0x00159D40 private void GPABDDPPKJE() { if (base.DGLOKLCEMLH() && this.GOOHDPLFNMC.OAJDHNPMNCN()) { if (this.EIOLHHHJHBJ >= this.KNOAAFBIHIL - 1) { this.LIBIBOMFIOI.BKBFIGCPIMI(5); } else { this.LIBIBOMFIOI.BKBFIGCPIMI(4); } } } // Token: 0x060044AA RID: 17578 RVA: 0x0015BB98 File Offset: 0x00159D98 protected override void CCBCNGHMMBJ() { base.CCBCNGHMMBJ(); if (base.BHCCHBHNHCG) { this.LIBIBOMFIOI.BKBFIGCPIMI(ushort.MaxValue); } } // Token: 0x060044AB RID: 17579 RVA: 0x0015BBBC File Offset: 0x00159DBC private void KOABOACJOLB(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { base.BKHECJODPHF.FMFCBADCFCK = this.dashSpeed; base.BKHECJODPHF.GKJLNANPDNC = this.maxDashForce; if (base.BHCCHBHNHCG) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); this.KINNCEKOLHI = this.KCPEHMOBEHK(); base.BKHECJODPHF.Seek(this.KINNCEKOLHI, this.dashSlowdownDistance, 0.01f, false); this.GOOHDPLFNMC.BJOJLPHBGMN(this.dashTimeout); } } // Token: 0x060044AC RID: 17580 RVA: 0x0015BC40 File Offset: 0x00159E40 private Vector3 BNKPBKMHEJE() { if (this.GOJNMALIOJA == null) { return base.BOLBONELAEF.CIGPHKLAAOD; } if (this.NHMFKINHCLF && this.PFCMMPLEONE()) { return this.GOJNMALIOJA.HPPFHPLOMAC(); } if (base.CNHBPJFLDCE < this.takeDamageAmount) { return this.GOJNMALIOJA.GEKBDFOJHFO(); } this.NHMFKINHCLF = false; return this.GOJNMALIOJA.DCKEBPEHIIL(); } // Token: 0x060044AD RID: 17581 RVA: 0x0015BCBC File Offset: 0x00159EBC protected override void EHPODFCEKML() { base.EHPODFCEKML(); base.BKHECJODPHF.StopAll(); base.IDEPEMCKCNN = true; } // Token: 0x060044AE RID: 17582 RVA: 0x0015BCD8 File Offset: 0x00159ED8 private void FKPFIBCKFFF(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { this.enemyAnimator.FAGBJLMGODL(); this.enemyAudio.FIHDDDCOOBI(); if (base.IGIPCHFCFNN()) { this.EIOLHHHJHBJ = 1; this.GOOHDPLFNMC.OOEPCEFMAKA(this.attackChargeDuration); } } // Token: 0x060044AF RID: 17583 RVA: 0x0015BD14 File Offset: 0x00159F14 private void ANNDOPHPPPC() { if (base.DGLOKLCEMLH() && this.GOOHDPLFNMC.HFOKKCOENOF()) { this.LIBIBOMFIOI.BKBFIGCPIMI(7); } } // Token: 0x060044B0 RID: 17584 RVA: 0x0015BD40 File Offset: 0x00159F40 private void PEPHKDHPBIB(ushort OIMHGOONBEB, ushort LPFGCCKCIEB) { this.enemyAnimator.PBOBHNICGEE(); } // Token: 0x060044B1 RID: 17585 RVA: 0x0015BD50 File Offset: 0x00159F50 private bool IPMAMBJABMB() { return this.GCCAMFDHHOB.CPIBGJLHLBL(); } // Token: 0x060044B2 RID: 17586 RVA: 0x0015BD60 File Offset: 0x00159F60 private void IAJIEKDDCML(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.BHCCHBHNHCG) { float num = this.MIBKEPAHCBD; if (this.EIOLHHHJHBJ < this.KNOAAFBIHIL - 1) { num = Mathf.Max(0f, num - this.reflectionDuration); } this.GOOHDPLFNMC.BJOJLPHBGMN(num); } } // Token: 0x060044B3 RID: 17587 RVA: 0x0015BDB4 File Offset: 0x00159FB4 private bool OJIPCPBHAJA() { return this.GCCAMFDHHOB.CPIBGJLHLBL(); } // Token: 0x060044B4 RID: 17588 RVA: 0x0015BDC4 File Offset: 0x00159FC4 private void IMMLIPOIOEL() { if (base.BHCCHBHNHCG && this.GOOHDPLFNMC.CGELFKLLMBA) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } } // Token: 0x060044B5 RID: 17589 RVA: 0x0015BDF0 File Offset: 0x00159FF0 private bool EHMGHNONNCJ(Vector3 FHFHOMKFHCI) { Vector3 velocity = this.KGKFMMHEMJJ.IPKEPKNMIOG.EBOEFKLPMKL().BOLBONELAEF.IGOFELJMFOF; if (velocity.sqrMagnitude >= 124f) { return true; } Vector3 vector = FHFHOMKFHCI - this.KGKFMMHEMJJ.IPKEPKNMIOG.transform.position; return Vector3.Dot(vector, velocity) < 1171f; } // Token: 0x060044B6 RID: 17590 RVA: 0x0015BE64 File Offset: 0x0015A064 private void PFCEKCBMFDC(ProjectileTool FPKJFOJMMIM, EnemyProjectileToolRangedWeapon.GHOOEBGMCNO CBCMDLNIHKK, Vector3 FHFHOMKFHCI, Vector3 NCEMFEFKOEF) { if (FPKJFOJMMIM != null && FPKJFOJMMIM.BHCCHBHNHCG && !base.FNGHOEFDKPO && !base.AOKGAGHHHIN && base.CNHBPJFLDCE > 0 && base.ACEACLFJOAA) { if (!base.BHCCHBHNHCG) { base.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI); } if (CBCMDLNIHKK == EnemyProjectileToolRangedWeapon.GHOOEBGMCNO.TO_ENEMY_SUCCESS) { this.CCFJDBJLOIK = NCEMFEFKOEF.normalized; Vector3 position = this.KGKFMMHEMJJ.DCBHLBNCLGP.position; Vector3 vector = position - FHFHOMKFHCI; float magnitude = vector.magnitude; Vector3 normalized = vector.normalized; float magnitude2 = Vector3.Project(NCEMFEFKOEF, normalized).magnitude; float num; if (magnitude2 <= Mathf.Epsilon) { num = this.reflectionDuration; } else { num = magnitude / magnitude2; if (num <= 0f || num >= 8f) { num = this.reflectionDuration; } else if (num < this.reflectionDuration) { float num2 = num / this.reflectionDuration; FPKJFOJMMIM.BKDFLNGCINH.SetDynamicMaxSpeed(magnitude2 * num2); num = this.reflectionDuration; } } this.MIBKEPAHCBD = num; this.LIBIBOMFIOI.BKBFIGCPIMI(4); } else { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } } } // Token: 0x060044B7 RID: 17591 RVA: 0x0015BFC0 File Offset: 0x0015A1C0 private void FNAIHCPCBOD() { if (base.BHCCHBHNHCG && this.GOOHDPLFNMC.CGELFKLLMBA) { if (this.EIOLHHHJHBJ >= this.KNOAAFBIHIL - 1) { this.LIBIBOMFIOI.BKBFIGCPIMI(6); } else { this.LIBIBOMFIOI.BKBFIGCPIMI(5); } } } // Token: 0x060044B8 RID: 17592 RVA: 0x0015C018 File Offset: 0x0015A218 private void POAMJMELCAJ(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { if (base.IGIPCHFCFNN()) { float num = this.postDisengageDelay; if (this.IPMAMBJABMB()) { num = this.postPatrolDelay; this.MHBJLBKGPHB = true; } this.GOOHDPLFNMC.BJOJLPHBGMN(num); } } // Token: 0x060044B9 RID: 17593 RVA: 0x0015C05C File Offset: 0x0015A25C private void BFHCFNBDPMG(float NOBAPCOKFIL) { this.OPLJPIOLJNC.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x060044BA RID: 17594 RVA: 0x0015C06C File Offset: 0x0015A26C private void BNDMHFBEPHI(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { this.enemyAnimator.PlayRangedAttack(); this.enemyAudio.OnAttack(); if (base.BHCCHBHNHCG) { this.EIOLHHHJHBJ = 0; this.GOOHDPLFNMC.BJOJLPHBGMN(this.attackChargeDuration); } } // Token: 0x060044BB RID: 17595 RVA: 0x0015C0A8 File Offset: 0x0015A2A8 private void EEEGHOJHGEG() { if (base.JNOCCMDBMIO()) { if (!base.LMDJJEGNOGM.AEAKFIBHEPE() || !SingletonMonoBehaviour.NCKMBFBMBFM.NJPHMMEEGIM(base.LMDJJEGNOGM) || !this.KGKFMMHEMJJ.NMFPHDDHHKE().NLNGBMAPIJC().NIINOABKAPJ) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } else { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(base.BKHECJODPHF.HAODGLCKEOF())); } } } // Token: 0x060044BC RID: 17596 RVA: 0x0015C134 File Offset: 0x0015A334 private void JJGKNGOBOGN(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { this.enemyAnimator.PlayMeleeAttack(); if (base.BHCCHBHNHCG) { this.EIOLHHHJHBJ++; this.GOOHDPLFNMC.BJOJLPHBGMN(this.reflectionDuration); } } // Token: 0x060044BD RID: 17597 RVA: 0x0015C16C File Offset: 0x0015A36C private Vector3 BLCBDCGHCDI() { if (this.GOJNMALIOJA == null) { return base.BOLBONELAEF.JHBFKKAFPFG(); } if (this.NHMFKINHCLF && this.PLMFKOEKFOK()) { return this.GOJNMALIOJA.EEACBOLOPJJ(); } if (base.CNHBPJFLDCE < this.takeDamageAmount) { return this.GOJNMALIOJA.JPFFBGEAPOD(); } this.NHMFKINHCLF = true; return this.GOJNMALIOJA.KFBNLLJPGEI(); } // Token: 0x060044BF RID: 17599 RVA: 0x0015C1F8 File Offset: 0x0015A3F8 private bool KBLAEKNKOON(Vector3 FHFHOMKFHCI) { Vector3 velocity = this.KGKFMMHEMJJ.PIFECFILGHF().KDFFFFBBHAM().BOLBONELAEF.IGOFELJMFOF; if (velocity.sqrMagnitude >= 1106f) { return false; } Vector3 vector = FHFHOMKFHCI - this.KGKFMMHEMJJ.LMBDPKPCIGB().transform.position; return Vector3.Dot(vector, velocity) >= 102f; } // Token: 0x060044C0 RID: 17600 RVA: 0x0015C26C File Offset: 0x0015A46C protected override EIDNMNCOAAJ IJCDBKLCFIE(bool GHGNJLIBGFA = false) { if (GHGNJLIBGFA) { return base.KAHAFAHMEKP(GHGNJLIBGFA, false); } base.PCGHCNDJBIP(GHGNJLIBGFA, true, this.POAAKGACPKD); if (this.POAAKGACPKD.Count == 0) { return EIDNMNCOAAJ.CGNKKAKJIJL; } if (this.POAAKGACPKD.Count == 1) { return this.POAAKGACPKD[0]; } int num = global::UnityEngine.Random.Range(0, this.POAAKGACPKD.Count); if (base.LMDJJEGNOGM.AJFBOLHPEJC && EIDNMNCOAAJ.GEINBKNJBKG(base.LMDJJEGNOGM, this.POAAKGACPKD[num])) { float num2 = 1f / (float)this.POAAKGACPKD.Count; float num3 = this.reselectTargetPlayerChance / num2; if (!NNGFEGAEJPG.GECFBNNMHCE(num3)) { int num4 = global::UnityEngine.Random.Range(1, this.POAAKGACPKD.Count - 1); num = (num + num4) % this.POAAKGACPKD.Count; } } return this.POAAKGACPKD[num]; } // Token: 0x060044C1 RID: 17601 RVA: 0x0015C368 File Offset: 0x0015A568 protected override void Awake() { base.Awake(); if (this.rangedWeapon != null) { this.KGKFMMHEMJJ = this.rangedWeapon as EnemyProjectileToolRangedWeapon; if (this.KGKFMMHEMJJ != null) { this.KGKFMMHEMJJ.KMMOAKOLBED += this.PFCEKCBMFDC; this.KGKFMMHEMJJ.ILBBFLIIHAK = new EnemyProjectileToolRangedWeapon.DFBMPGIOBNK(this.LEJGCCGIFJF); } } if (base.DKPCNHIJNGM != null) { this.GOJNMALIOJA = base.DKPCNHIJNGM as WitchPatrolPoints; } if (this.KGKFMMHEMJJ == null) { Debug.LogError(base.name + " is missing a Projectile Tool Ranged Weapon."); } this.JGIANBIAPLD = new LHLLJPPCDKA(this, "RT", Vector3.zero, IKCAJLLAFML.AUTHORITY, null); this.JOMANIMCEOO = new LHLLJPPCDKA(this, "RC", 0, IKCAJLLAFML.AUTHORITY, null); this.PMICPDNLKJJ = new LHLLJPPCDKA(this, "HD", Vector3.forward, IKCAJLLAFML.AUTHORITY, null); this.GCCAMFDHHOB = new LHLLJPPCDKA(this, "PSWP", true, IKCAJLLAFML.AUTHORITY, null); this.OPLJPIOLJNC = new LHLLJPPCDKA(this, "TUC", 0f, IKCAJLLAFML.AUTHORITY, null); this.GOOHDPLFNMC = new AONMNAEOJAL(this, "CT", IKCAJLLAFML.AUTHORITY); this.LIBIBOMFIOI = new PNONBEAIBHA("CSM", IKCAJLLAFML.AUTHORITY); this.LIBIBOMFIOI.AGLMMKOFICI(1, new ANMJLCILKDJ.NCMAEMHOHDG(this.NINACGHIFLO), null, new ANMJLCILKDJ.PLBLFEEANOO(this.FKAOHBNJGEM)); this.LIBIBOMFIOI.AGLMMKOFICI(0, new ANMJLCILKDJ.NCMAEMHOHDG(this.KOABOACJOLB), new ANMJLCILKDJ.NCMAEMHOHDG(this.HIAEPGNFAED), new ANMJLCILKDJ.PLBLFEEANOO(this.HEPGAGLDJAI)); this.LIBIBOMFIOI.AGLMMKOFICI(2, new ANMJLCILKDJ.NCMAEMHOHDG(this.BNDMHFBEPHI), null, new ANMJLCILKDJ.PLBLFEEANOO(this.JCLJLBEHMKN)); this.LIBIBOMFIOI.AGLMMKOFICI(3, null, null, new ANMJLCILKDJ.PLBLFEEANOO(this.HKNHGIMCFIG)); this.LIBIBOMFIOI.AGLMMKOFICI(4, new ANMJLCILKDJ.NCMAEMHOHDG(this.IAJIEKDDCML), null, new ANMJLCILKDJ.PLBLFEEANOO(this.FNAIHCPCBOD)); this.LIBIBOMFIOI.AGLMMKOFICI(5, new ANMJLCILKDJ.NCMAEMHOHDG(this.JJGKNGOBOGN), null, new ANMJLCILKDJ.PLBLFEEANOO(this.EJGECFAAMME)); this.LIBIBOMFIOI.AGLMMKOFICI(6, new ANMJLCILKDJ.NCMAEMHOHDG(this.DFHFKPNNCBH), new ANMJLCILKDJ.NCMAEMHOHDG(this.DLHEHMNAPEL), new ANMJLCILKDJ.PLBLFEEANOO(this.IMMLIPOIOEL)); } // Token: 0x17000132 RID: 306 // (get) Token: 0x060044C3 RID: 17603 RVA: 0x0015C67C File Offset: 0x0015A87C // (set) Token: 0x060044CD RID: 17613 RVA: 0x0015C828 File Offset: 0x0015AA28 private float MIBKEPAHCBD { get { return this.OPLJPIOLJNC.CPIBGJLHLBL(); } set { this.OPLJPIOLJNC.MEAINJPIECA(value); } } // Token: 0x060044C4 RID: 17604 RVA: 0x0015C68C File Offset: 0x0015A88C private void DFHFKPNNCBH(ushort CHJBIHILBFO, ushort BNCBHHCPCLE) { this.enemyAnimator.StartStun(false); if (base.BHCCHBHNHCG) { this.KGKFMMHEMJJ.IPKEPKNMIOG.AuthorityFinish(false); Vector3 vector = base.BOLBONELAEF.CIGPHKLAAOD - this.CCFJDBJLOIK * 0.5f; base.AuthorityApplyAttack(this, FLDPCEKNKCA.SELF_ATTACK, MHEBDODJGOA.NORMAL, this.takeDamageAmount, vector, this.CCFJDBJLOIK); this.AuthorityOnDamageApplyForce(FLDPCEKNKCA.DEFAULT, MHEBDODJGOA.NORMAL, this.CCFJDBJLOIK, base.transform.position); this.GOOHDPLFNMC.BJOJLPHBGMN(this.takeDamageDuration); } } // Token: 0x060044C5 RID: 17605 RVA: 0x0015C728 File Offset: 0x0015A928 protected virtual void FIMEPLALHFF() { base.CCBCNGHMMBJ(); if (base.DGLKKANNBPD()) { this.LIBIBOMFIOI.BKBFIGCPIMI(198); } } // Token: 0x060044C6 RID: 17606 RVA: 0x0015C74C File Offset: 0x0015A94C protected virtual void NBFONEJNHOM(EnemyRangedWeapon BLBPGNFCBEO) { } // Token: 0x060044C7 RID: 17607 RVA: 0x0015C750 File Offset: 0x0015A950 private void HGBKCPONIMH(float NOBAPCOKFIL) { this.OPLJPIOLJNC.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x060044CA RID: 17610 RVA: 0x0015C780 File Offset: 0x0015A980 private Vector3 IKJBFOCGBAP() { if (this.GOJNMALIOJA == null) { return base.BOLBONELAEF.CIGPHKLAAOD; } if (this.NHMFKINHCLF && this.IPMAMBJABMB()) { return this.GOJNMALIOJA.AJDELFHKFEK(); } if (base.CNHBPJFLDCE < this.takeDamageAmount) { return this.GOJNMALIOJA.GetFinalWitchPoint(); } this.NHMFKINHCLF = true; return this.GOJNMALIOJA.JNGGBOHLMNA(); } // Token: 0x060044CB RID: 17611 RVA: 0x0015C7FC File Offset: 0x0015A9FC private void PCJJFONMJGK(Vector3 NOBAPCOKFIL) { this.JGIANBIAPLD.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x060044CC RID: 17612 RVA: 0x0015C80C File Offset: 0x0015AA0C protected override void Start() { base.Start(); this.LIBIBOMFIOI.FLHFCMCNLEK(this, ushort.MaxValue); } // Token: 0x060044CE RID: 17614 RVA: 0x0015C838 File Offset: 0x0015AA38 protected virtual void POEDAMONBNL() { base.Start(); this.LIBIBOMFIOI.PGELJEHELFN(this, (ushort)(-35)); } // Token: 0x060044CF RID: 17615 RVA: 0x0015C854 File Offset: 0x0015AA54 private void ABBBMKODCEE(ProjectileTool CCPCPHGGOMF, Enemy LGJCKFEKBOO, Enemy AKICADDPOIF, MHEBDODJGOA FJJKLPKDCPP, IHEAKAOGCIF CACIBBKDNIH) { if (CCPCPHGGOMF.DGLKKANNBPD()) { CCPCPHGGOMF.NLNGBMAPIJC().BOLBONELAEF.ClearVelocity(); } } // Token: 0x060044D0 RID: 17616 RVA: 0x0015C874 File Offset: 0x0015AA74 private int EENMGCGCBGO() { return this.JOMANIMCEOO.CPIBGJLHLBL(); } // Token: 0x060044D2 RID: 17618 RVA: 0x0015C894 File Offset: 0x0015AA94 private void EJGECFAAMME() { if (base.BHCCHBHNHCG && this.GOOHDPLFNMC.CGELFKLLMBA) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); if (!base.LMDJJEGNOGM.AJFBOLHPEJC) { this.LIBIBOMFIOI.BKBFIGCPIMI(0); } else { float num = Mathf.Clamp01((float)base.CNHBPJFLDCE / (float)base.BNBJJKCBDFC); float num2 = this.projectileSpeedByHealthCurve.Evaluate(num); float num3 = num2 + (float)this.EIOLHHHJHBJ * this.volleySpeedDelta; Vector3 vector = base.LMDJJEGNOGM.ICNCDGIKNNI + Vector3.up * this.projectileHeadTargetHeightOffset; if (this.KGKFMMHEMJJ.IPKEPKNMIOG.BKDFLNGCINH.NIINOABKAPJ) { this.KGKFMMHEMJJ.AuthorityReflect(vector, num3, EnemyProjectileToolRangedWeapon.GHOOEBGMCNO.TO_PLAYER); } else { Vector3 position = this.KGKFMMHEMJJ.DCBHLBNCLGP.position; Quaternion rotation = this.KGKFMMHEMJJ.DCBHLBNCLGP.rotation; this.KGKFMMHEMJJ.AuthorityReflect(vector, num3, position, rotation, EnemyProjectileToolRangedWeapon.GHOOEBGMCNO.TO_PLAYER); } this.LIBIBOMFIOI.BKBFIGCPIMI(3); } } } // Token: 0x060044D3 RID: 17619 RVA: 0x0015C9B8 File Offset: 0x0015ABB8 private void PCKCMNNEDFL(int NOBAPCOKFIL) { this.JOMANIMCEOO.MEAINJPIECA(NOBAPCOKFIL); } // Token: 0x060044D4 RID: 17620 RVA: 0x0015C9C8 File Offset: 0x0015ABC8 protected override void AKBEAKBPFLA() { base.AKBEAKBPFLA(); base.IDEPEMCKCNN = false; base.BKHECJODPHF.FMFCBADCFCK = this.dashSpeed; base.BKHECJODPHF.GKJLNANPDNC = this.maxDashForce; if (base.BHCCHBHNHCG) { this.MHBJLBKGPHB = false; this.KINNCEKOLHI = this.GOJNMALIOJA.GetRetreatWitchPoint(); base.BKHECJODPHF.Seek(this.KINNCEKOLHI, this.movementSlowdownDistance, 0.25f, false); } } // Token: 0x060044D5 RID: 17621 RVA: 0x0015CA44 File Offset: 0x0015AC44 protected virtual void IJPDEJFNCNH() { base.Update(); this.LIBIBOMFIOI.DLBPEOILIFL(); this.GOOHDPLFNMC.JNDAEJOHPHO(); } // Token: 0x060044D6 RID: 17622 RVA: 0x0015CA64 File Offset: 0x0015AC64 private void ACJLIAMDEDD() { if (base.GANDPDNCOKF()) { EIDNMNCOAAJ eidnmncoaaj = base.LMDJJEGNOGM; if (this.GOOHDPLFNMC.OAJDHNPMNCN()) { if (!base.LMDJJEGNOGM.AEAKFIBHEPE()) { base.LMDJJEGNOGM = this.IJCDBKLCFIE(false); } if (base.LMDJJEGNOGM.AEAKFIBHEPE()) { float num = Mathf.Clamp01((float)base.CNHBPJFLDCE / (float)base.BNBJJKCBDFC); float num2 = this.projectileSpeedByHealthCurve.Evaluate(num); this.KGKFMMHEMJJ.AuthorityFire(base.LMDJJEGNOGM.ICNCDGIKNNI + Vector3.up * this.projectileHeadTargetHeightOffset, num2); } this.LIBIBOMFIOI.BKBFIGCPIMI(1); return; } if (base.LMDJJEGNOGM.AJFBOLHPEJC) { base.BKHECJODPHF.Look(base.HIAMIHBNAMJ(base.BKHECJODPHF.OGCGDMDPHBM)); } } } // Token: 0x060044D7 RID: 17623 RVA: 0x0015CB5C File Offset: 0x0015AD5C private Vector3 HJAACDHCIGI() { return this.JGIANBIAPLD.CPIBGJLHLBL(); } // Token: 0x04000878 RID: 2168 [Header("Patrol")] [SerializeField] private float postPatrolDelay = 4f; // Token: 0x04000879 RID: 2169 [Header("Relocate Phase")] [SerializeField] private float dashSpeed = 4f; // Token: 0x0400087A RID: 2170 [SerializeField] private float maxDashForce = 67f; // Token: 0x0400087B RID: 2171 [SerializeField] private float dashSlowdownDistance = 1f; // Token: 0x0400087C RID: 2172 [SerializeField] private float dashTimeout = 2.5f; // Token: 0x0400087D RID: 2173 [Header("Projectile Volley Phase")] [SerializeField] private float attackChargeDuration = 1f; // Token: 0x0400087E RID: 2174 [SerializeField] private float projectileHeadTargetHeightOffset = -0.2f; // Token: 0x0400087F RID: 2175 [SerializeField] private float reflectionDuration = 0.5f; // Token: 0x04000880 RID: 2176 [SerializeField] private int requiredReturnCount = 3; // Token: 0x04000881 RID: 2177 [SerializeField] private int firstVolleyRequiredReturnCount = 3; // Token: 0x04000882 RID: 2178 [SerializeField] [Range(0f, 1f)] private float reselectTargetPlayerChance = 0.2f; // Token: 0x04000883 RID: 2179 [SerializeField] [Header("Projectile Speed")] private AnimationCurve projectileSpeedByHealthCurve; // Token: 0x04000884 RID: 2180 [SerializeField] private float volleySpeedDelta = 2f; // Token: 0x04000885 RID: 2181 [SerializeField] [Header("Take Damage")] private int takeDamageAmount = 40; // Token: 0x04000886 RID: 2182 [SerializeField] private float takeDamageDuration = 2f; // Token: 0x04000887 RID: 2183 [Header("Disengage")] [SerializeField] private float postDisengageDelay = 1f; // Token: 0x04000888 RID: 2184 private const float JIBBPLANMBG = 8f; // Token: 0x04000889 RID: 2185 private LHLLJPPCDKA PMICPDNLKJJ; // Token: 0x0400088A RID: 2186 private LHLLJPPCDKA GCCAMFDHHOB; // Token: 0x0400088B RID: 2187 private LHLLJPPCDKA JOMANIMCEOO; // Token: 0x0400088C RID: 2188 private LHLLJPPCDKA JGIANBIAPLD; // Token: 0x0400088D RID: 2189 private LHLLJPPCDKA OPLJPIOLJNC; // Token: 0x0400088E RID: 2190 private PNONBEAIBHA LIBIBOMFIOI; // Token: 0x0400088F RID: 2191 private AONMNAEOJAL GOOHDPLFNMC; // Token: 0x04000890 RID: 2192 private EnemyProjectileToolRangedWeapon KGKFMMHEMJJ; // Token: 0x04000891 RID: 2193 private WitchPatrolPoints GOJNMALIOJA; // Token: 0x04000892 RID: 2194 private bool NHMFKINHCLF = true; // Token: 0x02000147 RID: 327 private enum DOAKNCADFGI { // Token: 0x04000894 RID: 2196 RELOCATE, // Token: 0x04000895 RID: 2197 POST_RELOCATE_DELAY, // Token: 0x04000896 RID: 2198 CHARGE_ATTACK, // Token: 0x04000897 RID: 2199 WAITING_FOR_PLAYER_REFLECT, // Token: 0x04000898 RID: 2200 PLAYER_REFLECTED, // Token: 0x04000899 RID: 2201 REFLECT_PROJECTILE, // Token: 0x0400089A RID: 2202 TAKE_DAMAGE, // Token: 0x0400089B RID: 2203 INVALID = 65535 } } }