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
NPCSmartInteractCandidateProvider.cs
Go to the documentation of this file.
1using System;
4
6{
7 // Token: 0x0200084C RID: 2124
9 {
10 // Token: 0x0600432A RID: 17194 RVA: 0x0024DA5C File Offset: 0x0024BC5C
12 {
13 if (!true)
14 {
15 }
16 Main.SmartInteractNPC = int.MinValue;
17 }
18
19 // Token: 0x0600432B RID: 17195 RVA: 0x0024DA78 File Offset: 0x0024BC78
21 {
22 /*
23An exception occurred when decompiling this method (0600432B)
24
25ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.ObjectInteractions.NPCSmartInteractCandidateProvider::ProvideCandidate(Terraria.GameContent.ObjectInteractions.SmartInteractScanSettings,Terraria.GameContent.ObjectInteractions.ISmartInteractCandidate)
26
27 ---> System.Exception: Basic block has to end with unconditional control flow.
28{
29 IL_0068:
30 stloc:bool(var_23_6E, ldfld:bool(SmartInteractScanSettings::DemandOnlyZeroDistanceTargets, ldloc:SmartInteractScanSettings[exp:valuetype Terraria.GameContent.ObjectInteractions.SmartInteractScanSettings&](settings)))
31 stloc:ReusableCandidate(var_24_76, ldfld:ReusableCandidate(NPCSmartInteractCandidateProvider::_candidate, ldloc:NPCSmartInteractCandidateProvider(this)))
32 stfld:int32(ReusableCandidate::_npcIndexToTarget, ldloc:ReusableCandidate(var_24_76), ldloc:float32[exp:int32](var_21))
33}
34
35 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
36 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
37 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
38 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
39 --- End of inner exception stack trace ---
40 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
41 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
42*/;
43 }
44
45 // Token: 0x0600432C RID: 17196 RVA: 0x0024DB0C File Offset: 0x0024BD0C
49
50 // Token: 0x04008158 RID: 33112
52
53 // Token: 0x0200084D RID: 2125
55 {
56 // Token: 0x170007C8 RID: 1992
57 // (get) Token: 0x0600432D RID: 17197 RVA: 0x0024DB20 File Offset: 0x0024BD20
58 // (set) Token: 0x0600432E RID: 17198 RVA: 0x0024DB34 File Offset: 0x0024BD34
59 public float DistanceFromCursor
60 {
62 get
63 {
64 /*
65An exception occurred when decompiling this method (0600432D)
66
67ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Single Terraria.GameContent.ObjectInteractions.NPCSmartInteractCandidateProvider/ReusableCandidate::get_DistanceFromCursor()
68
69 ---> System.Exception: Basic block has to end with unconditional control flow.
70{
71 Block_0:
72 stloc:float32(var_0_06, ldfld:float32(ReusableCandidate::<DistanceFromCursor>k__BackingField, ldloc:ReusableCandidate(this)))
73}
74
75 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
76 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
77 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
78 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
79 --- End of inner exception stack trace ---
80 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
81 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
82*/;
83 }
85 private set
86 {
87 }
88 }
89
90 // Token: 0x0600432F RID: 17199 RVA: 0x0024DB44 File Offset: 0x0024BD44
91 public void WinCandidacy()
92 {
94 if (!true)
95 {
96 }
99 }
100
101 // Token: 0x06004330 RID: 17200 RVA: 0x0024DB68 File Offset: 0x0024BD68
102 public void Reuse(int npcIndex, float npcDistanceFromCursor)
103 {
105 }
106
107 // Token: 0x06004331 RID: 17201 RVA: 0x0024DB7C File Offset: 0x0024BD7C
109 {
110 }
111
112 // Token: 0x04008159 RID: 33113
114 private float <DistanceFromCursor>k__BackingField;
115
116 // Token: 0x0400815A RID: 33114
117 private int _npcIndexToTarget;
118 }
119 }
120}
class f__AnonymousType0<< Count > j__TPar
bool ProvideCandidate(SmartInteractScanSettings settings, [Out] ISmartInteractCandidate candidate)