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
PlayerDeathReason.cs
Go to the documentation of this file.
1using System;
2using System.IO;
6
8{
9 // Token: 0x0200063C RID: 1596
10 public class PlayerDeathReason
11 {
12 // Token: 0x170006A1 RID: 1697
13 // (get) Token: 0x0600364F RID: 13903 RVA: 0x002129C4 File Offset: 0x00210BC4
15 {
16 get
17 {
18 /*
19An exception occurred when decompiling this method (0600364F)
20
21ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Nullable`1<System.Int32> Terraria.DataStructures.PlayerDeathReason::get_SourceProjectileType()
22
23 ---> System.Exception: Basic block has to end with unconditional control flow.
24{
25 Block_0:
26 stloc:int32(var_0_06, ldfld:int32(PlayerDeathReason::_sourceProjectileLocalIndex, ldloc:PlayerDeathReason(this)))
27 stloc:int32(var_1_0D, ldfld:int32(PlayerDeathReason::_sourceProjectileType, ldloc:PlayerDeathReason(this)))
28}
29
30 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
31 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
32 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
33 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
34 --- End of inner exception stack trace ---
35 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
36 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
37*/;
38 }
39 }
40
41 // Token: 0x06003650 RID: 13904 RVA: 0x002129E0 File Offset: 0x00210BE0
42 public bool TryGetCausingEntity([Out] Entity entity)
43 {
44 /*
45An exception occurred when decompiling this method (06003650)
46
47ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.DataStructures.PlayerDeathReason::TryGetCausingEntity(Terraria.Entity)
48
49 ---> System.Exception: Basic block has to end with unconditional control flow.
50{
51 IL_0003:
52 stloc:int32(var_0_09, ldfld:int32(PlayerDeathReason::_sourceNPCIndex, ldloc:PlayerDeathReason(this)))
53 stloc:int32(var_1_10, ldfld:int32(PlayerDeathReason::_sourceProjectileLocalIndex, ldloc:PlayerDeathReason(this)))
54 stloc:int32(var_2_17, ldfld:int32(PlayerDeathReason::_sourcePlayerIndex, ldloc:PlayerDeathReason(this)))
55}
56
57 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
58 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
59 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
60 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
61 --- End of inner exception stack trace ---
62 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
63 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
64*/;
65 }
66
67 // Token: 0x06003651 RID: 13905 RVA: 0x000021DB File Offset: 0x000003DB
69 {
70 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
71 }
72
73 // Token: 0x06003652 RID: 13906 RVA: 0x000021DB File Offset: 0x000003DB
75 {
76 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
77 }
78
79 // Token: 0x06003653 RID: 13907 RVA: 0x000021DB File Offset: 0x000003DB
80 public static PlayerDeathReason ByNPC(int index)
81 {
82 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
83 }
84
85 // Token: 0x06003654 RID: 13908 RVA: 0x000021DB File Offset: 0x000003DB
87 {
88 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
89 }
90
91 // Token: 0x06003655 RID: 13909 RVA: 0x00212A0C File Offset: 0x00210C0C
92 public static PlayerDeathReason ByPlayer(int index)
93 {
94 /*
95An exception occurred when decompiling this method (06003655)
96
97ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.DataStructures.PlayerDeathReason Terraria.DataStructures.PlayerDeathReason::ByPlayer(System.Int32)
98
99 ---> System.Exception: Basic block has to end with unconditional control flow.
100{
101 IL_0000:
102 brtrue(IL_0000, ldc.i4:bool(1))
103}
104
105 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
106 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
107 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
108 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
109 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
110 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
111 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
112 --- End of inner exception stack trace ---
113 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
114 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
115*/;
116 }
117
118 // Token: 0x06003656 RID: 13910 RVA: 0x000021DB File Offset: 0x000003DB
119 public static PlayerDeathReason ByOther(int type)
120 {
121 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
122 }
123
124 // Token: 0x06003657 RID: 13911 RVA: 0x00212A1C File Offset: 0x00210C1C
126 {
127 /*
128An exception occurred when decompiling this method (06003657)
129
130ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.DataStructures.PlayerDeathReason Terraria.DataStructures.PlayerDeathReason::ByProjectile(System.Int32,System.Int32)
131
132 ---> System.Exception: Basic block has to end with unconditional control flow.
133{
134 IL_0000:
135 brtrue(IL_0000, ldc.i4:bool(1))
136}
137
138 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
139 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
140 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
141 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
142 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
143 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
144 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
145 --- End of inner exception stack trace ---
146 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
147 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
148*/;
149 }
150
151 // Token: 0x06003658 RID: 13912 RVA: 0x00212A2C File Offset: 0x00210C2C
167
168 // Token: 0x06003659 RID: 13913 RVA: 0x00212A88 File Offset: 0x00210C88
189
190 // Token: 0x0600365A RID: 13914 RVA: 0x00212B1C File Offset: 0x00210D1C
192 {
193 /*
194An exception occurred when decompiling this method (0600365A)
195
196ICSharpCode.Decompiler.DecompilerException: Error decompiling Terraria.DataStructures.PlayerDeathReason Terraria.DataStructures.PlayerDeathReason::FromReader(System.IO.BinaryReader)
197
198 ---> System.Exception: Basic block has to end with unconditional control flow.
199{
200 Block_0:
201 stloc:int64(var_1_01, ldc.i4:int64(0))
202 stloc:bool(var_2_09, callgetter:bool(BitsByte::get_Item, ldloc:BitsByte[exp:valuetype Terraria.BitsByte&](var_0), ldloc:int64[exp:int32](var_1_01)))
203}
204
205 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
206 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
207 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
208 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
209 --- End of inner exception stack trace ---
210 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
211 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
212*/;
213 }
214
215 // Token: 0x0600365B RID: 13915 RVA: 0x00212B34 File Offset: 0x00210D34
217 {
218 }
219
220 // Token: 0x04007707 RID: 30471
222
223 // Token: 0x04007708 RID: 30472
224 private int _sourceNPCIndex;
225
226 // Token: 0x04007709 RID: 30473
228
229 // Token: 0x0400770A RID: 30474
230 private int _sourceOtherIndex;
231
232 // Token: 0x0400770B RID: 30475
234
235 // Token: 0x0400770C RID: 30476
236 private int _sourceItemType;
237
238 // Token: 0x0400770D RID: 30477
239 private int _sourceItemPrefix;
240
241 // Token: 0x0400770E RID: 30478
242 private string _sourceCustomReason;
243 }
244}
class f__AnonymousType0<< Count > j__TPar
NetworkText GetDeathText(string deadPlayerName)
static PlayerDeathReason ByCustomReason(string reasonInEnglish)
bool TryGetCausingEntity([Out] Entity entity)
static PlayerDeathReason FromReader(BinaryReader reader)
static PlayerDeathReason ByOther(int type)
static PlayerDeathReason ByPlayer(int index)
static PlayerDeathReason ByNPC(int index)
static PlayerDeathReason ByProjectile(int playerIndex, int projectileIndex)
static NetworkText CreateDeathMessage(string deadPlayerName, int plr=-1, int npc=-1, int proj=-1, int other=-1, int projType=0, int plrItemType=0)
Definition Lang.cs:554
static NetworkText FromLiteral(string text)