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
GUIItemGrid.cs
Go to the documentation of this file.
1using System;
6using Terraria;
7
8// Token: 0x0200010C RID: 268
9public static class GUIItemGrid
10{
11 // Token: 0x060006C6 RID: 1734 RVA: 0x00016AD0 File Offset: 0x00014CD0
12 private static void DummyDraw(ItemGrid_Layout gridLayout, int itemIndex, Vector2 position, float scale)
13 {
14 int num = 1;
15 if (num == 0)
16 {
17 }
18 int num2 = 32640;
19 if (num2 == 0)
20 {
21 }
22 if (num == 0)
23 {
24 }
25 if (num2 == 0)
26 {
27 }
28 }
29
30 // Token: 0x060006C7 RID: 1735 RVA: 0x00016AF8 File Offset: 0x00014CF8
32 {
33 /*
34An exception occurred when decompiling this method (060006C7)
35
36ICSharpCode.Decompiler.DecompilerException: Error decompiling Microsoft.Xna.Framework.Rectangle GUIItemGrid::CalculateRegion(ItemGrid_Layout,GUIItemGrid/GetItemScaleHandler,Microsoft.Xna.Framework.Vector2,System.Int32)
37
38 ---> System.Exception: Basic block has to end with unconditional control flow.
39{
40 IL_0000:
41 brtrue(IL_0000, ldc.i4:bool(1))
42}
43
44 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
45 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
46 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
47 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
48 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
49 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
50 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
51 --- End of inner exception stack trace ---
52 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
53 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
54*/;
55 }
56
57 // Token: 0x060006C8 RID: 1736 RVA: 0x00016B08 File Offset: 0x00014D08
59 {
60 if (overloadedItemCount != 0 || !true)
61 {
62 }
63 if (!true)
64 {
65 }
66 if (!true)
67 {
68 }
70 return rectangle;
71 }
72
73 // Token: 0x060006C9 RID: 1737 RVA: 0x00016B24 File Offset: 0x00014D24
75 {
76 if (overloadBackingTexture != null)
77 {
78 if (!true)
79 {
80 }
81 Vector2 vector = overloadBackingTexture.Size();
82 if (!true)
83 {
84 }
85 return;
86 }
87 if (!true)
88 {
89 }
90 }
91
92 // Token: 0x060006CA RID: 1738 RVA: 0x00016B48 File Offset: 0x00014D48
94 {
95 int num = 1;
97 Vector2 firstItemLocation = gridLayout.FirstItemLocation;
98 float x = gridLayout.FirstItemLocation.X;
99 float y = gridLayout.FirstItemLocation.Y;
100 if (num == 0)
101 {
102 }
103 IntPtr invoke_impl = scaleHandler.invoke_impl;
104 IntPtr method_code = scaleHandler.method_code;
105 bool horizontal = gridLayout.Horizontal;
106 int itemCount = gridLayout.ItemCount;
107 if (gridLayout.CentreAlign)
108 {
109 return;
110 }
111 if (gridLayout.RightAlign)
112 {
113 IntPtr invoke_impl2 = itemSizeHandler.invoke_impl;
114 IntPtr method_code2 = itemSizeHandler.method_code;
115 IntPtr method = itemSizeHandler.method;
116 if (horizontal)
117 {
118 float x2 = gridLayout.ExtraElementSpacing.X;
119 }
120 bool centreAlign = gridLayout.CentreAlign;
121 return;
122 }
124 IntPtr invoke_impl3 = itemSizeHandler.invoke_impl;
125 IntPtr method_code3 = itemSizeHandler.method_code;
127 if (horizontal)
128 {
129 if (gridLayout.CentreAlign || gridLayout.RightAlign)
130 {
131 IntPtr invoke_impl4 = itemSizeHandler.invoke_impl;
132 IntPtr method_code4 = itemSizeHandler.method_code;
134 float x3 = gridLayout.ExtraElementSpacing.X;
135 if (gridLayout.CentreAlign)
136 {
137 return;
138 }
139 if (gridLayout.RightAlign)
140 {
141 }
142 }
143 float y2 = gridLayout.ExtraElementSpacing.Y;
144 }
146 float y3 = gridLayout.ExtraElementSpacing.Y;
148 {
149 }
150 }
151
152 // Token: 0x060006CB RID: 1739 RVA: 0x00016D90 File Offset: 0x00014F90
154 {
155 int num = 1;
156 if (num == 0)
157 {
158 }
159 if (num != 0)
160 {
161 IntPtr invoke_impl = scaleHandler.invoke_impl;
162 IntPtr method_code = scaleHandler.method_code;
163 IntPtr method = scaleHandler.method;
164 return;
165 }
166 }
167
168 // Token: 0x060006CC RID: 1740 RVA: 0x00016F0C File Offset: 0x0001510C
169 // Note: this type is marked as 'beforefieldinit'.
170 static GUIItemGrid()
171 {
172 }
173
174 // Token: 0x04000560 RID: 1376
175 public static bool disablePickingCallbacks;
176
177 // Token: 0x04000561 RID: 1377
179
180 // Token: 0x04000562 RID: 1378
181 private static int calcBackingWidth;
182
183 // Token: 0x04000563 RID: 1379
184 private static int calcBackingHeight;
185
186 // Token: 0x04000564 RID: 1380
187 private static bool calcRegionInitialised;
188
189 // Token: 0x04000565 RID: 1381
191
192 // Token: 0x0200010D RID: 269
193 public sealed class CursorOver : MulticastDelegate
194 {
195 // Token: 0x060006CD RID: 1741 RVA: 0x00016F1C File Offset: 0x0001511C
196 public CursorOver(object @object, IntPtr method)
197 {
199 this.m_target = @object;
201 this.method_code = this;
202 }
203
204 // Token: 0x060006CE RID: 1742 RVA: 0x00016F70 File Offset: 0x00015170
205 public void Invoke(int itemIndex)
206 {
209 IntPtr method = this.method;
210 }
211
212 // Token: 0x060006CF RID: 1743 RVA: 0x000021DB File Offset: 0x000003DB
213 public IAsyncResult BeginInvoke(int itemIndex, AsyncCallback callback, object @object)
214 {
215 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
216 }
217
218 // Token: 0x060006D0 RID: 1744 RVA: 0x00016F94 File Offset: 0x00015194
219 public void EndInvoke(IAsyncResult result)
220 {
221 }
222 }
223
224 // Token: 0x0200010E RID: 270
226 {
227 // Token: 0x060006D1 RID: 1745 RVA: 0x00016FA4 File Offset: 0x000151A4
228 public GetItemScaleHandler(object @object, IntPtr method)
229 {
231 this.m_target = @object;
233 this.method_code = this;
234 }
235
236 // Token: 0x060006D2 RID: 1746 RVA: 0x00016FF8 File Offset: 0x000151F8
237 public float Invoke(int itemIndex)
238 {
239 /*
240An exception occurred when decompiling this method (060006D2)
241
242ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Single GUIItemGrid/GetItemScaleHandler::Invoke(System.Int32)
243
244 ---> System.Exception: Basic block has to end with unconditional control flow.
245{
246 Block_0:
247 stloc:native int(var_0_06, ldfld:native int(Delegate::method_code, ldloc:GetItemScaleHandler[exp:Delegate](this)))
248 stloc:native int(var_1_0D, ldfld:native int(Delegate::invoke_impl, ldloc:GetItemScaleHandler[exp:Delegate](this)))
249 stloc:native int(var_2_14, ldfld:native int(Delegate::method, ldloc:GetItemScaleHandler[exp:Delegate](this)))
250}
251
252 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
253 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
254 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
255 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
256 --- End of inner exception stack trace ---
257 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
258 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
259*/;
260 }
261
262 // Token: 0x060006D3 RID: 1747 RVA: 0x000021DB File Offset: 0x000003DB
263 public IAsyncResult BeginInvoke(int itemIndex, AsyncCallback callback, object @object)
264 {
265 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
266 }
267
268 // Token: 0x060006D4 RID: 1748 RVA: 0x000021DB File Offset: 0x000003DB
269 public float EndInvoke(IAsyncResult result)
270 {
271 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
272 }
273 }
274
275 // Token: 0x0200010F RID: 271
276 public sealed class DrawItemHandler : MulticastDelegate
277 {
278 // Token: 0x060006D5 RID: 1749 RVA: 0x0001701C File Offset: 0x0001521C
279 public DrawItemHandler(object @object, IntPtr method)
280 {
282 this.m_target = @object;
284 this.method_code = this;
285 }
286
287 // Token: 0x060006D6 RID: 1750 RVA: 0x0001707C File Offset: 0x0001527C
288 public void Invoke(ItemGrid_Layout gridLayout, int itemIndex, Vector2 position, float scale)
289 {
292 IntPtr method = this.method;
293 }
294
295 // Token: 0x060006D7 RID: 1751 RVA: 0x000021DB File Offset: 0x000003DB
296 public IAsyncResult BeginInvoke(ItemGrid_Layout gridLayout, int itemIndex, Vector2 position, float scale, AsyncCallback callback, object @object)
297 {
298 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
299 }
300
301 // Token: 0x060006D8 RID: 1752 RVA: 0x000170A0 File Offset: 0x000152A0
302 public void EndInvoke(IAsyncResult result)
303 {
304 }
305 }
306
307 // Token: 0x02000110 RID: 272
309 {
310 // Token: 0x060006D9 RID: 1753 RVA: 0x000170B0 File Offset: 0x000152B0
311 public GetItemSizeHandler(object @object, IntPtr method)
312 {
314 this.m_target = @object;
316 this.method_code = this;
317 }
318
319 // Token: 0x060006DA RID: 1754 RVA: 0x00017104 File Offset: 0x00015304
321 {
322 /*
323An exception occurred when decompiling this method (060006DA)
324
325ICSharpCode.Decompiler.DecompilerException: Error decompiling Microsoft.Xna.Framework.Vector2 GUIItemGrid/GetItemSizeHandler::Invoke(System.Int32)
326
327 ---> System.Exception: Basic block has to end with unconditional control flow.
328{
329 Block_0:
330 stloc:native int(var_0_06, ldfld:native int(Delegate::method_code, ldloc:GetItemSizeHandler[exp:Delegate](this)))
331 stloc:native int(var_1_0D, ldfld:native int(Delegate::invoke_impl, ldloc:GetItemSizeHandler[exp:Delegate](this)))
332 stloc:native int(var_2_14, ldfld:native int(Delegate::method, ldloc:GetItemSizeHandler[exp:Delegate](this)))
333}
334
335 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
336 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
337 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
338 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
339 --- End of inner exception stack trace ---
340 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
341 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
342*/;
343 }
344
345 // Token: 0x060006DB RID: 1755 RVA: 0x000021DB File Offset: 0x000003DB
346 public IAsyncResult BeginInvoke(int itemIndex, AsyncCallback callback, object @object)
347 {
348 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
349 }
350
351 // Token: 0x060006DC RID: 1756 RVA: 0x00017128 File Offset: 0x00015328
353 {
354 Vector2 vector;
355 return vector;
356 }
357 }
358}
class f__AnonymousType0<< Count > j__TPar
void Invoke(int itemIndex)
void EndInvoke(IAsyncResult result)
CursorOver(object @object, IntPtr method)
IAsyncResult BeginInvoke(int itemIndex, AsyncCallback callback, object @object)
void Invoke(ItemGrid_Layout gridLayout, int itemIndex, Vector2 position, float scale)
void EndInvoke(IAsyncResult result)
IAsyncResult BeginInvoke(ItemGrid_Layout gridLayout, int itemIndex, Vector2 position, float scale, AsyncCallback callback, object @object)
DrawItemHandler(object @object, IntPtr method)
float EndInvoke(IAsyncResult result)
float Invoke(int itemIndex)
GetItemScaleHandler(object @object, IntPtr method)
IAsyncResult BeginInvoke(int itemIndex, AsyncCallback callback, object @object)
IAsyncResult BeginInvoke(int itemIndex, AsyncCallback callback, object @object)
Vector2 Invoke(int itemIndex)
GetItemSizeHandler(object @object, IntPtr method)
Vector2 EndInvoke(IAsyncResult result)
static void Draw(ItemGrid_Layout gridLayout, GUIItemGrid.GetItemScaleHandler scaleHandler, GUIItemGrid.CursorOver cursorOverHandler, GUIItemGrid.DrawItemHandler drawhandler, int overloadedItemCount=-1, [Optional] Texture2D overloadBackingTexture)
static bool disablePickingCallbacks
static GUIItemGrid()
static Rectangle CalculateRegion(ItemGrid_Layout gridLayout, GUIItemGrid.GetItemScaleHandler scaleHandler, int overloadedItemCount=-1, [Optional] Texture2D overloadBackingTexture)
static void Draw(ItemGrid_Layout gridLayout, GUIItemGrid.GetItemScaleHandler scaleHandler, GUIItemGrid.CursorOver cursorOverHandler, GUIItemGrid.DrawItemHandler drawhandler, GUIItemGrid.GetItemSizeHandler itemSizeHandler, int overloadedItemCount=-1, int reverseOrverOffset=0, int maxRowSize=-1, int maxRowSizeLineCount=1)
static GUIItemGrid.DrawItemHandler dummyDraw
static int calcBackingWidth
static void Draw(ItemGrid_Layout gridLayout, GUIItemGrid.GetItemScaleHandler scaleHandler, GUIItemGrid.CursorOver cursorOverHandler, GUIItemGrid.DrawItemHandler drawhandler, Vector2 itemSize, int overloadedItemCount=-1)
static int calcBackingHeight
static Rectangle CalculateRegion(ItemGrid_Layout gridLayout, GUIItemGrid.GetItemScaleHandler scaleHandler, Vector2 itemSize, int overloadedItemCount=-1)
static bool calcRegionInitialised
static void DummyDraw(ItemGrid_Layout gridLayout, int itemIndex, Vector2 position, float scale)
static Rectangle calculatedRegion
IntPtr method_code
Definition Delegate.cs:386
IntPtr invoke_impl
Definition Delegate.cs:371