359 lines
12 KiB
C#
359 lines
12 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Runtime.CompilerServices;
|
|
using AGUI.StackedUI;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Consumable;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
// Token: 0x020006A4 RID: 1700
|
|
[Token(Token = "0x20006A4")]
|
|
[RequireComponent(typeof(ToggleButton3D))]
|
|
public class ConsumableButton : MonoBehaviour
|
|
{
|
|
// Token: 0x17000885 RID: 2181
|
|
// (get) Token: 0x0600315A RID: 12634 RVA: 0x000C8988 File Offset: 0x000C6B88
|
|
// (set) Token: 0x0600315B RID: 12635 RVA: 0x000C899C File Offset: 0x000C6B9C
|
|
[Token(Token = "0x17000885")]
|
|
public OOCCCGPICOG GCPFILALGKL
|
|
{
|
|
[Token(Token = "0x600315A")]
|
|
[Address(RVA = "0x417710", Offset = "0x416710", VA = "0x180417710")]
|
|
get;
|
|
[Token(Token = "0x600315B")]
|
|
[Address(RVA = "0x417A10", Offset = "0x416A10", VA = "0x180417A10")]
|
|
private set;
|
|
}
|
|
|
|
// Token: 0x17000886 RID: 2182
|
|
// (get) Token: 0x0600315C RID: 12636 RVA: 0x000C89B0 File Offset: 0x000C6BB0
|
|
[Token(Token = "0x17000886")]
|
|
public ToggleButton3D.OnToggleButton3DClick PAALHPHGBDF
|
|
{
|
|
[Token(Token = "0x600315C")]
|
|
[Address(RVA = "0x185AF50", Offset = "0x1859F50", VA = "0x18185AF50")]
|
|
get
|
|
{
|
|
return this.toggle.OnClick;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600315D RID: 12637 RVA: 0x000C89D0 File Offset: 0x000C6BD0
|
|
[Token(Token = "0x600315D")]
|
|
[Address(RVA = "0x1C567C0", Offset = "0x1C557C0", VA = "0x181C567C0")]
|
|
private void Awake()
|
|
{
|
|
if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD)
|
|
{
|
|
Action<OOCCCGPICOG, bool> action = new Action(this.HNCNGJFLMEL);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600315E RID: 12638 RVA: 0x000C89F8 File Offset: 0x000C6BF8
|
|
[Token(Token = "0x600315E")]
|
|
[Address(RVA = "0x1C57020", Offset = "0x1C56020", VA = "0x181C57020")]
|
|
private void OnDestroy()
|
|
{
|
|
if (NetworkedSingletonMonoBehaviour.FFNIFALJLDD)
|
|
{
|
|
Action<OOCCCGPICOG, bool> action = new Action(this.HNCNGJFLMEL);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600315F RID: 12639 RVA: 0x000C8A20 File Offset: 0x000C6C20
|
|
[Token(Token = "0x600315F")]
|
|
[Address(RVA = "0x1C57100", Offset = "0x1C56100", VA = "0x181C57100")]
|
|
private void OnEnable()
|
|
{
|
|
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>k__BackingField;
|
|
int num = 0;
|
|
if (OOCCCGPICOG.BDBLGMKABNK(oocccgpicog, num))
|
|
{
|
|
this.EGEHAOPMCIB();
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06003160 RID: 12640 RVA: 0x000C8A48 File Offset: 0x000C6C48
|
|
[Token(Token = "0x6003160")]
|
|
[Address(RVA = "0x1C56F00", Offset = "0x1C55F00", VA = "0x181C56F00")]
|
|
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: 0x06003161 RID: 12641 RVA: 0x000C8A78 File Offset: 0x000C6C78
|
|
[Token(Token = "0x6003161")]
|
|
[Address(RVA = "0x1C57520", Offset = "0x1C56520", VA = "0x181C57520")]
|
|
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: 0x06003162 RID: 12642 RVA: 0x000C8AC4 File Offset: 0x000C6CC4
|
|
[Token(Token = "0x6003162")]
|
|
[Address(RVA = "0x1C57130", Offset = "0x1C56130", VA = "0x181C57130")]
|
|
public void SetConsumable(OOCCCGPICOG BAJGNABECMN, StackedUIBase ANEGNEHDLOI)
|
|
{
|
|
int num;
|
|
GameObject gameObject;
|
|
do
|
|
{
|
|
num = 0;
|
|
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>k__BackingField;
|
|
this.<EDNKKMAAFEB>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.<EDNKKMAAFEB>k__BackingField;
|
|
if (gameObject == 0)
|
|
{
|
|
ConsumableInfo consumableInfo = BAJGNABECMN.LENBPGEABJK();
|
|
if (consumableInfo == 0 || consumableInfo.FriendlyName == 0)
|
|
{
|
|
}
|
|
Func<JCOINEEFENJ<GameObject>> 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: 0x06003163 RID: 12643 RVA: 0x000C8BD0 File Offset: 0x000C6DD0
|
|
[Token(Token = "0x6003163")]
|
|
[Address(RVA = "0x1C569D0", Offset = "0x1C559D0", VA = "0x181C569D0")]
|
|
private void EGEHAOPMCIB()
|
|
{
|
|
int num;
|
|
ConsumableInfo consumableInfo;
|
|
do
|
|
{
|
|
num = 0;
|
|
if (!base.gameObject.activeInHierarchy)
|
|
{
|
|
return;
|
|
}
|
|
consumableInfo = this.<EDNKKMAAFEB>k__BackingField.LENBPGEABJK();
|
|
string <CNJALCEBPMC>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<CNJALCEBPMC>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 <CNJALCEBPMC>k__BackingField2 = this.<EDNKKMAAFEB>k__BackingField.<CNJALCEBPMC>k__BackingField;
|
|
bool flag2;
|
|
if (consumableInfo != 0 && consumableInfo.LimitType <= ConsumableManager.FFCJLEMFFAJ.Time)
|
|
{
|
|
base.StopAllCoroutines();
|
|
if (!flag2)
|
|
{
|
|
Text text8 = this.timeLeft;
|
|
int <MAAELOFEKIJ>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<MAAELOFEKIJ>k__BackingField;
|
|
string text9 = this.NMLKKAFFNIN(<MAAELOFEKIJ>k__BackingField);
|
|
}
|
|
OOCCCGPICOG oocccgpicog = this.<EDNKKMAAFEB>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.<EDNKKMAAFEB>k__BackingField.<JPAOOKPLEDB>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: 0x06003164 RID: 12644 RVA: 0x000C8D64 File Offset: 0x000C6F64
|
|
[Token(Token = "0x6003164")]
|
|
[Address(RVA = "0x1C56960", Offset = "0x1C55960", VA = "0x181C56960")]
|
|
private IEnumerator DJGAMOHHJNP(int HABFNPMBADP)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06003164)
|
|
|
|
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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06003165 RID: 12645 RVA: 0x000C8D90 File Offset: 0x000C6F90
|
|
[Token(Token = "0x6003165")]
|
|
[Address(RVA = "0x1C56F60", Offset = "0x1C55F60", VA = "0x181C56F60")]
|
|
private string NMLKKAFFNIN(int HABFNPMBADP)
|
|
{
|
|
string text;
|
|
return text;
|
|
}
|
|
|
|
// Token: 0x06003166 RID: 12646 RVA: 0x000C8DB4 File Offset: 0x000C6FB4
|
|
[Token(Token = "0x6003166")]
|
|
[Address(RVA = "0x17D30F0", Offset = "0x17D20F0", VA = "0x1817D30F0")]
|
|
public ConsumableButton()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06003167 RID: 12647 RVA: 0x000C8DD4 File Offset: 0x000C6FD4
|
|
[Token(Token = "0x6003167")]
|
|
[Address(RVA = "0x1C568A0", Offset = "0x1C558A0", VA = "0x181C568A0")]
|
|
[CompilerGenerated]
|
|
private JCOINEEFENJ<GameObject> BJDEOHMJBKN()
|
|
{
|
|
DCLIBCDKJNF<GameObject> dclibcdkjnf = new DCLIBCDKJNF();
|
|
string <CNJALCEBPMC>k__BackingField = this.<EDNKKMAAFEB>k__BackingField.<CNJALCEBPMC>k__BackingField;
|
|
GameObject gameObject;
|
|
dclibcdkjnf.OOOIENHGNCA(gameObject);
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x040028C7 RID: 10439
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x40028C7")]
|
|
[SerializeField]
|
|
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
|
|
private ToggleButton3D toggle;
|
|
|
|
// Token: 0x040028C8 RID: 10440
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x40028C8")]
|
|
[SerializeField]
|
|
[NKNLDEIPALE(FHBJCBPFODN.SelfAndChildren, false, false, false)]
|
|
private Tooltip tooltip;
|
|
|
|
// Token: 0x040028C9 RID: 10441
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x40028C9")]
|
|
[SerializeField]
|
|
private float localImposterRadius = 62.5f;
|
|
|
|
// Token: 0x040028CA RID: 10442
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x40028CA")]
|
|
[SerializeField]
|
|
private Transform consumableRoot;
|
|
|
|
// Token: 0x040028CB RID: 10443
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x40028CB")]
|
|
[SerializeField]
|
|
private Text consumableName;
|
|
|
|
// Token: 0x040028CC RID: 10444
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x40028CC")]
|
|
[SerializeField]
|
|
private Text count;
|
|
|
|
// Token: 0x040028CD RID: 10445
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x40028CD")]
|
|
[SerializeField]
|
|
private Text timeLeft;
|
|
|
|
// Token: 0x040028CE RID: 10446
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x40028CE")]
|
|
[SerializeField]
|
|
private GameObject useText;
|
|
|
|
// Token: 0x040028D0 RID: 10448
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x40028D0")]
|
|
private JCOINEEFENJ<GameObject> IGPGEOMGLDG;
|
|
}
|