terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
ItemTooltip.cs
Go to the documentation of this file.
1using System;
5
6namespace Terraria.UI
7{
8 // Token: 0x02000712 RID: 1810
9 public class ItemTooltip
10 {
11 // Token: 0x17000761 RID: 1889
12 // (get) Token: 0x06003BF1 RID: 15345 RVA: 0x002354A4 File Offset: 0x002336A4
13 public int Lines
14 {
15 get
16 {
17 this.ValidateTooltip();
18 if (this._tooltipLines != null)
19 {
20 return;
21 }
22 }
23 }
24
25 // Token: 0x06003BF2 RID: 15346 RVA: 0x002354C0 File Offset: 0x002336C0
26 private ItemTooltip()
27 {
28 }
29
30 // Token: 0x06003BF3 RID: 15347 RVA: 0x002354D4 File Offset: 0x002336D4
31 private ItemTooltip(short id, string key)
32 {
35 this._id = id;
36 }
37
38 // Token: 0x06003BF4 RID: 15348 RVA: 0x000021DB File Offset: 0x000003DB
39 public static ItemTooltip FromLanguageKey(short id, string key)
40 {
41 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
42 }
43
44 // Token: 0x06003BF5 RID: 15349 RVA: 0x002354FC File Offset: 0x002336FC
45 public string GetLine(int line)
46 {
47 /*
48An exception occurred when decompiling this method (06003BF5)
49
50ICSharpCode.Decompiler.DecompilerException: Error decompiling System.String Terraria.UI.ItemTooltip::GetLine(System.Int32)
51
52 ---> System.Exception: Basic block has to end with unconditional control flow.
53{
54 Block_0:
55 call:void(ItemTooltip::ValidateTooltip, ldloc:ItemTooltip(this))
56 stloc:string[](var_0_0C, ldfld:string[](ItemTooltip::_tooltipLines, ldloc:ItemTooltip(this)))
57}
58
59 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
60 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
61 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
62 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
63 --- End of inner exception stack trace ---
64 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
65 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 1683
66*/;
67 }
68
69 // Token: 0x06003BF6 RID: 15350 RVA: 0x00235518 File Offset: 0x00233718
70 private void ValidateTooltip()
71 {
73 if (!true)
74 {
75 }
77 if (text != null)
78 {
79 string <Value>k__BackingField = text.<Value>k__BackingField;
80 short id = this._id;
81 return;
82 }
83 }
84
85 // Token: 0x06003BF7 RID: 15351 RVA: 0x00235570 File Offset: 0x00233770
87 {
88 if (!true)
89 {
90 }
91 }
92
93 // Token: 0x06003BF8 RID: 15352 RVA: 0x00235584 File Offset: 0x00233784
95 {
96 if (!true)
97 {
98 }
99 }
100
101 // Token: 0x06003BF9 RID: 15353 RVA: 0x00235594 File Offset: 0x00233794
102 public static void ClearGlobalProcessors()
103 {
104 if (!true)
105 {
106 }
107 }
108
109 // Token: 0x06003BFA RID: 15354 RVA: 0x002355A8 File Offset: 0x002337A8
110 public static void InvalidateTooltips()
111 {
112 if (!true)
113 {
114 }
115 }
116
117 // Token: 0x06003BFB RID: 15355 RVA: 0x002355B8 File Offset: 0x002337B8
118 // Note: this type is marked as 'beforefieldinit'.
119 static ItemTooltip()
120 {
121 }
122
123 // Token: 0x04007B5B RID: 31579
124 public static readonly ItemTooltip None;
125
126 // Token: 0x04007B5C RID: 31580
128
129 // Token: 0x04007B5D RID: 31581
131
132 // Token: 0x04007B5E RID: 31582
133 private string[] _tooltipLines;
134
135 // Token: 0x04007B5F RID: 31583
137
138 // Token: 0x04007B60 RID: 31584
140
141 // Token: 0x04007B61 RID: 31585
142 private string _processedText;
143
144 // Token: 0x04007B62 RID: 31586
145 private readonly short _id;
146 }
147}
class f__AnonymousType0<< Count > j__TPar
static LocalizedText GetText(string key)
Definition Language.cs:44
static readonly List< TooltipProcessor > _globalProcessors
static ulong _globalValidatorKey
static ItemTooltip FromLanguageKey(short id, string key)
static void AddGlobalProcessor(TooltipProcessor processor)
string GetLine(int line)
readonly LocalizedText _text
static void InvalidateTooltips()
static readonly ItemTooltip None
ItemTooltip(short id, string key)
static void ClearGlobalProcessors()
static void RemoveGlobalProcessor(TooltipProcessor processor)