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
ItemVariants.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x02000867 RID: 2151
8 public static class ItemVariants
9 {
10 // Token: 0x060043AC RID: 17324 RVA: 0x0024E708 File Offset: 0x0024C908
12 {
13 /*
14An exception occurred when decompiling this method (060043AC)
15
16ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerable`1<Terraria.GameContent.Items.ItemVariants/VariantEntry> Terraria.GameContent.Items.ItemVariants::GetVariants(System.Int32)
17
18 ---> System.Exception: Basic block has to end with unconditional control flow.
19{
20 IL_0005:
21 brtrue(IL_0000, ldloc:int32[exp:bool](var_0_01))
22}
23
24 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
25 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
26 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
27 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
28 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
29 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
30 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
31 --- End of inner exception stack trace ---
32 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
33 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
34*/;
35 }
36
37 // Token: 0x060043AD RID: 17325 RVA: 0x0024E71C File Offset: 0x0024C91C
47
48 // Token: 0x060043AE RID: 17326 RVA: 0x0024E738 File Offset: 0x0024C938
49 public static void AddVariant(int itemId, ItemVariant variant, params ItemVariantCondition[] conditions)
50 {
51 int num = 1;
52 if (num == 0)
53 {
54 }
55 if (ItemVariants.GetEntry(itemId, variant) == null)
56 {
57 if (num == 0)
58 {
59 }
60 if (num == 0)
61 {
62 }
63 return;
64 }
65 }
66
67 // Token: 0x060043AF RID: 17327 RVA: 0x0024E760 File Offset: 0x0024C960
68 public static bool HasVariant(int itemId, ItemVariant variant)
69 {
70 /*
71An exception occurred when decompiling this method (060043AF)
72
73ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.Items.ItemVariants::HasVariant(System.Int32,Terraria.GameContent.Items.ItemVariant)
74
75 ---> System.Exception: Basic block has to end with unconditional control flow.
76{
77 IL_0000:
78 brtrue(IL_0000, ldc.i4:bool(1))
79}
80
81 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
82 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
83 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
84 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
85 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
86 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
87 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
88 --- End of inner exception stack trace ---
89 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
90 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
91*/;
92 }
93
94 // Token: 0x060043B0 RID: 17328 RVA: 0x0024E770 File Offset: 0x0024C970
95 public static ItemVariant SelectVariant(int itemId)
96 {
97 if (!true)
98 {
99 }
100 throw new OutOfMemoryException();
101 }
102
103 // Token: 0x060043B1 RID: 17329 RVA: 0x0024E794 File Offset: 0x0024C994
105 {
106 }
107
108 // Token: 0x0400819A RID: 33178
110
111 // Token: 0x0400819B RID: 33179
113
114 // Token: 0x0400819C RID: 33180
116
117 // Token: 0x0400819D RID: 33181
119
120 // Token: 0x0400819E RID: 33182
122
123 // Token: 0x0400819F RID: 33183
125
126 // Token: 0x040081A0 RID: 33184
128
129 // Token: 0x040081A1 RID: 33185
131
132 // Token: 0x040081A2 RID: 33186
134
135 // Token: 0x02000868 RID: 2152
136 public class VariantEntry
137 {
138 // Token: 0x170007D1 RID: 2001
139 // (get) Token: 0x060043B2 RID: 17330 RVA: 0x0024E7A8 File Offset: 0x0024C9A8
141 {
142 get
143 {
144 /*
145An exception occurred when decompiling this method (060043B2)
146
147ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerable`1<Terraria.GameContent.Items.ItemVariantCondition> Terraria.GameContent.Items.ItemVariants/VariantEntry::get_Conditions()
148
149 ---> System.Exception: Basic block has to end with unconditional control flow.
150{
151 Block_0:
152 stloc:class [mscorlib]System.Collections.Generic.List`1<class Terraria.GameContent.Items.ItemVariantCondition>(var_0_06, ldfld:class [mscorlib]System.Collections.Generic.List`1<class Terraria.GameContent.Items.ItemVariantCondition>(VariantEntry::_conditions, ldloc:VariantEntry(this)))
153}
154
155 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
156 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
157 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
158 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
159 --- End of inner exception stack trace ---
160 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
161 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
162*/;
163 }
164 }
165
166 // Token: 0x060043B3 RID: 17331 RVA: 0x0024E7BC File Offset: 0x0024C9BC
171
172 // Token: 0x060043B4 RID: 17332 RVA: 0x0024E7D8 File Offset: 0x0024C9D8
177
178 // Token: 0x060043B5 RID: 17333 RVA: 0x0024E7EC File Offset: 0x0024C9EC
179 public bool AnyConditionMet()
180 {
181 List<ItemVariantCondition> conditions = this._conditions;
182 if (!true)
183 {
184 }
185 if (!true)
186 {
187 }
188 bool flag;
189 return flag;
190 }
191
192 // Token: 0x040081A3 RID: 33187
194
195 // Token: 0x040081A4 RID: 33188
197
198 // Token: 0x02000869 RID: 2153
200 [Serializable]
201 private sealed class <>c
202 {
203 // Token: 0x060043B6 RID: 17334 RVA: 0x00003BB6 File Offset: 0x00001DB6
204 // Note: this type is marked as 'beforefieldinit'.
205 static <>c()
206 {
207 }
208
209 // Token: 0x060043B7 RID: 17335 RVA: 0x00003BB6 File Offset: 0x00001DB6
210 public <>c()
211 {
212 }
213
214 // Token: 0x060043B8 RID: 17336 RVA: 0x0024E808 File Offset: 0x0024CA08
216 {
217 return default(bool);
218 }
219
220 // Token: 0x040081A5 RID: 33189
221 public static readonly ItemVariants.VariantEntry.<>c <>9;
222
223 // Token: 0x040081A6 RID: 33190
225 }
226 }
227
228 // Token: 0x0200086A RID: 2154
230 private sealed class <>c__DisplayClass3_0
231 {
232 // Token: 0x060043B9 RID: 17337 RVA: 0x0024E820 File Offset: 0x0024CA20
234 {
235 }
236
237 // Token: 0x060043BA RID: 17338 RVA: 0x0024E834 File Offset: 0x0024CA34
238 internal bool <GetEntry>b__0(ItemVariants.VariantEntry v)
239 {
240 /*
241An exception occurred when decompiling this method (060043BA)
242
243ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.Items.ItemVariants/<>c__DisplayClass3_0::<GetEntry>b__0(Terraria.GameContent.Items.ItemVariants/VariantEntry)
244
245 ---> System.Exception: Basic block has to end with unconditional control flow.
246{
247 Block_0:
248 stloc:ItemVariant(var_0_06, ldfld:ItemVariant(VariantEntry::Variant, ldloc:VariantEntry(v)))
249 stloc:ItemVariant(var_1_0D, ldfld:ItemVariant('<>c__DisplayClass3_0'::variant, ldloc:'<>c__DisplayClass3_0'(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: 0x040081A7 RID: 33191
263 public ItemVariant variant;
264 }
265
266 // Token: 0x0200086B RID: 2155
268 [Serializable]
269 private sealed class <>c
270 {
271 // Token: 0x060043BB RID: 17339 RVA: 0x0024E850 File Offset: 0x0024CA50
272 // Note: this type is marked as 'beforefieldinit'.
273 static <>c()
274 {
275 }
276
277 // Token: 0x060043BC RID: 17340 RVA: 0x0024E860 File Offset: 0x0024CA60
278 public <>c()
279 {
280 }
281
282 // Token: 0x060043BD RID: 17341 RVA: 0x0024E874 File Offset: 0x0024CA74
283 internal bool <.cctor>b__15_0()
284 {
285 /*
286An exception occurred when decompiling this method (060043BD)
287
288ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.Items.ItemVariants/<>c::<.cctor>b__15_0()
289
290 ---> System.Exception: Basic block has to end with unconditional control flow.
291{
292 IL_0000:
293 brtrue(IL_0000, ldc.i4:bool(1))
294}
295
296 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
297 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
298 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
299 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
300 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
301 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
302 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
303 --- End of inner exception stack trace ---
304 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
305 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
306*/;
307 }
308
309 // Token: 0x060043BE RID: 17342 RVA: 0x0024E884 File Offset: 0x0024CA84
310 internal bool <.cctor>b__15_1()
311 {
312 /*
313An exception occurred when decompiling this method (060043BE)
314
315ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.Items.ItemVariants/<>c::<.cctor>b__15_1()
316
317 ---> System.Exception: Basic block has to end with unconditional control flow.
318{
319 IL_0000:
320 brtrue(IL_0000, ldc.i4:bool(1))
321}
322
323 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
324 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
325 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
326 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
327 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
328 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
329 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
330 --- End of inner exception stack trace ---
331 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
332 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
333*/;
334 }
335
336 // Token: 0x060043BF RID: 17343 RVA: 0x0024E894 File Offset: 0x0024CA94
337 internal bool <.cctor>b__15_2()
338 {
339 if (!true)
340 {
341 return;
342 }
343 }
344
345 // Token: 0x040081A8 RID: 33192
346 public static readonly ItemVariants.<>c <>9;
347 }
348 }
349}
class f__AnonymousType0<< Count > j__TPar
IEnumerable< ItemVariantCondition > Conditions
readonly List< ItemVariantCondition > _conditions
void AddConditions(IEnumerable< ItemVariantCondition > conditions)
static ItemVariants.VariantEntry GetEntry(int itemId, ItemVariant variant)
static void AddVariant(int itemId, ItemVariant variant, params ItemVariantCondition[] conditions)
static ItemVariantCondition GetGoodWorld
static List< ItemVariants.VariantEntry >[] _variants
static IEnumerable< ItemVariants.VariantEntry > GetVariants(int itemId)
static ItemVariantCondition EverythingWorld
static ItemVariant SelectVariant(int itemId)
static ItemVariantCondition RemixWorld
static bool HasVariant(int itemId, ItemVariant variant)