using System; using System.Runtime.InteropServices; using Cpp2IlInjected; using UnityEngine; namespace RecRoom.Core.Quality { // Token: 0x0200286F RID: 10351 [Token(Token = "0x200286F")] [StructLayout(3)] public class ParticleQualityOverride : MonoBehaviour { // Token: 0x060121DA RID: 74202 RVA: 0x00452F60 File Offset: 0x00451160 [Token(Token = "0x60121DA")] [Address(RVA = "0x19A9F70", Offset = "0x19A8970", VA = "0x1819A9F70")] private void Start() { if (this.overrides.Length != 0) { ParticleSystem.MainModule main = this.particles.main; ParticleSystem particleSystem = this.particles; this.GLEAGKMBGME = main; ParticleSystem.MainModule main2 = particleSystem.main; ParticleSystem particleSystem2 = this.particles; this.FLFBNCKBDJC = main2; ParticleSystem.MainModule main3 = particleSystem2.main; ParticleSystem particleSystem3 = this.particles; this.OEPDBOOEPNE = main3; ParticleSystem.MainModule main4 = particleSystem3.main; this.DJFAOIPMKBD = main4; bool flag; this.HHMCJKLIPLL = flag; int num; this.GCHIJOPCKDP = num; bool flag2; this.JNNECDDMOMP = flag2; bool flag3; this.KGMEIEKCNOB = flag3; INGEKFNNGDK qualitySetting = SingletonMonoBehaviour.Instance.KONLNCONKKJ; SettingsManager instance = SingletonMonoBehaviour.Instance; Action action = new Action(this.EHDNCHLIKMF); instance.QualitySettingChanged += action; return; } Debug.LogError("ParticleQualityOverride requires at least one specified override."); throw new NullReferenceException(); } // Token: 0x060121DB RID: 74203 RVA: 0x00453034 File Offset: 0x00451234 [Token(Token = "0x60121DB")] [Address(RVA = "0x19A9E60", Offset = "0x19A8860", VA = "0x1819A9E60")] private void OnDestroy() { SettingsManager instance = SingletonMonoBehaviour.Instance; int num = 0; if (instance != num) { SettingsManager instance2 = SingletonMonoBehaviour.Instance; Action action = new Action(this.EHDNCHLIKMF); instance2.QualitySettingChanged -= action; } } // Token: 0x060121DC RID: 74204 RVA: 0x00453074 File Offset: 0x00451274 [Token(Token = "0x60121DC")] [Address(RVA = "0x19A95D0", Offset = "0x19A7FD0", VA = "0x1819A95D0")] private void EHDNCHLIKMF(INGEKFNNGDK AOKDECDAEEG) { this.GFAHHBOFMHP(AOKDECDAEEG); } // Token: 0x060121DD RID: 74205 RVA: 0x00453088 File Offset: 0x00451288 [Token(Token = "0x60121DD")] [Address(RVA = "0x19A95E0", Offset = "0x19A7FE0", VA = "0x1819A95E0")] private void GFAHHBOFMHP(INGEKFNNGDK AOKDECDAEEG) { ParticleQualityOverride.OverrideSettings[] array = this.overrides; int num = 0; int num2 = 0; int length = array.Length; if (num2 < length) { if ("{il2cpp array field local2->}" != AOKDECDAEEG) { num++; } return; } throw new MissingMethodException(); } // Token: 0x060121DE RID: 74206 RVA: 0x004530D4 File Offset: 0x004512D4 [Token(Token = "0x60121DE")] [Address(RVA = "0x19A9830", Offset = "0x19A8230", VA = "0x1819A9830")] private void HFLHNHENDBF(ParticleQualityOverride.OverrideSettings JBKLKKPKFNA) { /* An exception occurred when decompiling this method (060121DE) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void RecRoom.Core.Quality.ParticleQualityOverride::HFLHNHENDBF(RecRoom.Core.Quality.ParticleQualityOverride/OverrideSettings) ---> System.ArgumentOutOfRangeException: length ('-1') must be a non-negative value. (Parameter 'length') Actual value was -1. at System.ArgumentOutOfRangeException.ThrowNegative[T](T value, String paramName) at System.Array.CopyImpl(Array sourceArray, Int32 sourceIndex, Array destinationArray, Int32 destinationIndex, Int32 length, Boolean reliable) at System.Array.Copy(Array sourceArray, Array destinationArray, Int32 length) at ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackAnalysis(MethodDef methodDef) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 327 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 117 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: 0x060121DF RID: 74207 RVA: 0x00453134 File Offset: 0x00451334 [Token(Token = "0x60121DF")] [Address(RVA = "0x19A9CB0", Offset = "0x19A86B0", VA = "0x1819A9CB0")] private void OMMJJIENPPJ() { float obocpjdpdhn = this.OBOCPJDPDHN; throw new MissingMethodException(); } // Token: 0x060121E0 RID: 74208 RVA: 0x0045316C File Offset: 0x0045136C [Token(Token = "0x60121E0")] [Address(RVA = "0x19A9430", Offset = "0x19A7E30", VA = "0x1819A9430")] private void BCFOMAPJAAI() { ParticleSystem.MainModule main = this.particles.main; ParticleSystem particleSystem = this.particles; this.GLEAGKMBGME = main; ParticleSystem.MainModule main2 = particleSystem.main; ParticleSystem particleSystem2 = this.particles; this.FLFBNCKBDJC = main2; ParticleSystem.MainModule main3 = particleSystem2.main; ParticleSystem particleSystem3 = this.particles; this.OEPDBOOEPNE = main3; ParticleSystem.MainModule main4 = particleSystem3.main; this.DJFAOIPMKBD = main4; bool flag; this.HHMCJKLIPLL = flag; int num; this.GCHIJOPCKDP = num; bool flag2; this.JNNECDDMOMP = flag2; bool flag3; this.KGMEIEKCNOB = flag3; } // Token: 0x060121E1 RID: 74209 RVA: 0x004531FC File Offset: 0x004513FC [Token(Token = "0x60121E1")] [Address(RVA = "0x19A9BA0", Offset = "0x19A85A0", VA = "0x1819A9BA0")] private void MLILCMAJKGH(ParticleSystem.MinMaxCurve CDAMNCBGBGI, out float NOGNELMAHCK, out float JDFENOCNKAD) { float num; JDFENOCNKAD.m_value = num; } // Token: 0x060121E2 RID: 74210 RVA: 0x00453218 File Offset: 0x00451418 [Token(Token = "0x60121E2")] [Address(RVA = "0x19A9A90", Offset = "0x19A8490", VA = "0x1819A9A90")] private ParticleSystem.MinMaxCurve HMAGJKPLEJG(ParticleSystem.MinMaxCurve CDAMNCBGBGI, float NOGNELMAHCK, float JDFENOCNKAD) { /* An exception occurred when decompiling this method (060121E2) ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.ParticleSystem/MinMaxCurve RecRoom.Core.Quality.ParticleQualityOverride::HMAGJKPLEJG(UnityEngine.ParticleSystem/MinMaxCurve,System.Single,System.Single) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: stfld:native int(Object::m_CachedPtr, ldloc:ParticleQualityOverride[exp:Object](this), ldloc:float32[exp:native int](JDFENOCNKAD)) stloc:ArgumentException(var_0_17, newobj:ArgumentException(ArgumentException::.ctor, call:string(string::Concat, ldstr:string[exp:object]("Unsupported animation curve mode: "), ldloc:ParticleQualityOverride[exp:object](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: 0x060121E3 RID: 74211 RVA: 0x0045323C File Offset: 0x0045143C [Token(Token = "0x60121E3")] [Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")] public ParticleQualityOverride() { } // Token: 0x0400C1CB RID: 49611 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400C1CB")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private ParticleSystem particles; // Token: 0x0400C1CC RID: 49612 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x400C1CC")] [SerializeField] private ParticleQualityOverride.OverrideSettings[] overrides; // Token: 0x0400C1CD RID: 49613 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400C1CD")] private bool HHMCJKLIPLL; // Token: 0x0400C1CE RID: 49614 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")] [Token(Token = "0x400C1CE")] private int GCHIJOPCKDP; // Token: 0x0400C1CF RID: 49615 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x400C1CF")] private bool JNNECDDMOMP; // Token: 0x0400C1D0 RID: 49616 [global::Cpp2IlInjected.FieldOffset(Offset = "0x31")] [Token(Token = "0x400C1D0")] private bool KGMEIEKCNOB; // Token: 0x0400C1D1 RID: 49617 [global::Cpp2IlInjected.FieldOffset(Offset = "0x34")] [Token(Token = "0x400C1D1")] private float EJLENFPBDKM; // Token: 0x0400C1D2 RID: 49618 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x400C1D2")] private float OBOCPJDPDHN; // Token: 0x0400C1D3 RID: 49619 [global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")] [Token(Token = "0x400C1D3")] private float OGOFCNPICAG; // Token: 0x0400C1D4 RID: 49620 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x400C1D4")] private float JJPPMMLJCHP; // Token: 0x0400C1D5 RID: 49621 [global::Cpp2IlInjected.FieldOffset(Offset = "0x44")] [Token(Token = "0x400C1D5")] private float APEPOELCKBG; // Token: 0x0400C1D6 RID: 49622 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x400C1D6")] private float PHPEGDELENI; // Token: 0x0400C1D7 RID: 49623 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x400C1D7")] private ParticleSystem.MainModule GLEAGKMBGME; // Token: 0x0400C1D8 RID: 49624 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x400C1D8")] private ParticleSystem.TrailModule FLFBNCKBDJC; // Token: 0x0400C1D9 RID: 49625 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x400C1D9")] private ParticleSystem.EmissionModule OEPDBOOEPNE; // Token: 0x0400C1DA RID: 49626 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x400C1DA")] private ParticleSystem.CollisionModule DJFAOIPMKBD; // Token: 0x02002870 RID: 10352 [Token(Token = "0x2002870")] [Serializable] public struct OverrideSettings { // Token: 0x0400C1DB RID: 49627 [global::Cpp2IlInjected.FieldOffset(Offset = "0x0")] [Token(Token = "0x400C1DB")] public INGEKFNNGDK quality; // Token: 0x0400C1DC RID: 49628 [global::Cpp2IlInjected.FieldOffset(Offset = "0x4")] [Token(Token = "0x400C1DC")] public int maxParticles; // Token: 0x0400C1DD RID: 49629 [global::Cpp2IlInjected.FieldOffset(Offset = "0x8")] [Token(Token = "0x400C1DD")] public bool enableTrails; // Token: 0x0400C1DE RID: 49630 [global::Cpp2IlInjected.FieldOffset(Offset = "0x9")] [Token(Token = "0x400C1DE")] public bool enableCollisions; // Token: 0x0400C1DF RID: 49631 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA")] [Token(Token = "0x400C1DF")] public bool overrideEmissionRate; // Token: 0x0400C1E0 RID: 49632 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC")] [Token(Token = "0x400C1E0")] [Range(0f, 1f)] public float emissionRateMultiplier; // Token: 0x0400C1E1 RID: 49633 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400C1E1")] public bool overrideLifetime; // Token: 0x0400C1E2 RID: 49634 [global::Cpp2IlInjected.FieldOffset(Offset = "0x14")] [Token(Token = "0x400C1E2")] [Range(0f, 2f)] public float lifetimeMultiplier; } } }