Files
2026-04-08 23:40:05 +02:00

370 lines
13 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using AGUI.StackedUI;
using Cpp2IlInjected;
using RecRoom.Async;
using RecRoom.Consumable;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
// Token: 0x020006AC RID: 1708
[Token(Token = "0x20006AC")]
[RequireComponent(typeof(ToggleButton3D))]
[StructLayout(3)]
public class ConsumableButton : MonoBehaviour
{
// Token: 0x1700089F RID: 2207
// (get) Token: 0x06003139 RID: 12601 RVA: 0x000CC7AC File Offset: 0x000CA9AC
// (set) Token: 0x0600313A RID: 12602 RVA: 0x000CC7C0 File Offset: 0x000CA9C0
[Token(Token = "0x1700089F")]
public OOCCCGPICOG GCPFILALGKL
{
[Token(Token = "0x6003139")]
[Address(RVA = "0x4B81A0", Offset = "0x4B6BA0", VA = "0x1804B81A0")]
get;
[Token(Token = "0x600313A")]
[Address(RVA = "0x3EDEB0", Offset = "0x3EC8B0", VA = "0x1803EDEB0")]
private set;
}
// Token: 0x170008A0 RID: 2208
// (get) Token: 0x0600313B RID: 12603 RVA: 0x000CC7D4 File Offset: 0x000CA9D4
[Token(Token = "0x170008A0")]
public ToggleButton3D.OnToggleButton3DClick PAALHPHGBDF
{
[Token(Token = "0x600313B")]
[Address(RVA = "0x129D980", Offset = "0x129C380", VA = "0x18129D980")]
get
{
return this.toggle.OnClick;
}
}
// Token: 0x0600313C RID: 12604 RVA: 0x000CC7F4 File Offset: 0x000CA9F4
[Token(Token = "0x600313C")]
[Address(RVA = "0x1B06E80", Offset = "0x1B05880", VA = "0x181B06E80")]
private void Awake()
{
if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD)
{
Action<OOCCCGPICOG, bool> action = new Action(this.HNCNGJFLMEL);
}
ToggleButton3D.OnToggleButton3DClick onClick = this.toggle.OnClick;
UnityAction<bool> unityAction = new UnityAction(this.FDNLBBPECCJ);
onClick.AddListener(unityAction);
}
// Token: 0x0600313D RID: 12605 RVA: 0x000CC83C File Offset: 0x000CAA3C
[Token(Token = "0x600313D")]
[Address(RVA = "0x1B077F0", Offset = "0x1B061F0", VA = "0x181B077F0")]
private void OnDestroy()
{
if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD)
{
Action<OOCCCGPICOG, bool> action = new Action(this.HNCNGJFLMEL);
}
}
// Token: 0x0600313E RID: 12606 RVA: 0x000CC864 File Offset: 0x000CAA64
[Token(Token = "0x600313E")]
[Address(RVA = "0x1B078D0", Offset = "0x1B062D0", VA = "0x181B078D0")]
private void OnEnable()
{
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>k__BackingField;
int num = 0;
if (OOCCCGPICOG.BDBLGMKABNK(oocccgpicog, num))
{
this.EGEHAOPMCIB();
return;
}
}
// Token: 0x0600313F RID: 12607 RVA: 0x000CC88C File Offset: 0x000CAA8C
[Token(Token = "0x600313F")]
[Address(RVA = "0x1B076D0", Offset = "0x1B060D0", VA = "0x181B076D0")]
private void HNCNGJFLMEL(OOCCCGPICOG BAJGNABECMN, bool CNEIBILGFCO)
{
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>k__BackingField;
OOCCCGPICOG oocccgpicog2 = this.<EDNKKMAAFEB>k__BackingField;
string <CNJALCEBPMC>k__BackingField = BAJGNABECMN.<CNJALCEBPMC>k__BackingField;
this.EGEHAOPMCIB();
}
// Token: 0x06003140 RID: 12608 RVA: 0x000CC8BC File Offset: 0x000CAABC
[Token(Token = "0x6003140")]
[Address(RVA = "0x1B07900", Offset = "0x1B06300", VA = "0x181B07900")]
public void SetConsumable(OOCCCGPICOG BAJGNABECMN, StackedUIBase ANEGNEHDLOI)
{
int num;
do
{
num = 0;
int num2 = 0;
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>k__BackingField;
this.<EDNKKMAAFEB>k__BackingField = BAJGNABECMN;
IEnumerator enumerator = this.consumableRoot.GetEnumerator();
if (num < num2)
{
num += num;
num++;
}
int num3 = 0;
GameObject gameObject;
if (enumerator != 0)
{
if (num < num3)
{
num += num;
num++;
}
num += 19;
ulong num4;
num = (int)((ulong)num + num4);
num++;
num += 19;
num = (int)((ulong)num + num4);
if (num == 0 || num == 0)
{
goto IL_127;
}
global::UnityEngine.Object.Destroy(gameObject);
}
if (gameObject != 0)
{
}
if (num != -1)
{
}
}
while (num != 0);
OOCCCGPICOG oocccgpicog2 = this.<EDNKKMAAFEB>k__BackingField;
if (num == 0)
{
Func<Promise<GameObject>> func = new Func(this.DCMADBPBACL);
Text text = this.consumableName;
ConsumableInfo <JDADGBIDGIB>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<JDADGBIDGIB>k__BackingField;
string text2 = text.text;
Tooltip tooltip = this.tooltip;
int num5 = 0;
if (tooltip != num5)
{
Tooltip tooltip2 = this.tooltip;
string friendlyName = this.<EDNKKMAAFEB>k__BackingField.<JDADGBIDGIB>k__BackingField.FriendlyName;
tooltip2.Message = friendlyName;
Tooltip tooltip3 = this.tooltip;
string message = tooltip3.Message;
bool flag = friendlyName == 0;
tooltip3.enabled = flag;
}
this.EGEHAOPMCIB();
}
return;
IL_127:
throw new NullReferenceException();
}
// Token: 0x06003141 RID: 12609 RVA: 0x000CC9FC File Offset: 0x000CABFC
[Token(Token = "0x6003141")]
[Address(RVA = "0x1B070E0", Offset = "0x1B05AE0", VA = "0x181B070E0")]
private void EGEHAOPMCIB()
{
int num;
int num2;
do
{
num = 0;
if (!base.gameObject.activeInHierarchy)
{
return;
}
string <CNJALCEBPMC>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<CNJALCEBPMC>k__BackingField;
if (this.<EDNKKMAAFEB>k__BackingField.<JDADGBIDGIB>k__BackingField.LimitType != (ConsumableManager.FFCJLEMFFAJ)num)
{
Text text = this.count;
}
List.Enumerator enumerator;
if (enumerator != 0)
{
}
num2 = 0;
if (num2 != -1)
{
}
}
while (num != 0);
Text text2 = this.count;
string text3 = "x" + num2;
string text4 = text2.text;
string <CNJALCEBPMC>k__BackingField2 = this.<EDNKKMAAFEB>k__BackingField.<CNJALCEBPMC>k__BackingField;
ConsumableManager.FFCJLEMFFAJ limitType = this.<EDNKKMAAFEB>k__BackingField.<JDADGBIDGIB>k__BackingField.LimitType;
if (limitType != ConsumableManager.FFCJLEMFFAJ.Time && limitType != ConsumableManager.FFCJLEMFFAJ.RealWorldTime)
{
string text5 = this.timeLeft.text;
}
base.StopAllCoroutines();
bool flag;
if (!flag)
{
Text text6 = this.timeLeft;
int <MAAELOFEKIJ>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<MAAELOFEKIJ>k__BackingField;
string text7 = this.NMLKKAFFNIN(<MAAELOFEKIJ>k__BackingField);
string text8 = text6.text;
}
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>k__BackingField;
Text text9 = this.timeLeft;
int num3;
string text10 = this.NMLKKAFFNIN(num3);
string text11 = text9.text;
ConsumableButton.LOOAJFHEFHN looajfhefhn;
looajfhefhn.System.IDisposable.Dispose();
looajfhefhn.<>1__state = (int)((ulong)0L);
looajfhefhn.<>4__this = this;
looajfhefhn.seconds = num3;
Coroutine coroutine = base.StartCoroutine(looajfhefhn);
ConsumableTool consumableTool = ConsumableTool.FindConsumableTool(this.<EDNKKMAAFEB>k__BackingField.<JPAOOKPLEDB>k__BackingField);
ToggleButton3D toggleButton3D = this.toggle;
if (flag)
{
}
int num4 = 0;
bool activeSelf;
if (consumableTool != num4)
{
activeSelf = consumableTool.gameObject.activeSelf;
}
toggleButton3D.BOHIGPFGJBA = activeSelf;
GameObject gameObject = this.useText;
bool flag2 = !this.toggle.LLJFGDMOOFA;
gameObject.SetActive(flag2);
}
// Token: 0x06003142 RID: 12610 RVA: 0x000CCB98 File Offset: 0x000CAD98
[Token(Token = "0x6003142")]
[Address(RVA = "0x1B07070", Offset = "0x1B05A70", VA = "0x181B07070")]
private IEnumerator DJGAMOHHJNP(int HABFNPMBADP)
{
/*
An exception occurred when decompiling this method (06003142)
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(LOOAJFHEFHN::System.IDisposable.Dispose, ldloc:LOOAJFHEFHN(var_0))
stfld:ConsumableButton(LOOAJFHEFHN::<>4__this, ldloc:LOOAJFHEFHN(var_0), ldloc:ConsumableButton(this))
stfld:int32(LOOAJFHEFHN::<>1__state, ldloc:LOOAJFHEFHN(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:int32(LOOAJFHEFHN::seconds, ldloc:LOOAJFHEFHN(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 1663
*/;
}
// Token: 0x06003143 RID: 12611 RVA: 0x000CCBC4 File Offset: 0x000CADC4
[Token(Token = "0x6003143")]
[Address(RVA = "0x1B07730", Offset = "0x1B06130", VA = "0x181B07730")]
private string NMLKKAFFNIN(int HABFNPMBADP)
{
TimeSpan timeSpan;
return string.Format("{0} days", timeSpan);
}
// Token: 0x06003144 RID: 12612 RVA: 0x000CCBDC File Offset: 0x000CADDC
[Token(Token = "0x6003144")]
[Address(RVA = "0x15287B0", Offset = "0x15271B0", VA = "0x1815287B0")]
public ConsumableButton()
{
}
// Token: 0x06003145 RID: 12613 RVA: 0x000CCBFC File Offset: 0x000CADFC
[Token(Token = "0x6003145")]
[Address(RVA = "0x1B07690", Offset = "0x1B06090", VA = "0x181B07690")]
[CompilerGenerated]
private void FDNLBBPECCJ(bool LLJFGDMOOFA)
{
ToggleButton3D toggleButton3D = this.toggle;
GameObject gameObject = this.useText;
bool flag = !toggleButton3D.LLJFGDMOOFA;
gameObject.SetActive(flag);
}
// Token: 0x06003146 RID: 12614 RVA: 0x000CCC30 File Offset: 0x000CAE30
[Token(Token = "0x6003146")]
[Address(RVA = "0x1B06FB0", Offset = "0x1B059B0", VA = "0x181B06FB0")]
[CompilerGenerated]
private Promise<GameObject> DCMADBPBACL()
{
Promise<GameObject> promise = new Promise();
string <CNJALCEBPMC>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<CNJALCEBPMC>k__BackingField;
GameObject gameObject;
promise.Complete(gameObject);
return promise;
}
// Token: 0x04002A39 RID: 10809
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4002A39")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private ToggleButton3D toggle;
// Token: 0x04002A3A RID: 10810
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4002A3A")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.SelfAndChildren, false, false)]
private Tooltip tooltip;
// Token: 0x04002A3B RID: 10811
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4002A3B")]
[SerializeField]
private float localImposterRadius = 62.5f;
// Token: 0x04002A3C RID: 10812
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4002A3C")]
[SerializeField]
private Transform consumableRoot;
// Token: 0x04002A3D RID: 10813
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4002A3D")]
[SerializeField]
private Text consumableName;
// Token: 0x04002A3E RID: 10814
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4002A3E")]
[SerializeField]
private Text count;
// Token: 0x04002A3F RID: 10815
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x4002A3F")]
[SerializeField]
private Text timeLeft;
// Token: 0x04002A40 RID: 10816
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4002A40")]
[SerializeField]
private GameObject useText;
// Token: 0x04002A42 RID: 10818
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x4002A42")]
private Promise<GameObject> IGPGEOMGLDG;
}