using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using Cpp2IlInjected; using Photon.Pun; using Photon.Realtime; using RecRoom.Activities.Quest; using UnityEngine; namespace RecRoom.Core.Encounters { // Token: 0x02002ABF RID: 10943 [Token(Token = "0x2002ABF")] [StructLayout(3)] public class OverlapVolumeEncounterStartTrigger : GameEncounterStartTrigger { // Token: 0x06013299 RID: 78489 RVA: 0x0049A774 File Offset: 0x00498974 [Token(Token = "0x6013299")] [Address(RVA = "0x9396E0", Offset = "0x9380E0", VA = "0x1809396E0", Slot = "6")] public override void OnCleanup() { bool isCompleted = ((IAsyncResult)this).IsCompleted; } // Token: 0x1700331F RID: 13087 // (get) Token: 0x0601329A RID: 78490 RVA: 0x0049A788 File Offset: 0x00498988 [Token(Token = "0x1700331F")] public override string KODBEJPEFOJ { [Token(Token = "0x601329A")] [Address(RVA = "0x10B0D90", Offset = "0x10AF790", VA = "0x1810B0D90", Slot = "4")] get { return "Players teleport or walk in to volumes."; } } // Token: 0x0601329B RID: 78491 RVA: 0x0049A79C File Offset: 0x0049899C [Token(Token = "0x601329B")] [Address(RVA = "0x10B0A80", Offset = "0x10AF480", VA = "0x1810B0A80", Slot = "9")] public override void StartListening() { if (!string.IsNullOrEmpty(this.defaultNotYetTriggeredNotification)) { EncounterOverlapVolume[] array = this.volumes; int num = 0; if (num < array.Length) { int num2 = 0; EncounterOverlapVolume encounterOverlapVolume; if (encounterOverlapVolume != num2) { EncounterOverlapVolume[] array2 = this.volumes; Action action = new Action(this.LMPDBKLEKLF); EncounterOverlapVolume encounterOverlapVolume2; encounterOverlapVolume2.LocalPlayerVolumeEnterEvent += action; } EncounterOverlapVolume[] array3 = this.volumes; num++; } } } // Token: 0x0601329C RID: 78492 RVA: 0x0049A808 File Offset: 0x00498A08 [Token(Token = "0x601329C")] [Address(RVA = "0x10B0BE0", Offset = "0x10AF5E0", VA = "0x1810B0BE0", Slot = "11")] public override void StopListening() { Coroutine lpobimhhifa = this.LPOBIMHHIFA; int num = 0; if (lpobimhhifa != 0) { base.StopCoroutine(lpobimhhifa); this.LPOBIMHHIFA = num; } EncounterOverlapVolume[] array = this.volumes; if (num < array.Length) { int num2 = 0; EncounterOverlapVolume encounterOverlapVolume; if (encounterOverlapVolume != num2) { EncounterOverlapVolume[] array2 = this.volumes; Action action = new Action(this.LMPDBKLEKLF); EncounterOverlapVolume encounterOverlapVolume2; encounterOverlapVolume2.LocalPlayerVolumeEnterEvent -= action; } EncounterOverlapVolume[] array3 = this.volumes; num++; } } // Token: 0x0601329D RID: 78493 RVA: 0x0049A880 File Offset: 0x00498A80 [Token(Token = "0x601329D")] [Address(RVA = "0x10B0780", Offset = "0x10AF180", VA = "0x1810B0780", Slot = "10")] public override bool IsTriggered() { GameManager k__BackingField = this.ADDBMBCNBKJ.k__BackingField; int num = 0; if (!(k__BackingField != num)) { Photon.Realtime.Player[] playerList = PhotonNetwork.PlayerList; Photon.Realtime.Player[] playerList2 = PhotonNetwork.PlayerList; } IEnumerable activePlayers = this.ADDBMBCNBKJ.k__BackingField.teamManager.GetActivePlayers(); int num2 = Enumerable.Count(activePlayers); EncounterOverlapVolume[] array = this.volumes; int num3 = BNLCFFMDFBD.NAPKPMPFNFL(activePlayers, array); OverlapVolumeEncounterStartTrigger.FIIMJPMPJOD fiimjpmpjod = this.playerRequirement; bool flag; if (fiimjpmpjod != OverlapVolumeEncounterStartTrigger.FIIMJPMPJOD.ONE_PLAYER) { if (fiimjpmpjod != OverlapVolumeEncounterStartTrigger.FIIMJPMPJOD.ALL_PLAYERS) { } return flag; } return flag >= true; } // Token: 0x0601329E RID: 78494 RVA: 0x0049A910 File Offset: 0x00498B10 [Token(Token = "0x601329E")] [Address(RVA = "0x10B08D0", Offset = "0x10AF2D0", VA = "0x1810B08D0")] private void LMPDBKLEKLF(OverlapVolume DHPCKKKLNDN) { OverlapVolumeEncounterStartTrigger.StoryStateDependantNotification[] array = this.roomStoryStateNotifications; int num = 0; if (array != 0 && array.Length != num && QuestManager.FFNIFALJLDD) { QuestManager.OIHHCDMIMOG currentRoomStoryState = QuestManager.ONCPNMDGGKG.LFKGKLJOOFD; OverlapVolumeEncounterStartTrigger.StoryStateDependantNotification[] array2 = this.roomStoryStateNotifications; int num2 = 0; int num3 = 0; int length = array2.Length; if (num3 < length) { num2 += 2; num2 += num2; if ("{il2cpp array field local10->}" != currentRoomStoryState) { num2++; } } } string text; if (array != 0) { text = this.defaultNotYetTriggeredNotification; } if (array == 0) { Coroutine lpobimhhifa = this.LPOBIMHHIFA; if (lpobimhhifa != 0) { base.StopCoroutine(lpobimhhifa); this.LPOBIMHHIFA = (ulong)0L; } OverlapVolumeEncounterStartTrigger.OIGBOEIDGLN oigboeidgln; oigboeidgln.System.IDisposable.Dispose(); oigboeidgln.<>1__state = (int)((ulong)0L); oigboeidgln.<>4__this = this; oigboeidgln.notification = text; Coroutine coroutine = base.StartCoroutine(oigboeidgln); this.LPOBIMHHIFA = coroutine; } } // Token: 0x0601329F RID: 78495 RVA: 0x0049A9F4 File Offset: 0x00498BF4 [Token(Token = "0x601329F")] [Address(RVA = "0x10B05C0", Offset = "0x10AEFC0", VA = "0x1810B05C0")] private void AEJPEFLFODG() { Coroutine lpobimhhifa = this.LPOBIMHHIFA; if (lpobimhhifa != 0) { base.StopCoroutine(lpobimhhifa); this.LPOBIMHHIFA = (ulong)0L; } } // Token: 0x060132A0 RID: 78496 RVA: 0x0049AA1C File Offset: 0x00498C1C [Token(Token = "0x60132A0")] [Address(RVA = "0x10B05F0", Offset = "0x10AEFF0", VA = "0x1810B05F0")] private IEnumerator DDJHGKEBMKA(string NOEDFHOANIO) { /* An exception occurred when decompiling this method (060132A0) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator RecRoom.Core.Encounters.OverlapVolumeEncounterStartTrigger::DDJHGKEBMKA(System.String) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(OIGBOEIDGLN::System.IDisposable.Dispose, ldloc:OIGBOEIDGLN(var_0)) stfld:OverlapVolumeEncounterStartTrigger(OIGBOEIDGLN::<>4__this, ldloc:OIGBOEIDGLN(var_0), ldloc:OverlapVolumeEncounterStartTrigger(this)) stfld:int32(OIGBOEIDGLN::<>1__state, ldloc:OIGBOEIDGLN(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:string(OIGBOEIDGLN::notification, ldloc:OIGBOEIDGLN(var_0), ldloc:string(NOEDFHOANIO)) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663 */; } // Token: 0x060132A1 RID: 78497 RVA: 0x0049AA48 File Offset: 0x00498C48 [Token(Token = "0x60132A1")] [Address(RVA = "0x10B0660", Offset = "0x10AF060", VA = "0x1810B0660")] private string EBEDLHPGPGE() { int num; do { OverlapVolumeEncounterStartTrigger.StoryStateDependantNotification[] array = this.roomStoryStateNotifications; num = 0; if (array != 0 && array.Length != num && QuestManager.FFNIFALJLDD) { QuestManager.OIHHCDMIMOG currentRoomStoryState = QuestManager.ONCPNMDGGKG.LFKGKLJOOFD; int length = this.roomStoryStateNotifications.Length; if (num < length) { num += 2; num += num; if ("{il2cpp array field local9->}" != currentRoomStoryState) { num++; } } } } while (!string.IsNullOrEmpty(num)); return this.defaultNotYetTriggeredNotification; } // Token: 0x060132A2 RID: 78498 RVA: 0x0049AAC0 File Offset: 0x00498CC0 [Token(Token = "0x60132A2")] [Address(RVA = "0x10B0D40", Offset = "0x10AF740", VA = "0x1810B0D40")] public OverlapVolumeEncounterStartTrigger() { this.MAMIAELEMJC = (int)((ulong)4294967295L); base..ctor(); } // Token: 0x0400D021 RID: 53281 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400D021")] [SerializeField] public EncounterOverlapVolume[] volumes; // Token: 0x0400D022 RID: 53282 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x400D022")] [SerializeField] public OverlapVolumeEncounterStartTrigger.FIIMJPMPJOD playerRequirement; // Token: 0x0400D023 RID: 53283 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x400D023")] [SerializeField] private string defaultNotYetTriggeredNotification = ""; // Token: 0x0400D024 RID: 53284 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x400D024")] [SerializeField] private OverlapVolumeEncounterStartTrigger.StoryStateDependantNotification[] roomStoryStateNotifications; // Token: 0x0400D025 RID: 53285 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x400D025")] private Coroutine LPOBIMHHIFA; // Token: 0x02002AC0 RID: 10944 [Token(Token = "0x2002AC0")] public enum FIIMJPMPJOD { // Token: 0x0400D027 RID: 53287 [Token(Token = "0x400D027")] ONE_PLAYER, // Token: 0x0400D028 RID: 53288 [Token(Token = "0x400D028")] ALL_PLAYERS } // Token: 0x02002AC1 RID: 10945 [Token(Token = "0x2002AC1")] [Serializable] public struct StoryStateDependantNotification { // Token: 0x0400D029 RID: 53289 [global::Cpp2IlInjected.FieldOffset(Offset = "0x0")] [Token(Token = "0x400D029")] public QuestManager.OIHHCDMIMOG roomStoryState; // Token: 0x0400D02A RID: 53290 [global::Cpp2IlInjected.FieldOffset(Offset = "0x8")] [Token(Token = "0x400D02A")] public string notYetTriggeredNotification; } } }