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
DropBasedOnMasterAndExpertMode.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x02000880 RID: 2176
9 {
10 // Token: 0x170007D8 RID: 2008
11 // (get) Token: 0x0600440E RID: 17422 RVA: 0x0024F1B8 File Offset: 0x0024D3B8
12 // (set) Token: 0x0600440F RID: 17423 RVA: 0x0024F1CC File Offset: 0x0024D3CC
14 {
16 get
17 {
18 return this.<ChainedRules>k__BackingField;
19 }
21 private set
22 {
24 }
25 }
26
27 // Token: 0x06004410 RID: 17424 RVA: 0x0024F1E0 File Offset: 0x0024D3E0
34
35 // Token: 0x06004411 RID: 17425 RVA: 0x0024F208 File Offset: 0x0024D408
37 {
38 /*
39An exception occurred when decompiling this method (06004411)
40
41ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.ItemDropRules.DropBasedOnMasterAndExpertMode::CanDrop(Terraria.GameContent.ItemDropRules.DropAttemptInfo)
42
43 ---> System.Exception: Basic block has to end with unconditional control flow.
44{
45 Block_0:
46 stloc:bool(var_0_06, ldfld:bool(DropAttemptInfo::IsMasterMode, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
47 stloc:bool(var_1_0D, ldfld:bool(DropAttemptInfo::IsExpertMode, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
48 stloc:NPC(var_2_14, ldfld:NPC(DropAttemptInfo::npc, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
49 stloc:IItemDropRule(var_3_1B, ldfld:IItemDropRule(DropBasedOnMasterAndExpertMode::ruleForDefault, ldloc:DropBasedOnMasterAndExpertMode(this)))
50 stloc:IItemDropRule(var_4_22, ldfld:IItemDropRule(DropBasedOnMasterAndExpertMode::ruleForMasterMode, ldloc:DropBasedOnMasterAndExpertMode(this)))
51 stloc:IItemDropRule(var_5_2A, ldfld:IItemDropRule(DropBasedOnMasterAndExpertMode::ruleForExpertmode, ldloc:DropBasedOnMasterAndExpertMode(this)))
52}
53
54 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
55 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
56 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
57 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
58 --- End of inner exception stack trace ---
59 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
60 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
61*/;
62 }
63
64 // Token: 0x06004412 RID: 17426 RVA: 0x0024F240 File Offset: 0x0024D440
69
70 // Token: 0x06004413 RID: 17427 RVA: 0x0024F250 File Offset: 0x0024D450
72 {
73 /*
74An exception occurred when decompiling this method (06004413)
75
76ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.GameContent.ItemDropRules.ItemDropAttemptResult Terraria.GameContent.ItemDropRules.DropBasedOnMasterAndExpertMode::TryDroppingItem(Terraria.GameContent.ItemDropRules.DropAttemptInfo,Terraria.GameContent.ItemDropRules.ItemDropRuleResolveAction)
77
78 ---> System.Exception: Basic block has to end with unconditional control flow.
79{
80 Block_0:
81 stloc:bool(var_0_06, ldfld:bool(DropAttemptInfo::IsMasterMode, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
82 stloc:bool(var_1_0D, ldfld:bool(DropAttemptInfo::IsExpertMode, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
83 stloc:NPC(var_2_14, ldfld:NPC(DropAttemptInfo::npc, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
84 stloc:IItemDropRule(var_3_1B, ldfld:IItemDropRule(DropBasedOnMasterAndExpertMode::ruleForDefault, ldloc:DropBasedOnMasterAndExpertMode(this)))
85 stloc:IItemDropRule(var_4_22, ldfld:IItemDropRule(DropBasedOnMasterAndExpertMode::ruleForMasterMode, ldloc:DropBasedOnMasterAndExpertMode(this)))
86 stloc:IItemDropRule(var_5_2A, ldfld:IItemDropRule(DropBasedOnMasterAndExpertMode::ruleForExpertmode, ldloc:DropBasedOnMasterAndExpertMode(this)))
87 stloc:native int(var_6_32, ldfld:native int(Delegate::invoke_impl, ldloc:ItemDropRuleResolveAction[exp:Delegate](resolveAction)))
88 stloc:native int(var_7_3A, ldfld:native int(Delegate::method_code, ldloc:ItemDropRuleResolveAction[exp:Delegate](resolveAction)))
89 stloc:native int(var_8_42, ldfld:native int(Delegate::method, ldloc:ItemDropRuleResolveAction[exp:Delegate](resolveAction)))
90}
91
92 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
93 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
94 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
95 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
96 --- End of inner exception stack trace ---
97 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
98 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
99*/;
100 }
101
102 // Token: 0x06004414 RID: 17428 RVA: 0x0024F2A0 File Offset: 0x0024D4A0
107
108 // Token: 0x040081CC RID: 33228
110
111 // Token: 0x040081CD RID: 33229
113
114 // Token: 0x040081CE RID: 33230
116
117 // Token: 0x040081CF RID: 33231
120 }
121}
class f__AnonymousType0<< Count > j__TPar
ItemDropAttemptResult TryDroppingItem(DropAttemptInfo info, ItemDropRuleResolveAction resolveAction)
DropBasedOnMasterAndExpertMode(IItemDropRule ruleForDefault, IItemDropRule ruleForExpertMode, IItemDropRule ruleForMasterMode)
void ReportDroprates(List< DropRateInfo > drops, DropRateInfoChainFeed ratesInfo)