This commit is contained in:
niko
2026-04-08 23:40:05 +02:00
parent d6894bcbc7
commit 18dc73f922
7750 changed files with 1795369 additions and 0 deletions
@@ -0,0 +1,66 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using RecRoom.Core.DataStructures.Tokens;
using RecRoom.Core.UI;
using UnityEngine;
namespace RecRoom.Core.VR.UI
{
// Token: 0x020029E4 RID: 10724
[Token(Token = "0x20029E4")]
[Serializable]
[StructLayout(3)]
public class SubtitleVRController
{
// Token: 0x06012BA2 RID: 76706 RVA: 0x004762C0 File Offset: 0x004744C0
[Token(Token = "0x6012BA2")]
[Address(RVA = "0x13642C0", Offset = "0x1362CC0", VA = "0x1813642C0")]
public void BALOKJMBNIN(VRPlayerController FINBOONIGDO, Player IEKDDPPNFPF, SubtitleManager NLBCGKNGBAI)
{
int num = 0;
if (!(NLBCGKNGBAI == num))
{
int num2 = 0;
if (!(IEKDDPPNFPF == num2))
{
if (!NLBCGKNGBAI.LJCDMPGPHDB.ContainsValues)
{
}
ExplicitTokenMap<SubtitleManager.AHAIFIDCFML> ljcdmpgphdb = NLBCGKNGBAI.LJCDMPGPHDB;
ExplicitTokenMap<SubtitleManager.AHAIFIDCFML> ljcdmpgphdb2 = NLBCGKNGBAI.LJCDMPGPHDB;
bool flag;
bool flag2;
if ((ulong)1L != (this.cachedHasSubtitle ? 1UL : 0UL) || flag || flag2)
{
this.cachedHasSubtitle = (ulong)1L != 0UL;
this.cachedSubtitle = IEKDDPPNFPF;
VRSubtitleDialog vrSubtitleDialog = NLBCGKNGBAI.vrSubtitleDialog;
}
}
}
}
// Token: 0x06012BA3 RID: 76707 RVA: 0x00476338 File Offset: 0x00474538
[Token(Token = "0x6012BA3")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public SubtitleVRController()
{
}
// Token: 0x0400C87D RID: 51325
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400C87D")]
private bool cachedHasSubtitle;
// Token: 0x0400C87E RID: 51326
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C87E")]
private string cachedSubtitle;
// Token: 0x0400C87F RID: 51327
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400C87F")]
private Sprite cachedInlineSprite;
}
}
@@ -0,0 +1,116 @@
using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using TMPro;
using UnityEngine;
namespace RecRoom.Core.VR.UI
{
// Token: 0x020029E3 RID: 10723
[Token(Token = "0x20029E3")]
[StructLayout(3)]
public class VRSubtitleDialog : MonoBehaviour
{
// Token: 0x06012B9E RID: 76702 RVA: 0x00476170 File Offset: 0x00474370
[Token(Token = "0x6012B9E")]
[Address(RVA = "0x136F140", Offset = "0x136DB40", VA = "0x18136F140")]
private void Start()
{
Action action = new Action(this.IKOLCMNMLKM);
IDisposable disposable = this.PreRenderUpdate(action);
int num = 0;
string empty = string.Empty;
this.SetSubtitle(empty, num);
}
// Token: 0x06012B9F RID: 76703 RVA: 0x004761A4 File Offset: 0x004743A4
[Token(Token = "0x6012B9F")]
[Address(RVA = "0x136EF00", Offset = "0x136D900", VA = "0x18136EF00")]
public void SetSubtitle(string ACPMLLINIMG, [Optional] Sprite JFKJJGCHMJF)
{
base.gameObject.SetActive(true);
float num = this.inlineSpritePixelWidth;
SpriteRenderer spriteRenderer = this.inlineSpriteObject;
GKIADAPODCJ.IGBKNKBDCGN(this.textObject, spriteRenderer, ACPMLLINIMG, JFKJJGCHMJF, num);
float preferredHeight = this.textObject.preferredHeight;
float renderedWidth = this.textObject.renderedWidth;
float num2 = this.cornerRounding;
float num3 = Mathf.Max(1f, num2);
SpriteRenderer spriteRenderer2 = this.background;
Transform transform = spriteRenderer2.transform;
SpriteRenderer spriteRenderer3 = this.background;
}
// Token: 0x06012BA0 RID: 76704 RVA: 0x00476244 File Offset: 0x00474444
[Token(Token = "0x6012BA0")]
[Address(RVA = "0x136EDA0", Offset = "0x136D7A0", VA = "0x18136EDA0")]
private void IKOLCMNMLKM()
{
CameraRig instance = SingletonMonoBehaviour.Instance;
int num = 0;
if (!(instance == num))
{
Transform transform = SingletonMonoBehaviour.Instance.CHLMFLCFGFL.transform;
Transform transform2 = this.matchCameraTransform;
Vector3 vector;
float z = vector.z;
}
}
// Token: 0x06012BA1 RID: 76705 RVA: 0x0047628C File Offset: 0x0047448C
[Token(Token = "0x6012BA1")]
[Address(RVA = "0x136F1D0", Offset = "0x136DBD0", VA = "0x18136F1D0")]
public VRSubtitleDialog()
{
}
// Token: 0x0400C875 RID: 51317
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C875")]
[SerializeField]
private float textPadding = 2f;
// Token: 0x0400C876 RID: 51318
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400C876")]
[SerializeField]
private float cornerRounding = 2f;
// Token: 0x0400C877 RID: 51319
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400C877")]
[SerializeField]
private Transform matchCameraTransform;
// Token: 0x0400C878 RID: 51320
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400C878")]
[SerializeField]
private Transform offsetAndScaleTransform;
// Token: 0x0400C879 RID: 51321
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400C879")]
[SerializeField]
private SpriteRenderer background;
// Token: 0x0400C87A RID: 51322
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x400C87A")]
[SerializeField]
private TextMeshPro textObject;
// Token: 0x0400C87B RID: 51323
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x400C87B")]
[SerializeField]
[Header("Inline Sprite")]
private SpriteRenderer inlineSpriteObject;
// Token: 0x0400C87C RID: 51324
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x400C87C")]
[SerializeField]
private float inlineSpritePixelWidth = 50f;
}
}
@@ -0,0 +1,263 @@
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using RecRoom.Players.Watch;
using UnityEngine;
namespace RecRoom.Core.VR.UI
{
// Token: 0x020029E5 RID: 10725
[Token(Token = "0x20029E5")]
[Serializable]
[StructLayout(3)]
public class WatchNotificationVRController
{
// Token: 0x06012BA4 RID: 76708 RVA: 0x0047634C File Offset: 0x0047454C
[Token(Token = "0x6012BA4")]
[Address(RVA = "0x1371560", Offset = "0x136FF60", VA = "0x181371560")]
public void BALOKJMBNIN(VRPlayerController FINBOONIGDO, Player IEKDDPPNFPF, NotificationManager ABMJMBDDGHM)
{
int num = 0;
if (!(ABMJMBDDGHM == num))
{
int num2 = 0;
if (!(IEKDDPPNFPF == num2))
{
this.COIBPGNNGCO(IEKDDPPNFPF, ABMJMBDDGHM);
}
}
}
// Token: 0x06012BA5 RID: 76709 RVA: 0x0047637C File Offset: 0x0047457C
[Token(Token = "0x6012BA5")]
[Address(RVA = "0x1371760", Offset = "0x1370160", VA = "0x181371760")]
private void COIBPGNNGCO(Player IEKDDPPNFPF, NotificationManager ABMJMBDDGHM)
{
int num = 0;
PlayerUI playerUI = IEKDDPPNFPF.playerUI;
int num2 = 0;
if (!(playerUI == num2))
{
PlayerHand attachedHand = IEKDDPPNFPF.playerUI.watchMenuProjector.EKKDJEIFGMJ;
int num3 = 0;
if (!(attachedHand == num3))
{
WatchAttractor <DMFKNEOJGIJ>k__BackingField = IEKDDPPNFPF.playerUI.<DMFKNEOJGIJ>k__BackingField;
int num4 = 0;
if (<DMFKNEOJGIJ>k__BackingField == num4 || !ABMJMBDDGHM.TryConsumeWatchNotification(num) || SingletonMonoBehaviour.Instance.BHPPONGJLPE)
{
}
}
}
}
// Token: 0x06012BA6 RID: 76710 RVA: 0x004763F8 File Offset: 0x004745F8
[Token(Token = "0x6012BA6")]
[Address(RVA = "0x1371C20", Offset = "0x1370620", VA = "0x181371C20")]
private void NGEKHDFJAIK(PlayerUI DGKDMIKKKEF, PlayerHand CFLLPGHCBNI, WatchAttractor DLBHAFEEBAN, NotificationManager.GDHBEIJINND NOEDFHOANIO)
{
int num = 0;
RecRoomAudioClip recRoomAudioClip = this.watchNotificationAudio;
Transform transform = CFLLPGHCBNI.transform;
Vector3 vector;
float z = vector.z;
NotificationManager instance = SingletonMonoBehaviour.Instance;
if (instance == 0)
{
}
if (instance == 0)
{
}
IDisposable disposable;
ISchedulerPromise schedulerPromise;
if (disposable != (ulong)4L)
{
if (this.hapticsCoroutine != 0)
{
this.hapticsCoroutine = num;
}
Scheduler instance2 = SingletonMonoBehaviour.Instance;
WatchNotificationVRController.JDFCAMMLMAG jdfcammlmag;
jdfcammlmag.System.IDisposable.Dispose();
jdfcammlmag.<>1__state = num;
jdfcammlmag.watchHand = CFLLPGHCBNI;
int num2 = 0;
schedulerPromise = instance2.Run(num2, jdfcammlmag);
this.hapticsCoroutine = schedulerPromise;
}
if (schedulerPromise != (ulong)2L)
{
int num3 = 0;
DLBHAFEEBAN.NMIKFJDMHAA = num3 != 0;
if (this.attractorEffectCoroutine != 0)
{
this.attractorEffectCoroutine = num;
}
Scheduler instance3 = SingletonMonoBehaviour.Instance;
WatchNotificationVRController.HBOKMMNACHF hbokmmnachf;
hbokmmnachf.System.IDisposable.Dispose();
hbokmmnachf.<>1__state = num;
hbokmmnachf.<>4__this = this;
hbokmmnachf.playerUI = DGKDMIKKKEF;
hbokmmnachf.watchAttractor = DLBHAFEEBAN;
int num4 = 0;
ISchedulerPromise schedulerPromise2 = instance3.Run(num4, hbokmmnachf);
this.attractorEffectCoroutine = schedulerPromise2;
}
}
// Token: 0x06012BA7 RID: 76711 RVA: 0x004764EC File Offset: 0x004746EC
[Token(Token = "0x6012BA7")]
[Address(RVA = "0x1371620", Offset = "0x1370020", VA = "0x181371620")]
private void BHKMIEEBLIL(PlayerUI DGKDMIKKKEF, WatchAttractor DLBHAFEEBAN)
{
int num = 0;
DLBHAFEEBAN.NMIKFJDMHAA = num != 0;
if (this.attractorEffectCoroutine != 0)
{
this.attractorEffectCoroutine = (ulong)0L;
}
Scheduler instance = SingletonMonoBehaviour.Instance;
WatchNotificationVRController.HBOKMMNACHF hbokmmnachf;
hbokmmnachf.System.IDisposable.Dispose();
hbokmmnachf.<>1__state = (int)((ulong)0L);
hbokmmnachf.<>4__this = this;
hbokmmnachf.playerUI = DGKDMIKKKEF;
hbokmmnachf.watchAttractor = DLBHAFEEBAN;
int num2 = 0;
ISchedulerPromise schedulerPromise = instance.Run(num2, hbokmmnachf);
this.attractorEffectCoroutine = schedulerPromise;
}
// Token: 0x06012BA8 RID: 76712 RVA: 0x00476558 File Offset: 0x00474758
[Token(Token = "0x6012BA8")]
[Address(RVA = "0x1371960", Offset = "0x1370360", VA = "0x181371960")]
private void DNMJBNJNPLH(WatchAttractor DLBHAFEEBAN)
{
int num = 0;
DLBHAFEEBAN.NMIKFJDMHAA = num != 0;
if (this.attractorEffectCoroutine != 0)
{
this.attractorEffectCoroutine = (ulong)0L;
}
}
// Token: 0x06012BA9 RID: 76713 RVA: 0x00476588 File Offset: 0x00474788
[Token(Token = "0x6012BA9")]
[Address(RVA = "0x1371B40", Offset = "0x1370540", VA = "0x181371B40")]
private IEnumerator<ISchedule> JFNKLHJHBJH(PlayerUI DGKDMIKKKEF, WatchAttractor DLBHAFEEBAN)
{
/*
An exception occurred when decompiling this method (06012BA9)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<RecRoom.Core.ISchedule> RecRoom.Core.VR.UI.WatchNotificationVRController::JFNKLHJHBJH(PlayerUI,RecRoom.Players.Watch.WatchAttractor)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(HBOKMMNACHF::System.IDisposable.Dispose, ldloc:HBOKMMNACHF(var_0))
stfld:WatchNotificationVRController(HBOKMMNACHF::<>4__this, ldloc:HBOKMMNACHF(var_0), ldloc:WatchNotificationVRController(this))
stfld:PlayerUI(HBOKMMNACHF::playerUI, ldloc:HBOKMMNACHF(var_0), ldloc:PlayerUI(DGKDMIKKKEF))
stfld:int32(HBOKMMNACHF::<>1__state, ldloc:HBOKMMNACHF(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:WatchAttractor(HBOKMMNACHF::watchAttractor, ldloc:HBOKMMNACHF(var_0), ldloc:WatchAttractor(DLBHAFEEBAN))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x06012BAA RID: 76714 RVA: 0x004765B8 File Offset: 0x004747B8
[Token(Token = "0x6012BAA")]
[Address(RVA = "0x1371A20", Offset = "0x1370420", VA = "0x181371A20")]
private void HJMJDOGMCJF(PlayerHand CFLLPGHCBNI)
{
if (this.hapticsCoroutine != 0)
{
this.hapticsCoroutine = (ulong)0L;
}
Scheduler instance = SingletonMonoBehaviour.Instance;
WatchNotificationVRController.JDFCAMMLMAG jdfcammlmag;
jdfcammlmag.System.IDisposable.Dispose();
jdfcammlmag.<>1__state = (int)((ulong)0L);
jdfcammlmag.watchHand = CFLLPGHCBNI;
int num = 0;
ISchedulerPromise schedulerPromise = instance.Run(num, jdfcammlmag);
this.hapticsCoroutine = schedulerPromise;
}
// Token: 0x06012BAB RID: 76715 RVA: 0x0047660C File Offset: 0x0047480C
[Token(Token = "0x6012BAB")]
[Address(RVA = "0x13719D0", Offset = "0x13703D0", VA = "0x1813719D0")]
private void GGDLGIPEKLH()
{
if (this.hapticsCoroutine != 0)
{
this.hapticsCoroutine = (ulong)0L;
}
}
// Token: 0x06012BAC RID: 76716 RVA: 0x0047662C File Offset: 0x0047482C
[Token(Token = "0x6012BAC")]
[Address(RVA = "0x1371BC0", Offset = "0x13705C0", VA = "0x181371BC0")]
private IEnumerator<ISchedule> JPLPOKDFMAF(PlayerHand CFLLPGHCBNI)
{
/*
An exception occurred when decompiling this method (06012BAC)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<RecRoom.Core.ISchedule> RecRoom.Core.VR.UI.WatchNotificationVRController::JPLPOKDFMAF(PlayerHand)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(JDFCAMMLMAG::System.IDisposable.Dispose, ldloc:JDFCAMMLMAG(var_0))
stfld:int32(JDFCAMMLMAG::<>1__state, ldloc:JDFCAMMLMAG(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:PlayerHand(JDFCAMMLMAG::watchHand, ldloc:JDFCAMMLMAG(var_0), ldloc:PlayerHand(CFLLPGHCBNI))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x06012BAD RID: 76717 RVA: 0x00476650 File Offset: 0x00474850
[Token(Token = "0x6012BAD")]
[Address(RVA = "0x1372020", Offset = "0x1370A20", VA = "0x181372020")]
public WatchNotificationVRController()
{
}
// Token: 0x0400C880 RID: 51328
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x400C880")]
[SerializeField]
private float watchNotificationDuration = 10f;
// Token: 0x0400C881 RID: 51329
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C881")]
[SerializeField]
private RecRoomAudioClip watchNotificationAudio;
// Token: 0x0400C882 RID: 51330
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400C882")]
private ISchedulerPromise attractorEffectCoroutine;
// Token: 0x0400C883 RID: 51331
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400C883")]
private ISchedulerPromise hapticsCoroutine;
}
}