using System; using System.Collections.Generic; using Cpp2IlInjected; using RecNet; using RecRoom.Core.Combat; using RecRoom.Core.Pools; using RecRoom.DataStructures; using RecRoom.Players; using UnityEngine; using UnityEngine.Rendering.Universal; namespace RecRoom.Core.AI { // Token: 0x02003503 RID: 13571 [Token(Token = "0x2003503")] public abstract class EnemyRangedWeapon : EnemyRangedWeaponBase { // Token: 0x1700412A RID: 16682 // (get) Token: 0x060179E0 RID: 96736 RVA: 0x00582A58 File Offset: 0x00580C58 [Token(Token = "0x1700412A")] protected OGNBCNBPFCC NNNJFLMAIFJ { [Token(Token = "0x60179E0")] [Address(RVA = "0x1C91920", Offset = "0x1C90920", VA = "0x181C91920")] get { return HELOBGLDDLH.CCFEJLNMDLG(this.equipmentProjectileTypeId); } } // Token: 0x1700412B RID: 16683 // (get) Token: 0x060179E1 RID: 96737 RVA: 0x00582A70 File Offset: 0x00580C70 [Token(Token = "0x1700412B")] private Color INCNKMHCJDM { [Token(Token = "0x60179E1")] [Address(RVA = "0x1C90F00", Offset = "0x1C8FF00", VA = "0x181C90F00")] get { bool flag; if (flag) { } throw new NullReferenceException(); } } // Token: 0x060179E2 RID: 96738 RVA: 0x00582A88 File Offset: 0x00580C88 [Token(Token = "0x60179E2")] [Address(RVA = "0x1C91AF0", Offset = "0x1C90AF0", VA = "0x181C91AF0", Slot = "15")] protected override void Start() { RigidbodyEx rigidbodyEx = this.thisEnemy.rigidbodyEx; List flclmcfoiid = this.FLCLMCFOIID; Rigidbody unityRigidbody = rigidbodyEx.unityRigidbody; flclmcfoiid.Add(unityRigidbody); bool flag; if (this.thisEnemy.k__BackingField != 0 && flag) { ulong num2; ulong num = num2; this.projectileSpeed = (float)num; } } // Token: 0x060179E3 RID: 96739 RVA: 0x00582ADC File Offset: 0x00580CDC [Token(Token = "0x60179E3")] [Address(RVA = "0x1C91900", Offset = "0x1C90900", VA = "0x181C91900", Slot = "17")] protected override float OJGIIKCBNGP(float HEIBCBJJGHP) { return this.projectileSpeed; } // Token: 0x060179E4 RID: 96740 RVA: 0x00582AF8 File Offset: 0x00580CF8 [Token(Token = "0x60179E4")] [Address(RVA = "0x1C90610", Offset = "0x1C8F610", VA = "0x181C90610")] protected GameObject ENOKEPFJJPL(Vector3 DDHPAFKBMON, Vector3 DJBBMJBBNHB, float EJHELOHKGCF) { EnemyRangedWeapon.GABIMAFMAEL gabimafmael = this.projectileType; if (gabimafmael != EnemyRangedWeapon.GABIMAFMAEL.BULLET && gabimafmael == EnemyRangedWeapon.GABIMAFMAEL.EQUIPMENT && base.OGIBLNIIHDK) { float z = DJBBMJBBNHB.z; float z2 = DDHPAFKBMON.z; } float z3 = DJBBMJBBNHB.z; float z4 = DDHPAFKBMON.z; GameObject gameObject; return gameObject; } // Token: 0x060179E5 RID: 96741 RVA: 0x00582B40 File Offset: 0x00580D40 [Token(Token = "0x60179E5")] [Address(RVA = "0x1C90FB0", Offset = "0x1C8FFB0", VA = "0x181C90FB0")] private GameObject KOIDFECCKBM(Vector3 DDHPAFKBMON, Vector3 DJBBMJBBNHB, float EJHELOHKGCF) { Bullet bullet = this.LEKAAHGOLBN(); int num = 0; if (!(bullet != num)) { } float z = DJBBMJBBNHB.z; Transform projectileOriginTransform = this.projectileOriginTransform; Vector3 vector; float z2 = vector.z; Vector3 vector2; float z3 = vector2.z; float z4 = Vector3.up.z; float z5 = DJBBMJBBNHB.z; float num2 = this.projectileImpactForce; List flclmcfoiid = this.FLCLMCFOIID; CBMIKIMPBKF.CBAAHCJHLFD cbaahcjhlfd = new CBMIKIMPBKF.CBAAHCJHLFD(this.HMHNGBDBIBE); return bullet.gameObject; } // Token: 0x060179E6 RID: 96742 RVA: 0x00582BC0 File Offset: 0x00580DC0 [Token(Token = "0x60179E6")] [Address(RVA = "0x1C906F0", Offset = "0x1C8F6F0", VA = "0x181C906F0")] private GameObject FMJLFBHPCHF(Vector3 DDHPAFKBMON, Vector3 DJBBMJBBNHB, float EJHELOHKGCF) { RecRoomSceneManager k__BackingField = RecRoomSceneManager.k__BackingField; int num = 0; if (k__BackingField != num) { GameManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; int num2 = 0; if (instance != num2) { GameSpawnManager spawnManager = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.spawnManager; OGNBCNBPFCC ognbcnbpfcc = HELOBGLDDLH.CCFEJLNMDLG(this.equipmentProjectileTypeId); Quaternion identity = Quaternion.identity; bool flag = Matchmaking.KDIKBBAPFDH; float z = DDHPAFKBMON.z; bool flag2 = !flag; int num3 = 0; Tool tool; if (tool != num3) { tool.rigidbodyEx.WakeUp(); tool.SetCollisionLayer(DAJFOCGPHGP.DynamicPhysics); Weapon component = tool.GetComponent(); int num4 = 0; if (component != num4) { Enemy thisEnemy = this.thisEnemy; } RigidbodyEx rigidbodyEx = tool.rigidbodyEx; float z2 = DJBBMJBBNHB.z; Vector3 vector; float z3 = vector.z; RigidbodyEx rigidbodyEx2 = tool.rigidbodyEx; float z4 = global::UnityEngine.Random.onUnitSphere.z; Vector3 vector2; float z5 = vector2.z; Vector3 vector3; float z6 = vector3.z; GameObject gameObject = tool.gameObject; } } } throw new NullReferenceException(); } // Token: 0x060179E7 RID: 96743 RVA: 0x00582CCC File Offset: 0x00580ECC [Token(Token = "0x60179E7")] [Address(RVA = "0x1C91240", Offset = "0x1C90240", VA = "0x181C91240")] private Bullet LEKAAHGOLBN() { Bullet bullet = this.bulletProjectilePrefab; int num = 0; if (bullet != num) { GlobalPool instance = GlobalPool.ONCPNMDGGKG; Bullet bullet2 = this.bulletProjectilePrefab; Bullet bullet3 = instance.Acquire(bullet2); int num2 = 0; if (bullet3 != num2) { Action action; bullet3.DestroyEvent += action; Bullet.CEFAOBHGLKL cefaobhglkl; bullet3.BEKCCHHMPEH += cefaobhglkl; Bullet.BCIJIAKFGLB bcijiakfglb; bullet3.EIMFCMEGGPP += bcijiakfglb; Bullet.LLNPLAPHHJM llnplaphhjm; bullet3.JMKEOLOEKFM += llnplaphhjm; Bullet.CJMKAGLOMOH cjmkaglomoh; bullet3.FIEIACGBCCI += cjmkaglomoh; } } throw new NullReferenceException(); } // Token: 0x060179E8 RID: 96744 RVA: 0x00582D4C File Offset: 0x00580F4C [Token(Token = "0x60179E8")] [Address(RVA = "0x1C91980", Offset = "0x1C90980", VA = "0x181C91980", Slot = "19")] protected virtual void PLJKAMNDCHG(Bullet DFHLLAEOCIA) { Action action; DFHLLAEOCIA.DestroyEvent -= action; Bullet.CEFAOBHGLKL cefaobhglkl; DFHLLAEOCIA.BEKCCHHMPEH -= cefaobhglkl; Bullet.BCIJIAKFGLB bcijiakfglb; DFHLLAEOCIA.EIMFCMEGGPP -= bcijiakfglb; Bullet.LLNPLAPHHJM llnplaphhjm; DFHLLAEOCIA.JMKEOLOEKFM -= llnplaphhjm; Bullet.CJMKAGLOMOH cjmkaglomoh; DFHLLAEOCIA.FIEIACGBCCI -= cjmkaglomoh; } // Token: 0x060179E9 RID: 96745 RVA: 0x00582D84 File Offset: 0x00580F84 [Token(Token = "0x60179E9")] [Address(RVA = "0x1C90CF0", Offset = "0x1C8FCF0", VA = "0x181C90CF0")] private bool HMHNGBDBIBE(Rigidbody KNJOLAIFFIJ, Vector3 GMENKJKOGMD) { for (;;) { int num = 0; if (KNJOLAIFFIJ == num) { return true; } Tool component = KNJOLAIFFIJ.GetComponent(); int num2 = 0; if (!(component != num2)) { break; } bool flag; while (!flag) { } int num3 = 0; Weapon weapon; if (!(weapon != num3) || !weapon.MHLIDBEEPKN) { goto IL_89; } } PlayerHand component2 = KNJOLAIFFIJ.GetComponent(); int num4 = 0; if (component2 != num4) { goto IL_89; } PlayerBody component3 = KNJOLAIFFIJ.GetComponent(); int num5 = 0; if (component3 != num5) { SimpleVolume bodyEnemyDamageRegion = component3.bodyEnemyDamageRegion; float z = GMENKJKOGMD.z; if (bodyEnemyDamageRegion.DOMABBDEAKJ == 0) { goto IL_89; } } return true; IL_89: throw new NullReferenceException(); } // Token: 0x060179EA RID: 96746 RVA: 0x00582E24 File Offset: 0x00581024 [Token(Token = "0x60179EA")] [Address(RVA = "0x1C91840", Offset = "0x1C90840", VA = "0x181C91840", Slot = "20")] protected virtual void ODOBKGAHAGH(Bullet NLLMMPLAPBK, Player IEKDDPPNFPF, Player.GAHEJKDCLLE NMKAKHOEMGB, GHMDIDJLFMC KNLMJBAKCGF) { if (this.GOCPOLPFPAN != 0) { } } // Token: 0x060179EB RID: 96747 RVA: 0x00582E3C File Offset: 0x0058103C [Token(Token = "0x60179EB")] [Address(RVA = "0x1C90550", Offset = "0x1C8F550", VA = "0x181C90550", Slot = "21")] protected virtual void EIEJLOGPMGM(Bullet NLLMMPLAPBK, Enemy BPJNEFJBBML, ANBBFGKPJFD PAKELHPNJDI, GHMDIDJLFMC KNLMJBAKCGF) { } // Token: 0x060179EC RID: 96748 RVA: 0x00582E4C File Offset: 0x0058104C [Token(Token = "0x60179EC")] [Address(RVA = "0x1C90C10", Offset = "0x1C8FC10", VA = "0x181C90C10", Slot = "22")] protected virtual void GLFCGNNCNIB(Bullet EDPPMBPBAAC, Tool BKKNJFFJBKN, GHMDIDJLFMC KNLMJBAKCGF) { if (BKKNJFFJBKN.FNFNLDBILFE && this.HDHFODFFAJJ != 0) { float y = KNLMJBAKCGF.NKKJICPFILJ.y; float z = KNLMJBAKCGF.FEDGOFKEGEF.z; float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z; } float y2 = KNLMJBAKCGF.NKKJICPFILJ.y; float z3 = KNLMJBAKCGF.FEDGOFKEGEF.z; float z4 = KNLMJBAKCGF.EGJBGIIHEEL.z; } // Token: 0x060179ED RID: 96749 RVA: 0x00582EBC File Offset: 0x005810BC [Token(Token = "0x60179ED")] [Address(RVA = "0x1C917F0", Offset = "0x1C907F0", VA = "0x181C917F0", Slot = "23")] protected virtual void MPHCHCKGDIG(Bullet EDPPMBPBAAC, GHMDIDJLFMC KNLMJBAKCGF) { float y = KNLMJBAKCGF.NKKJICPFILJ.y; float z = KNLMJBAKCGF.FEDGOFKEGEF.z; float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z; } // Token: 0x060179EE RID: 96750 RVA: 0x00582EF0 File Offset: 0x005810F0 [Token(Token = "0x60179EE")] [Address(RVA = "0x1C91480", Offset = "0x1C90480", VA = "0x181C91480")] protected void MLEFHNAPGAI(GHMDIDJLFMC KNLMJBAKCGF) { float y = KNLMJBAKCGF.NKKJICPFILJ.y; float z = KNLMJBAKCGF.FEDGOFKEGEF.z; float y2 = KNLMJBAKCGF.NKKJICPFILJ.y; float z2 = KNLMJBAKCGF.FEDGOFKEGEF.z; RecRoomAudioClip projectileImpactAudio = this.projectileImpactAudio; ImpactDecal projectileImpactDecalPrefab = this.projectileImpactDecalPrefab; EnemyTeamColor ekmfembmoli = this.EKMFEMBMOLI; int num = 0; if (!(ekmfembmoli != num) || this.EKMFEMBMOLI.k__BackingField) { } float z3 = KNLMJBAKCGF.FEDGOFKEGEF.z; ImpactDecal projectileImpactDecalPrefab2 = this.projectileImpactDecalPrefab; int num2 = 0; if (!(projectileImpactDecalPrefab2 == num2)) { IRecRoomQualityConfigProvider nncbfajkomh = this.NNCBFAJKOMH; bool flag; if (flag) { } } } // Token: 0x060179EF RID: 96751 RVA: 0x00582F9C File Offset: 0x0058119C [Token(Token = "0x60179EF")] [Address(RVA = "0x1C91BF0", Offset = "0x1C90BF0", VA = "0x181C91BF0")] protected EnemyRangedWeapon() { Color white = Color.white; this.projectileSpeed = 2f; this.projectileImpactForce = 50f; base..ctor(); } // Token: 0x0400F5B9 RID: 62905 [FieldOffset(Offset = "0x128")] [Token(Token = "0x400F5B9")] [SerializeField] [Header("Projectile")] protected EnemyRangedWeapon.GABIMAFMAEL projectileType; // Token: 0x0400F5BA RID: 62906 [FieldOffset(Offset = "0x130")] [Token(Token = "0x400F5BA")] [SerializeField] [Header("Bullet Projectile")] protected Bullet bulletProjectilePrefab; // Token: 0x0400F5BB RID: 62907 [FieldOffset(Offset = "0x138")] [Token(Token = "0x400F5BB")] [SerializeField] protected Color projectileColor; // Token: 0x0400F5BC RID: 62908 [FieldOffset(Offset = "0x148")] [Token(Token = "0x400F5BC")] [SerializeField] [Header("Equipment Projectile")] [HELOBGLDDLH.KBCDAGDEHAO(false)] public SerializedGuid equipmentProjectileTypeId; // Token: 0x0400F5BD RID: 62909 [FieldOffset(Offset = "0x150")] [Token(Token = "0x400F5BD")] [SerializeField] [Header("Projectile Physics")] protected float projectileSpeed; // Token: 0x0400F5BE RID: 62910 [FieldOffset(Offset = "0x154")] [Token(Token = "0x400F5BE")] [SerializeField] protected float projectileImpactForce; // Token: 0x0400F5BF RID: 62911 [Token(Token = "0x400F5BF")] private const float CNAAOICADEI = 720f; // Token: 0x0400F5C0 RID: 62912 [Token(Token = "0x400F5C0")] public const string PROJECTILE_SPEED_OVERRIDE = "PSO"; // Token: 0x02003504 RID: 13572 [Token(Token = "0x2003504")] protected enum GABIMAFMAEL { // Token: 0x0400F5C2 RID: 62914 [Token(Token = "0x400F5C2")] BULLET, // Token: 0x0400F5C3 RID: 62915 [Token(Token = "0x400F5C3")] EQUIPMENT } } }