terraria-cpp2il v1.4.4.9
Terraria mobile dump, with CallAnalysis (see source code). Dump with reconstucted method: https://infinitynichto.github.io/terraria-cpp2il-methodrecon
Loading...
Searching...
No Matches
TrackGenerator.cs
Go to the documentation of this file.
1using System;
7using Terraria.IO;
10
12{
13 [global::Cpp2ILInjected.Token(Token = "0x20008DC")]
14 public class TrackGenerator
15 {
16 [global::Cpp2ILInjected.Token(Token = "0x60045B4")]
17 [global::Cpp2ILInjected.Address(RVA = "0x7C0410", Offset = "0x7C0410", Length = "0xAC")]
18 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = "Terraria.WorldGen.<>c", Member = "<GenerateWorld>b__277_100", MemberParameters = new object[]
19 {
22 }, ReturnType = typeof(void))]
23 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 2)]
24 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "FindSuitableOrigin", MemberParameters = new object[] { typeof(ref Point) }, ReturnType = typeof(bool))]
25 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "CreateTrackStart", MemberParameters = new object[] { typeof(Point) }, ReturnType = typeof(void))]
26 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "FindPath", MemberParameters = new object[]
27 {
28 typeof(int),
29 typeof(int)
30 }, ReturnType = typeof(bool))]
31 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "PlacePath", ReturnType = typeof(void))]
32 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 2)]
33 public bool Place(Point origin, int minLength, int maxLength)
34 {
35 throw null;
36 }
37
38 [global::Cpp2ILInjected.Token(Token = "0x60045B5")]
39 [global::Cpp2ILInjected.Address(RVA = "0x7C0800", Offset = "0x7C0800", Length = "0x610")]
40 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
41 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "Place", MemberParameters = new object[]
42 {
44 typeof(int),
45 typeof(int)
46 }, ReturnType = typeof(bool))]
47 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
48 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldGen), Member = "get_genRand", ReturnType = typeof(UnifiedRandom))]
49 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(UnifiedRandom), Member = "Next", MemberParameters = new object[] { typeof(int) }, ReturnType = typeof(int))]
50 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(UnifiedRandom), Member = "Next", MemberParameters = new object[]
51 {
52 typeof(int),
53 typeof(int)
54 }, ReturnType = typeof(int))]
55 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TileData), Member = "get_Item", MemberParameters = new object[]
56 {
57 typeof(int),
58 typeof(int)
59 }, ReturnType = typeof(Tile))]
60 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "get_wall", ReturnType = typeof(ushort))]
61 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "set_wall", MemberParameters = new object[] { typeof(ushort) }, ReturnType = typeof(void))]
62 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "get_type", ReturnType = typeof(ushort))]
63 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldGen), Member = "KillTile", MemberParameters = new object[]
64 {
65 typeof(int),
66 typeof(int),
67 typeof(bool),
68 typeof(bool),
69 typeof(bool)
70 }, ReturnType = typeof(void))]
71 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "SmoothSlope", MemberParameters = new object[]
72 {
73 typeof(int),
74 typeof(int),
75 typeof(bool),
76 typeof(bool)
77 }, ReturnType = typeof(void))]
78 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "wire", ReturnType = typeof(bool))]
79 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "ClearEverything", ReturnType = typeof(void))]
80 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldGen), Member = "PlaceTile", MemberParameters = new object[]
81 {
82 typeof(int),
83 typeof(int),
84 typeof(int),
85 typeof(bool),
86 typeof(bool),
87 typeof(int),
88 typeof(int)
89 }, ReturnType = typeof(bool))]
90 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "ResetToType", MemberParameters = new object[] { typeof(ushort) }, ReturnType = typeof(void))]
91 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "wire", MemberParameters = new object[] { typeof(bool) }, ReturnType = typeof(void))]
92 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldUtils), Member = "TileFrame", MemberParameters = new object[]
93 {
94 typeof(int),
95 typeof(int),
96 typeof(bool)
97 }, ReturnType = typeof(void))]
98 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 20)]
99 private void PlacePath()
100 {
101 throw null;
102 }
103
104 [global::Cpp2ILInjected.Token(Token = "0x60045B6")]
105 [global::Cpp2ILInjected.Address(RVA = "0x7C057C", Offset = "0x7C057C", Length = "0x108")]
106 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
107 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "Place", MemberParameters = new object[]
108 {
109 typeof(Point),
110 typeof(int),
111 typeof(int)
112 }, ReturnType = typeof(bool))]
113 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
114 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 2)]
115 private void CreateTrackStart(Point origin)
116 {
117 throw null;
118 }
119
120 [global::Cpp2ILInjected.Token(Token = "0x60045B7")]
121 [global::Cpp2ILInjected.Address(RVA = "0x7C0684", Offset = "0x7C0684", Length = "0x17C")]
122 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
123 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "Place", MemberParameters = new object[]
124 {
125 typeof(Point),
126 typeof(int),
127 typeof(int)
128 }, ReturnType = typeof(bool))]
129 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
130 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "TryRewriteHistoryToAvoidTiles", ReturnType = typeof(TrackGenerator.TrackPlacementState))]
131 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "CreateTunnel", ReturnType = typeof(TrackGenerator.TrackPlacementState))]
132 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Math), Member = "Min", MemberParameters = new object[]
133 {
134 typeof(int),
135 typeof(int)
136 }, ReturnType = typeof(int))]
137 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "SmoothTrack", ReturnType = typeof(void))]
138 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "GetHistorySegmentPlacementState", MemberParameters = new object[]
139 {
140 typeof(int),
141 typeof(int)
142 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
143 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 2)]
144 private bool FindPath(int minLength, int maxLength)
145 {
146 throw null;
147 }
148
149 [global::Cpp2ILInjected.Token(Token = "0x60045B8")]
150 [global::Cpp2ILInjected.Address(RVA = "0x7C1180", Offset = "0x7C1180", Length = "0x268")]
151 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
152 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "FindPath", MemberParameters = new object[]
153 {
154 typeof(int),
155 typeof(int)
156 }, ReturnType = typeof(bool))]
157 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
158 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "CalculateStateForLocation", MemberParameters = new object[]
159 {
160 typeof(int),
161 typeof(int)
162 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
163 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 3)]
165 {
166 throw null;
167 }
168
169 [global::Cpp2ILInjected.Token(Token = "0x60045B9")]
170 [global::Cpp2ILInjected.Address(RVA = "0x7C0E24", Offset = "0x7C0E24", Length = "0x60")]
171 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
172 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 0)]
174 {
175 throw null;
176 }
177
178 [global::Cpp2ILInjected.Token(Token = "0x60045BA")]
179 [global::Cpp2ILInjected.Address(RVA = "0x7C0E84", Offset = "0x7C0E84", Length = "0x2FC")]
180 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
181 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "FindPath", MemberParameters = new object[]
182 {
183 typeof(int),
184 typeof(int)
185 }, ReturnType = typeof(bool))]
186 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
187 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Math), Member = "Min", MemberParameters = new object[]
188 {
189 typeof(int),
190 typeof(int)
191 }, ReturnType = typeof(int))]
192 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "GetHistorySegmentPlacementState", MemberParameters = new object[]
193 {
194 typeof(int),
195 typeof(int)
196 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
197 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 2)]
202
203 [global::Cpp2ILInjected.Token(Token = "0x60045BB")]
204 [global::Cpp2ILInjected.Address(RVA = "0x7C1780", Offset = "0x7C1780", Length = "0x54")]
205 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
206 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 0)]
208 {
209 throw null;
210 }
211
212 [global::Cpp2ILInjected.Token(Token = "0x60045BC")]
213 [global::Cpp2ILInjected.Address(RVA = "0x7C1538", Offset = "0x7C1538", Length = "0xF0")]
214 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
215 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "FindPath", MemberParameters = new object[]
216 {
217 typeof(int),
218 typeof(int)
219 }, ReturnType = typeof(bool))]
220 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "TryRewriteHistoryToAvoidTiles", ReturnType = typeof(TrackGenerator.TrackPlacementState))]
221 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 5)]
222 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "CalculateStateForLocation", MemberParameters = new object[]
223 {
224 typeof(int),
225 typeof(int)
226 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
227 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 2)]
232
233 [global::Cpp2ILInjected.Token(Token = "0x60045BD")]
234 [global::Cpp2ILInjected.Address(RVA = "0x7C13E8", Offset = "0x7C13E8", Length = "0x150")]
235 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
236 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "FindPath", MemberParameters = new object[]
237 {
238 typeof(int),
239 typeof(int)
240 }, ReturnType = typeof(bool))]
241 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
242 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Math), Member = "Min", MemberParameters = new object[]
243 {
244 typeof(int),
245 typeof(int)
246 }, ReturnType = typeof(int))]
247 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 2)]
248 private void SmoothTrack()
249 {
250 throw null;
251 }
252
253 [global::Cpp2ILInjected.Token(Token = "0x60045BE")]
254 [global::Cpp2ILInjected.Address(RVA = "0x7C1754", Offset = "0x7C1754", Length = "0x2C")]
255 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
256 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 0)]
257 private static bool CanSlopesTouch(TrackGenerator.TrackSlope leftSlope, TrackGenerator.TrackSlope rightSlope)
258 {
259 throw null;
260 }
261
262 [global::Cpp2ILInjected.Token(Token = "0x60045BF")]
263 [global::Cpp2ILInjected.Address(RVA = "0x7C04BC", Offset = "0x7C04BC", Length = "0xC0")]
264 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
265 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "Place", MemberParameters = new object[]
266 {
267 typeof(Point),
268 typeof(int),
269 typeof(int)
270 }, ReturnType = typeof(bool))]
271 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
272 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "CalculateStateForLocation", MemberParameters = new object[]
273 {
274 typeof(int),
275 typeof(int)
276 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
277 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 3)]
278 private static bool FindSuitableOrigin(ref Point origin)
279 {
280 throw null;
281 }
282
283 [global::Cpp2ILInjected.Token(Token = "0x60045C0")]
284 [global::Cpp2ILInjected.Address(RVA = "0x7C1628", Offset = "0x7C1628", Length = "0x12C")]
285 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
286 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "CreateTunnel", ReturnType = typeof(TrackGenerator.TrackPlacementState))]
287 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "GetHistorySegmentPlacementState", MemberParameters = new object[]
288 {
289 typeof(int),
290 typeof(int)
291 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
292 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "FindSuitableOrigin", MemberParameters = new object[] { typeof(ref Point) }, ReturnType = typeof(bool))]
293 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 4)]
294 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "IsLocationInvalid", MemberParameters = new object[]
295 {
296 typeof(int),
297 typeof(int)
298 }, ReturnType = typeof(bool))]
299 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TrackGenerator), Member = "IsMinecartTrack", MemberParameters = new object[]
300 {
301 typeof(int),
302 typeof(int)
303 }, ReturnType = typeof(bool))]
304 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldGen), Member = "SolidTile", MemberParameters = new object[]
305 {
306 typeof(int),
307 typeof(int),
308 typeof(bool)
309 }, ReturnType = typeof(bool))]
310 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldGen), Member = "IsTileNearby", MemberParameters = new object[]
311 {
312 typeof(int),
313 typeof(int),
314 typeof(int),
315 typeof(int)
316 }, ReturnType = typeof(bool))]
317 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 5)]
319 {
320 throw null;
321 }
322
323 [global::Cpp2ILInjected.Token(Token = "0x60045C1")]
324 [global::Cpp2ILInjected.Address(RVA = "0x7C1D14", Offset = "0x7C1D14", Length = "0xE0")]
325 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
326 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "CalculateStateForLocation", MemberParameters = new object[]
327 {
328 typeof(int),
329 typeof(int)
330 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
331 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
332 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TileData), Member = "get_Item", MemberParameters = new object[]
333 {
334 typeof(int),
335 typeof(int)
336 }, ReturnType = typeof(Tile))]
337 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "active", ReturnType = typeof(bool))]
338 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "get_type", ReturnType = typeof(ushort))]
339 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 3)]
340 private static bool IsMinecartTrack(int x, int y)
341 {
342 throw null;
343 }
344
345 [global::Cpp2ILInjected.Token(Token = "0x60045C2")]
346 [global::Cpp2ILInjected.Address(RVA = "0x7C17D4", Offset = "0x7C17D4", Length = "0x540")]
347 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
348 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = typeof(TrackGenerator), Member = "CalculateStateForLocation", MemberParameters = new object[]
349 {
350 typeof(int),
351 typeof(int)
352 }, ReturnType = typeof(TrackGenerator.TrackPlacementState))]
353 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
354 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Main), Member = "get_UnderworldLayer", ReturnType = typeof(int))]
355 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(WorldGen), Member = "oceanDepths", MemberParameters = new object[]
356 {
357 typeof(int),
358 typeof(int)
359 }, ReturnType = typeof(bool))]
360 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(TileData), Member = "get_Item", MemberParameters = new object[]
361 {
362 typeof(int),
363 typeof(int)
364 }, ReturnType = typeof(Tile))]
365 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "get_wall", ReturnType = typeof(ushort))]
366 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "get_type", ReturnType = typeof(ushort))]
367 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(Tile), Member = "active", ReturnType = typeof(bool))]
368 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 29)]
369 private static bool IsLocationInvalid(int x, int y)
370 {
371 throw null;
372 }
373
374 [Conditional("ENABLE_DEBUG")]
375 [Conditional("UNITY_EDITOR")]
376 [global::Cpp2ILInjected.Token(Token = "0x60045C3")]
377 [global::Cpp2ILInjected.Address(RVA = "0x7C1DF4", Offset = "0x7C1DF4", Length = "0x4")]
378 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 0)]
379 private void DrawPause()
380 {
381 throw null;
382 }
383
384 [global::Cpp2ILInjected.Token(Token = "0x60045C4")]
385 [global::Cpp2ILInjected.Address(RVA = "0x7C1DF8", Offset = "0x7C1DF8", Length = "0x70")]
386 [global::Cpp2ILInjected.CallAnalysis.CalledBy(Type = "Terraria.WorldGen.<>c", Member = "<GenerateWorld>b__277_100", MemberParameters = new object[]
387 {
390 }, ReturnType = typeof(void))]
391 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 1)]
392 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(object), Member = ".ctor", ReturnType = typeof(void))]
393 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 3)]
395 {
396 throw null;
397 }
398
399 // Note: this type is marked as 'beforefieldinit'.
400 [global::Cpp2ILInjected.Token(Token = "0x60045C5")]
401 [global::Cpp2ILInjected.Address(RVA = "0x7C1E68", Offset = "0x7C1E68", Length = "0xD0")]
402 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 0)]
403 [global::Cpp2ILInjected.CallAnalysis.Calls(Type = typeof(RuntimeHelpers), Member = "InitializeArray", MemberParameters = new object[]
404 {
405 typeof(Array),
407 }, ReturnType = typeof(void))]
408 [global::Cpp2ILInjected.CallAnalysis.CallsUnknownMethods(Count = 6)]
410 {
411 throw null;
412 }
413
414 [global::Cpp2ILInjected.Token(Token = "0x400821A")]
415 private static readonly ushort[] InvalidWalls;
416
417 [global::Cpp2ILInjected.Token(Token = "0x400821B")]
418 private static readonly ushort[] InvalidTiles;
419
420 [global::Cpp2ILInjected.Token(Token = "0x400821C")]
421 [global::Cpp2ILInjected.FieldOffset(Offset = "0x10")]
423
424 [global::Cpp2ILInjected.Token(Token = "0x400821D")]
425 [global::Cpp2ILInjected.FieldOffset(Offset = "0x18")]
427
428 [global::Cpp2ILInjected.Token(Token = "0x400821E")]
429 [global::Cpp2ILInjected.FieldOffset(Offset = "0x20")]
430 private int _xDirection;
431
432 [global::Cpp2ILInjected.Token(Token = "0x400821F")]
433 [global::Cpp2ILInjected.FieldOffset(Offset = "0x24")]
434 private int _length;
435
436 [global::Cpp2ILInjected.Token(Token = "0x4008220")]
437 [global::Cpp2ILInjected.FieldOffset(Offset = "0x28")]
438 private int playerHeight;
439
440 [global::Cpp2ILInjected.Token(Token = "0x20008DD")]
442 {
443 [global::Cpp2ILInjected.Token(Token = "0x4008222")]
444 Available,
445 [global::Cpp2ILInjected.Token(Token = "0x4008223")]
447 [global::Cpp2ILInjected.Token(Token = "0x4008224")]
448 Invalid
449 }
450
451 [global::Cpp2ILInjected.Token(Token = "0x20008DE")]
452 private enum TrackSlope : sbyte
453 {
454 [global::Cpp2ILInjected.Token(Token = "0x4008226")]
455 Up = -1,
456 [global::Cpp2ILInjected.Token(Token = "0x4008227")]
457 Straight,
458 [global::Cpp2ILInjected.Token(Token = "0x4008228")]
459 Down
460 }
461
462 [global::Cpp2ILInjected.Token(Token = "0x20008DF")]
463 private enum TrackMode : byte
464 {
465 [global::Cpp2ILInjected.Token(Token = "0x400822A")]
466 Normal,
467 [global::Cpp2ILInjected.Token(Token = "0x400822B")]
468 Tunnel
469 }
470
471 [DebuggerDisplay("X = {X}, Y = {Y}, Slope = {Slope}")]
472 [global::Cpp2ILInjected.Token(Token = "0x20008E0")]
473 private struct TrackHistory
474 {
475 [global::Cpp2ILInjected.Token(Token = "0x60045C6")]
476 [global::Cpp2ILInjected.Address(RVA = "0x7C0E10", Offset = "0x7C0E10", Length = "0x14")]
477 [global::Cpp2ILInjected.CallAnalysis.ContainsUnimplementedInstructions]
478 [global::Cpp2ILInjected.CallAnalysis.CallerCount(Count = 0)]
479 public TrackHistory(int x, int y, TrackGenerator.TrackSlope slope)
480 {
481 throw null;
482 }
483
484 [global::Cpp2ILInjected.Token(Token = "0x400822C")]
485 [global::Cpp2ILInjected.FieldOffset(Offset = "0x0")]
486 public short X;
487
488 [global::Cpp2ILInjected.Token(Token = "0x400822D")]
489 [global::Cpp2ILInjected.FieldOffset(Offset = "0x2")]
490 public short Y;
491
492 [global::Cpp2ILInjected.Token(Token = "0x400822E")]
493 [global::Cpp2ILInjected.FieldOffset(Offset = "0x4")]
495
496 [global::Cpp2ILInjected.Token(Token = "0x400822F")]
497 [global::Cpp2ILInjected.FieldOffset(Offset = "0x5")]
499 }
500 }
501}
class f__AnonymousType0<< Count > j__TPar
bool Place(Point origin, int minLength, int maxLength)
static bool CanSlopesTouch(TrackGenerator.TrackSlope leftSlope, TrackGenerator.TrackSlope rightSlope)
readonly TrackGenerator.TrackHistory[] _rewriteHistory
TrackGenerator.TrackPlacementState GetHistorySegmentPlacementState(int startIndex, int length)
TrackGenerator.TrackPlacementState TryRewriteHistoryToAvoidTiles()
TrackGenerator.TrackPlacementState CreateTunnel()
bool FindPath(int minLength, int maxLength)
void RewriteSlopeDirection(int index, TrackGenerator.TrackSlope slope)
static bool FindSuitableOrigin(ref Point origin)
static TrackGenerator.TrackPlacementState CalculateStateForLocation(int x, int y)
readonly TrackGenerator.TrackHistory[] _history
void AppendToHistory(TrackGenerator.TrackSlope slope, TrackGenerator.TrackMode mode=TrackGenerator.TrackMode.Normal)
TrackHistory(int x, int y, TrackGenerator.TrackSlope slope)