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
OneFromRulesRule.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x0200088A RID: 2186
9 {
10 // Token: 0x170007E0 RID: 2016
11 // (get) Token: 0x06004444 RID: 17476 RVA: 0x0024F820 File Offset: 0x0024DA20
12 // (set) Token: 0x06004445 RID: 17477 RVA: 0x0024F834 File Offset: 0x0024DA34
14 {
16 get
17 {
18 return this.<ChainedRules>k__BackingField;
19 }
21 private set
22 {
24 }
25 }
26
27 // Token: 0x06004446 RID: 17478 RVA: 0x0024F848 File Offset: 0x0024DA48
33
34 // Token: 0x06004447 RID: 17479 RVA: 0x0024F86C File Offset: 0x0024DA6C
36 {
37 return true;
38 }
39
40 // Token: 0x06004448 RID: 17480 RVA: 0x0024F87C File Offset: 0x0024DA7C
45
46 // Token: 0x06004449 RID: 17481 RVA: 0x0024F88C File Offset: 0x0024DA8C
48 {
49 /*
50An exception occurred when decompiling this method (06004449)
51
52ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.GameContent.ItemDropRules.ItemDropAttemptResult Terraria.GameContent.ItemDropRules.OneFromRulesRule::TryDroppingItem(Terraria.GameContent.ItemDropRules.DropAttemptInfo,Terraria.GameContent.ItemDropRules.ItemDropRuleResolveAction)
53
54 ---> System.Exception: Basic block has to end with unconditional control flow.
55{
56 IL_0019:
57 stloc:class Terraria.GameContent.ItemDropRules.IItemDropRule[](var_3_1F, ldfld:class Terraria.GameContent.ItemDropRules.IItemDropRule[](OneFromRulesRule::options, ldloc:OneFromRulesRule(this)))
58 stloc:int32(var_4_2C, call:int32(UnifiedRandom::Next, ldfld:UnifiedRandom(DropAttemptInfo::rng, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)), ldloc:int32(var_1_0D)))
59 stloc:class Terraria.GameContent.ItemDropRules.IItemDropRule[](var_5_34, ldfld:class Terraria.GameContent.ItemDropRules.IItemDropRule[](OneFromRulesRule::options, ldloc:OneFromRulesRule(this)))
60 stloc:NPC(var_6_3C, ldfld:NPC(DropAttemptInfo::npc, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
61 stloc:native int(var_7_44, ldfld:native int(Delegate::invoke_impl, ldloc:ItemDropRuleResolveAction[exp:Delegate](resolveAction)))
62 stloc:native int(var_8_4C, ldfld:native int(Delegate::method_code, ldloc:ItemDropRuleResolveAction[exp:Delegate](resolveAction)))
63 stloc:native int(var_9_54, ldfld:native int(Delegate::method, ldloc:ItemDropRuleResolveAction[exp:Delegate](resolveAction)))
64}
65
66 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
67 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
68 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
69 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
70 --- End of inner exception stack trace ---
71 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
72 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
73*/;
74 }
75
76 // Token: 0x0600444A RID: 17482 RVA: 0x0024F8F4 File Offset: 0x0024DAF4
81
82 // Token: 0x040081ED RID: 33261
84
85 // Token: 0x040081EE RID: 33262
87
88 // Token: 0x040081EF RID: 33263
91 }
92}
class f__AnonymousType0<< Count > j__TPar
List< IItemDropRuleChainAttempt >< ChainedRules > k__BackingField
OneFromRulesRule(int chanceDenominator, params IItemDropRule[] options)
void ReportDroprates(List< DropRateInfo > drops, DropRateInfoChainFeed ratesInfo)
ItemDropAttemptResult TryDroppingItem(DropAttemptInfo info, ItemDropRuleResolveAction resolveAction)
ItemDropAttemptResult TryDroppingItem(DropAttemptInfo info)