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
DropLocalPerClientAndResetsNPCMoneyTo0.cs
Go to the documentation of this file.
1using System;
2
4{
5 // Token: 0x0200087A RID: 2170
7 {
8 // Token: 0x060043F1 RID: 17393 RVA: 0x0024EDC8 File Offset: 0x0024CFC8
14
15 // Token: 0x060043F2 RID: 17394 RVA: 0x0024EDEC File Offset: 0x0024CFEC
16 public override bool CanDrop(DropAttemptInfo info)
17 {
18 if (this.condition != null)
19 {
20 NPC npc = info.npc;
21 return;
22 }
23 }
24
25 // Token: 0x060043F3 RID: 17395 RVA: 0x0024EE0C File Offset: 0x0024D00C
27 {
28 /*
29An exception occurred when decompiling this method (060043F3)
30
31ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.GameContent.ItemDropRules.ItemDropAttemptResult Terraria.GameContent.ItemDropRules.DropLocalPerClientAndResetsNPCMoneyTo0::TryDroppingItem(Terraria.GameContent.ItemDropRules.DropAttemptInfo)
32
33 ---> System.Exception: Basic block has to end with unconditional control flow.
34{
35 Block_0:
36 stloc:UnifiedRandom(var_0_06, ldfld:UnifiedRandom(DropAttemptInfo::rng, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
37 stloc:int32(var_1_0D, ldfld:int32(CommonDrop::chanceDenominator, ldloc:DropLocalPerClientAndResetsNPCMoneyTo0[exp:CommonDrop](this)))
38 stloc:int64(var_2_0F, ldc.i4:int64(0))
39 stloc:int32(var_3_17, call:int32(UnifiedRandom::Next, ldloc:UnifiedRandom(var_0_06), ldloc:int32(var_1_0D)))
40 stloc:int32(var_4_1E, ldfld:int32(CommonDrop::chanceNumerator, ldloc:DropLocalPerClientAndResetsNPCMoneyTo0[exp:CommonDrop](this)))
41 stloc:int32(var_5_26, ldfld:int32(CommonDrop::amountDroppedMinimum, ldloc:DropLocalPerClientAndResetsNPCMoneyTo0[exp:CommonDrop](this)))
42 stloc:int32(var_6_2E, ldfld:int32(CommonDrop::chanceNumerator, ldloc:DropLocalPerClientAndResetsNPCMoneyTo0[exp:CommonDrop](this)))
43 stloc:UnifiedRandom(var_7_36, ldfld:UnifiedRandom(DropAttemptInfo::rng, ldloc:DropAttemptInfo[exp:valuetype Terraria.GameContent.ItemDropRules.DropAttemptInfo&](info)))
44 stloc:int32(var_8_3E, ldfld:int32(CommonDrop::itemId, ldloc:DropLocalPerClientAndResetsNPCMoneyTo0[exp:CommonDrop](this)))
45 stloc:int32(var_9_4A, call:int32(UnifiedRandom::Next, ldloc:UnifiedRandom(var_7_36), ldloc:int32(var_5_26), ldloc:int64[exp:int32](var_2_0F)))
46}
47
48 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
49 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
50 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
51 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
52 --- End of inner exception stack trace ---
53 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
54 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
55*/;
56 }
57
58 // Token: 0x040081C2 RID: 33218
60 }
61}
class f__AnonymousType0<< Count > j__TPar
DropLocalPerClientAndResetsNPCMoneyTo0(int itemId, int chanceDenominator, int amountDroppedMinimum, int amountDroppedMaximum, IItemDropRuleCondition optionalCondition)