308 lines
12 KiB
C#
308 lines
12 KiB
C#
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<OverlapVolume> 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<OverlapVolume> 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 <PLMNHPJOIKH>k__BackingField = this.ADDBMBCNBKJ.<PLMNHPJOIKH>k__BackingField;
|
|
int num = 0;
|
|
if (!(<PLMNHPJOIKH>k__BackingField != num))
|
|
{
|
|
Photon.Realtime.Player[] playerList = PhotonNetwork.PlayerList;
|
|
Photon.Realtime.Player[] playerList2 = PhotonNetwork.PlayerList;
|
|
}
|
|
IEnumerable<Photon.Realtime.Player> activePlayers = this.ADDBMBCNBKJ.<PLMNHPJOIKH>k__BackingField.teamManager.GetActivePlayers();
|
|
int num2 = Enumerable.Count<Photon.Realtime.Player>(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;
|
|
}
|
|
}
|
|
}
|