using System; using System.Collections; using System.Runtime.CompilerServices; using AGUI.StackedUI; using Cpp2IlInjected; using RecRoom.Consumable; using UnityEngine; using UnityEngine.UI; // Token: 0x02000699 RID: 1689 [Token(Token = "0x2000699")] [RequireComponent(typeof(ToggleButton3D))] public class ConsumableButton : MonoBehaviour { // Token: 0x17000873 RID: 2163 // (get) Token: 0x060030D9 RID: 12505 RVA: 0x000C7E2C File Offset: 0x000C602C // (set) Token: 0x060030DA RID: 12506 RVA: 0x000C7E40 File Offset: 0x000C6040 [Token(Token = "0x17000873")] public OOCCCGPICOG GCPFILALGKL { [Token(Token = "0x60030D9")] [Address(RVA = "0x423D40", Offset = "0x422B40", VA = "0x180423D40")] get; [Token(Token = "0x60030DA")] [Address(RVA = "0x466B90", Offset = "0x465990", VA = "0x180466B90")] private set; } // Token: 0x17000874 RID: 2164 // (get) Token: 0x060030DB RID: 12507 RVA: 0x000C7E54 File Offset: 0x000C6054 [Token(Token = "0x17000874")] public ToggleButton3D.OnToggleButton3DClick PAALHPHGBDF { [Token(Token = "0x60030DB")] [Address(RVA = "0xD5AC30", Offset = "0xD59A30", VA = "0x180D5AC30")] get { return this.toggle.OnClick; } } // Token: 0x060030DC RID: 12508 RVA: 0x000C7E74 File Offset: 0x000C6074 [Token(Token = "0x60030DC")] [Address(RVA = "0x10E8F60", Offset = "0x10E7D60", VA = "0x1810E8F60")] private void Awake() { if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD) { Action action = new Action(this.HNCNGJFLMEL); } } // Token: 0x060030DD RID: 12509 RVA: 0x000C7E9C File Offset: 0x000C609C [Token(Token = "0x60030DD")] [Address(RVA = "0x10E97C0", Offset = "0x10E85C0", VA = "0x1810E97C0")] private void OnDestroy() { if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD) { Action action = new Action(this.HNCNGJFLMEL); } } // Token: 0x060030DE RID: 12510 RVA: 0x000C7EC4 File Offset: 0x000C60C4 [Token(Token = "0x60030DE")] [Address(RVA = "0x10E98A0", Offset = "0x10E86A0", VA = "0x1810E98A0")] private void OnEnable() { OOCCCGPICOG oocccgpicog = this.k__BackingField; int num = 0; if (OOCCCGPICOG.BDBLGMKABNK(oocccgpicog, num)) { this.EGEHAOPMCIB(); return; } } // Token: 0x060030DF RID: 12511 RVA: 0x000C7EEC File Offset: 0x000C60EC [Token(Token = "0x60030DF")] [Address(RVA = "0x10E96A0", Offset = "0x10E84A0", VA = "0x1810E96A0")] private void HNCNGJFLMEL(OOCCCGPICOG BAJGNABECMN, bool CNEIBILGFCO) { OOCCCGPICOG oocccgpicog = this.k__BackingField; OOCCCGPICOG oocccgpicog2 = this.k__BackingField; string k__BackingField = BAJGNABECMN.k__BackingField; this.EGEHAOPMCIB(); } // Token: 0x060030E0 RID: 12512 RVA: 0x000C7F1C File Offset: 0x000C611C [Token(Token = "0x60030E0")] [Address(RVA = "0x10E9CC0", Offset = "0x10E8AC0", VA = "0x1810E9CC0")] public void ToggleButtonVisualState(bool LIMAOMBLKAO) { if (LIMAOMBLKAO) { GameObject gameObject = this.useText; while (gameObject == 0) { } bool flag = !this.toggle.LLJFGDMOOFA; gameObject.SetActive(flag); return; } ToggleButton3D toggleButton3D = this.toggle; if (toggleButton3D != 0) { toggleButton3D.ForceRelease(); return; } } // Token: 0x060030E1 RID: 12513 RVA: 0x000C7F68 File Offset: 0x000C6168 [Token(Token = "0x60030E1")] [Address(RVA = "0x10E98D0", Offset = "0x10E86D0", VA = "0x1810E98D0")] public void SetConsumable(OOCCCGPICOG BAJGNABECMN, StackedUIBase ANEGNEHDLOI) { int num; GameObject gameObject; do { num = 0; OOCCCGPICOG oocccgpicog = this.k__BackingField; this.k__BackingField = BAJGNABECMN; IEnumerator enumerator = this.consumableRoot.GetEnumerator(); if (enumerator != 0) { if (num < enumerator) { num += num; num++; } ulong num2; enumerator += num2; if (enumerator == 0 || enumerator == 0) { goto IL_F2; } global::UnityEngine.Object.Destroy(gameObject); } if (gameObject != 0) { } } while (num != 0); OOCCCGPICOG oocccgpicog2 = this.k__BackingField; if (gameObject == 0) { ConsumableInfo consumableInfo = BAJGNABECMN.LENBPGEABJK(); if (consumableInfo == 0 || consumableInfo.FriendlyName == 0) { } Func> func = new Func(this.BJDEOHMJBKN); string text = this.consumableName.text; Tooltip tooltip = this.tooltip; int num3 = 0; if (tooltip != num3) { Tooltip tooltip2 = this.tooltip; tooltip2.Message = "Unknown Consumable"; Tooltip tooltip3 = this.tooltip; string message = tooltip3.Message; bool flag = tooltip2 == 0; tooltip3.enabled = flag; } this.EGEHAOPMCIB(); } return; IL_F2: throw new NullReferenceException(); } // Token: 0x060030E2 RID: 12514 RVA: 0x000C8074 File Offset: 0x000C6274 [Token(Token = "0x60030E2")] [Address(RVA = "0x10E9170", Offset = "0x10E7F70", VA = "0x1810E9170")] private void EGEHAOPMCIB() { int num; ConsumableInfo consumableInfo; do { num = 0; if (!base.gameObject.activeInHierarchy) { return; } consumableInfo = this.k__BackingField.LENBPGEABJK(); string k__BackingField = this.k__BackingField.k__BackingField; if (consumableInfo == 0 || consumableInfo.LimitType != (ConsumableManager.FFCJLEMFFAJ)num) { goto IL_57; } bool flag; if (flag) { } } while (num != 0); Text text = this.count; string text3; string text2 = "x" + text3; IL_57: Text text4 = this.count; string text6; string text5 = "x" + text6; string text7 = text4.text; string k__BackingField2 = this.k__BackingField.k__BackingField; bool flag2; if (consumableInfo != 0 && consumableInfo.LimitType <= ConsumableManager.FFCJLEMFFAJ.Time) { base.StopAllCoroutines(); if (!flag2) { Text text8 = this.timeLeft; int k__BackingField = this.k__BackingField.k__BackingField; string text9 = this.NMLKKAFFNIN(k__BackingField); } OOCCCGPICOG oocccgpicog = this.k__BackingField; Text text10 = this.timeLeft; int num2; string text11 = this.NMLKKAFFNIN(num2); string text12 = text10.text; ConsumableButton.HGCFIEFIOKO hgcfiefioko; hgcfiefioko.<>1__state = (int)((ulong)0L); hgcfiefioko.<>4__this = this; hgcfiefioko.seconds = num2; Coroutine coroutine = base.StartCoroutine(hgcfiefioko); } string text13 = this.timeLeft.text; ConsumableTool consumableTool = ConsumableTool.FindConsumableTool(this.k__BackingField.k__BackingField); ToggleButton3D toggleButton3D = this.toggle; if (flag2) { } int num3 = 0; bool activeSelf; if (consumableTool != num3) { activeSelf = consumableTool.gameObject.activeSelf; } toggleButton3D.BOHIGPFGJBA = activeSelf; GameObject gameObject = this.useText; bool flag3 = !this.toggle.LLJFGDMOOFA; gameObject.SetActive(flag3); } // Token: 0x060030E3 RID: 12515 RVA: 0x000C8208 File Offset: 0x000C6408 [Token(Token = "0x60030E3")] [Address(RVA = "0x10E9100", Offset = "0x10E7F00", VA = "0x1810E9100")] private IEnumerator DJGAMOHHJNP(int HABFNPMBADP) { /* An exception occurred when decompiling this method (060030E3) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator ConsumableButton::DJGAMOHHJNP(System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(HGCFIEFIOKO::System.IDisposable.Dispose, ldloc:HGCFIEFIOKO(var_0)) stfld:ConsumableButton(HGCFIEFIOKO::<>4__this, ldloc:HGCFIEFIOKO(var_0), ldloc:ConsumableButton(this)) stfld:int32(HGCFIEFIOKO::<>1__state, ldloc:HGCFIEFIOKO(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:int32(HGCFIEFIOKO::seconds, ldloc:HGCFIEFIOKO(var_0), ldloc:int32(HABFNPMBADP)) } 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 1660 */; } // Token: 0x060030E4 RID: 12516 RVA: 0x000C8234 File Offset: 0x000C6434 [Token(Token = "0x60030E4")] [Address(RVA = "0x10E9700", Offset = "0x10E8500", VA = "0x1810E9700")] private string NMLKKAFFNIN(int HABFNPMBADP) { string text; return text; } // Token: 0x060030E5 RID: 12517 RVA: 0x000C8258 File Offset: 0x000C6458 [Token(Token = "0x60030E5")] [Address(RVA = "0xCD42D0", Offset = "0xCD30D0", VA = "0x180CD42D0")] public ConsumableButton() { } // Token: 0x060030E6 RID: 12518 RVA: 0x000C8278 File Offset: 0x000C6478 [Token(Token = "0x60030E6")] [Address(RVA = "0x10E9040", Offset = "0x10E7E40", VA = "0x1810E9040")] [CompilerGenerated] private JCOINEEFENJ BJDEOHMJBKN() { DCLIBCDKJNF dclibcdkjnf = new DCLIBCDKJNF(); string k__BackingField = this.k__BackingField.k__BackingField; GameObject gameObject; dclibcdkjnf.OOOIENHGNCA(gameObject); throw new NullReferenceException(); } // Token: 0x04002861 RID: 10337 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4002861")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false, false)] private ToggleButton3D toggle; // Token: 0x04002862 RID: 10338 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4002862")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.SelfAndChildren, false, false, false)] private Tooltip tooltip; // Token: 0x04002863 RID: 10339 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4002863")] [SerializeField] private float localImposterRadius = 62.5f; // Token: 0x04002864 RID: 10340 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4002864")] [SerializeField] private Transform consumableRoot; // Token: 0x04002865 RID: 10341 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4002865")] [SerializeField] private Text consumableName; // Token: 0x04002866 RID: 10342 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4002866")] [SerializeField] private Text count; // Token: 0x04002867 RID: 10343 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4002867")] [SerializeField] private Text timeLeft; // Token: 0x04002868 RID: 10344 [FieldOffset(Offset = "0x50")] [Token(Token = "0x4002868")] [SerializeField] private GameObject useText; // Token: 0x0400286A RID: 10346 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400286A")] private JCOINEEFENJ IGPGEOMGLDG; }