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
TETeleportationPylon.cs
Go to the documentation of this file.
1using System;
6
8{
9 // Token: 0x02000817 RID: 2071
11 {
12 // Token: 0x06004267 RID: 16999 RVA: 0x0024B24C File Offset: 0x0024944C
13 public override void RegisterTileEntityID(int assignedID)
14 {
15 }
16
17 // Token: 0x06004268 RID: 17000 RVA: 0x0024B25C File Offset: 0x0024945C
19 {
20 if (!true)
21 {
22 }
23 base..ctor();
24 }
25
26 // Token: 0x06004269 RID: 17001 RVA: 0x000021DB File Offset: 0x000003DB
27 public override TileEntity GenerateInstance()
28 {
29 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
30 }
31
32 // Token: 0x0600426A RID: 17002 RVA: 0x0024B274 File Offset: 0x00249474
33 public override void NetPlaceEntityAttempt(int x, int y)
34 {
35 if (!true)
36 {
37 }
39 }
40
41 // Token: 0x0600426B RID: 17003 RVA: 0x0024B294 File Offset: 0x00249494
43 {
44 bool flag;
45 return flag;
46 }
47
48 // Token: 0x0600426C RID: 17004 RVA: 0x0024B2A4 File Offset: 0x002494A4
49 private static void RejectPlacementFromNet(int x, int y)
50 {
51 long num = 0L;
52 long num2 = 0L;
53 long num3 = 0L;
54 WorldGen.KillTile(x, y, num != 0L, num2 != 0L, num3 != 0L);
55 bool netHost = Main.NetHost;
56 }
57
58 // Token: 0x0600426D RID: 17005 RVA: 0x0024B2CC File Offset: 0x002494CC
59 public static int Place(int x, int y)
60 {
61 if (!true)
62 {
63 }
64 int num = TileEntity.AssignNewID();
65 Monitor.Enter(x, x != 0);
66 long num2 = 0L;
67 Monitor.Exit(x);
68 if (num2 == 0L)
69 {
70 }
71 throw new OutOfMemoryException();
72 }
73
74 // Token: 0x0600426E RID: 17006 RVA: 0x0024B308 File Offset: 0x00249508
75 public static void Kill(int x, int y)
76 {
77 if (!true)
78 {
79 }
80 int key = TileEntity.GetKey(x, y);
81 int key2 = TileEntity.GetKey(x, y);
82 if (!false)
83 {
84 if (3 == 0)
85 {
86 }
87 return;
88 }
89 throw new OutOfMemoryException();
90 }
91
92 // Token: 0x0600426F RID: 17007 RVA: 0x0024B348 File Offset: 0x00249548
93 public override string ToString()
94 {
95 Point16 position = this.Position;
96 short y = this.Position.Y;
97 string text;
98 string text2;
99 return text + "x " + text2 + "y";
100 }
101
102 // Token: 0x06004270 RID: 17008 RVA: 0x0024B37C File Offset: 0x0024957C
103 public static void Framing_CheckTile(int callX, int callY)
104 {
105 int num = 1;
106 if (num == 0)
107 {
108 }
109 if (num == 0)
110 {
111 short frameX = Framing.GetTileSafely(callX, callY).frameX;
112 long num2 = 2147483644L;
113 if (num2 == 0L)
114 {
115 }
116 Tile tile;
117 bool flag = tile.active();
118 if (num2 == 0L)
119 {
120 }
122 if (num2 == 0L)
123 {
124 }
126 if (num2 == 0L)
127 {
128 }
131 return;
132 }
133 }
134
135 // Token: 0x06004271 RID: 17009 RVA: 0x000021DB File Offset: 0x000003DB
136 public static int GetPylonStyleFromTile(Tile tile)
137 {
138 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
139 }
140
141 // Token: 0x06004272 RID: 17010 RVA: 0x0024B444 File Offset: 0x00249644
142 public static int GetPylonItemTypeFromTileStyle(int style)
143 {
144 return 4876;
145 }
146
147 // Token: 0x06004273 RID: 17011 RVA: 0x0024B458 File Offset: 0x00249658
148 public override bool IsTileValidForEntity(int x, int y)
149 {
150 /*
151An exception occurred when decompiling this method (06004273)
152
153ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.Tile_Entities.TETeleportationPylon::IsTileValidForEntity(System.Int32,System.Int32)
154
155 ---> System.Exception: Basic block has to end with unconditional control flow.
156{
157 IL_0029:
158 stloc:int16(var_9_30, callgetter:int16(Tile::get_frameX, ldloc:Tile[exp:valuetype Terraria.Tile&](var_8)))
159}
160
161 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
162 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
163 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
164 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
165 --- End of inner exception stack trace ---
166 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
167 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
168*/;
169 }
170
171 // Token: 0x06004274 RID: 17012 RVA: 0x0024B498 File Offset: 0x00249698
172 public static int PlacementPreviewHook_AfterPlacement(int x, int y, int type = 597, int style = 0, int direction = 1, int alternate = 0)
173 {
174 int num = 1;
175 if (num == 0)
176 {
177 }
179 if (num == 0)
180 {
181 }
182 int myPlayer = Main.myPlayer;
183 return 87;
184 }
185
186 // Token: 0x06004275 RID: 17013 RVA: 0x0024B4E0 File Offset: 0x002496E0
187 public static int PlacementPreviewHook_CheckIfCanPlace(int x, int y, int type = 597, int style = 0, int direction = 1, int alternate = 0)
188 {
189 /*
190An exception occurred when decompiling this method (06004275)
191
192ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 Terraria.GameContent.Tile_Entities.TETeleportationPylon::PlacementPreviewHook_CheckIfCanPlace(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)
193
194 ---> System.Exception: Basic block has to end with unconditional control flow.
195{
196 IL_0000:
197 brtrue(IL_0000, ldc.i4:bool(1))
198}
199
200 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
201 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
202 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
203 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
204 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
205 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
206 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
207 --- End of inner exception stack trace ---
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 92
209 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
210*/;
211 }
212
213 // Token: 0x06004276 RID: 17014 RVA: 0x0024B4F0 File Offset: 0x002496F0
215 {
216 /*
217An exception occurred when decompiling this method (06004276)
218
219ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Terraria.GameContent.Tile_Entities.TETeleportationPylon::TryGetPylonTypeFromTileCoords(System.Int32,System.Int32,Terraria.GameContent.TeleportPylonType)
220
221 ---> System.Exception: Basic block has to end with unconditional control flow.
222{
223 IL_0005:
224 stloc:bool(var_2_0B, call:bool(Tile::active, ldloc:Tile[exp:valuetype Terraria.Tile&](var_1)))
225 stfld:uint8(TeleportPylonType::value__, ldloc:TeleportPylonType[exp:valuetype Terraria.GameContent.TeleportPylonType&](pylonType), ldloc:int32[exp:uint8](var_0_01))
226}
227
228 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
229 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
230 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
231 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
232 --- End of inner exception stack trace ---
233 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
234 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
235*/;
236 }
237
238 // Token: 0x06004277 RID: 17015 RVA: 0x000021DB File Offset: 0x000003DB
240 {
241 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
242 }
243
244 // Token: 0x06004278 RID: 17016 RVA: 0x0024B518 File Offset: 0x00249718
245 public static int Find(int x, int y)
246 {
247 if (!true)
248 {
249 }
250 int key = TileEntity.GetKey(int.MinValue, x);
251 return int.MinValue;
252 }
253
254 // Token: 0x040080E4 RID: 32996
255 private static byte _myEntityID;
256
257 // Token: 0x040080E5 RID: 32997
258 private const int MyTileID = 597;
259
260 // Token: 0x040080E6 RID: 32998
261 private const int entityTileWidth = 3;
262
263 // Token: 0x040080E7 RID: 32999
264 private const int entityTileHeight = 4;
265 }
266}
class f__AnonymousType0<< Count > j__TPar
static void Exit(object obj)
Definition Monitor.cs:47
static void Enter(object obj)
Definition Monitor.cs:11
static int GetKey(int x, int y)
static Tile GetTileSafely(Vector2 position)
Definition Framing.cs:356
static int PlacementPreviewHook_CheckIfCanPlace(int x, int y, int type=597, int style=0, int direction=1, int alternate=0)
static int PlacementPreviewHook_AfterPlacement(int x, int y, int type=597, int style=0, int direction=1, int alternate=0)
bool TryGetPylonType([Out] TeleportPylonType pylonType)
static TeleportPylonType GetPylonTypeFromPylonTileStyle(int pylonStyle)
bool TryGetPylonTypeFromTileCoords(int x, int y, [Out] TeleportPylonType pylonType)
static bool NetHost
Definition Main.cs:5544
static int myPlayer
Definition Main.cs:2337
static bool NetClientOnly
Definition Main.cs:5407
static void KillTile(int i, int j, bool fail=false, bool effectOnly=false, bool noItem=false)
static bool SolidTileAllowBottomSlope(int i, int j)
short frameX
Definition Tile.cs:244
bool active()
Definition Tile.cs:1241