Files
2026-06-04 11:42:34 +02:00

1106 lines
35 KiB
C#

using System;
using System.Collections;
using System.Diagnostics;
using System.IO;
using UnityEngine;
using UnityEngine.SceneManagement;
using Valve.VR;
// Token: 0x020007D4 RID: 2004
public class SteamVR_LoadLevel : MonoBehaviour
{
// Token: 0x060106F6 RID: 67318 RVA: 0x004E7184 File Offset: 0x004E5384
public static void BNNOODNIJGH(string GFMBNPAOABE, bool NNFAEGEOEOO = false, float JGCJDMINFCH = 0.5f, float GJAPMDIMMKN = 0f, float MJDECFBKAHG = 0f, float GNNBOMAEBGK = 0f, float FKOFGIJFIKA = 1f)
{
SteamVR_LoadLevel steamVR_LoadLevel = new GameObject("steamvr").AddComponent<SteamVR_LoadLevel>();
steamVR_LoadLevel.levelName = GFMBNPAOABE;
steamVR_LoadLevel.showGrid = NNFAEGEOEOO;
steamVR_LoadLevel.fadeOutTime = JGCJDMINFCH;
steamVR_LoadLevel.backgroundColor = new Color(GJAPMDIMMKN, MJDECFBKAHG, GNNBOMAEBGK, FKOFGIJFIKA);
steamVR_LoadLevel.Trigger();
}
// Token: 0x060106F7 RID: 67319 RVA: 0x004E71D0 File Offset: 0x004E53D0
public static Texture LJKHOMKMDKC()
{
return (!(SteamVR_LoadLevel.PKBPJLOJKEF != null)) ? null : SteamVR_LoadLevel.PKBPJLOJKEF.ANHNNLOIDPF;
}
// Token: 0x060106F8 RID: 67320 RVA: 0x004E71F4 File Offset: 0x004E53F4
public static Texture LENBFPACBAE()
{
return (!(SteamVR_LoadLevel.PKBPJLOJKEF != null)) ? null : SteamVR_LoadLevel.PKBPJLOJKEF.ANHNNLOIDPF;
}
// Token: 0x060106F9 RID: 67321 RVA: 0x004E7218 File Offset: 0x004E5418
public void Trigger()
{
if (!SteamVR_LoadLevel.IOIDHBFNJFE && !string.IsNullOrEmpty(this.levelName))
{
base.StartCoroutine(this.KBPGDNLOIIH());
}
}
// Token: 0x060106FA RID: 67322 RVA: 0x004E7244 File Offset: 0x004E5444
private void AHHEENEFAPI()
{
if (SteamVR_LoadLevel.PKBPJLOJKEF != this)
{
return;
}
this.ELFEPDAKCDL = Mathf.Clamp01(this.ELFEPDAKCDL + this.NCNPHDOHLPC * Time.deltaTime);
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.GJJJAJIHLJK();
if (dchdefckkeh != null)
{
if (this.PNNKNPNIHGC != 1UL)
{
dchdefckkeh.CKKKBEBIBPE(this.PNNKNPNIHGC, this.ELFEPDAKCDL);
}
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.CKKKBEBIBPE(this.BFEIGAENDLN, this.ELFEPDAKCDL);
}
}
}
// Token: 0x170006CC RID: 1740
// (get) Token: 0x060106FB RID: 67323 RVA: 0x004E72CC File Offset: 0x004E54CC
public static bool IOIDHBFNJFE
{
get
{
return SteamVR_LoadLevel.PKBPJLOJKEF != null;
}
}
// Token: 0x060106FC RID: 67324 RVA: 0x004E72DC File Offset: 0x004E54DC
private IEnumerator HCLANEMKGND()
{
if (this.loadingScreen != null && this.loadingScreenDistance > 0f)
{
PNLCMOFOFOH.OOPOGLBNJPF oopoglbnjpf = PNLCMOFOFOH.KHOLKDHABII(0);
while (!oopoglbnjpf.AFKJHFLFEEC)
{
yield return null;
}
GGJHKKJMNKB.RigidTransform rigidTransform = oopoglbnjpf.DKCNBKFJCLK;
rigidTransform.rot = Quaternion.Euler(0f, rigidTransform.rot.eulerAngles.y, 0f);
rigidTransform.pos += rigidTransform.rot * new Vector3(0f, 0f, this.loadingScreenDistance);
Transform transform = ((!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform);
transform.position = rigidTransform.pos;
transform.rotation = rigidTransform.rot;
}
SteamVR_LoadLevel.PKBPJLOJKEF = this;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(true);
if (this.loadingScreenFadeInTime > 0f)
{
this.NCNPHDOHLPC = 1f / this.loadingScreenFadeInTime;
}
else
{
this.ELFEPDAKCDL = 1f;
}
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (this.loadingScreen != null && dchdefckkeh != null)
{
this.PNNKNPNIHGC = this.PDOKJOGAFIG("loadingScreen", (!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform, this.loadingScreenWidthInMeters);
if (this.PNNKNPNIHGC != 0UL)
{
NDCAPNBHFGH ndcapnbhfgh = default(NDCAPNBHFGH);
ndcapnbhfgh.IEPIMIDPDFF = this.loadingScreen.GetNativeTexturePtr();
ndcapnbhfgh.CIFAEGAFAGF = GOMKCPFBJFL.FCDPFLMFDBC.FHAGINHNPGK;
ndcapnbhfgh.DFEBDLOGJPK = EOPGPPPLFHO.Auto;
dchdefckkeh.NCDMNPICKIE(this.PNNKNPNIHGC, ref ndcapnbhfgh);
}
}
bool flag = false;
DAGNICICCAN.MGJHLHIGHBA.CKKKGIFDIJJ(this.fadeOutTime);
AFELBMDLPIE afelbmdlpie = PONCCGLALMO.GCFINLENMEI;
if (afelbmdlpie != null)
{
if (this.front != null)
{
SteamVR_Skybox.SetOverride(this.front, this.back, this.left, this.right, this.top, this.bottom);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else if (this.backgroundColor != Color.clear)
{
if (this.showGrid)
{
afelbmdlpie.GCFOFEENOHJ(0f, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, true);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else
{
afelbmdlpie.GCFOFEENOHJ(this.fadeOutTime, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, false);
yield return new WaitForSeconds(this.fadeOutTime + 0.1f);
afelbmdlpie.GOEDJIIBNKF(0f, true);
flag = true;
}
}
}
SteamVR_Render.MNFDKBGJFKL = true;
while (this.ELFEPDAKCDL < 1f)
{
yield return null;
}
base.transform.parent = null;
global::UnityEngine.Object.DontDestroyOnLoad(base.gameObject);
if (!string.IsNullOrEmpty(this.internalProcessPath))
{
global::UnityEngine.Debug.Log("Launching external application...");
BJFMBBOBAKB bjfmbbobakb = PONCCGLALMO.LGAOOOAFHJB;
if (bjfmbbobakb == null)
{
global::UnityEngine.Debug.Log("Failed to get OpenVR.Applications interface!");
}
else
{
string currentDirectory = Directory.GetCurrentDirectory();
string text = Path.Combine(currentDirectory, this.internalProcessPath);
global::UnityEngine.Debug.Log("LaunchingInternalProcess");
global::UnityEngine.Debug.Log("ExternalAppPath = " + this.internalProcessPath);
global::UnityEngine.Debug.Log("FullPath = " + text);
global::UnityEngine.Debug.Log("ExternalAppArgs = " + this.internalProcessArgs);
global::UnityEngine.Debug.Log("WorkingDirectory = " + currentDirectory);
ODNJFBJBBDC odnjfbjbbdc = bjfmbbobakb.KFMDOBDNKCH(text, this.internalProcessArgs, currentDirectory);
global::UnityEngine.Debug.Log("LaunchInternalProcessError: " + odnjfbjbbdc);
Process.GetCurrentProcess().Kill();
}
}
else
{
LoadSceneMode loadSceneMode = ((!this.loadAdditive) ? LoadSceneMode.Single : LoadSceneMode.Additive);
if (this.loadAsync)
{
Application.backgroundLoadingPriority = ThreadPriority.Low;
this.LJAPLMAHBJL = SceneManager.LoadSceneAsync(this.levelName, loadSceneMode);
while (!this.LJAPLMAHBJL.isDone)
{
yield return null;
}
}
else
{
SceneManager.LoadScene(this.levelName, loadSceneMode);
}
}
yield return null;
GC.Collect();
yield return null;
Shader.WarmupAllShaders();
yield return new WaitForSeconds(this.postLoadSettleTime);
SteamVR_Render.MNFDKBGJFKL = false;
if (this.loadingScreenFadeOutTime > 0f)
{
this.NCNPHDOHLPC = -1f / this.loadingScreenFadeOutTime;
}
else
{
this.ELFEPDAKCDL = 0f;
}
DAGNICICCAN.LHCDNKCHCLA.CKKKGIFDIJJ(this.fadeInTime);
if (afelbmdlpie != null)
{
if (flag)
{
afelbmdlpie.GOEDJIIBNKF(0f, false);
afelbmdlpie.GCFOFEENOHJ(this.fadeInTime, 0f, 0f, 0f, 0f, false);
yield return new WaitForSeconds(this.fadeInTime);
}
else
{
afelbmdlpie.GOEDJIIBNKF(this.fadeInTime, false);
yield return new WaitForSeconds(this.fadeInTime);
if (this.front != null)
{
SteamVR_Skybox.ClearOverride();
}
}
}
while (this.ELFEPDAKCDL > 0f)
{
yield return null;
}
if (dchdefckkeh != null)
{
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.BFEIGAENDLN);
}
if (this.PNNKNPNIHGC != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.PNNKNPNIHGC);
}
}
global::UnityEngine.Object.Destroy(base.gameObject);
SteamVR_LoadLevel.PKBPJLOJKEF = null;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(false);
yield break;
}
// Token: 0x060106FD RID: 67325 RVA: 0x004E72F8 File Offset: 0x004E54F8
public static bool CELPBBLBFPI()
{
return SteamVR_LoadLevel.PKBPJLOJKEF != null;
}
// Token: 0x170006CE RID: 1742
// (get) Token: 0x060106FE RID: 67326 RVA: 0x004E7308 File Offset: 0x004E5508
public static Texture OLJBPCHJCEF
{
get
{
return (!(SteamVR_LoadLevel.PKBPJLOJKEF != null)) ? null : SteamVR_LoadLevel.PKBPJLOJKEF.ANHNNLOIDPF;
}
}
// Token: 0x060106FF RID: 67327 RVA: 0x004E732C File Offset: 0x004E552C
public static Texture NCFBJFDHDFK()
{
return (!(SteamVR_LoadLevel.PKBPJLOJKEF != null)) ? null : SteamVR_LoadLevel.PKBPJLOJKEF.ANHNNLOIDPF;
}
// Token: 0x06010700 RID: 67328 RVA: 0x004E7350 File Offset: 0x004E5550
public void NNHKLAFMKHP()
{
if (!SteamVR_LoadLevel.CELPBBLBFPI() && !string.IsNullOrEmpty(this.levelName))
{
base.StartCoroutine(this.OIIHAEJFJLE());
}
}
// Token: 0x06010701 RID: 67329 RVA: 0x004E737C File Offset: 0x004E557C
private ulong PDOKJOGAFIG(string LLDIECEEBFF, Transform DKCNBKFJCLK, float DPCACDJONND = 1f)
{
ulong num = 0UL;
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (dchdefckkeh == null)
{
return num;
}
string text = SteamVR_Overlay.ANOFFEKMECJ + "." + LLDIECEEBFF;
IIIDJOMNHNM iiidjomnhnm = dchdefckkeh.MJMOBGFPMMN(text, ref num);
if (iiidjomnhnm != IIIDJOMNHNM.None)
{
iiidjomnhnm = dchdefckkeh.LLCHILNFFJN(text, LLDIECEEBFF, ref num);
}
if (iiidjomnhnm == IIIDJOMNHNM.None)
{
dchdefckkeh.FJOMAELJPCJ(num);
dchdefckkeh.EJPDNEMGJEE(num, this.ELFEPDAKCDL);
dchdefckkeh.LIIFAHBBIII(num, DPCACDJONND);
if (GOMKCPFBJFL.FCDPFLMFDBC.FHAGINHNPGK == MOPMBBPPCDD.DirectX)
{
BHNBHPCKNLO bhnbhpcknlo = default(BHNBHPCKNLO);
bhnbhpcknlo.OLOJJBFCNGD = 0f;
bhnbhpcknlo.ADEACBFCCEI = 1f;
bhnbhpcknlo.AMIKGKPJANG = 1f;
bhnbhpcknlo.LHFHCIKAPNC = 0f;
dchdefckkeh.MAKDNEAHBLD(num, ref bhnbhpcknlo);
}
SteamVR_Camera steamVR_Camera = ((this.loadingScreenDistance != 0f) ? null : SteamVR_Render.Top());
if (steamVR_Camera != null && steamVR_Camera.MIKPIBIENPH != null)
{
GGJHKKJMNKB.RigidTransform rigidTransform = new GGJHKKJMNKB.RigidTransform(steamVR_Camera.MIKPIBIENPH, DKCNBKFJCLK);
rigidTransform.pos.x = rigidTransform.pos.x / steamVR_Camera.MIKPIBIENPH.localScale.x;
rigidTransform.pos.y = rigidTransform.pos.y / steamVR_Camera.MIKPIBIENPH.localScale.y;
rigidTransform.pos.z = rigidTransform.pos.z / steamVR_Camera.MIKPIBIENPH.localScale.z;
KDDJNNDMEEF kddjnndmeef = rigidTransform.KJLPJPKDEGN();
dchdefckkeh.HICDPJDIKEK(num, SteamVR_Render.FCDPFLMFDBC.trackingSpace, ref kddjnndmeef);
}
else
{
GGJHKKJMNKB.RigidTransform rigidTransform2 = new GGJHKKJMNKB.RigidTransform(DKCNBKFJCLK);
KDDJNNDMEEF kddjnndmeef2 = rigidTransform2.KJLPJPKDEGN();
dchdefckkeh.HICDPJDIKEK(num, SteamVR_Render.FCDPFLMFDBC.trackingSpace, ref kddjnndmeef2);
}
}
return num;
}
// Token: 0x06010702 RID: 67330 RVA: 0x004E7548 File Offset: 0x004E5748
private ulong KOCOLMDMDHG(string LLDIECEEBFF, Transform DKCNBKFJCLK, float DPCACDJONND = 1f)
{
ulong num = 0UL;
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.PHHMGMFOBFL();
if (dchdefckkeh == null)
{
return num;
}
string text = SteamVR_Overlay.EILJAAAECDI() + "QUEST_TIMER" + LLDIECEEBFF;
IIIDJOMNHNM iiidjomnhnm = dchdefckkeh.MJMOBGFPMMN(text, ref num);
if (iiidjomnhnm != IIIDJOMNHNM.None)
{
iiidjomnhnm = dchdefckkeh.LLCHILNFFJN(text, LLDIECEEBFF, ref num);
}
if (iiidjomnhnm == IIIDJOMNHNM.None)
{
dchdefckkeh.FJOMAELJPCJ(num);
dchdefckkeh.CKKKBEBIBPE(num, this.ELFEPDAKCDL);
dchdefckkeh.LIIFAHBBIII(num, DPCACDJONND);
if (GOMKCPFBJFL.OJABCFGOCMC().FHAGINHNPGK == MOPMBBPPCDD.DirectX)
{
BHNBHPCKNLO bhnbhpcknlo = default(BHNBHPCKNLO);
bhnbhpcknlo.OLOJJBFCNGD = 1234f;
bhnbhpcknlo.ADEACBFCCEI = 118f;
bhnbhpcknlo.AMIKGKPJANG = 292f;
bhnbhpcknlo.LHFHCIKAPNC = 647f;
dchdefckkeh.GKFNJIFDOLE(num, ref bhnbhpcknlo);
}
SteamVR_Camera steamVR_Camera = ((this.loadingScreenDistance != 1331f) ? null : SteamVR_Render.Top());
if (steamVR_Camera != null && steamVR_Camera.MIKPIBIENPH != null)
{
GGJHKKJMNKB.RigidTransform rigidTransform = new GGJHKKJMNKB.RigidTransform(steamVR_Camera.MIKPIBIENPH, DKCNBKFJCLK);
rigidTransform.pos.x = rigidTransform.pos.x / steamVR_Camera.GPOBCKGIHDF().localScale.x;
rigidTransform.pos.y = rigidTransform.pos.y / steamVR_Camera.GPOBCKGIHDF().localScale.y;
rigidTransform.pos.z = rigidTransform.pos.z / steamVR_Camera.GPOBCKGIHDF().localScale.z;
KDDJNNDMEEF kddjnndmeef = rigidTransform.KJLPJPKDEGN();
dchdefckkeh.HICDPJDIKEK(num, SteamVR_Render.FCDPFLMFDBC.trackingSpace, ref kddjnndmeef);
}
else
{
GGJHKKJMNKB.RigidTransform rigidTransform2 = new GGJHKKJMNKB.RigidTransform(DKCNBKFJCLK);
KDDJNNDMEEF kddjnndmeef2 = rigidTransform2.PFGGIHLLDHI();
dchdefckkeh.HICDPJDIKEK(num, SteamVR_Render.IJFAOFCBBFJ().trackingSpace, ref kddjnndmeef2);
}
}
return num;
}
// Token: 0x06010703 RID: 67331 RVA: 0x004E7714 File Offset: 0x004E5914
private void OnGUI()
{
if (SteamVR_LoadLevel.PKBPJLOJKEF != this)
{
return;
}
if (this.progressBarEmpty != null && this.progressBarFull != null)
{
if (this.BFEIGAENDLN == 0UL)
{
this.BFEIGAENDLN = this.PDOKJOGAFIG("progressBar", (!(this.progressBarTransform != null)) ? base.transform : this.progressBarTransform, this.progressBarWidthInMeters);
}
if (this.BFEIGAENDLN != 0UL)
{
float num = ((this.LJAPLMAHBJL == null) ? 0f : this.LJAPLMAHBJL.progress);
int width = this.progressBarFull.width;
int height = this.progressBarFull.height;
if (this.ANHNNLOIDPF == null)
{
this.ANHNNLOIDPF = new RenderTexture(width, height, 0);
this.ANHNNLOIDPF.Create();
}
RenderTexture active = RenderTexture.active;
RenderTexture.active = this.ANHNNLOIDPF;
if (Event.current.type == EventType.Repaint)
{
GL.Clear(false, true, Color.clear);
}
GUILayout.BeginArea(new Rect(0f, 0f, (float)width, (float)height));
GUI.DrawTexture(new Rect(0f, 0f, (float)width, (float)height), this.progressBarEmpty);
GUI.DrawTextureWithTexCoords(new Rect(0f, 0f, num * (float)width, (float)height), this.progressBarFull, new Rect(0f, 0f, num, 1f));
GUILayout.EndArea();
RenderTexture.active = active;
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (dchdefckkeh != null)
{
NDCAPNBHFGH ndcapnbhfgh = default(NDCAPNBHFGH);
ndcapnbhfgh.IEPIMIDPDFF = this.ANHNNLOIDPF.GetNativeTexturePtr();
ndcapnbhfgh.CIFAEGAFAGF = GOMKCPFBJFL.FCDPFLMFDBC.FHAGINHNPGK;
ndcapnbhfgh.DFEBDLOGJPK = EOPGPPPLFHO.Auto;
dchdefckkeh.NCDMNPICKIE(this.BFEIGAENDLN, ref ndcapnbhfgh);
}
}
}
}
// Token: 0x06010705 RID: 67333 RVA: 0x004E7904 File Offset: 0x004E5B04
public static void Begin(string GFMBNPAOABE, bool NNFAEGEOEOO = false, float JGCJDMINFCH = 0.5f, float GJAPMDIMMKN = 0f, float MJDECFBKAHG = 0f, float GNNBOMAEBGK = 0f, float FKOFGIJFIKA = 1f)
{
SteamVR_LoadLevel steamVR_LoadLevel = new GameObject("loader").AddComponent<SteamVR_LoadLevel>();
steamVR_LoadLevel.levelName = GFMBNPAOABE;
steamVR_LoadLevel.showGrid = NNFAEGEOEOO;
steamVR_LoadLevel.fadeOutTime = JGCJDMINFCH;
steamVR_LoadLevel.backgroundColor = new Color(GJAPMDIMMKN, MJDECFBKAHG, GNNBOMAEBGK, FKOFGIJFIKA);
steamVR_LoadLevel.Trigger();
}
// Token: 0x06010706 RID: 67334 RVA: 0x004E7950 File Offset: 0x004E5B50
private IEnumerator MBLFNIADNAE()
{
if (this.loadingScreen != null && this.loadingScreenDistance > 0f)
{
oopoglbnjpf = PNLCMOFOFOH.KHOLKDHABII(0);
while (!oopoglbnjpf.AFKJHFLFEEC)
{
yield return null;
}
rigidTransform = oopoglbnjpf.DKCNBKFJCLK;
rigidTransform.rot = Quaternion.Euler(0f, rigidTransform.rot.eulerAngles.y, 0f);
rigidTransform.pos += rigidTransform.rot * new Vector3(0f, 0f, this.loadingScreenDistance);
transform = ((!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform);
transform.position = rigidTransform.pos;
transform.rotation = rigidTransform.rot;
}
SteamVR_LoadLevel.PKBPJLOJKEF = this;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(true);
if (this.loadingScreenFadeInTime > 0f)
{
this.NCNPHDOHLPC = 1f / this.loadingScreenFadeInTime;
}
else
{
this.ELFEPDAKCDL = 1f;
}
dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (this.loadingScreen != null && dchdefckkeh != null)
{
this.PNNKNPNIHGC = this.PDOKJOGAFIG("loadingScreen", (!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform, this.loadingScreenWidthInMeters);
if (this.PNNKNPNIHGC != 0UL)
{
NDCAPNBHFGH ndcapnbhfgh = default(NDCAPNBHFGH);
ndcapnbhfgh.IEPIMIDPDFF = this.loadingScreen.GetNativeTexturePtr();
ndcapnbhfgh.CIFAEGAFAGF = GOMKCPFBJFL.FCDPFLMFDBC.FHAGINHNPGK;
ndcapnbhfgh.DFEBDLOGJPK = EOPGPPPLFHO.Auto;
dchdefckkeh.NCDMNPICKIE(this.PNNKNPNIHGC, ref ndcapnbhfgh);
}
}
flag = false;
DAGNICICCAN.MGJHLHIGHBA.CKKKGIFDIJJ(this.fadeOutTime);
afelbmdlpie = PONCCGLALMO.GCFINLENMEI;
if (afelbmdlpie != null)
{
if (this.front != null)
{
SteamVR_Skybox.SetOverride(this.front, this.back, this.left, this.right, this.top, this.bottom);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else if (this.backgroundColor != Color.clear)
{
if (this.showGrid)
{
afelbmdlpie.GCFOFEENOHJ(0f, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, true);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else
{
afelbmdlpie.GCFOFEENOHJ(this.fadeOutTime, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, false);
yield return new WaitForSeconds(this.fadeOutTime + 0.1f);
afelbmdlpie.GOEDJIIBNKF(0f, true);
flag = true;
}
}
}
SteamVR_Render.MNFDKBGJFKL = true;
while (this.ELFEPDAKCDL < 1f)
{
yield return null;
}
base.transform.parent = null;
global::UnityEngine.Object.DontDestroyOnLoad(base.gameObject);
if (!string.IsNullOrEmpty(this.internalProcessPath))
{
global::UnityEngine.Debug.Log("Launching external application...");
BJFMBBOBAKB bjfmbbobakb = PONCCGLALMO.LGAOOOAFHJB;
if (bjfmbbobakb == null)
{
global::UnityEngine.Debug.Log("Failed to get OpenVR.Applications interface!");
}
else
{
string currentDirectory = Directory.GetCurrentDirectory();
string text = Path.Combine(currentDirectory, this.internalProcessPath);
global::UnityEngine.Debug.Log("LaunchingInternalProcess");
global::UnityEngine.Debug.Log("ExternalAppPath = " + this.internalProcessPath);
global::UnityEngine.Debug.Log("FullPath = " + text);
global::UnityEngine.Debug.Log("ExternalAppArgs = " + this.internalProcessArgs);
global::UnityEngine.Debug.Log("WorkingDirectory = " + currentDirectory);
ODNJFBJBBDC odnjfbjbbdc = bjfmbbobakb.KFMDOBDNKCH(text, this.internalProcessArgs, currentDirectory);
global::UnityEngine.Debug.Log("LaunchInternalProcessError: " + odnjfbjbbdc);
Process.GetCurrentProcess().Kill();
}
}
else
{
loadSceneMode = ((!this.loadAdditive) ? LoadSceneMode.Single : LoadSceneMode.Additive);
if (this.loadAsync)
{
Application.backgroundLoadingPriority = ThreadPriority.Low;
this.LJAPLMAHBJL = SceneManager.LoadSceneAsync(this.levelName, loadSceneMode);
while (!this.LJAPLMAHBJL.isDone)
{
yield return null;
}
}
else
{
SceneManager.LoadScene(this.levelName, loadSceneMode);
}
}
yield return null;
GC.Collect();
yield return null;
Shader.WarmupAllShaders();
yield return new WaitForSeconds(this.postLoadSettleTime);
SteamVR_Render.MNFDKBGJFKL = false;
if (this.loadingScreenFadeOutTime > 0f)
{
this.NCNPHDOHLPC = -1f / this.loadingScreenFadeOutTime;
}
else
{
this.ELFEPDAKCDL = 0f;
}
DAGNICICCAN.LHCDNKCHCLA.CKKKGIFDIJJ(this.fadeInTime);
if (afelbmdlpie != null)
{
if (flag)
{
afelbmdlpie.GOEDJIIBNKF(0f, false);
afelbmdlpie.GCFOFEENOHJ(this.fadeInTime, 0f, 0f, 0f, 0f, false);
yield return new WaitForSeconds(this.fadeInTime);
}
else
{
afelbmdlpie.GOEDJIIBNKF(this.fadeInTime, false);
yield return new WaitForSeconds(this.fadeInTime);
if (this.front != null)
{
SteamVR_Skybox.ClearOverride();
}
}
}
while (this.ELFEPDAKCDL > 0f)
{
yield return null;
}
if (dchdefckkeh != null)
{
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.BFEIGAENDLN);
}
if (this.PNNKNPNIHGC != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.PNNKNPNIHGC);
}
}
global::UnityEngine.Object.Destroy(base.gameObject);
SteamVR_LoadLevel.PKBPJLOJKEF = null;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(false);
yield break;
}
// Token: 0x06010707 RID: 67335 RVA: 0x004E796C File Offset: 0x004E5B6C
private void OnEnable()
{
if (this.autoTriggerOnEnable)
{
this.Trigger();
}
}
// Token: 0x06010708 RID: 67336 RVA: 0x004E7980 File Offset: 0x004E5B80
public static float FPPJKKFEOLO()
{
return (!(SteamVR_LoadLevel.PKBPJLOJKEF != null) || SteamVR_LoadLevel.PKBPJLOJKEF.LJAPLMAHBJL == null) ? 839f : SteamVR_LoadLevel.PKBPJLOJKEF.LJAPLMAHBJL.progress;
}
// Token: 0x170006CD RID: 1741
// (get) Token: 0x06010709 RID: 67337 RVA: 0x004E79BC File Offset: 0x004E5BBC
public static float PAGBFDILBGA
{
get
{
return (!(SteamVR_LoadLevel.PKBPJLOJKEF != null) || SteamVR_LoadLevel.PKBPJLOJKEF.LJAPLMAHBJL == null) ? 0f : SteamVR_LoadLevel.PKBPJLOJKEF.LJAPLMAHBJL.progress;
}
}
// Token: 0x0601070A RID: 67338 RVA: 0x004E79F8 File Offset: 0x004E5BF8
private IEnumerator OIIHAEJFJLE()
{
if (this.loadingScreen != null && this.loadingScreenDistance > 0f)
{
oopoglbnjpf = PNLCMOFOFOH.KHOLKDHABII(0);
while (!oopoglbnjpf.AFKJHFLFEEC)
{
yield return null;
}
rigidTransform = oopoglbnjpf.DKCNBKFJCLK;
rigidTransform.rot = Quaternion.Euler(0f, rigidTransform.rot.eulerAngles.y, 0f);
rigidTransform.pos += rigidTransform.rot * new Vector3(0f, 0f, this.loadingScreenDistance);
transform = ((!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform);
transform.position = rigidTransform.pos;
transform.rotation = rigidTransform.rot;
}
SteamVR_LoadLevel.PKBPJLOJKEF = this;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(true);
if (this.loadingScreenFadeInTime > 0f)
{
this.NCNPHDOHLPC = 1f / this.loadingScreenFadeInTime;
}
else
{
this.ELFEPDAKCDL = 1f;
}
dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (this.loadingScreen != null && dchdefckkeh != null)
{
this.PNNKNPNIHGC = this.PDOKJOGAFIG("loadingScreen", (!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform, this.loadingScreenWidthInMeters);
if (this.PNNKNPNIHGC != 0UL)
{
NDCAPNBHFGH ndcapnbhfgh = default(NDCAPNBHFGH);
ndcapnbhfgh.IEPIMIDPDFF = this.loadingScreen.GetNativeTexturePtr();
ndcapnbhfgh.CIFAEGAFAGF = GOMKCPFBJFL.FCDPFLMFDBC.FHAGINHNPGK;
ndcapnbhfgh.DFEBDLOGJPK = EOPGPPPLFHO.Auto;
dchdefckkeh.NCDMNPICKIE(this.PNNKNPNIHGC, ref ndcapnbhfgh);
}
}
flag = false;
DAGNICICCAN.MGJHLHIGHBA.CKKKGIFDIJJ(this.fadeOutTime);
afelbmdlpie = PONCCGLALMO.GCFINLENMEI;
if (afelbmdlpie != null)
{
if (this.front != null)
{
SteamVR_Skybox.SetOverride(this.front, this.back, this.left, this.right, this.top, this.bottom);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else if (this.backgroundColor != Color.clear)
{
if (this.showGrid)
{
afelbmdlpie.GCFOFEENOHJ(0f, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, true);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else
{
afelbmdlpie.GCFOFEENOHJ(this.fadeOutTime, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, false);
yield return new WaitForSeconds(this.fadeOutTime + 0.1f);
afelbmdlpie.GOEDJIIBNKF(0f, true);
flag = true;
}
}
}
SteamVR_Render.MNFDKBGJFKL = true;
while (this.ELFEPDAKCDL < 1f)
{
yield return null;
}
base.transform.parent = null;
global::UnityEngine.Object.DontDestroyOnLoad(base.gameObject);
if (!string.IsNullOrEmpty(this.internalProcessPath))
{
global::UnityEngine.Debug.Log("Launching external application...");
BJFMBBOBAKB bjfmbbobakb = PONCCGLALMO.LGAOOOAFHJB;
if (bjfmbbobakb == null)
{
global::UnityEngine.Debug.Log("Failed to get OpenVR.Applications interface!");
}
else
{
string currentDirectory = Directory.GetCurrentDirectory();
string text = Path.Combine(currentDirectory, this.internalProcessPath);
global::UnityEngine.Debug.Log("LaunchingInternalProcess");
global::UnityEngine.Debug.Log("ExternalAppPath = " + this.internalProcessPath);
global::UnityEngine.Debug.Log("FullPath = " + text);
global::UnityEngine.Debug.Log("ExternalAppArgs = " + this.internalProcessArgs);
global::UnityEngine.Debug.Log("WorkingDirectory = " + currentDirectory);
ODNJFBJBBDC odnjfbjbbdc = bjfmbbobakb.KFMDOBDNKCH(text, this.internalProcessArgs, currentDirectory);
global::UnityEngine.Debug.Log("LaunchInternalProcessError: " + odnjfbjbbdc);
Process.GetCurrentProcess().Kill();
}
}
else
{
loadSceneMode = ((!this.loadAdditive) ? LoadSceneMode.Single : LoadSceneMode.Additive);
if (this.loadAsync)
{
Application.backgroundLoadingPriority = ThreadPriority.Low;
this.LJAPLMAHBJL = SceneManager.LoadSceneAsync(this.levelName, loadSceneMode);
while (!this.LJAPLMAHBJL.isDone)
{
yield return null;
}
}
else
{
SceneManager.LoadScene(this.levelName, loadSceneMode);
}
}
yield return null;
GC.Collect();
yield return null;
Shader.WarmupAllShaders();
yield return new WaitForSeconds(this.postLoadSettleTime);
SteamVR_Render.MNFDKBGJFKL = false;
if (this.loadingScreenFadeOutTime > 0f)
{
this.NCNPHDOHLPC = -1f / this.loadingScreenFadeOutTime;
}
else
{
this.ELFEPDAKCDL = 0f;
}
DAGNICICCAN.LHCDNKCHCLA.CKKKGIFDIJJ(this.fadeInTime);
if (afelbmdlpie != null)
{
if (flag)
{
afelbmdlpie.GOEDJIIBNKF(0f, false);
afelbmdlpie.GCFOFEENOHJ(this.fadeInTime, 0f, 0f, 0f, 0f, false);
yield return new WaitForSeconds(this.fadeInTime);
}
else
{
afelbmdlpie.GOEDJIIBNKF(this.fadeInTime, false);
yield return new WaitForSeconds(this.fadeInTime);
if (this.front != null)
{
SteamVR_Skybox.ClearOverride();
}
}
}
while (this.ELFEPDAKCDL > 0f)
{
yield return null;
}
if (dchdefckkeh != null)
{
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.BFEIGAENDLN);
}
if (this.PNNKNPNIHGC != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.PNNKNPNIHGC);
}
}
global::UnityEngine.Object.Destroy(base.gameObject);
SteamVR_LoadLevel.PKBPJLOJKEF = null;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(false);
yield break;
}
// Token: 0x0601070B RID: 67339 RVA: 0x004E7A14 File Offset: 0x004E5C14
private void Update()
{
if (SteamVR_LoadLevel.PKBPJLOJKEF != this)
{
return;
}
this.ELFEPDAKCDL = Mathf.Clamp01(this.ELFEPDAKCDL + this.NCNPHDOHLPC * Time.deltaTime);
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (dchdefckkeh != null)
{
if (this.PNNKNPNIHGC != 0UL)
{
dchdefckkeh.EJPDNEMGJEE(this.PNNKNPNIHGC, this.ELFEPDAKCDL);
}
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.EJPDNEMGJEE(this.BFEIGAENDLN, this.ELFEPDAKCDL);
}
}
}
// Token: 0x0601070D RID: 67341 RVA: 0x004E7B10 File Offset: 0x004E5D10
private void MDGPLNDHKCI()
{
if (SteamVR_LoadLevel.PKBPJLOJKEF != this)
{
return;
}
this.ELFEPDAKCDL = Mathf.Clamp01(this.ELFEPDAKCDL + this.NCNPHDOHLPC * Time.deltaTime);
DCHDEFCKKEH dchdefckkeh = PONCCGLALMO.PEKFOBIHDFB();
if (dchdefckkeh != null)
{
if (this.PNNKNPNIHGC != 1UL)
{
dchdefckkeh.EJPDNEMGJEE(this.PNNKNPNIHGC, this.ELFEPDAKCDL);
}
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.CKKKBEBIBPE(this.BFEIGAENDLN, this.ELFEPDAKCDL);
}
}
}
// Token: 0x0601070E RID: 67342 RVA: 0x004E7B98 File Offset: 0x004E5D98
private IEnumerator KBPGDNLOIIH()
{
if (this.loadingScreen != null && this.loadingScreenDistance > 0f)
{
oopoglbnjpf = PNLCMOFOFOH.KHOLKDHABII(0);
while (!oopoglbnjpf.AFKJHFLFEEC)
{
yield return null;
}
rigidTransform = oopoglbnjpf.DKCNBKFJCLK;
rigidTransform.rot = Quaternion.Euler(0f, rigidTransform.rot.eulerAngles.y, 0f);
rigidTransform.pos += rigidTransform.rot * new Vector3(0f, 0f, this.loadingScreenDistance);
transform = ((!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform);
transform.position = rigidTransform.pos;
transform.rotation = rigidTransform.rot;
}
SteamVR_LoadLevel.PKBPJLOJKEF = this;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(true);
if (this.loadingScreenFadeInTime > 0f)
{
this.NCNPHDOHLPC = 1f / this.loadingScreenFadeInTime;
}
else
{
this.ELFEPDAKCDL = 1f;
}
dchdefckkeh = PONCCGLALMO.KEEAFJGCEDM;
if (this.loadingScreen != null && dchdefckkeh != null)
{
this.PNNKNPNIHGC = this.PDOKJOGAFIG("loadingScreen", (!(this.loadingScreenTransform != null)) ? base.transform : this.loadingScreenTransform, this.loadingScreenWidthInMeters);
if (this.PNNKNPNIHGC != 0UL)
{
NDCAPNBHFGH ndcapnbhfgh = default(NDCAPNBHFGH);
ndcapnbhfgh.IEPIMIDPDFF = this.loadingScreen.GetNativeTexturePtr();
ndcapnbhfgh.CIFAEGAFAGF = GOMKCPFBJFL.FCDPFLMFDBC.FHAGINHNPGK;
ndcapnbhfgh.DFEBDLOGJPK = EOPGPPPLFHO.Auto;
dchdefckkeh.NCDMNPICKIE(this.PNNKNPNIHGC, ref ndcapnbhfgh);
}
}
flag = false;
DAGNICICCAN.MGJHLHIGHBA.CKKKGIFDIJJ(this.fadeOutTime);
afelbmdlpie = PONCCGLALMO.GCFINLENMEI;
if (afelbmdlpie != null)
{
if (this.front != null)
{
SteamVR_Skybox.SetOverride(this.front, this.back, this.left, this.right, this.top, this.bottom);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else if (this.backgroundColor != Color.clear)
{
if (this.showGrid)
{
afelbmdlpie.GCFOFEENOHJ(0f, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, true);
afelbmdlpie.GOEDJIIBNKF(this.fadeOutTime, true);
yield return new WaitForSeconds(this.fadeOutTime);
}
else
{
afelbmdlpie.GCFOFEENOHJ(this.fadeOutTime, this.backgroundColor.r, this.backgroundColor.g, this.backgroundColor.b, this.backgroundColor.a, false);
yield return new WaitForSeconds(this.fadeOutTime + 0.1f);
afelbmdlpie.GOEDJIIBNKF(0f, true);
flag = true;
}
}
}
SteamVR_Render.MNFDKBGJFKL = true;
while (this.ELFEPDAKCDL < 1f)
{
yield return null;
}
base.transform.parent = null;
global::UnityEngine.Object.DontDestroyOnLoad(base.gameObject);
if (!string.IsNullOrEmpty(this.internalProcessPath))
{
global::UnityEngine.Debug.Log("Launching external application...");
BJFMBBOBAKB bjfmbbobakb = PONCCGLALMO.LGAOOOAFHJB;
if (bjfmbbobakb == null)
{
global::UnityEngine.Debug.Log("Failed to get OpenVR.Applications interface!");
}
else
{
string currentDirectory = Directory.GetCurrentDirectory();
string text = Path.Combine(currentDirectory, this.internalProcessPath);
global::UnityEngine.Debug.Log("LaunchingInternalProcess");
global::UnityEngine.Debug.Log("ExternalAppPath = " + this.internalProcessPath);
global::UnityEngine.Debug.Log("FullPath = " + text);
global::UnityEngine.Debug.Log("ExternalAppArgs = " + this.internalProcessArgs);
global::UnityEngine.Debug.Log("WorkingDirectory = " + currentDirectory);
ODNJFBJBBDC odnjfbjbbdc = bjfmbbobakb.KFMDOBDNKCH(text, this.internalProcessArgs, currentDirectory);
global::UnityEngine.Debug.Log("LaunchInternalProcessError: " + odnjfbjbbdc);
Process.GetCurrentProcess().Kill();
}
}
else
{
loadSceneMode = ((!this.loadAdditive) ? LoadSceneMode.Single : LoadSceneMode.Additive);
if (this.loadAsync)
{
Application.backgroundLoadingPriority = ThreadPriority.Low;
this.LJAPLMAHBJL = SceneManager.LoadSceneAsync(this.levelName, loadSceneMode);
while (!this.LJAPLMAHBJL.isDone)
{
yield return null;
}
}
else
{
SceneManager.LoadScene(this.levelName, loadSceneMode);
}
}
yield return null;
GC.Collect();
yield return null;
Shader.WarmupAllShaders();
yield return new WaitForSeconds(this.postLoadSettleTime);
SteamVR_Render.MNFDKBGJFKL = false;
if (this.loadingScreenFadeOutTime > 0f)
{
this.NCNPHDOHLPC = -1f / this.loadingScreenFadeOutTime;
}
else
{
this.ELFEPDAKCDL = 0f;
}
DAGNICICCAN.LHCDNKCHCLA.CKKKGIFDIJJ(this.fadeInTime);
if (afelbmdlpie != null)
{
if (flag)
{
afelbmdlpie.GOEDJIIBNKF(0f, false);
afelbmdlpie.GCFOFEENOHJ(this.fadeInTime, 0f, 0f, 0f, 0f, false);
yield return new WaitForSeconds(this.fadeInTime);
}
else
{
afelbmdlpie.GOEDJIIBNKF(this.fadeInTime, false);
yield return new WaitForSeconds(this.fadeInTime);
if (this.front != null)
{
SteamVR_Skybox.ClearOverride();
}
}
}
while (this.ELFEPDAKCDL > 0f)
{
yield return null;
}
if (dchdefckkeh != null)
{
if (this.BFEIGAENDLN != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.BFEIGAENDLN);
}
if (this.PNNKNPNIHGC != 0UL)
{
dchdefckkeh.HEFCMOKPMDP(this.PNNKNPNIHGC);
}
}
global::UnityEngine.Object.Destroy(base.gameObject);
SteamVR_LoadLevel.PKBPJLOJKEF = null;
DAGNICICCAN.DEKFLBEKMKA.CKKKGIFDIJJ(false);
yield break;
}
// Token: 0x04002A37 RID: 10807
private static SteamVR_LoadLevel PKBPJLOJKEF;
// Token: 0x04002A38 RID: 10808
public string levelName;
// Token: 0x04002A39 RID: 10809
public string internalProcessPath;
// Token: 0x04002A3A RID: 10810
public string internalProcessArgs;
// Token: 0x04002A3B RID: 10811
public bool loadAdditive;
// Token: 0x04002A3C RID: 10812
public bool loadAsync = true;
// Token: 0x04002A3D RID: 10813
public Texture loadingScreen;
// Token: 0x04002A3E RID: 10814
public Texture progressBarEmpty;
// Token: 0x04002A3F RID: 10815
public Texture progressBarFull;
// Token: 0x04002A40 RID: 10816
public float loadingScreenWidthInMeters = 6f;
// Token: 0x04002A41 RID: 10817
public float progressBarWidthInMeters = 3f;
// Token: 0x04002A42 RID: 10818
public float loadingScreenDistance;
// Token: 0x04002A43 RID: 10819
public Transform loadingScreenTransform;
// Token: 0x04002A44 RID: 10820
public Transform progressBarTransform;
// Token: 0x04002A45 RID: 10821
public Texture front;
// Token: 0x04002A46 RID: 10822
public Texture back;
// Token: 0x04002A47 RID: 10823
public Texture left;
// Token: 0x04002A48 RID: 10824
public Texture right;
// Token: 0x04002A49 RID: 10825
public Texture top;
// Token: 0x04002A4A RID: 10826
public Texture bottom;
// Token: 0x04002A4B RID: 10827
public Color backgroundColor = Color.black;
// Token: 0x04002A4C RID: 10828
public bool showGrid;
// Token: 0x04002A4D RID: 10829
public float fadeOutTime = 0.5f;
// Token: 0x04002A4E RID: 10830
public float fadeInTime = 0.5f;
// Token: 0x04002A4F RID: 10831
public float postLoadSettleTime;
// Token: 0x04002A50 RID: 10832
public float loadingScreenFadeInTime = 1f;
// Token: 0x04002A51 RID: 10833
public float loadingScreenFadeOutTime = 0.25f;
// Token: 0x04002A52 RID: 10834
private float NCNPHDOHLPC = 1f;
// Token: 0x04002A53 RID: 10835
private float ELFEPDAKCDL;
// Token: 0x04002A54 RID: 10836
private AsyncOperation LJAPLMAHBJL;
// Token: 0x04002A55 RID: 10837
private RenderTexture ANHNNLOIDPF;
// Token: 0x04002A56 RID: 10838
private ulong PNNKNPNIHGC;
// Token: 0x04002A57 RID: 10839
private ulong BFEIGAENDLN;
// Token: 0x04002A58 RID: 10840
public bool autoTriggerOnEnable;
}