scripts
This commit is contained in:
@@ -0,0 +1,1959 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using Google.Protobuf;
|
||||
using Google.Protobuf.WellKnownTypes;
|
||||
using RecNet;
|
||||
using RecRoom.Protobuf;
|
||||
using RecRoom.Sandbox;
|
||||
using RecRoom.Tools;
|
||||
using UnityEngine;
|
||||
|
||||
namespace RecRoom.Persistence
|
||||
{
|
||||
// Token: 0x02000BE0 RID: 3040
|
||||
public class RoomPersistenceManager : NetworkedSingletonMonoBehaviour<RoomPersistenceManager>
|
||||
{
|
||||
// Token: 0x060174D3 RID: 95443 RVA: 0x00686A10 File Offset: 0x00684C10
|
||||
private void LFLCHIGHIIA(bool GENGJBCDOGB)
|
||||
{
|
||||
this.AFMBNIGJAMG();
|
||||
this.NIKLDPBCPHO = base.StartCoroutine(this.LMIJNNKPKJA(GENGJBCDOGB));
|
||||
}
|
||||
|
||||
// Token: 0x060174D4 RID: 95444 RVA: 0x00686A2C File Offset: 0x00684C2C
|
||||
private void DNIINPBHABB(string NOBAPCOKFIL)
|
||||
{
|
||||
this.NLHOMHODEKH.MEAINJPIECA(NOBAPCOKFIL);
|
||||
}
|
||||
|
||||
// Token: 0x060174D5 RID: 95445 RVA: 0x00686A3C File Offset: 0x00684C3C
|
||||
private void AFMBNIGJAMG()
|
||||
{
|
||||
if (this.MIFJNJPJNOP())
|
||||
{
|
||||
base.StopCoroutine(this.NIKLDPBCPHO);
|
||||
this.NIKLDPBCPHO = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174D6 RID: 95446 RVA: 0x00686A5C File Offset: 0x00684C5C
|
||||
private void Update()
|
||||
{
|
||||
this.BABIFJDNLFC.KHJKJGDBPMF();
|
||||
this.FCEKOOFDJGM.DLBPEOILIFL();
|
||||
}
|
||||
|
||||
// Token: 0x060174D7 RID: 95447 RVA: 0x00686A74 File Offset: 0x00684C74
|
||||
private void EHJGEGEENMB()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(0);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174D8 RID: 95448 RVA: 0x00686A8C File Offset: 0x00684C8C
|
||||
private IEnumerator MJGGJLHKBPL(bool GENGJBCDOGB, RoomPersistenceManager.BMPMAAMNNPJ JOINLHEALDL)
|
||||
{
|
||||
RoomPersistenceManager.EDGCHPHLBFA.MCPDFKAIGEN mcpdfkaigen = new RoomPersistenceManager.EDGCHPHLBFA.MCPDFKAIGEN();
|
||||
mcpdfkaigen.PNDHCMIJLFP = this;
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, null, null, "Only the Master Client may save room data.");
|
||||
yield break;
|
||||
}
|
||||
mcpdfkaigen.NNOPJFIPCLO = new DIEJEGFOIBF();
|
||||
mcpdfkaigen.NNOPJFIPCLO.ALCFGFGJCHI = 1;
|
||||
EHLBEFKJLHJ ehlbefkjlhj = PEDNLMAHGBP.KGKNIMECEKH;
|
||||
mcpdfkaigen.NNOPJFIPCLO.MNDEJIOKCJK = LMBEHMFIOEN.OOCOFDALHOG(ehlbefkjlhj.KAPOBAEMBKL, ehlbefkjlhj.OOAECNOOFID);
|
||||
mcpdfkaigen.NNOPJFIPCLO.BLMPACLLEPB = DateTime.UtcNow.ToTimestamp();
|
||||
this.MEKJGLMJCGE.Clear();
|
||||
mcpdfkaigen.MPLGGAAMDKL = global::UnityEngine.Object.FindObjectsOfType<PersistenceView>();
|
||||
mcpdfkaigen.HHHBHKENMBJ = 0;
|
||||
for (int i = 0; i < mcpdfkaigen.MPLGGAAMDKL.Length; i++)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[i].AADHHMOLEOL)
|
||||
{
|
||||
mcpdfkaigen.HHHBHKENMBJ++;
|
||||
base.StartCoroutine(mcpdfkaigen.MPLGGAAMDKL[i].PreSerialize(new Action(mcpdfkaigen.OJKNBNGGBEC)));
|
||||
}
|
||||
}
|
||||
float realtimeSinceStartup = Time.realtimeSinceStartup;
|
||||
while (mcpdfkaigen.HHHBHKENMBJ > 0)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Preserialization complete in {0} seconds", new object[] { Time.realtimeSinceStartup - realtimeSinceStartup });
|
||||
}
|
||||
int num = 0;
|
||||
RoomPersistenceManager.EDGCHPHLBFA.KMMCMJLHCNA kmmcmjlhcna = new RoomPersistenceManager.EDGCHPHLBFA.KMMCMJLHCNA();
|
||||
kmmcmjlhcna.PNDHCMIJLFP = this;
|
||||
kmmcmjlhcna.DOCPCEJLLAL = mcpdfkaigen;
|
||||
kmmcmjlhcna.CIMNKHDEFOH = 0;
|
||||
while (kmmcmjlhcna.CIMNKHDEFOH < mcpdfkaigen.MPLGGAAMDKL.Length)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].AADHHMOLEOL)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat(mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH], "Serializing PersistanceView {0}", new object[] { mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].gameObject });
|
||||
}
|
||||
mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].Serialize(new PersistenceView.LJOBLBKHDAH(kmmcmjlhcna.OJKNBNGGBEC));
|
||||
num++;
|
||||
if (num >= 10)
|
||||
{
|
||||
yield return null;
|
||||
num = 0;
|
||||
}
|
||||
}
|
||||
kmmcmjlhcna.CIMNKHDEFOH++;
|
||||
}
|
||||
List<string> list = new List<string>(this.MEKJGLMJCGE);
|
||||
JOINLHEALDL(true, mcpdfkaigen.NNOPJFIPCLO, list, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174D9 RID: 95449 RVA: 0x00686AB8 File Offset: 0x00684CB8
|
||||
public void HLIOPPACHBF(Action<string> NOBAPCOKFIL)
|
||||
{
|
||||
Action<string> action = this.MKCMFFPFOAH;
|
||||
Action<string> action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action<string>>(ref this.MKCMFFPFOAH, (Action<string>)Delegate.Remove(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x060174DA RID: 95450 RVA: 0x00686AF0 File Offset: 0x00684CF0
|
||||
public void RequestReloadRoomData()
|
||||
{
|
||||
if (this.PKGJCPJMABF())
|
||||
{
|
||||
base.OMNGGJICBBI.RPC("RpcMasterRequestReloadRoomData", IHFKMIAHBFP.HGDJAAMBDNH, new object[0]);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174DB RID: 95451 RVA: 0x00686B18 File Offset: 0x00684D18
|
||||
private IEnumerator PIPDEKANCNB(bool GENGJBCDOGB, RoomPersistenceManager.HADOPFJNNAO JOINLHEALDL)
|
||||
{
|
||||
RoomPersistenceManager.LKPFDEODJCN.JFLFBCHGDPO jflfbchgdpo = new RoomPersistenceManager.LKPFDEODJCN.JFLFBCHGDPO();
|
||||
jflfbchgdpo.FJOCEKIKKOA = this;
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, null, "Only Master Client is allowed to get room data.");
|
||||
yield break;
|
||||
}
|
||||
float num = 0f;
|
||||
while (HNIFBBFIBBG.OINDBDDCICD == null)
|
||||
{
|
||||
if (num >= 10f)
|
||||
{
|
||||
JOINLHEALDL(false, null, "Timed out waiting for current session room id to become valid.");
|
||||
yield break;
|
||||
}
|
||||
num += Time.deltaTime;
|
||||
yield return null;
|
||||
}
|
||||
if (string.IsNullOrEmpty(HNIFBBFIBBG.OINDBDDCICD.OCDDOBNGFEF))
|
||||
{
|
||||
JOINLHEALDL(true, null, null);
|
||||
yield break;
|
||||
}
|
||||
jflfbchgdpo.FGAPLMNIFEA = string.Empty;
|
||||
jflfbchgdpo.KGIJJBKHLGC = null;
|
||||
yield return base.StartCoroutine(HNIFBBFIBBG.FDEPBLCNFAC(new HEMCJJJMLKI.JMICPMCJMJF<byte[]>(jflfbchgdpo.OJKNBNGGBEC)));
|
||||
if (!string.IsNullOrEmpty(jflfbchgdpo.FGAPLMNIFEA))
|
||||
{
|
||||
JOINLHEALDL(false, null, "Failed to get room data : " + jflfbchgdpo.FGAPLMNIFEA);
|
||||
yield break;
|
||||
}
|
||||
if (jflfbchgdpo.KGIJJBKHLGC == null || jflfbchgdpo.KGIJJBKHLGC.Length == 0)
|
||||
{
|
||||
JOINLHEALDL(false, null, "No room data to load.");
|
||||
yield break;
|
||||
}
|
||||
DIEJEGFOIBF diejegfoibf = new DIEJEGFOIBF();
|
||||
diejegfoibf.MergeFrom(jflfbchgdpo.KGIJJBKHLGC);
|
||||
JOINLHEALDL(true, diejegfoibf, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174DC RID: 95452 RVA: 0x00686B3C File Offset: 0x00684D3C
|
||||
private IEnumerator GEKPKKNHCPB(bool GENGJBCDOGB, RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
RoomPersistenceManager.MAMJCCLOPOH.KBBMAABNPCF kbbmaabnpcf = new RoomPersistenceManager.MAMJCCLOPOH.KBBMAABNPCF();
|
||||
kbbmaabnpcf.BDJGJLDFHIE = this;
|
||||
if (PEDNLMAHGBP.KGKNIMECEKH.ODIPLBJJBLB == null)
|
||||
{
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
kbbmaabnpcf.NAGEKJMLHDE = false;
|
||||
kbbmaabnpcf.BKCEILIJPEP = null;
|
||||
yield return base.StartCoroutine(this.KAONDDNBHOO(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(kbbmaabnpcf.OJKNBNGGBEC)));
|
||||
if (!kbbmaabnpcf.NAGEKJMLHDE)
|
||||
{
|
||||
JOINLHEALDL(false, kbbmaabnpcf.BKCEILIJPEP);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174DD RID: 95453 RVA: 0x00686B68 File Offset: 0x00684D68
|
||||
private void AEDIJDKIEAN()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BABIFJDNLFC.CGELFKLLMBA)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(6, 1);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174DE RID: 95454 RVA: 0x00686B94 File Offset: 0x00684D94
|
||||
private bool CKACFFNNJFP()
|
||||
{
|
||||
return this.KJCGGKEBBOP != null;
|
||||
}
|
||||
|
||||
// Token: 0x060174DF RID: 95455 RVA: 0x00686BA4 File Offset: 0x00684DA4
|
||||
private bool HKBDAJDBPFH()
|
||||
{
|
||||
return this.AOMJICBPLLO != null;
|
||||
}
|
||||
|
||||
// Token: 0x060174E0 RID: 95456 RVA: 0x00686BB4 File Offset: 0x00684DB4
|
||||
public void FHPIFBGCHEM(Action<string> NOBAPCOKFIL)
|
||||
{
|
||||
Action<string> action = this.NBDCGEKLCDM;
|
||||
Action<string> action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action<string>>(ref this.NBDCGEKLCDM, (Action<string>)Delegate.Remove(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x060174E1 RID: 95457 RVA: 0x00686BEC File Offset: 0x00684DEC
|
||||
private IEnumerator KGLPKEDEBHD(bool GENGJBCDOGB)
|
||||
{
|
||||
RoomPersistenceManager.HPLJFNNMFLK.JOIAKDADLBK joiakdadlbk = new RoomPersistenceManager.HPLJFNNMFLK.JOIAKDADLBK();
|
||||
joiakdadlbk.KCBDIJPPCNF = this;
|
||||
joiakdadlbk.LLENADHIHDP = false;
|
||||
joiakdadlbk.OIFBPEJHDOD = null;
|
||||
yield return base.StartCoroutine(this.KAONDDNBHOO(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(joiakdadlbk.OJKNBNGGBEC)));
|
||||
if (joiakdadlbk.LLENADHIHDP)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(7);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.HELCLDHMMOJ = joiakdadlbk.OIFBPEJHDOD;
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(8);
|
||||
}
|
||||
this.KJCGGKEBBOP = null;
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174E2 RID: 95458 RVA: 0x00686C10 File Offset: 0x00684E10
|
||||
private IEnumerator LHICJABCPLF(DIEJEGFOIBF NNOPJFIPCLO, List<string> DONBDBHJGJP, bool GENGJBCDOGB, RoomPersistenceManager.CNCJIGIGKME JOINLHEALDL)
|
||||
{
|
||||
RoomPersistenceManager.ACCJNJPBLCH.DCBJEBFKPKF dcbjebfkpkf = new RoomPersistenceManager.ACCJNJPBLCH.DCBJEBFKPKF();
|
||||
dcbjebfkpkf.EMLIIAMBDJA = this;
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "No persisted Room Data created.");
|
||||
yield break;
|
||||
}
|
||||
byte[] array = NNOPJFIPCLO.ToByteArray();
|
||||
if (array == null || array.Length == 0)
|
||||
{
|
||||
JOINLHEALDL(false, "No room data to save.");
|
||||
yield break;
|
||||
}
|
||||
float num = 0f;
|
||||
while (HNIFBBFIBBG.OINDBDDCICD == null)
|
||||
{
|
||||
if (num >= 10f)
|
||||
{
|
||||
JOINLHEALDL(false, "Timed out waiting for current session room id to become valid.");
|
||||
yield break;
|
||||
}
|
||||
num += Time.deltaTime;
|
||||
yield return null;
|
||||
}
|
||||
dcbjebfkpkf.FEENBKMGNHM = string.Empty;
|
||||
yield return base.StartCoroutine(HNIFBBFIBBG.OEOEHMBKFBP(array, DONBDBHJGJP, new HEMCJJJMLKI.JMICPMCJMJF<string>(dcbjebfkpkf.OJKNBNGGBEC)));
|
||||
if (!string.IsNullOrEmpty(dcbjebfkpkf.FEENBKMGNHM))
|
||||
{
|
||||
JOINLHEALDL(false, dcbjebfkpkf.FEENBKMGNHM);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174E3 RID: 95459 RVA: 0x00686C44 File Offset: 0x00684E44
|
||||
private void CHFENEJAPDD(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.BABIFJDNLFC.BJOJLPHBGMN(Player.FCEGFOFFLJJ + 0.25f);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174E4 RID: 95460 RVA: 0x00686C68 File Offset: 0x00684E68
|
||||
private void OLLBEHJLKHI()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && !this.HKBDAJDBPFH())
|
||||
{
|
||||
bool flag = false;
|
||||
this.KMEEIPGNKEH(flag);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174E5 RID: 95461 RVA: 0x00686C94 File Offset: 0x00684E94
|
||||
private IEnumerator IKKAPBDFIEM(bool GENGJBCDOGB, RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
kbbmaabnpcf = new RoomPersistenceManager.MAMJCCLOPOH.KBBMAABNPCF();
|
||||
kbbmaabnpcf.BDJGJLDFHIE = this;
|
||||
if (PEDNLMAHGBP.KGKNIMECEKH.ODIPLBJJBLB == null)
|
||||
{
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
kbbmaabnpcf.NAGEKJMLHDE = false;
|
||||
kbbmaabnpcf.BKCEILIJPEP = null;
|
||||
yield return base.StartCoroutine(this.KAONDDNBHOO(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(kbbmaabnpcf.OJKNBNGGBEC)));
|
||||
if (!kbbmaabnpcf.NAGEKJMLHDE)
|
||||
{
|
||||
JOINLHEALDL(false, kbbmaabnpcf.BKCEILIJPEP);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174E6 RID: 95462 RVA: 0x00686CC0 File Offset: 0x00684EC0
|
||||
private void NBLOHNHIECF()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BABIFJDNLFC.CGELFKLLMBA)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(1, 1);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174E7 RID: 95463 RVA: 0x00686CEC File Offset: 0x00684EEC
|
||||
private bool ANPBBPKHGBJ()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.HMFEPMPJGLE())
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(3);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Token: 0x060174E8 RID: 95464 RVA: 0x00686D14 File Offset: 0x00684F14
|
||||
protected override void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
IHFKMIAHBFP.ENIGMACDFMJ += new Action<LNJFBGIBLHA>(this.OnMasterClientSwitched);
|
||||
this.NLHOMHODEKH = new LHLLJPPCDKA<string>(this, "ERROR", string.Empty, IKCAJLLAFML.MASTER, null);
|
||||
this.BABIFJDNLFC = new AONMNAEOJAL(this, "TIMER", IKCAJLLAFML.MASTER);
|
||||
this.FCEKOOFDJGM = new PNONBEAIBHA("RSM", IKCAJLLAFML.MASTER);
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(0, null, null, new ANMJLCILKDJ.PLBLFEEANOO(this.JPNAFHBKFIA));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(1, null, null, null);
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(2, null, null, null);
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(3, null, null, new ANMJLCILKDJ.PLBLFEEANOO(this.OLLBEHJLKHI));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(4, new ANMJLCILKDJ.NCMAEMHOHDG(this.LKINCELIOGF), null, new ANMJLCILKDJ.PLBLFEEANOO(this.DBPNEBFFGLB));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(5, new ANMJLCILKDJ.NCMAEMHOHDG(this.NCEHDOMIIFK), null, new ANMJLCILKDJ.PLBLFEEANOO(this.AKIIEMDFNEE));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(6, new ANMJLCILKDJ.NCMAEMHOHDG(this.LENGOCDLANO), new ANMJLCILKDJ.NCMAEMHOHDG(this.PIMMODECHHA), null);
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(6, 0, new ANMJLCILKDJ.NCMAEMHOHDG(this.CHFENEJAPDD), null, new ANMJLCILKDJ.PLBLFEEANOO(this.AEDIJDKIEAN));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(6, 1, null, null, new ANMJLCILKDJ.PLBLFEEANOO(this.LOBBNPFHAJL));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(7, new ANMJLCILKDJ.NCMAEMHOHDG(this.KFGBOLAJHNJ), null, new ANMJLCILKDJ.PLBLFEEANOO(this.LAAEPEJLALK));
|
||||
this.FCEKOOFDJGM.AGLMMKOFICI(8, new ANMJLCILKDJ.NCMAEMHOHDG(this.PFBLKJEDHOA), null, new ANMJLCILKDJ.PLBLFEEANOO(this.KDJEJEEJLJJ));
|
||||
}
|
||||
|
||||
// Token: 0x060174E9 RID: 95465 RVA: 0x00686ECC File Offset: 0x006850CC
|
||||
private void NPAMLKPJMAA()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && !this.CKACFFNNJFP())
|
||||
{
|
||||
bool flag = false;
|
||||
this.JCLHEGNDJLE(flag);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174EA RID: 95466 RVA: 0x00686EF8 File Offset: 0x006850F8
|
||||
private IEnumerator ICIGNFHMNHK(bool GENGJBCDOGB, RoomPersistenceManager.BMPMAAMNNPJ JOINLHEALDL)
|
||||
{
|
||||
mcpdfkaigen = new RoomPersistenceManager.EDGCHPHLBFA.MCPDFKAIGEN();
|
||||
mcpdfkaigen.PNDHCMIJLFP = this;
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, null, null, "Only the Master Client may save room data.");
|
||||
yield break;
|
||||
}
|
||||
mcpdfkaigen.NNOPJFIPCLO = new DIEJEGFOIBF();
|
||||
mcpdfkaigen.NNOPJFIPCLO.ALCFGFGJCHI = 1;
|
||||
ehlbefkjlhj = PEDNLMAHGBP.KGKNIMECEKH;
|
||||
mcpdfkaigen.NNOPJFIPCLO.MNDEJIOKCJK = LMBEHMFIOEN.OOCOFDALHOG(ehlbefkjlhj.KAPOBAEMBKL, ehlbefkjlhj.OOAECNOOFID);
|
||||
mcpdfkaigen.NNOPJFIPCLO.BLMPACLLEPB = DateTime.UtcNow.ToTimestamp();
|
||||
this.MEKJGLMJCGE.Clear();
|
||||
mcpdfkaigen.MPLGGAAMDKL = global::UnityEngine.Object.FindObjectsOfType<PersistenceView>();
|
||||
mcpdfkaigen.HHHBHKENMBJ = 0;
|
||||
for (int i = 0; i < mcpdfkaigen.MPLGGAAMDKL.Length; i++)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[i].AADHHMOLEOL)
|
||||
{
|
||||
mcpdfkaigen.HHHBHKENMBJ++;
|
||||
base.StartCoroutine(mcpdfkaigen.MPLGGAAMDKL[i].PreSerialize(new Action(mcpdfkaigen.OJKNBNGGBEC)));
|
||||
}
|
||||
}
|
||||
realtimeSinceStartup = Time.realtimeSinceStartup;
|
||||
while (mcpdfkaigen.HHHBHKENMBJ > 0)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Preserialization complete in {0} seconds", new object[] { Time.realtimeSinceStartup - realtimeSinceStartup });
|
||||
}
|
||||
num = 0;
|
||||
kmmcmjlhcna = new RoomPersistenceManager.EDGCHPHLBFA.KMMCMJLHCNA();
|
||||
kmmcmjlhcna.PNDHCMIJLFP = this;
|
||||
kmmcmjlhcna.DOCPCEJLLAL = mcpdfkaigen;
|
||||
kmmcmjlhcna.CIMNKHDEFOH = 0;
|
||||
while (kmmcmjlhcna.CIMNKHDEFOH < mcpdfkaigen.MPLGGAAMDKL.Length)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].AADHHMOLEOL)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat(mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH], "Serializing PersistanceView {0}", new object[] { mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].gameObject });
|
||||
}
|
||||
mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].Serialize(new PersistenceView.LJOBLBKHDAH(kmmcmjlhcna.OJKNBNGGBEC));
|
||||
num++;
|
||||
if (num >= 10)
|
||||
{
|
||||
yield return null;
|
||||
num = 0;
|
||||
}
|
||||
}
|
||||
kmmcmjlhcna.CIMNKHDEFOH++;
|
||||
}
|
||||
list = new List<string>(this.MEKJGLMJCGE);
|
||||
JOINLHEALDL(true, mcpdfkaigen.NNOPJFIPCLO, list, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174EB RID: 95467 RVA: 0x00686F24 File Offset: 0x00685124
|
||||
private void PIMMODECHHA(ushort OIMHGOONBEB, ushort LPFGCCKCIEB)
|
||||
{
|
||||
if (Player.LocalPlayerExists)
|
||||
{
|
||||
RecRoomSceneManager.NCKMBFBMBFM.HDNIEJJBLGI.CAHIBCONCCH(true);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174EC RID: 95468 RVA: 0x00686F40 File Offset: 0x00685140
|
||||
private void PKMIODLNHHO(LNJFBGIBLHA BLEEFGJBALL)
|
||||
{
|
||||
this.AFMBNIGJAMG();
|
||||
this.NHOBCGGKGBE();
|
||||
this.COLGNEBNKHM();
|
||||
}
|
||||
|
||||
// Token: 0x060174ED RID: 95469 RVA: 0x00686F54 File Offset: 0x00685154
|
||||
private IEnumerator PDFMNMEGOGM(DIEJEGFOIBF NNOPJFIPCLO, List<string> DONBDBHJGJP, bool GENGJBCDOGB, RoomPersistenceManager.CNCJIGIGKME JOINLHEALDL)
|
||||
{
|
||||
dcbjebfkpkf = new RoomPersistenceManager.ACCJNJPBLCH.DCBJEBFKPKF();
|
||||
dcbjebfkpkf.EMLIIAMBDJA = this;
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "No persisted Room Data created.");
|
||||
yield break;
|
||||
}
|
||||
array = NNOPJFIPCLO.ToByteArray();
|
||||
if (array == null || array.Length == 0)
|
||||
{
|
||||
JOINLHEALDL(false, "No room data to save.");
|
||||
yield break;
|
||||
}
|
||||
num = 0f;
|
||||
while (HNIFBBFIBBG.OINDBDDCICD == null)
|
||||
{
|
||||
if (num >= 10f)
|
||||
{
|
||||
JOINLHEALDL(false, "Timed out waiting for current session room id to become valid.");
|
||||
yield break;
|
||||
}
|
||||
num += Time.deltaTime;
|
||||
yield return null;
|
||||
}
|
||||
dcbjebfkpkf.FEENBKMGNHM = string.Empty;
|
||||
yield return base.StartCoroutine(HNIFBBFIBBG.OEOEHMBKFBP(array, DONBDBHJGJP, new HEMCJJJMLKI.JMICPMCJMJF<string>(dcbjebfkpkf.OJKNBNGGBEC)));
|
||||
if (!string.IsNullOrEmpty(dcbjebfkpkf.FEENBKMGNHM))
|
||||
{
|
||||
JOINLHEALDL(false, dcbjebfkpkf.FEENBKMGNHM);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174EE RID: 95470 RVA: 0x00686F88 File Offset: 0x00685188
|
||||
private bool JHAOJJGFFPN()
|
||||
{
|
||||
return this.FCEKOOFDJGM != null && this.FCEKOOFDJGM.BHMLLHLEAFF == 4;
|
||||
}
|
||||
|
||||
// Token: 0x060174EF RID: 95471 RVA: 0x00686FA8 File Offset: 0x006851A8
|
||||
private void LHDEGPKAADF()
|
||||
{
|
||||
this.BABIFJDNLFC.JNDAEJOHPHO();
|
||||
this.FCEKOOFDJGM.DLBPEOILIFL();
|
||||
}
|
||||
|
||||
// Token: 0x060174F0 RID: 95472 RVA: 0x00686FC0 File Offset: 0x006851C0
|
||||
public IEnumerator WaitForInitialLoad(RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
while (!this.FCEKOOFDJGM.BOCFJBNNEFP)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
while (this.OOMFOBGPNKH)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
if (this.FCEKOOFDJGM.BHMLLHLEAFF == 1)
|
||||
{
|
||||
JOINLHEALDL(false, "Unable to complete initial room load.");
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x060174F1 RID: 95473 RVA: 0x00686FE4 File Offset: 0x006851E4
|
||||
private void OnMasterClientSwitched(LNJFBGIBLHA BLEEFGJBALL)
|
||||
{
|
||||
this.AFMBNIGJAMG();
|
||||
this.EBNFNKCKOKL();
|
||||
this.COLGNEBNKHM();
|
||||
}
|
||||
|
||||
// Token: 0x060174F2 RID: 95474 RVA: 0x00686FF8 File Offset: 0x006851F8
|
||||
private void LENGOCDLANO(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (Player.LocalPlayerExists)
|
||||
{
|
||||
Player.LocalPlayer.DespawnLocal(false, true);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x140000CA RID: 202
|
||||
// (add) Token: 0x06017519 RID: 95513 RVA: 0x0068771C File Offset: 0x0068591C
|
||||
// (remove) Token: 0x060174F3 RID: 95475 RVA: 0x00687014 File Offset: 0x00685214
|
||||
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
|
||||
public event Action DEOKOGDFDLC;
|
||||
|
||||
// Token: 0x060174F4 RID: 95476 RVA: 0x0068704C File Offset: 0x0068524C
|
||||
private void JCLHEGNDJLE(bool GENGJBCDOGB)
|
||||
{
|
||||
this.EBNFNKCKOKL();
|
||||
this.KJCGGKEBBOP = base.StartCoroutine(this.KGLPKEDEBHD(GENGJBCDOGB));
|
||||
}
|
||||
|
||||
// Token: 0x140000CB RID: 203
|
||||
// (add) Token: 0x060174F5 RID: 95477 RVA: 0x00687068 File Offset: 0x00685268
|
||||
// (remove) Token: 0x06017538 RID: 95544 RVA: 0x00687D38 File Offset: 0x00685F38
|
||||
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
|
||||
public event Action<string> NBDCGEKLCDM;
|
||||
|
||||
// Token: 0x060174F6 RID: 95478 RVA: 0x006870A0 File Offset: 0x006852A0
|
||||
private void CIEBNDBBIPB()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(4);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000A29 RID: 2601
|
||||
// (get) Token: 0x06017508 RID: 95496 RVA: 0x0068748C File Offset: 0x0068568C
|
||||
// (set) Token: 0x060174F7 RID: 95479 RVA: 0x006870B8 File Offset: 0x006852B8
|
||||
private string HELCLDHMMOJ
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.NLHOMHODEKH.CPIBGJLHLBL();
|
||||
}
|
||||
set
|
||||
{
|
||||
this.NLHOMHODEKH.MEAINJPIECA(value);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174F8 RID: 95480 RVA: 0x006870C8 File Offset: 0x006852C8
|
||||
private void JINNBGDAPLD()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(6);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174F9 RID: 95481 RVA: 0x006870E0 File Offset: 0x006852E0
|
||||
private void GNNNGKONMJG()
|
||||
{
|
||||
if (this.AOAMHAKFCIP())
|
||||
{
|
||||
base.StopCoroutine(this.KJCGGKEBBOP);
|
||||
this.KJCGGKEBBOP = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174FA RID: 95482 RVA: 0x00687100 File Offset: 0x00685300
|
||||
public void BCCILELAGHI(Action<string> NOBAPCOKFIL)
|
||||
{
|
||||
Action<string> action = this.NBDCGEKLCDM;
|
||||
Action<string> action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action<string>>(ref this.NBDCGEKLCDM, (Action<string>)Delegate.Remove(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x060174FB RID: 95483 RVA: 0x00687138 File Offset: 0x00685338
|
||||
private GameObject ILAMDHOLFKB(JENDPFGMLME LJPJGMJDIKB, Guid JAGNIKELELP, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, bool GENGJBCDOGB)
|
||||
{
|
||||
Extrusion extrusion = NetworkedSingletonMonoBehaviour<SandboxSpawnableManager>.NCKMBFBMBFM.OJLKBFKKIFA(CIGPHKLAAOD, IJGPPOIJDKO, 1);
|
||||
if (extrusion == null)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat(" joined the game", new object[] { JAGNIKELELP });
|
||||
return null;
|
||||
}
|
||||
GameObject gameObject = extrusion.gameObject;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
string text = "PhotonView with ID ";
|
||||
object[] array = new object[0];
|
||||
array[1] = JAGNIKELELP;
|
||||
global::UnityEngine.Debug.LogFormat(text, array);
|
||||
}
|
||||
return gameObject;
|
||||
}
|
||||
|
||||
// Token: 0x060174FC RID: 95484 RVA: 0x006871A4 File Offset: 0x006853A4
|
||||
public void PersistTransientImage(string GPMCNJMPFMN)
|
||||
{
|
||||
this.MEKJGLMJCGE.Add(GPMCNJMPFMN);
|
||||
}
|
||||
|
||||
// Token: 0x060174FD RID: 95485 RVA: 0x006871B4 File Offset: 0x006853B4
|
||||
private void NHOBCGGKGBE()
|
||||
{
|
||||
if (this.HKBDAJDBPFH())
|
||||
{
|
||||
base.StopCoroutine(this.AOMJICBPLLO);
|
||||
this.AOMJICBPLLO = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060174FE RID: 95486 RVA: 0x006871D4 File Offset: 0x006853D4
|
||||
private bool GAJDMIBNMCM()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.HMFEPMPJGLE())
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(7);
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x060174FF RID: 95487 RVA: 0x006871FC File Offset: 0x006853FC
|
||||
private void EBNFNKCKOKL()
|
||||
{
|
||||
if (this.HKBDAJDBPFH())
|
||||
{
|
||||
base.StopCoroutine(this.AOMJICBPLLO);
|
||||
this.AOMJICBPLLO = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000A28 RID: 2600
|
||||
// (get) Token: 0x06017500 RID: 95488 RVA: 0x0068721C File Offset: 0x0068541C
|
||||
public bool OOMFOBGPNKH
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.FCEKOOFDJGM.BHMLLHLEAFF == 6 || this.FCEKOOFDJGM.BHMLLHLEAFF == 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017501 RID: 95489 RVA: 0x00687240 File Offset: 0x00685440
|
||||
private IEnumerator DHJDEMBANJF(bool GENGJBCDOGB, RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
RoomPersistenceManager.CFAHOAIIEGO.LNPCBGEBNIG lnpcbgebnig = new RoomPersistenceManager.CFAHOAIIEGO.LNPCBGEBNIG();
|
||||
lnpcbgebnig.NJPHDNAAJHF = this;
|
||||
lnpcbgebnig.NNOPJFIPCLO = null;
|
||||
lnpcbgebnig.CPKPDBJBPEL = false;
|
||||
lnpcbgebnig.IGKNKHHNJNI = null;
|
||||
yield return base.StartCoroutine(this.PIPDEKANCNB(GENGJBCDOGB, new RoomPersistenceManager.HADOPFJNNAO(lnpcbgebnig.OJKNBNGGBEC)));
|
||||
if (!lnpcbgebnig.CPKPDBJBPEL)
|
||||
{
|
||||
JOINLHEALDL(false, lnpcbgebnig.IGKNKHHNJNI);
|
||||
yield break;
|
||||
}
|
||||
if (lnpcbgebnig.NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
lnpcbgebnig.APIPJOMAGJI = false;
|
||||
lnpcbgebnig.DKGPJBCMBNG = null;
|
||||
yield return base.StartCoroutine(this.CLPFGKALHGE(lnpcbgebnig.NNOPJFIPCLO, GENGJBCDOGB, new RoomPersistenceManager.CDBPIEBHLGP(lnpcbgebnig.JAFGLCBFOHM)));
|
||||
if (!lnpcbgebnig.APIPJOMAGJI)
|
||||
{
|
||||
JOINLHEALDL(false, lnpcbgebnig.DKGPJBCMBNG);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017502 RID: 95490 RVA: 0x0068726C File Offset: 0x0068546C
|
||||
private void Start()
|
||||
{
|
||||
this.FCEKOOFDJGM.FLHFCMCNLEK(this, 0);
|
||||
}
|
||||
|
||||
// Token: 0x06017503 RID: 95491 RVA: 0x0068727C File Offset: 0x0068547C
|
||||
private void OLDPFLEBGBA(DIEJEGFOIBF NNOPJFIPCLO, bool OJNLGNFPHMH)
|
||||
{
|
||||
HashSet<Guid> hashSet = new HashSet<Guid>();
|
||||
foreach (JENDPFGMLME jendpfgmlme in NNOPJFIPCLO.IHNIMBMNOPE)
|
||||
{
|
||||
if (jendpfgmlme.MMDLCJMOPEL == null)
|
||||
{
|
||||
Guid guid = jendpfgmlme.PKJFPDJKJAH.KLNKHLCMIMD();
|
||||
if (!(guid == Guid.Empty))
|
||||
{
|
||||
hashSet.Add(guid);
|
||||
}
|
||||
}
|
||||
}
|
||||
List<PersistenceView> list = PersistenceView.AllViews.Values.ToList<PersistenceView>();
|
||||
foreach (PersistenceView persistenceView in list)
|
||||
{
|
||||
if (!hashSet.Contains(persistenceView.PKJFPDJKJAH) && persistenceView.AADHHMOLEOL)
|
||||
{
|
||||
if (OJNLGNFPHMH)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Destroying unused PersistenceView {0} with ID {1}", new object[] { persistenceView.gameObject, persistenceView.PKJFPDJKJAH });
|
||||
}
|
||||
PersistenceView.AllViews.Remove(persistenceView.PKJFPDJKJAH);
|
||||
IHFKMIAHBFP.NJMGEDPOHED(persistenceView.gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017504 RID: 95492 RVA: 0x006873CC File Offset: 0x006855CC
|
||||
public void NGNGCOFKPAL(Action NOBAPCOKFIL)
|
||||
{
|
||||
Action action = this.BJPKKMHPMKI;
|
||||
Action action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action>(ref this.BJPKKMHPMKI, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x06017505 RID: 95493 RVA: 0x00687404 File Offset: 0x00685604
|
||||
private void AKIIEMDFNEE()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017506 RID: 95494 RVA: 0x0068741C File Offset: 0x0068561C
|
||||
public void GGHMAGALPIJ(Action NOBAPCOKFIL)
|
||||
{
|
||||
Action action = this.DEOKOGDFDLC;
|
||||
Action action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action>(ref this.DEOKOGDFDLC, (Action)Delegate.Remove(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x06017507 RID: 95495 RVA: 0x00687454 File Offset: 0x00685654
|
||||
public void HPBKLBEEFAI(Action NOBAPCOKFIL)
|
||||
{
|
||||
Action action = this.BJPKKMHPMKI;
|
||||
Action action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action>(ref this.BJPKKMHPMKI, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x06017509 RID: 95497 RVA: 0x0068749C File Offset: 0x0068569C
|
||||
private void PFBLKJEDHOA(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (this.MKCMFFPFOAH != null)
|
||||
{
|
||||
this.MKCMFFPFOAH(this.HELCLDHMMOJ);
|
||||
}
|
||||
SingletonMonoBehaviour<ScreenSpaceNotificationManager>.NCKMBFBMBFM.Play(ScreenSpaceNotificationManager.DBNGPDFKLEK.Vital, "Room Restore Failed", 3f, null, false);
|
||||
NECCOFKHCAA.GILMEMNHBJC(PEDNLMAHGBP.KGKNIMECEKH.ODIPLBJJBLB, false);
|
||||
}
|
||||
|
||||
// Token: 0x0601750A RID: 95498 RVA: 0x006874EC File Offset: 0x006856EC
|
||||
private IEnumerator GFBOAEKNGAO(bool GENGJBCDOGB, RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
RoomPersistenceManager.BBFFDFLHBAJ.DEMMHJFBCBA demmhjfbcba = new RoomPersistenceManager.BBFFDFLHBAJ.DEMMHJFBCBA();
|
||||
demmhjfbcba.LPKHEOPCJLN = this;
|
||||
demmhjfbcba.GAALMKDADFF = null;
|
||||
demmhjfbcba.MFPJBNKALCA = null;
|
||||
demmhjfbcba.FPHFJIKEGIA = false;
|
||||
demmhjfbcba.BKIBFKJPHEF = null;
|
||||
yield return base.StartCoroutine(this.MNNLEPAPNLM(GENGJBCDOGB, new RoomPersistenceManager.BMPMAAMNNPJ(demmhjfbcba.OJKNBNGGBEC)));
|
||||
if (!demmhjfbcba.FPHFJIKEGIA || demmhjfbcba.GAALMKDADFF == null || demmhjfbcba.MFPJBNKALCA == null)
|
||||
{
|
||||
JOINLHEALDL(false, demmhjfbcba.BKIBFKJPHEF);
|
||||
yield break;
|
||||
}
|
||||
demmhjfbcba.HDOLOEDBMBJ = false;
|
||||
demmhjfbcba.GAEPNMAFDDC = null;
|
||||
yield return base.StartCoroutine(this.JOIJAICAGKH(demmhjfbcba.GAALMKDADFF, demmhjfbcba.MFPJBNKALCA, GENGJBCDOGB, new RoomPersistenceManager.CNCJIGIGKME(demmhjfbcba.JAFGLCBFOHM)));
|
||||
if (!demmhjfbcba.HDOLOEDBMBJ)
|
||||
{
|
||||
JOINLHEALDL(false, demmhjfbcba.GAEPNMAFDDC);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x0601750B RID: 95499 RVA: 0x00687518 File Offset: 0x00685718
|
||||
private void BOMACAAIEKE()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BABIFJDNLFC.HFOKKCOENOF())
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(0, 1);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0601750C RID: 95500 RVA: 0x00687544 File Offset: 0x00685744
|
||||
private bool CCODEGFCJKP(JENDPFGMLME LJPJGMJDIKB)
|
||||
{
|
||||
return LJPJGMJDIKB == null || (LJPJGMJDIKB.DHABAPACNIN == null && LJPJGMJDIKB.OOAEHEBLAEK() == null);
|
||||
}
|
||||
|
||||
// Token: 0x140000CD RID: 205
|
||||
// (add) Token: 0x0601753D RID: 95549 RVA: 0x00687E20 File Offset: 0x00686020
|
||||
// (remove) Token: 0x0601750D RID: 95501 RVA: 0x0068756C File Offset: 0x0068576C
|
||||
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
|
||||
public event Action<string> MKCMFFPFOAH;
|
||||
|
||||
// Token: 0x0601750E RID: 95502 RVA: 0x006875A4 File Offset: 0x006857A4
|
||||
private bool CFACCINIMAM()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.JHAOJJGFFPN())
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(6);
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x0601750F RID: 95503 RVA: 0x006875CC File Offset: 0x006857CC
|
||||
private IEnumerator CLPFGKALHGE(DIEJEGFOIBF NNOPJFIPCLO, bool GENGJBCDOGB, RoomPersistenceManager.CDBPIEBHLGP JOINLHEALDL)
|
||||
{
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, "Only master client is allowed to deserialize room data.");
|
||||
yield break;
|
||||
}
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "Room data is null.");
|
||||
yield break;
|
||||
}
|
||||
this.OLDPFLEBGBA(NNOPJFIPCLO, GENGJBCDOGB);
|
||||
yield return null;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
int num = NNOPJFIPCLO.ALCFGFGJCHI;
|
||||
global::UnityEngine.Debug.LogFormat("Deserializing room data version {0} with {1} persisted views.", new object[]
|
||||
{
|
||||
num,
|
||||
NNOPJFIPCLO.IHNIMBMNOPE.Count
|
||||
});
|
||||
}
|
||||
foreach (JENDPFGMLME jendpfgmlme in NNOPJFIPCLO.IHNIMBMNOPE)
|
||||
{
|
||||
Guid guid = jendpfgmlme.PKJFPDJKJAH.KLNKHLCMIMD();
|
||||
if (guid == Guid.Empty)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Data found with malformed or empty ID while deserializing room.", new object[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
PersistenceView persistenceView = null;
|
||||
if (!PersistenceView.AllViews.TryGetValue(guid, out persistenceView))
|
||||
{
|
||||
Vector3 vector = jendpfgmlme.KOGMNNMACPG.GMOJLKHOBGG.ECHGEFCCABI();
|
||||
Quaternion quaternion = Quaternion.Euler(jendpfgmlme.KOGMNNMACPG.HCDIECIBAKP.ECHGEFCCABI());
|
||||
persistenceView = this.IDBLJNOCBEC(jendpfgmlme, guid, vector, quaternion, GENGJBCDOGB);
|
||||
}
|
||||
if (persistenceView == null)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Unable to create or locate Persistence View with guid {0}.", new object[] { guid });
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!persistenceView.BHCCHBHNHCG)
|
||||
{
|
||||
persistenceView.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
|
||||
}
|
||||
persistenceView.gameObject.SetActive(true);
|
||||
persistenceView.Deserialize(jendpfgmlme);
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (PersistenceView persistenceView2 in PersistenceView.AllViews.Values)
|
||||
{
|
||||
persistenceView2.NotifyDeserializationComplete();
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017510 RID: 95504 RVA: 0x006875FC File Offset: 0x006857FC
|
||||
private void CDICMKILDFF()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(3);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017511 RID: 95505 RVA: 0x00687614 File Offset: 0x00685814
|
||||
private IEnumerator MNNLEPAPNLM(bool GENGJBCDOGB, RoomPersistenceManager.BMPMAAMNNPJ JOINLHEALDL)
|
||||
{
|
||||
mcpdfkaigen = new RoomPersistenceManager.EDGCHPHLBFA.MCPDFKAIGEN();
|
||||
mcpdfkaigen.PNDHCMIJLFP = this;
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, null, null, "Only the Master Client may save room data.");
|
||||
yield break;
|
||||
}
|
||||
mcpdfkaigen.NNOPJFIPCLO = new DIEJEGFOIBF();
|
||||
mcpdfkaigen.NNOPJFIPCLO.ALCFGFGJCHI = 1;
|
||||
ehlbefkjlhj = PEDNLMAHGBP.KGKNIMECEKH;
|
||||
mcpdfkaigen.NNOPJFIPCLO.MNDEJIOKCJK = LMBEHMFIOEN.OOCOFDALHOG(ehlbefkjlhj.KAPOBAEMBKL, ehlbefkjlhj.OOAECNOOFID);
|
||||
mcpdfkaigen.NNOPJFIPCLO.BLMPACLLEPB = DateTime.UtcNow.ToTimestamp();
|
||||
this.MEKJGLMJCGE.Clear();
|
||||
mcpdfkaigen.MPLGGAAMDKL = global::UnityEngine.Object.FindObjectsOfType<PersistenceView>();
|
||||
mcpdfkaigen.HHHBHKENMBJ = 0;
|
||||
for (int i = 0; i < mcpdfkaigen.MPLGGAAMDKL.Length; i++)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[i].AADHHMOLEOL)
|
||||
{
|
||||
mcpdfkaigen.HHHBHKENMBJ++;
|
||||
base.StartCoroutine(mcpdfkaigen.MPLGGAAMDKL[i].PreSerialize(new Action(mcpdfkaigen.OJKNBNGGBEC)));
|
||||
}
|
||||
}
|
||||
realtimeSinceStartup = Time.realtimeSinceStartup;
|
||||
while (mcpdfkaigen.HHHBHKENMBJ > 0)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Preserialization complete in {0} seconds", new object[] { Time.realtimeSinceStartup - realtimeSinceStartup });
|
||||
}
|
||||
num = 0;
|
||||
kmmcmjlhcna = new RoomPersistenceManager.EDGCHPHLBFA.KMMCMJLHCNA();
|
||||
kmmcmjlhcna.PNDHCMIJLFP = this;
|
||||
kmmcmjlhcna.DOCPCEJLLAL = mcpdfkaigen;
|
||||
kmmcmjlhcna.CIMNKHDEFOH = 0;
|
||||
while (kmmcmjlhcna.CIMNKHDEFOH < mcpdfkaigen.MPLGGAAMDKL.Length)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].AADHHMOLEOL)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat(mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH], "Serializing PersistanceView {0}", new object[] { mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].gameObject });
|
||||
}
|
||||
mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].Serialize(new PersistenceView.LJOBLBKHDAH(kmmcmjlhcna.OJKNBNGGBEC));
|
||||
num++;
|
||||
if (num >= 10)
|
||||
{
|
||||
yield return null;
|
||||
num = 0;
|
||||
}
|
||||
}
|
||||
kmmcmjlhcna.CIMNKHDEFOH++;
|
||||
}
|
||||
list = new List<string>(this.MEKJGLMJCGE);
|
||||
JOINLHEALDL(true, mcpdfkaigen.NNOPJFIPCLO, list, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017512 RID: 95506 RVA: 0x00687640 File Offset: 0x00685840
|
||||
private void FFLHJNKCMFA(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.BABIFJDNLFC.KLIANKEOBGC(Player.FCEGFOFFLJJ + 846f);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017513 RID: 95507 RVA: 0x00687664 File Offset: 0x00685864
|
||||
private void KJGPIGGOFGM(ushort OIMHGOONBEB, ushort LPFGCCKCIEB)
|
||||
{
|
||||
if (Player.LocalPlayerExists)
|
||||
{
|
||||
RecRoomSceneManager.LEILGOOHEOI().HDNIEJJBLGI.HJBGJIBPCLO(true);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017514 RID: 95508 RVA: 0x00687680 File Offset: 0x00685880
|
||||
private string CIFLHLHHHCO()
|
||||
{
|
||||
return this.NLHOMHODEKH.CPIBGJLHLBL();
|
||||
}
|
||||
|
||||
// Token: 0x06017515 RID: 95509 RVA: 0x00687690 File Offset: 0x00685890
|
||||
private IEnumerator EBPNJBDALAN(DIEJEGFOIBF NNOPJFIPCLO, bool GENGJBCDOGB, RoomPersistenceManager.CDBPIEBHLGP JOINLHEALDL)
|
||||
{
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, "Only master client is allowed to deserialize room data.");
|
||||
yield break;
|
||||
}
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "Room data is null.");
|
||||
yield break;
|
||||
}
|
||||
this.OLDPFLEBGBA(NNOPJFIPCLO, GENGJBCDOGB);
|
||||
yield return null;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
int num = NNOPJFIPCLO.ALCFGFGJCHI;
|
||||
global::UnityEngine.Debug.LogFormat("Deserializing room data version {0} with {1} persisted views.", new object[]
|
||||
{
|
||||
num,
|
||||
NNOPJFIPCLO.IHNIMBMNOPE.Count
|
||||
});
|
||||
}
|
||||
enumerator = NNOPJFIPCLO.IHNIMBMNOPE.GetEnumerator();
|
||||
try
|
||||
{
|
||||
while (enumerator.MoveNext())
|
||||
{
|
||||
JENDPFGMLME jendpfgmlme = enumerator.Current;
|
||||
Guid guid = jendpfgmlme.PKJFPDJKJAH.KLNKHLCMIMD();
|
||||
if (guid == Guid.Empty)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Data found with malformed or empty ID while deserializing room.", new object[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
PersistenceView persistenceView = null;
|
||||
if (!PersistenceView.AllViews.TryGetValue(guid, out persistenceView))
|
||||
{
|
||||
Vector3 vector = jendpfgmlme.KOGMNNMACPG.GMOJLKHOBGG.ECHGEFCCABI();
|
||||
Quaternion quaternion = Quaternion.Euler(jendpfgmlme.KOGMNNMACPG.HCDIECIBAKP.ECHGEFCCABI());
|
||||
persistenceView = this.IDBLJNOCBEC(jendpfgmlme, guid, vector, quaternion, GENGJBCDOGB);
|
||||
}
|
||||
if (persistenceView == null)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Unable to create or locate Persistence View with guid {0}.", new object[] { guid });
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!persistenceView.BHCCHBHNHCG)
|
||||
{
|
||||
persistenceView.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
|
||||
}
|
||||
persistenceView.gameObject.SetActive(true);
|
||||
persistenceView.Deserialize(jendpfgmlme);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (enumerator != null)
|
||||
{
|
||||
enumerator.Dispose();
|
||||
}
|
||||
}
|
||||
enumerator2 = PersistenceView.AllViews.Values.GetEnumerator();
|
||||
try
|
||||
{
|
||||
while (enumerator2.MoveNext())
|
||||
{
|
||||
PersistenceView persistenceView2 = enumerator2.Current;
|
||||
persistenceView2.NotifyDeserializationComplete();
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
((IDisposable)enumerator2).Dispose();
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017516 RID: 95510 RVA: 0x006876C0 File Offset: 0x006858C0
|
||||
private IEnumerator OCGAOJMCCDF(bool GENGJBCDOGB, RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
demmhjfbcba = new RoomPersistenceManager.BBFFDFLHBAJ.DEMMHJFBCBA();
|
||||
demmhjfbcba.LPKHEOPCJLN = this;
|
||||
demmhjfbcba.GAALMKDADFF = null;
|
||||
demmhjfbcba.MFPJBNKALCA = null;
|
||||
demmhjfbcba.FPHFJIKEGIA = false;
|
||||
demmhjfbcba.BKIBFKJPHEF = null;
|
||||
yield return base.StartCoroutine(this.MNNLEPAPNLM(GENGJBCDOGB, new RoomPersistenceManager.BMPMAAMNNPJ(demmhjfbcba.OJKNBNGGBEC)));
|
||||
if (!demmhjfbcba.FPHFJIKEGIA || demmhjfbcba.GAALMKDADFF == null || demmhjfbcba.MFPJBNKALCA == null)
|
||||
{
|
||||
JOINLHEALDL(false, demmhjfbcba.BKIBFKJPHEF);
|
||||
yield break;
|
||||
}
|
||||
demmhjfbcba.HDOLOEDBMBJ = false;
|
||||
demmhjfbcba.GAEPNMAFDDC = null;
|
||||
yield return base.StartCoroutine(this.JOIJAICAGKH(demmhjfbcba.GAALMKDADFF, demmhjfbcba.MFPJBNKALCA, GENGJBCDOGB, new RoomPersistenceManager.CNCJIGIGKME(demmhjfbcba.JAFGLCBFOHM)));
|
||||
if (!demmhjfbcba.HDOLOEDBMBJ)
|
||||
{
|
||||
JOINLHEALDL(false, demmhjfbcba.GAEPNMAFDDC);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017517 RID: 95511 RVA: 0x006876EC File Offset: 0x006858EC
|
||||
[BCENPNOIAOM]
|
||||
private void RpcMasterRequestReloadRoomData()
|
||||
{
|
||||
this.KDEJHEPKFMK();
|
||||
}
|
||||
|
||||
// Token: 0x06017518 RID: 95512 RVA: 0x006876F8 File Offset: 0x006858F8
|
||||
private IEnumerator IDPGEIGDFKO(bool GENGJBCDOGB)
|
||||
{
|
||||
RoomPersistenceManager.HECEDEJMDKJ.EOENHMIMAKA eoenhmimaka = new RoomPersistenceManager.HECEDEJMDKJ.EOENHMIMAKA();
|
||||
eoenhmimaka.JMDBCBACLEI = this;
|
||||
eoenhmimaka.FAJMJGIDENN = false;
|
||||
eoenhmimaka.OIFBPEJHDOD = null;
|
||||
yield return base.StartCoroutine(this.OCGAOJMCCDF(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(eoenhmimaka.OJKNBNGGBEC)));
|
||||
if (eoenhmimaka.FAJMJGIDENN)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(4);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.HELCLDHMMOJ = eoenhmimaka.OIFBPEJHDOD;
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(5);
|
||||
}
|
||||
this.AOMJICBPLLO = null;
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x0601751A RID: 95514 RVA: 0x00687754 File Offset: 0x00685954
|
||||
private void DBPNEBFFGLB()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0601751B RID: 95515 RVA: 0x0068776C File Offset: 0x0068596C
|
||||
private GameObject LKAECEBMMCP(JENDPFGMLME LJPJGMJDIKB, Guid JAGNIKELELP, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, bool GENGJBCDOGB)
|
||||
{
|
||||
Guid guid = LJPJGMJDIKB.DHABAPACNIN.FDJFFDEFEBD().KLNKHLCMIMD();
|
||||
if (guid == Guid.Empty)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat(". Client is not the MasterClient in this room.", new object[] { JAGNIKELELP });
|
||||
return null;
|
||||
}
|
||||
Tool tool = NetworkedSingletonMonoBehaviour<SandboxSpawnableManager>.NCKMBFBMBFM.LKIECHDIPEB(guid, CIGPHKLAAOD, IJGPPOIJDKO);
|
||||
if (tool == null)
|
||||
{
|
||||
string text = "SBM_TL";
|
||||
object[] array = new object[4];
|
||||
array[0] = JAGNIKELELP;
|
||||
array[0] = guid;
|
||||
global::UnityEngine.Debug.LogErrorFormat(text, array);
|
||||
return null;
|
||||
}
|
||||
GameObject gameObject = tool.gameObject;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
string text2 = "content-encoding";
|
||||
object[] array2 = new object[] { null, gameObject };
|
||||
array2[1] = JAGNIKELELP;
|
||||
global::UnityEngine.Debug.LogFormat(text2, array2);
|
||||
}
|
||||
return gameObject;
|
||||
}
|
||||
|
||||
// Token: 0x0601751C RID: 95516 RVA: 0x00687820 File Offset: 0x00685A20
|
||||
private void LOBBNPFHAJL()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && !this.CKACFFNNJFP())
|
||||
{
|
||||
bool flag = false;
|
||||
this.JCLHEGNDJLE(flag);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0601751D RID: 95517 RVA: 0x0068784C File Offset: 0x00685A4C
|
||||
private bool KDEJHEPKFMK()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.PKGJCPJMABF())
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(6, 0);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Token: 0x0601751E RID: 95518 RVA: 0x00687874 File Offset: 0x00685A74
|
||||
private PersistenceView IDBLJNOCBEC(JENDPFGMLME LJPJGMJDIKB, Guid JAGNIKELELP, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, bool GENGJBCDOGB)
|
||||
{
|
||||
GameObject gameObject = null;
|
||||
if (LJPJGMJDIKB.DHABAPACNIN != null)
|
||||
{
|
||||
gameObject = this.NIOJIGFCBJO(LJPJGMJDIKB, JAGNIKELELP, CIGPHKLAAOD, IJGPPOIJDKO, GENGJBCDOGB);
|
||||
}
|
||||
else if (LJPJGMJDIKB.JFFOKKEADDA != null)
|
||||
{
|
||||
gameObject = this.CDKPBNIHJOF(LJPJGMJDIKB, JAGNIKELELP, CIGPHKLAAOD, IJGPPOIJDKO, GENGJBCDOGB);
|
||||
}
|
||||
else if (LJPJGMJDIKB.LIKIIPEKBAK)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Attempting to deserialize scene object with ID {0}, but no corresponding PersistenceView was found in the scene.", new object[] { JAGNIKELELP });
|
||||
}
|
||||
else
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Cannot deserialize runtime object with ID {0} without equipment or extrusion data.", new object[] { JAGNIKELELP });
|
||||
}
|
||||
if (gameObject == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
PersistenceView componentInChildren = gameObject.GetComponentInChildren<PersistenceView>();
|
||||
if (componentInChildren == null)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Cannot deserialize object {0} with no PersistenceView on it or its children. Destroying...", new object[] { gameObject });
|
||||
IHFKMIAHBFP.JFCIOOHPLFJ(gameObject);
|
||||
return null;
|
||||
}
|
||||
return componentInChildren;
|
||||
}
|
||||
|
||||
// Token: 0x0601751F RID: 95519 RVA: 0x00687940 File Offset: 0x00685B40
|
||||
private void COLGNEBNKHM()
|
||||
{
|
||||
if (this.CKACFFNNJFP())
|
||||
{
|
||||
base.StopCoroutine(this.KJCGGKEBBOP);
|
||||
this.KJCGGKEBBOP = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017520 RID: 95520 RVA: 0x00687960 File Offset: 0x00685B60
|
||||
private void MIBIJLIBPGJ()
|
||||
{
|
||||
this.BABIFJDNLFC.JNDAEJOHPHO();
|
||||
this.FCEKOOFDJGM.DLBPEOILIFL();
|
||||
}
|
||||
|
||||
// Token: 0x06017521 RID: 95521 RVA: 0x00687978 File Offset: 0x00685B78
|
||||
private IEnumerator JOIJAICAGKH(DIEJEGFOIBF NNOPJFIPCLO, List<string> DONBDBHJGJP, bool GENGJBCDOGB, RoomPersistenceManager.CNCJIGIGKME JOINLHEALDL)
|
||||
{
|
||||
dcbjebfkpkf = new RoomPersistenceManager.ACCJNJPBLCH.DCBJEBFKPKF();
|
||||
dcbjebfkpkf.EMLIIAMBDJA = this;
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "No persisted Room Data created.");
|
||||
yield break;
|
||||
}
|
||||
array = NNOPJFIPCLO.ToByteArray();
|
||||
if (array == null || array.Length == 0)
|
||||
{
|
||||
JOINLHEALDL(false, "No room data to save.");
|
||||
yield break;
|
||||
}
|
||||
num = 0f;
|
||||
while (HNIFBBFIBBG.OINDBDDCICD == null)
|
||||
{
|
||||
if (num >= 10f)
|
||||
{
|
||||
JOINLHEALDL(false, "Timed out waiting for current session room id to become valid.");
|
||||
yield break;
|
||||
}
|
||||
num += Time.deltaTime;
|
||||
yield return null;
|
||||
}
|
||||
dcbjebfkpkf.FEENBKMGNHM = string.Empty;
|
||||
yield return base.StartCoroutine(HNIFBBFIBBG.OEOEHMBKFBP(array, DONBDBHJGJP, new HEMCJJJMLKI.JMICPMCJMJF<string>(dcbjebfkpkf.OJKNBNGGBEC)));
|
||||
if (!string.IsNullOrEmpty(dcbjebfkpkf.FEENBKMGNHM))
|
||||
{
|
||||
JOINLHEALDL(false, dcbjebfkpkf.FEENBKMGNHM);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017522 RID: 95522 RVA: 0x006879AC File Offset: 0x00685BAC
|
||||
private bool AFDDEFOAJOE(JENDPFGMLME LJPJGMJDIKB)
|
||||
{
|
||||
return LJPJGMJDIKB != null && (LJPJGMJDIKB.DHABAPACNIN != null || LJPJGMJDIKB.JFFOKKEADDA != null);
|
||||
}
|
||||
|
||||
// Token: 0x06017523 RID: 95523 RVA: 0x006879D4 File Offset: 0x00685BD4
|
||||
protected override void OnDestroy()
|
||||
{
|
||||
base.OnDestroy();
|
||||
IHFKMIAHBFP.ENIGMACDFMJ -= new Action<LNJFBGIBLHA>(this.OnMasterClientSwitched);
|
||||
}
|
||||
|
||||
// Token: 0x06017524 RID: 95524 RVA: 0x006879F8 File Offset: 0x00685BF8
|
||||
private void AILOFOCPEMP(string NOBAPCOKFIL)
|
||||
{
|
||||
this.NLHOMHODEKH.MEAINJPIECA(NOBAPCOKFIL);
|
||||
}
|
||||
|
||||
// Token: 0x06017525 RID: 95525 RVA: 0x00687A08 File Offset: 0x00685C08
|
||||
private GameObject NIOJIGFCBJO(JENDPFGMLME LJPJGMJDIKB, Guid JAGNIKELELP, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, bool GENGJBCDOGB)
|
||||
{
|
||||
Guid guid = LJPJGMJDIKB.DHABAPACNIN.NAILJMCCJKN.KLNKHLCMIMD();
|
||||
if (guid == Guid.Empty)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Failed to spawn instance with ID {0} that has an empty prefab ID.", new object[] { JAGNIKELELP });
|
||||
return null;
|
||||
}
|
||||
Tool tool = NetworkedSingletonMonoBehaviour<SandboxSpawnableManager>.NCKMBFBMBFM.MasterSpawnSandboxEquipment(guid, CIGPHKLAAOD, IJGPPOIJDKO);
|
||||
if (tool == null)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Failed to spawn instance of equipment with ID {0} and prefab ID {1}", new object[] { JAGNIKELELP, guid });
|
||||
return null;
|
||||
}
|
||||
GameObject gameObject = tool.gameObject;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Spawning new instance of deserialized equipment {0} with ID {1}", new object[] { gameObject, JAGNIKELELP });
|
||||
}
|
||||
return gameObject;
|
||||
}
|
||||
|
||||
// Token: 0x06017526 RID: 95526 RVA: 0x00687ABC File Offset: 0x00685CBC
|
||||
public void PLNEAJGEGOP(Action NOBAPCOKFIL)
|
||||
{
|
||||
Action action = this.DEOKOGDFDLC;
|
||||
Action action2;
|
||||
do
|
||||
{
|
||||
action2 = action;
|
||||
action = Interlocked.CompareExchange<Action>(ref this.DEOKOGDFDLC, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
|
||||
}
|
||||
while (action != action2);
|
||||
}
|
||||
|
||||
// Token: 0x06017527 RID: 95527 RVA: 0x00687AF4 File Offset: 0x00685CF4
|
||||
private void HMPEEIOEBKK(bool GENGJBCDOGB)
|
||||
{
|
||||
this.EBNFNKCKOKL();
|
||||
this.AOMJICBPLLO = base.StartCoroutine(this.IDPGEIGDFKO(GENGJBCDOGB));
|
||||
}
|
||||
|
||||
// Token: 0x06017528 RID: 95528 RVA: 0x00687B10 File Offset: 0x00685D10
|
||||
private IEnumerator JDCDBANHLJP(DIEJEGFOIBF NNOPJFIPCLO, bool GENGJBCDOGB, RoomPersistenceManager.CDBPIEBHLGP JOINLHEALDL)
|
||||
{
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, "Only master client is allowed to deserialize room data.");
|
||||
yield break;
|
||||
}
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "Room data is null.");
|
||||
yield break;
|
||||
}
|
||||
this.OLDPFLEBGBA(NNOPJFIPCLO, GENGJBCDOGB);
|
||||
yield return null;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
int num = NNOPJFIPCLO.ALCFGFGJCHI;
|
||||
global::UnityEngine.Debug.LogFormat("Deserializing room data version {0} with {1} persisted views.", new object[]
|
||||
{
|
||||
num,
|
||||
NNOPJFIPCLO.IHNIMBMNOPE.Count
|
||||
});
|
||||
}
|
||||
enumerator = NNOPJFIPCLO.IHNIMBMNOPE.GetEnumerator();
|
||||
try
|
||||
{
|
||||
while (enumerator.MoveNext())
|
||||
{
|
||||
JENDPFGMLME jendpfgmlme = enumerator.Current;
|
||||
Guid guid = jendpfgmlme.PKJFPDJKJAH.KLNKHLCMIMD();
|
||||
if (guid == Guid.Empty)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Data found with malformed or empty ID while deserializing room.", new object[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
PersistenceView persistenceView = null;
|
||||
if (!PersistenceView.AllViews.TryGetValue(guid, out persistenceView))
|
||||
{
|
||||
Vector3 vector = jendpfgmlme.KOGMNNMACPG.GMOJLKHOBGG.ECHGEFCCABI();
|
||||
Quaternion quaternion = Quaternion.Euler(jendpfgmlme.KOGMNNMACPG.HCDIECIBAKP.ECHGEFCCABI());
|
||||
persistenceView = this.IDBLJNOCBEC(jendpfgmlme, guid, vector, quaternion, GENGJBCDOGB);
|
||||
}
|
||||
if (persistenceView == null)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Unable to create or locate Persistence View with guid {0}.", new object[] { guid });
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!persistenceView.BHCCHBHNHCG)
|
||||
{
|
||||
persistenceView.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI);
|
||||
}
|
||||
persistenceView.gameObject.SetActive(true);
|
||||
persistenceView.Deserialize(jendpfgmlme);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (enumerator != null)
|
||||
{
|
||||
enumerator.Dispose();
|
||||
}
|
||||
}
|
||||
enumerator2 = PersistenceView.AllViews.Values.GetEnumerator();
|
||||
try
|
||||
{
|
||||
while (enumerator2.MoveNext())
|
||||
{
|
||||
PersistenceView persistenceView2 = enumerator2.Current;
|
||||
persistenceView2.NotifyDeserializationComplete();
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
((IDisposable)enumerator2).Dispose();
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x0601752A RID: 95530 RVA: 0x00687B54 File Offset: 0x00685D54
|
||||
public void RequestSaveRoomData()
|
||||
{
|
||||
if (this.HMFEPMPJGLE())
|
||||
{
|
||||
base.OMNGGJICBBI.RPC("RpcMasterRequestSaveRoomData", IHCPDNLJMMD.MasterClient, new object[0]);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0601752B RID: 95531 RVA: 0x00687B78 File Offset: 0x00685D78
|
||||
private void KDPENCEGHJD()
|
||||
{
|
||||
this.KDEJHEPKFMK();
|
||||
}
|
||||
|
||||
// Token: 0x0601752C RID: 95532 RVA: 0x00687B84 File Offset: 0x00685D84
|
||||
private bool MIFJNJPJNOP()
|
||||
{
|
||||
return this.NIKLDPBCPHO != null;
|
||||
}
|
||||
|
||||
// Token: 0x140000CC RID: 204
|
||||
// (add) Token: 0x0601752D RID: 95533 RVA: 0x00687B94 File Offset: 0x00685D94
|
||||
// (remove) Token: 0x06017543 RID: 95555 RVA: 0x00687F70 File Offset: 0x00686170
|
||||
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
|
||||
public event Action BJPKKMHPMKI;
|
||||
|
||||
// Token: 0x0601752E RID: 95534 RVA: 0x00687BCC File Offset: 0x00685DCC
|
||||
private void OJKMMGLJFFB()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && this.BABIFJDNLFC.ALEKFIMMFPH())
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2, 0);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0601752F RID: 95535 RVA: 0x00687BF8 File Offset: 0x00685DF8
|
||||
private IEnumerator LMIJNNKPKJA(bool GENGJBCDOGB)
|
||||
{
|
||||
RoomPersistenceManager.PIBKEONKLPK.GJNBLIEFCAH gjnbliefcah = new RoomPersistenceManager.PIBKEONKLPK.GJNBLIEFCAH();
|
||||
gjnbliefcah.AOHNJFNCJKD = this;
|
||||
gjnbliefcah.LLENADHIHDP = false;
|
||||
yield return base.StartCoroutine(this.IKKAPBDFIEM(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(gjnbliefcah.OJKNBNGGBEC)));
|
||||
if (gjnbliefcah.LLENADHIHDP)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(1);
|
||||
}
|
||||
this.NIKLDPBCPHO = null;
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017530 RID: 95536 RVA: 0x00687C1C File Offset: 0x00685E1C
|
||||
private void BKLLOKKBMMN(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.BABIFJDNLFC.PBDGDJIFMOK(Player.FCEGFOFFLJJ + 1494f);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017531 RID: 95537 RVA: 0x00687C40 File Offset: 0x00685E40
|
||||
private IEnumerator BHIEOCFFAEK(bool GENGJBCDOGB, RoomPersistenceManager.BMPMAAMNNPJ JOINLHEALDL)
|
||||
{
|
||||
mcpdfkaigen = new RoomPersistenceManager.EDGCHPHLBFA.MCPDFKAIGEN();
|
||||
mcpdfkaigen.PNDHCMIJLFP = this;
|
||||
if (!IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
JOINLHEALDL(false, null, null, "Only the Master Client may save room data.");
|
||||
yield break;
|
||||
}
|
||||
mcpdfkaigen.NNOPJFIPCLO = new DIEJEGFOIBF();
|
||||
mcpdfkaigen.NNOPJFIPCLO.ALCFGFGJCHI = 1;
|
||||
ehlbefkjlhj = PEDNLMAHGBP.KGKNIMECEKH;
|
||||
mcpdfkaigen.NNOPJFIPCLO.MNDEJIOKCJK = LMBEHMFIOEN.OOCOFDALHOG(ehlbefkjlhj.KAPOBAEMBKL, ehlbefkjlhj.OOAECNOOFID);
|
||||
mcpdfkaigen.NNOPJFIPCLO.BLMPACLLEPB = DateTime.UtcNow.ToTimestamp();
|
||||
this.MEKJGLMJCGE.Clear();
|
||||
mcpdfkaigen.MPLGGAAMDKL = global::UnityEngine.Object.FindObjectsOfType<PersistenceView>();
|
||||
mcpdfkaigen.HHHBHKENMBJ = 0;
|
||||
for (int i = 0; i < mcpdfkaigen.MPLGGAAMDKL.Length; i++)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[i].AADHHMOLEOL)
|
||||
{
|
||||
mcpdfkaigen.HHHBHKENMBJ++;
|
||||
base.StartCoroutine(mcpdfkaigen.MPLGGAAMDKL[i].PreSerialize(new Action(mcpdfkaigen.OJKNBNGGBEC)));
|
||||
}
|
||||
}
|
||||
realtimeSinceStartup = Time.realtimeSinceStartup;
|
||||
while (mcpdfkaigen.HHHBHKENMBJ > 0)
|
||||
{
|
||||
yield return null;
|
||||
}
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Preserialization complete in {0} seconds", new object[] { Time.realtimeSinceStartup - realtimeSinceStartup });
|
||||
}
|
||||
num = 0;
|
||||
kmmcmjlhcna = new RoomPersistenceManager.EDGCHPHLBFA.KMMCMJLHCNA();
|
||||
kmmcmjlhcna.PNDHCMIJLFP = this;
|
||||
kmmcmjlhcna.DOCPCEJLLAL = mcpdfkaigen;
|
||||
kmmcmjlhcna.CIMNKHDEFOH = 0;
|
||||
while (kmmcmjlhcna.CIMNKHDEFOH < mcpdfkaigen.MPLGGAAMDKL.Length)
|
||||
{
|
||||
if (mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].AADHHMOLEOL)
|
||||
{
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat(mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH], "Serializing PersistanceView {0}", new object[] { mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].gameObject });
|
||||
}
|
||||
mcpdfkaigen.MPLGGAAMDKL[kmmcmjlhcna.CIMNKHDEFOH].Serialize(new PersistenceView.LJOBLBKHDAH(kmmcmjlhcna.OJKNBNGGBEC));
|
||||
num++;
|
||||
if (num >= 10)
|
||||
{
|
||||
yield return null;
|
||||
num = 0;
|
||||
}
|
||||
}
|
||||
kmmcmjlhcna.CIMNKHDEFOH++;
|
||||
}
|
||||
list = new List<string>(this.MEKJGLMJCGE);
|
||||
JOINLHEALDL(true, mcpdfkaigen.NNOPJFIPCLO, list, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017532 RID: 95538 RVA: 0x00687C6C File Offset: 0x00685E6C
|
||||
private IEnumerator HAIFFLOHKGC(bool GENGJBCDOGB)
|
||||
{
|
||||
joiakdadlbk = new RoomPersistenceManager.HPLJFNNMFLK.JOIAKDADLBK();
|
||||
joiakdadlbk.KCBDIJPPCNF = this;
|
||||
joiakdadlbk.LLENADHIHDP = false;
|
||||
joiakdadlbk.OIFBPEJHDOD = null;
|
||||
yield return base.StartCoroutine(this.KAONDDNBHOO(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(joiakdadlbk.OJKNBNGGBEC)));
|
||||
if (joiakdadlbk.LLENADHIHDP)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(7);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.HELCLDHMMOJ = joiakdadlbk.OIFBPEJHDOD;
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(8);
|
||||
}
|
||||
this.KJCGGKEBBOP = null;
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017533 RID: 95539 RVA: 0x00687C90 File Offset: 0x00685E90
|
||||
private bool AOAMHAKFCIP()
|
||||
{
|
||||
return this.KJCGGKEBBOP == null;
|
||||
}
|
||||
|
||||
// Token: 0x06017534 RID: 95540 RVA: 0x00687CA0 File Offset: 0x00685EA0
|
||||
private bool HMFEPMPJGLE()
|
||||
{
|
||||
return this.FCEKOOFDJGM != null && this.FCEKOOFDJGM.BHMLLHLEAFF == 2;
|
||||
}
|
||||
|
||||
// Token: 0x06017535 RID: 95541 RVA: 0x00687CC0 File Offset: 0x00685EC0
|
||||
private IEnumerator KAONDDNBHOO(bool GENGJBCDOGB, RoomPersistenceManager.PEGADEADMOL JOINLHEALDL)
|
||||
{
|
||||
lnpcbgebnig = new RoomPersistenceManager.CFAHOAIIEGO.LNPCBGEBNIG();
|
||||
lnpcbgebnig.NJPHDNAAJHF = this;
|
||||
lnpcbgebnig.NNOPJFIPCLO = null;
|
||||
lnpcbgebnig.CPKPDBJBPEL = false;
|
||||
lnpcbgebnig.IGKNKHHNJNI = null;
|
||||
yield return base.StartCoroutine(this.PIPDEKANCNB(GENGJBCDOGB, new RoomPersistenceManager.HADOPFJNNAO(lnpcbgebnig.OJKNBNGGBEC)));
|
||||
if (!lnpcbgebnig.CPKPDBJBPEL)
|
||||
{
|
||||
JOINLHEALDL(false, lnpcbgebnig.IGKNKHHNJNI);
|
||||
yield break;
|
||||
}
|
||||
if (lnpcbgebnig.NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
lnpcbgebnig.APIPJOMAGJI = false;
|
||||
lnpcbgebnig.DKGPJBCMBNG = null;
|
||||
yield return base.StartCoroutine(this.CLPFGKALHGE(lnpcbgebnig.NNOPJFIPCLO, GENGJBCDOGB, new RoomPersistenceManager.CDBPIEBHLGP(lnpcbgebnig.JAFGLCBFOHM)));
|
||||
if (!lnpcbgebnig.APIPJOMAGJI)
|
||||
{
|
||||
JOINLHEALDL(false, lnpcbgebnig.DKGPJBCMBNG);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017536 RID: 95542 RVA: 0x00687CEC File Offset: 0x00685EEC
|
||||
private IEnumerator IHELFIFJGFM(DIEJEGFOIBF NNOPJFIPCLO, List<string> DONBDBHJGJP, bool GENGJBCDOGB, RoomPersistenceManager.CNCJIGIGKME JOINLHEALDL)
|
||||
{
|
||||
dcbjebfkpkf = new RoomPersistenceManager.ACCJNJPBLCH.DCBJEBFKPKF();
|
||||
dcbjebfkpkf.EMLIIAMBDJA = this;
|
||||
if (NNOPJFIPCLO == null)
|
||||
{
|
||||
JOINLHEALDL(false, "No persisted Room Data created.");
|
||||
yield break;
|
||||
}
|
||||
array = NNOPJFIPCLO.ToByteArray();
|
||||
if (array == null || array.Length == 0)
|
||||
{
|
||||
JOINLHEALDL(false, "No room data to save.");
|
||||
yield break;
|
||||
}
|
||||
num = 0f;
|
||||
while (HNIFBBFIBBG.OINDBDDCICD == null)
|
||||
{
|
||||
if (num >= 10f)
|
||||
{
|
||||
JOINLHEALDL(false, "Timed out waiting for current session room id to become valid.");
|
||||
yield break;
|
||||
}
|
||||
num += Time.deltaTime;
|
||||
yield return null;
|
||||
}
|
||||
dcbjebfkpkf.FEENBKMGNHM = string.Empty;
|
||||
yield return base.StartCoroutine(HNIFBBFIBBG.OEOEHMBKFBP(array, DONBDBHJGJP, new HEMCJJJMLKI.JMICPMCJMJF<string>(dcbjebfkpkf.OJKNBNGGBEC)));
|
||||
if (!string.IsNullOrEmpty(dcbjebfkpkf.FEENBKMGNHM))
|
||||
{
|
||||
JOINLHEALDL(false, dcbjebfkpkf.FEENBKMGNHM);
|
||||
yield break;
|
||||
}
|
||||
JOINLHEALDL(true, null);
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x06017537 RID: 95543 RVA: 0x00687D20 File Offset: 0x00685F20
|
||||
private void KDJEJEEJLJJ()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017539 RID: 95545 RVA: 0x00687D70 File Offset: 0x00685F70
|
||||
private IEnumerator MMCCAFMBLBP(bool GENGJBCDOGB)
|
||||
{
|
||||
gjnbliefcah = new RoomPersistenceManager.PIBKEONKLPK.GJNBLIEFCAH();
|
||||
gjnbliefcah.AOHNJFNCJKD = this;
|
||||
gjnbliefcah.LLENADHIHDP = false;
|
||||
yield return base.StartCoroutine(this.IKKAPBDFIEM(GENGJBCDOGB, new RoomPersistenceManager.PEGADEADMOL(gjnbliefcah.OJKNBNGGBEC)));
|
||||
if (gjnbliefcah.LLENADHIHDP)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(1);
|
||||
}
|
||||
this.NIKLDPBCPHO = null;
|
||||
yield break;
|
||||
}
|
||||
|
||||
// Token: 0x0601753A RID: 95546 RVA: 0x00687D94 File Offset: 0x00685F94
|
||||
protected virtual void LFEBHHFENDK()
|
||||
{
|
||||
base.OnDestroy();
|
||||
IHFKMIAHBFP.ENIGMACDFMJ -= new Action<LNJFBGIBLHA>(this.PKMIODLNHHO);
|
||||
}
|
||||
|
||||
// Token: 0x0601753B RID: 95547 RVA: 0x00687DB8 File Offset: 0x00685FB8
|
||||
private void LAAEPEJLALK()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD)
|
||||
{
|
||||
this.FCEKOOFDJGM.BKBFIGCPIMI(2);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0601753C RID: 95548 RVA: 0x00687DD0 File Offset: 0x00685FD0
|
||||
private void NCEHDOMIIFK(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (this.NBDCGEKLCDM != null)
|
||||
{
|
||||
this.NBDCGEKLCDM(this.HELCLDHMMOJ);
|
||||
}
|
||||
SingletonMonoBehaviour<ScreenSpaceNotificationManager>.NCKMBFBMBFM.Play(ScreenSpaceNotificationManager.DBNGPDFKLEK.Vital, "Room Saving Failed", 3f, null, false);
|
||||
NECCOFKHCAA.FLELJAKONEE(PEDNLMAHGBP.KGKNIMECEKH.ODIPLBJJBLB, false);
|
||||
}
|
||||
|
||||
// Token: 0x0601753E RID: 95550 RVA: 0x00687E58 File Offset: 0x00686058
|
||||
private void OEBIDNFIAKA(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (this.DEOKOGDFDLC != null)
|
||||
{
|
||||
this.DEOKOGDFDLC();
|
||||
}
|
||||
SingletonMonoBehaviour<ScreenSpaceNotificationManager>.NCKMBFBMBFM.PAHKOCPEDMB(ScreenSpaceNotificationManager.DBNGPDFKLEK.Vital, "Start", 1541f, null, false);
|
||||
NECCOFKHCAA.FLELJAKONEE(PEDNLMAHGBP.NNAHPOJLAHM().ODIPLBJJBLB, true);
|
||||
}
|
||||
|
||||
// Token: 0x0601753F RID: 95551 RVA: 0x00687E98 File Offset: 0x00686098
|
||||
private bool PKGJCPJMABF()
|
||||
{
|
||||
return this.FCEKOOFDJGM != null && this.FCEKOOFDJGM.BHMLLHLEAFF == 2;
|
||||
}
|
||||
|
||||
// Token: 0x06017540 RID: 95552 RVA: 0x00687EB8 File Offset: 0x006860B8
|
||||
[BCENPNOIAOM]
|
||||
private void RpcMasterRequestSaveRoomData()
|
||||
{
|
||||
this.ANPBBPKHGBJ();
|
||||
}
|
||||
|
||||
// Token: 0x06017541 RID: 95553 RVA: 0x00687EC4 File Offset: 0x006860C4
|
||||
private GameObject CDKPBNIHJOF(JENDPFGMLME LJPJGMJDIKB, Guid JAGNIKELELP, Vector3 CIGPHKLAAOD, Quaternion IJGPPOIJDKO, bool GENGJBCDOGB)
|
||||
{
|
||||
Extrusion extrusion = NetworkedSingletonMonoBehaviour<SandboxSpawnableManager>.NCKMBFBMBFM.MasterSpawnExtrusion(CIGPHKLAAOD, IJGPPOIJDKO, 0);
|
||||
if (extrusion == null)
|
||||
{
|
||||
global::UnityEngine.Debug.LogErrorFormat("Failed to spawn extrusion instance with ID {0}", new object[] { JAGNIKELELP });
|
||||
return null;
|
||||
}
|
||||
GameObject gameObject = extrusion.gameObject;
|
||||
if (GENGJBCDOGB)
|
||||
{
|
||||
global::UnityEngine.Debug.LogFormat("Spawning new extrusion instance with ID {0}", new object[] { JAGNIKELELP });
|
||||
}
|
||||
return gameObject;
|
||||
}
|
||||
|
||||
// Token: 0x06017542 RID: 95554 RVA: 0x00687F30 File Offset: 0x00686130
|
||||
private void LKINCELIOGF(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (this.DEOKOGDFDLC != null)
|
||||
{
|
||||
this.DEOKOGDFDLC();
|
||||
}
|
||||
SingletonMonoBehaviour<ScreenSpaceNotificationManager>.NCKMBFBMBFM.Play(ScreenSpaceNotificationManager.DBNGPDFKLEK.Vital, "Room Saved!", 3f, null, false);
|
||||
NECCOFKHCAA.FLELJAKONEE(PEDNLMAHGBP.KGKNIMECEKH.ODIPLBJJBLB, true);
|
||||
}
|
||||
|
||||
// Token: 0x06017544 RID: 95556 RVA: 0x00687FA8 File Offset: 0x006861A8
|
||||
private void BPNENDANHJC()
|
||||
{
|
||||
if (this.HKBDAJDBPFH())
|
||||
{
|
||||
base.StopCoroutine(this.AOMJICBPLLO);
|
||||
this.AOMJICBPLLO = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06017545 RID: 95557 RVA: 0x00687FC8 File Offset: 0x006861C8
|
||||
private void KFGBOLAJHNJ(ushort CHJBIHILBFO, ushort BNCBHHCPCLE)
|
||||
{
|
||||
if (this.BJPKKMHPMKI != null)
|
||||
{
|
||||
this.BJPKKMHPMKI();
|
||||
}
|
||||
SingletonMonoBehaviour<ScreenSpaceNotificationManager>.NCKMBFBMBFM.Play(ScreenSpaceNotificationManager.DBNGPDFKLEK.Vital, "Room Restored!", 3f, null, false);
|
||||
NECCOFKHCAA.GILMEMNHBJC(PEDNLMAHGBP.KGKNIMECEKH.ODIPLBJJBLB, true);
|
||||
}
|
||||
|
||||
// Token: 0x06017546 RID: 95558 RVA: 0x00688008 File Offset: 0x00686208
|
||||
private void KMEEIPGNKEH(bool GENGJBCDOGB)
|
||||
{
|
||||
this.EBNFNKCKOKL();
|
||||
this.AOMJICBPLLO = base.StartCoroutine(this.IDPGEIGDFKO(GENGJBCDOGB));
|
||||
}
|
||||
|
||||
// Token: 0x06017547 RID: 95559 RVA: 0x00688024 File Offset: 0x00686224
|
||||
private void JPNAFHBKFIA()
|
||||
{
|
||||
if (IHFKMIAHBFP.HCHIDMOLLAD && !this.MIFJNJPJNOP())
|
||||
{
|
||||
bool flag = false;
|
||||
this.LFLCHIGHIIA(flag);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04004137 RID: 16695
|
||||
private const int POKBCHGNBCN = 1;
|
||||
|
||||
// Token: 0x04004138 RID: 16696
|
||||
private const int ENKKGNEFHKI = 10;
|
||||
|
||||
// Token: 0x04004139 RID: 16697
|
||||
private const int HLAIIPPKGGI = 10;
|
||||
|
||||
// Token: 0x0400413A RID: 16698
|
||||
private const float NELJCGAPCCN = 0.25f;
|
||||
|
||||
// Token: 0x0400413B RID: 16699
|
||||
private const float FLJCCELDHEP = 10f;
|
||||
|
||||
// Token: 0x04004140 RID: 16704
|
||||
private PNONBEAIBHA FCEKOOFDJGM;
|
||||
|
||||
// Token: 0x04004141 RID: 16705
|
||||
private AONMNAEOJAL BABIFJDNLFC;
|
||||
|
||||
// Token: 0x04004142 RID: 16706
|
||||
private LHLLJPPCDKA<string> NLHOMHODEKH;
|
||||
|
||||
// Token: 0x04004143 RID: 16707
|
||||
private Coroutine NIKLDPBCPHO;
|
||||
|
||||
// Token: 0x04004144 RID: 16708
|
||||
private Coroutine AOMJICBPLLO;
|
||||
|
||||
// Token: 0x04004145 RID: 16709
|
||||
private Coroutine KJCGGKEBBOP;
|
||||
|
||||
// Token: 0x04004146 RID: 16710
|
||||
private List<string> MEKJGLMJCGE = new List<string>();
|
||||
|
||||
// Token: 0x02000BE1 RID: 3041
|
||||
// (Invoke) Token: 0x06017549 RID: 95561
|
||||
public delegate void PEGADEADMOL(bool LOJMICCBPII, string OIFBPEJHDOD);
|
||||
|
||||
// Token: 0x02000BE2 RID: 3042
|
||||
// (Invoke) Token: 0x0601754D RID: 95565
|
||||
private delegate void OAPOBCDABGG(bool LOJMICCBPII, global::RecNet.PLOPPLAOICD HJPIBHDNGOC, string OIFBPEJHDOD);
|
||||
|
||||
// Token: 0x02000BE3 RID: 3043
|
||||
// (Invoke) Token: 0x06017551 RID: 95569
|
||||
private delegate void BMPMAAMNNPJ(bool LOJMICCBPII, DIEJEGFOIBF HFDMAMAGILP, List<string> GEDACPBKDIG, string OIFBPEJHDOD);
|
||||
|
||||
// Token: 0x02000BE4 RID: 3044
|
||||
// (Invoke) Token: 0x06017555 RID: 95573
|
||||
private delegate void CNCJIGIGKME(bool LOJMICCBPII, string OIFBPEJHDOD);
|
||||
|
||||
// Token: 0x02000BE5 RID: 3045
|
||||
// (Invoke) Token: 0x06017559 RID: 95577
|
||||
private delegate void HADOPFJNNAO(bool LOJMICCBPII, DIEJEGFOIBF GFHBJBPJCLF, string OIFBPEJHDOD);
|
||||
|
||||
// Token: 0x02000BE6 RID: 3046
|
||||
// (Invoke) Token: 0x0601755D RID: 95581
|
||||
private delegate void CDBPIEBHLGP(bool LOJMICCBPII, string OIFBPEJHDOD);
|
||||
|
||||
// Token: 0x02000BE7 RID: 3047
|
||||
private enum JECCIECOEID
|
||||
{
|
||||
// Token: 0x04004148 RID: 16712
|
||||
INITIAL_LOADING,
|
||||
// Token: 0x04004149 RID: 16713
|
||||
INITIAL_LOAD_FAILURE,
|
||||
// Token: 0x0400414A RID: 16714
|
||||
IDLE,
|
||||
// Token: 0x0400414B RID: 16715
|
||||
SAVING,
|
||||
// Token: 0x0400414C RID: 16716
|
||||
SAVING_SUCCESS,
|
||||
// Token: 0x0400414D RID: 16717
|
||||
SAVING_FAILURE,
|
||||
// Token: 0x0400414E RID: 16718
|
||||
RELOADING,
|
||||
// Token: 0x0400414F RID: 16719
|
||||
RELOADING_SUCCESS,
|
||||
// Token: 0x04004150 RID: 16720
|
||||
RELOADING_FAILURE
|
||||
}
|
||||
|
||||
// Token: 0x02000BE8 RID: 3048
|
||||
private enum AKFAIMAIKGA
|
||||
{
|
||||
// Token: 0x04004152 RID: 16722
|
||||
WAIT_FOR_PLAYER_DESPAWN,
|
||||
// Token: 0x04004153 RID: 16723
|
||||
RELOAD_ROOM
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user