Files
niko 8fc35183db a
2026-04-11 22:19:20 +02:00

309 lines
11 KiB
C#

using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Core.AI;
using UnityEngine;
namespace RecRoom.Core.Encounters
{
// Token: 0x02002FBF RID: 12223
[Token(Token = "0x2002FBF")]
public abstract class BaseSpawnEnemyEncounterStep : GameEncounterStep
{
// Token: 0x06014D40 RID: 85312 RVA: 0x004E07BC File Offset: 0x004DE9BC
[Token(Token = "0x6014D40")]
[Address(RVA = "0x89B000", Offset = "0x899E00", VA = "0x18089B000", Slot = "5")]
public override void OnAwake(GameEncounter ADDBMBCNBKJ, int PNNLJIGIFDL, MACMLJJGBIM GPPMEPEBADM, MACMLJJGBIM POLMFGOLNLC)
{
this.POLMFGOLNLC = 0;
this.ADDBMBCNBKJ = ADDBMBCNBKJ;
this.PNNLJIGIFDL = PNNLJIGIFDL;
this.GPPMEPEBADM = GPPMEPEBADM;
MFBGLIHGCGO<Enemy> enemyInstantiatedEvent = Enemy.EnemyInstantiatedEvent;
Action<Enemy> action = new Action(this.NDPNGCIFFOJ);
Enemy.EnemyInstantiatedEvent = MFBGLIHGCGO.BPJDFPACLMK(enemyInstantiatedEvent, action);
IILCGFIHJLP<Enemy, ENDNBHFKNFL> enemyDeathEvent = Enemy.EnemyDeathEvent;
Action<Enemy, ENDNBHFKNFL> action2 = new Action(this.LCFGLKPPOFI);
Enemy.EnemyDeathEvent = IILCGFIHJLP.BPJDFPACLMK(enemyDeathEvent, action2);
Dictionary<string, object> fmppfapaeoe = this.FMPPFAPAEOE;
string encounter_ID_KEY = BaseSpawnEnemyEncounterStep.ENCOUNTER_ID_KEY;
int num = 0;
if (ADDBMBCNBKJ != num)
{
PhotonView photonView = ADDBMBCNBKJ.JDHMIOJKLCK;
}
int num2;
fmppfapaeoe.Add(encounter_ID_KEY, num2);
Dictionary<string, object> fmppfapaeoe2 = this.FMPPFAPAEOE;
Dictionary<string, object> fmppfapaeoe3 = this.FMPPFAPAEOE;
bool flag = this.suppressRewards;
string encounter_SUPPRESS_REWARDS_KEY = BaseSpawnEnemyEncounterStep.ENCOUNTER_SUPPRESS_REWARDS_KEY;
fmppfapaeoe3.Add(encounter_SUPPRESS_REWARDS_KEY, flag);
}
// Token: 0x06014D41 RID: 85313 RVA: 0x004E0884 File Offset: 0x004DEA84
[Token(Token = "0x6014D41")]
[Address(RVA = "0x89B2C0", Offset = "0x89A0C0", VA = "0x18089B2C0", Slot = "6")]
public override void OnCleanup()
{
MFBGLIHGCGO<Enemy> enemyInstantiatedEvent = Enemy.EnemyInstantiatedEvent;
Action<Enemy> action = new Action(this.NDPNGCIFFOJ);
Enemy.EnemyInstantiatedEvent = MFBGLIHGCGO.GMNMHGMFGOL(enemyInstantiatedEvent, action);
IILCGFIHJLP<Enemy, ENDNBHFKNFL> enemyDeathEvent = Enemy.EnemyDeathEvent;
Action<Enemy, ENDNBHFKNFL> action2 = new Action(this.LCFGLKPPOFI);
Enemy.EnemyDeathEvent = IILCGFIHJLP.GMNMHGMFGOL(enemyDeathEvent, action2);
}
// Token: 0x06014D42 RID: 85314 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6014D42")]
[Address(RVA = "0x402080", Offset = "0x400E80", VA = "0x180402080", Slot = "9")]
public override void OnEncounterStart()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06014D43 RID: 85315 RVA: 0x004E08D0 File Offset: 0x004DEAD0
[Token(Token = "0x6014D43")]
[Address(RVA = "0x89B3E0", Offset = "0x89A1E0", VA = "0x18089B3E0", Slot = "10")]
public override void OnEncounterStop()
{
this.MasterKillAllLivingEnemies();
}
// Token: 0x06014D44 RID: 85316 RVA: 0x004E08E4 File Offset: 0x004DEAE4
[Token(Token = "0x6014D44")]
[Address(RVA = "0x89A400", Offset = "0x899200", VA = "0x18089A400", Slot = "17")]
protected virtual Enemy IECCPICKICL(EncounterEnemyDescriptor PDDLCLCJLDK, bool CABEJDLDICN, out bool MKNPGPFEMFM)
{
int num = 0;
MKNPGPFEMFM.m_value = num != 0;
if (KKPBCOOONNK.BNNCCCFFALC && PDDLCLCJLDK.EnemyType != JIEHOGDIGPG.INVALID)
{
Enemy enemy = this.IECCPICKICL(PDDLCLCJLDK, num != 0, out MKNPGPFEMFM);
bool flag = enemy == 0;
MKNPGPFEMFM.m_value = flag;
if (enemy != 0)
{
EnemyPatrol <CNNIBLAALOF>k__BackingField = this.ADDBMBCNBKJ.<CNNIBLAALOF>k__BackingField;
int num2 = 0;
if (!(<CNNIBLAALOF>k__BackingField != num2))
{
}
EnemyPatrol <CNNIBLAALOF>k__BackingField2 = this.ADDBMBCNBKJ.<CNNIBLAALOF>k__BackingField;
GameEncounter addbmbcnbkj = this.ADDBMBCNBKJ;
JIEHOGDIGPG enemyType = PDDLCLCJLDK.EnemyType;
CGLKOJIMDIH <GFJMMJBJGMO>k__BackingField = addbmbcnbkj.<GFJMMJBJGMO>k__BackingField;
PhotonView photonView = addbmbcnbkj.JDHMIOJKLCK;
Dictionary<string, object> fmppfapaeoe = this.FMPPFAPAEOE;
int viewIdField = photonView.viewIdField;
int num3 = 0;
Enemy enemy2;
if (enemy2 == num3)
{
JIEHOGDIGPG jiehogdigpg;
string text = "Enemy of type " + jiehogdigpg + " failed to instantiate.";
}
}
}
throw new NullReferenceException();
}
// Token: 0x06014D45 RID: 85317 RVA: 0x004E09BC File Offset: 0x004DEBBC
[Token(Token = "0x6014D45")]
[Address(RVA = "0x89A790", Offset = "0x899590", VA = "0x18089A790", Slot = "18")]
protected virtual bool KHODDIADAEL(EncounterEnemyDescriptor PDDLCLCJLDK, out Vector3 JJGDNPNBINJ, out Quaternion MEJCMIKAJCD)
{
float z = Vector3.zero.z;
JJGDNPNBINJ.z = z;
Quaternion identity = Quaternion.identity;
Transform explicitSpawnPoint = PDDLCLCJLDK.ExplicitSpawnPoint;
int num = 0;
if (!(explicitSpawnPoint != num))
{
EnemySpawnNavMeshRegion[] array = this.spawnRegions;
int length = array.Length;
if (length != 0)
{
EnemySpawnNavMeshRegion enemySpawnNavMeshRegion = array[length];
int num2 = 0;
if (!(enemySpawnNavMeshRegion == num2) && enemySpawnNavMeshRegion.TryGetSpawnPositionAndRotation(out JJGDNPNBINJ, out MEJCMIKAJCD))
{
int enemyType = (int)PDDLCLCJLDK.EnemyType;
EOBBJADIFAI eobbjadifai;
if (eobbjadifai != EOBBJADIFAI.FLYING)
{
goto IL_EB;
}
int num3 = 0;
Vector3 up = Vector3.up;
int num4 = 0;
float num5 = PFEIDJDACLO.CGIJGEMAGNC();
Vector3 vector = num4 * (float)num3;
float z2 = (num4 + num3).z;
JJGDNPNBINJ.z = z2;
}
}
}
Transform explicitSpawnPoint2 = PDDLCLCJLDK.ExplicitSpawnPoint;
float z3 = explicitSpawnPoint.position.z;
JJGDNPNBINJ.z = z3;
Transform explicitSpawnPoint3 = PDDLCLCJLDK.ExplicitSpawnPoint;
Vector3 up2 = Vector3.up;
Vector3 up3 = Vector3.up;
IL_EB:
throw new NullReferenceException();
}
// Token: 0x06014D46 RID: 85318 RVA: 0x004E0ABC File Offset: 0x004DECBC
[Token(Token = "0x6014D46")]
[Address(RVA = "0x89A730", Offset = "0x899530", VA = "0x18089A730", Slot = "19")]
protected virtual void JLEFLDGGDMC(Vector3 JJGDNPNBINJ, Quaternion MEJCMIKAJCD, out Vector3 PIJJKOAJIEE, out Quaternion IIBIPBOPBBB)
{
EnemySpawnerConfiguration enemySpawnerConfiguration = this.spawnerConfiguration;
float z = JJGDNPNBINJ.z;
}
// Token: 0x06014D47 RID: 85319 RVA: 0x004E0AE0 File Offset: 0x004DECE0
[Token(Token = "0x6014D47")]
[Address(RVA = "0x89AE40", Offset = "0x899C40", VA = "0x18089AE40")]
private void NDPNGCIFFOJ(Enemy BPJNEFJBBML)
{
if (this.OCIKMLKODCP(BPJNEFJBBML))
{
this.EILIFMJGCBB.Add(BPJNEFJBBML);
}
}
// Token: 0x06014D48 RID: 85320 RVA: 0x004E0B0C File Offset: 0x004DED0C
[Token(Token = "0x6014D48")]
[Address(RVA = "0x89AB80", Offset = "0x899980", VA = "0x18089AB80")]
private void LCFGLKPPOFI(Enemy BPJNEFJBBML, ENDNBHFKNFL LJGOHLFADDN)
{
if (this.OCIKMLKODCP(BPJNEFJBBML))
{
bool flag = this.EILIFMJGCBB.Remove(BPJNEFJBBML);
}
}
// Token: 0x06014D49 RID: 85321 RVA: 0x004E0B38 File Offset: 0x004DED38
[Token(Token = "0x6014D49")]
[Address(RVA = "0x89AEB0", Offset = "0x899CB0", VA = "0x18089AEB0")]
private bool OCIKMLKODCP(Enemy BPJNEFJBBML)
{
GameEncounter addbmbcnbkj = this.ADDBMBCNBKJ;
int <HIKGLIJCOHC>k__BackingField = BPJNEFJBBML.<HIKGLIJCOHC>k__BackingField;
PhotonView photonView = addbmbcnbkj.JDHMIOJKLCK;
bool flag;
if (<HIKGLIJCOHC>k__BackingField == photonView.viewIdField && BPJNEFJBBML.<HONMKCBCBIM>k__BackingField != 0 && flag)
{
int pnnljigifdl = this.PNNLJIGIFDL;
return true;
}
throw new NullReferenceException();
}
// Token: 0x06014D4A RID: 85322 RVA: 0x004E0B84 File Offset: 0x004DED84
[Token(Token = "0x6014D4A")]
[Address(RVA = "0x89ABF0", Offset = "0x8999F0", VA = "0x18089ABF0")]
public void MasterKillAllLivingEnemies()
{
if (KKPBCOOONNK.BNNCCCFFALC)
{
BaseSpawnEnemyEncounterStep.GHBEPPFECBA.Clear();
List<Enemy> ghbeppfecba = BaseSpawnEnemyEncounterStep.GHBEPPFECBA;
List<Enemy> eilifmjgcbb = this.EILIFMJGCBB;
ghbeppfecba.AddRange(eilifmjgcbb);
this.EILIFMJGCBB.Clear();
int num = 0;
List<Enemy> ghbeppfecba2 = BaseSpawnEnemyEncounterStep.GHBEPPFECBA;
if (!this.ADDBMBCNBKJ.<LOKHDINNFCN>k__BackingField)
{
List<Enemy> ghbeppfecba3 = BaseSpawnEnemyEncounterStep.GHBEPPFECBA;
num++;
}
List<Enemy> ghbeppfecba4 = BaseSpawnEnemyEncounterStep.GHBEPPFECBA;
num++;
}
}
// Token: 0x06014D4B RID: 85323 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6014D4B")]
[Address(RVA = "0x89A340", Offset = "0x899140", VA = "0x18089A340")]
protected int BOIKGOELJPC()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06014D4C RID: 85324 RVA: 0x004E0BF8 File Offset: 0x004DEDF8
[Token(Token = "0x6014D4C")]
[Address(RVA = "0x89B4A0", Offset = "0x89A2A0", VA = "0x18089B4A0")]
protected BaseSpawnEnemyEncounterStep()
{
EnemySpawnNavMeshRegion[] array = new EnemySpawnNavMeshRegion[1];
this.spawnRegions = array;
List<Enemy> list = new List();
this.EILIFMJGCBB = list;
Dictionary<string, object> dictionary = new Dictionary();
this.FMPPFAPAEOE = dictionary;
this.stepName = "New Step";
this.PNNLJIGIFDL = (int)((ulong)4294967295L);
base..ctor();
}
// Token: 0x0400DC79 RID: 56441
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400DC79")]
[SerializeField]
[Header("Spawn Configuration")]
public EnemySpawnerConfiguration spawnerConfiguration;
// Token: 0x0400DC7A RID: 56442
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400DC7A")]
[SerializeField]
[Header("Patrol")]
public bool spawnOnPatrol = true;
// Token: 0x0400DC7B RID: 56443
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400DC7B")]
[SerializeField]
[Header("Spawn Regions")]
public EnemySpawnNavMeshRegion[] spawnRegions;
// Token: 0x0400DC7C RID: 56444
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400DC7C")]
[SerializeField]
[Header("Rewards")]
public bool suppressRewards;
// Token: 0x0400DC7D RID: 56445
[Token(Token = "0x400DC7D")]
public static readonly string ENCOUNTER_ID_KEY = "ENC_ID";
// Token: 0x0400DC7E RID: 56446
[Token(Token = "0x400DC7E")]
public static readonly string ENCOUNTER_STEP_ID_KEY = "ENC_STEP_ID";
// Token: 0x0400DC7F RID: 56447
[Token(Token = "0x400DC7F")]
public static readonly string ENCOUNTER_SUPPRESS_REWARDS_KEY = "ENC_SR";
// Token: 0x0400DC80 RID: 56448
[Token(Token = "0x400DC80")]
private static List<Enemy> GHBEPPFECBA = new List();
// Token: 0x0400DC81 RID: 56449
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400DC81")]
protected List<Enemy> EILIFMJGCBB;
// Token: 0x0400DC82 RID: 56450
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x400DC82")]
private Dictionary<string, object> FMPPFAPAEOE;
}
}