326 lines
12 KiB
C#
326 lines
12 KiB
C#
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<MeshRenderer> pclmnnehlng = this.PCLMNNEHLNG;
|
|
MeshRenderer[] componentsInChildren = base.GetComponentsInChildren<MeshRenderer>();
|
|
pclmnnehlng.AddRange(componentsInChildren);
|
|
MeshRenderer[] array = this.ignoredRenderers;
|
|
if (array != 0)
|
|
{
|
|
int num2 = 0;
|
|
if (num2 < array.Length)
|
|
{
|
|
List<MeshRenderer> 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<MeshRenderer> 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<MeshRenderer> 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;
|
|
}
|
|
}
|