using System; using System.Collections; using System.Collections.Generic; using Cpp2IlInjected; using RecRoom.Core.Rendering; using UnityEngine; using UnityEngine.Serialization; namespace RecRoom { // Token: 0x020020C6 RID: 8390 [Token(Token = "0x20020C6")] public class SparkleOutline : MonoBehaviour { // Token: 0x0600D37E RID: 54142 RVA: 0x003055FC File Offset: 0x003037FC [Token(Token = "0x600D37E")] [Address(RVA = "0x184BF00", Offset = "0x184AF00", VA = "0x18184BF00")] private void Awake() { Material material = this.overrideMaterialTemplate; int num = 0; if (material != num) { Material material2 = SparkleRendererEffect.InstantiateMaterialWithMobileShaderIfNecessary(this.overrideMaterialTemplate); this.CBFNKJFKEEE = material2; } List pclmnnehlng = this.PCLMNNEHLNG; MeshRenderer[] componentsInChildren = base.GetComponentsInChildren(); pclmnnehlng.AddRange(componentsInChildren); MeshRenderer[] array = this.ignoredRenderers; if (array != 0) { int num2 = 0; if (num2 < array.Length) { List pclmnnehlng2 = this.PCLMNNEHLNG; MeshRenderer meshRenderer = array[num2]; bool flag = pclmnnehlng2.Remove(meshRenderer); MeshRenderer[] array2 = this.ignoredRenderers; num2++; } } } // Token: 0x0600D37F RID: 54143 RVA: 0x00305694 File Offset: 0x00303894 [Token(Token = "0x600D37F")] [Address(RVA = "0x184C450", Offset = "0x184B450", VA = "0x18184C450")] private void OnEnable() { this.KGFFMEICLNN(); } // Token: 0x0600D380 RID: 54144 RVA: 0x003056A8 File Offset: 0x003038A8 [Token(Token = "0x600D380")] [Address(RVA = "0x184C460", Offset = "0x184B460", VA = "0x18184C460")] private void Update() { if (this.NJPHOAJLPMH.OLGMEEIPCAL) { if (this.visibleInCamera.GDPKBEBEOBA) { Coroutine pkhigoopcmm = this.PKHIGOOPCMM; if (pkhigoopcmm != 0) { base.StopCoroutine(pkhigoopcmm); this.PKHIGOOPCMM = (ulong)0L; } SparkleOutline.HILEPAEOPFA hilepaeopfa; hilepaeopfa.System.IDisposable.Dispose(); hilepaeopfa.<>1__state = (int)((ulong)0L); hilepaeopfa.<>4__this = this; Coroutine coroutine = base.StartCoroutine(hilepaeopfa); this.PKHIGOOPCMM = coroutine; } this.KGFFMEICLNN(); return; } } // Token: 0x0600D381 RID: 54145 RVA: 0x00305720 File Offset: 0x00303920 [Token(Token = "0x600D381")] [Address(RVA = "0x184C3B0", Offset = "0x184B3B0", VA = "0x18184C3B0")] private void OnDestroy() { Material cbfnkjfkeee = this.CBFNKJFKEEE; int num = 0; if (cbfnkjfkeee != num) { global::UnityEngine.Object.Destroy(this.CBFNKJFKEEE); } } // Token: 0x0600D382 RID: 54146 RVA: 0x0030574C File Offset: 0x0030394C [Token(Token = "0x600D382")] [Address(RVA = "0x184C250", Offset = "0x184B250", VA = "0x18184C250")] private static void NIPJEBDFJBK(float LIMOILDIGKF, out float CLHJLKJMGJG, out float HBDKDAKKJMO) { AnimationCurve ffphamgdhhc = SparkleOutline.FFPHAMGDHHC; float num = Mathf.Clamp01(LIMOILDIGKF); float num2 = ffphamgdhhc.Evaluate(num); CLHJLKJMGJG.m_value = num2; AnimationCurve mnedkohbcho = SparkleOutline.MNEDKOHBCHO; num = Mathf.Clamp01(LIMOILDIGKF); float num3 = mnedkohbcho.Evaluate(num); HBDKDAKKJMO.m_value = num3; } // Token: 0x0600D383 RID: 54147 RVA: 0x0030579C File Offset: 0x0030399C [Token(Token = "0x600D383")] [Address(RVA = "0x184C0E0", Offset = "0x184B0E0", VA = "0x18184C0E0")] private void KGFFMEICLNN() { MACMLJJGBIM njphoajlpmh = this.NJPHOAJLPMH; float num = this.maxSparklePeriod; float num2 = global::UnityEngine.Random.Range(this.minSparklePeriod, num); num = num2; num = Mathf.Max(num2, num); njphoajlpmh.KGFFMEICLNN(num); } // Token: 0x0600D384 RID: 54148 RVA: 0x003057DC File Offset: 0x003039DC [Token(Token = "0x600D384")] [Address(RVA = "0x184C030", Offset = "0x184B030", VA = "0x18184C030")] private void FKOFNDDOGFB() { if (this.visibleInCamera.GDPKBEBEOBA) { Coroutine pkhigoopcmm = this.PKHIGOOPCMM; if (pkhigoopcmm != 0) { base.StopCoroutine(pkhigoopcmm); this.PKHIGOOPCMM = (ulong)0L; } SparkleOutline.HILEPAEOPFA hilepaeopfa; hilepaeopfa.System.IDisposable.Dispose(); hilepaeopfa.<>1__state = (int)((ulong)0L); hilepaeopfa.<>4__this = this; Coroutine coroutine = base.StartCoroutine(hilepaeopfa); this.PKHIGOOPCMM = coroutine; } } // Token: 0x0600D385 RID: 54149 RVA: 0x00305840 File Offset: 0x00303A40 [Token(Token = "0x600D385")] [Address(RVA = "0x184C1C0", Offset = "0x184B1C0", VA = "0x18184C1C0")] private void MPCEAFGCNHL() { Coroutine pkhigoopcmm = this.PKHIGOOPCMM; if (pkhigoopcmm != 0) { base.StopCoroutine(pkhigoopcmm); this.PKHIGOOPCMM = (ulong)0L; } SparkleOutline.HILEPAEOPFA hilepaeopfa; hilepaeopfa.System.IDisposable.Dispose(); hilepaeopfa.<>1__state = (int)((ulong)0L); hilepaeopfa.<>4__this = this; Coroutine coroutine = base.StartCoroutine(hilepaeopfa); this.PKHIGOOPCMM = coroutine; } // Token: 0x0600D386 RID: 54150 RVA: 0x00305890 File Offset: 0x00303A90 [Token(Token = "0x600D386")] [Address(RVA = "0x1321720", Offset = "0x1320720", VA = "0x181321720")] private void LAIBFHODMMK() { Coroutine pkhigoopcmm = this.PKHIGOOPCMM; if (pkhigoopcmm != 0) { base.StopCoroutine(pkhigoopcmm); this.PKHIGOOPCMM = (ulong)0L; } } // Token: 0x0600D387 RID: 54151 RVA: 0x003058B8 File Offset: 0x00303AB8 [Token(Token = "0x600D387")] [Address(RVA = "0x184C350", Offset = "0x184B350", VA = "0x18184C350")] private IEnumerator NODHKDEGGPF() { /* An exception occurred when decompiling this method (0600D387) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator RecRoom.SparkleOutline::NODHKDEGGPF() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(HILEPAEOPFA::System.IDisposable.Dispose, ldloc:HILEPAEOPFA(var_0)) stfld:int32(HILEPAEOPFA::<>1__state, ldloc:HILEPAEOPFA(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:SparkleOutline(HILEPAEOPFA::<>4__this, ldloc:HILEPAEOPFA(var_0), ldloc:SparkleOutline(this)) } 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: 0x0600D388 RID: 54152 RVA: 0x003058DC File Offset: 0x00303ADC [Token(Token = "0x600D388")] [Address(RVA = "0x184C990", Offset = "0x184B990", VA = "0x18184C990")] public SparkleOutline() { MACMLJJGBIM macmljjgbim = new MACMLJJGBIM(); this.NJPHOAJLPMH = macmljjgbim; List list = new List(); this.PCLMNNEHLNG = list; base..ctor(); } // Token: 0x0600D389 RID: 54153 RVA: 0x00305920 File Offset: 0x00303B20 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600D389")] [Address(RVA = "0x184C530", Offset = "0x184B530", VA = "0x18184C530")] static SparkleOutline() { Keyframe[] array = new Keyframe[6]; int num = 0; array[0] = num; array[3] = num; int num2 = 0; array[3] = num2; array[6] = num2; int num3 = 0; array[7] = num3; array[10] = num3; int num4 = 0; array[10] = num3; array[13] = num4; int num5 = 0; array[14] = num3; array[17] = num5; int num6 = 0; array[17] = num3; array[20] = num6; SparkleOutline.MNEDKOHBCHO = new AnimationCurve(array); Keyframe[] array2 = new Keyframe[3]; int num7 = 0; array2[0] = num3; array2[3] = num7; int num8 = 0; array2[3] = num3; array2[6] = num8; int num9 = 0; array2[7] = num3; array2[10] = num9; SparkleOutline.FFPHAMGDHHC = new AnimationCurve(array2); } // Token: 0x04008661 RID: 34401 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4008661")] [SerializeField] [OAGJHJAIMMP(FHBJCBPFODN.Self, false, false, false)] private Tool tool; // Token: 0x04008662 RID: 34402 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4008662")] [SerializeField] [NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)] private VisibleInCamera visibleInCamera; // Token: 0x04008663 RID: 34403 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4008663")] [SerializeField] private float minSparklePeriod = 2f; // Token: 0x04008664 RID: 34404 [FieldOffset(Offset = "0x2C")] [Token(Token = "0x4008664")] [SerializeField] private float maxSparklePeriod = 10f; // Token: 0x04008665 RID: 34405 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4008665")] [SerializeField] [FormerlySerializedAs("overrideMaterial")] private Material overrideMaterialTemplate; // Token: 0x04008666 RID: 34406 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4008666")] private Material CBFNKJFKEEE; // Token: 0x04008667 RID: 34407 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4008667")] [SerializeField] private MeshRenderer[] ignoredRenderers; // Token: 0x04008668 RID: 34408 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4008668")] private MACMLJJGBIM NJPHOAJLPMH; // Token: 0x04008669 RID: 34409 [FieldOffset(Offset = "0x50")] [Token(Token = "0x4008669")] private Coroutine PKHIGOOPCMM; // Token: 0x0400866A RID: 34410 [FieldOffset(Offset = "0x58")] [Token(Token = "0x400866A")] private List PCLMNNEHLNG; // Token: 0x0400866B RID: 34411 [Token(Token = "0x400866B")] private static readonly float IFFOAFFAHME; // Token: 0x0400866C RID: 34412 [Token(Token = "0x400866C")] private static readonly AnimationCurve MNEDKOHBCHO; // Token: 0x0400866D RID: 34413 [Token(Token = "0x400866D")] private static readonly AnimationCurve FFPHAMGDHHC; } }