Files
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

420 lines
13 KiB
C#

using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using Pathfinding.ClipperLib;
using Pathfinding.Poly2Tri;
using Pathfinding.Voxels;
using UnityEngine;
namespace Pathfinding.Util
{
// Token: 0x02000142 RID: 322
[Token(Token = "0x20000CB")]
public class TileHandler
{
// Token: 0x1700016E RID: 366
// (get) Token: 0x06000A57 RID: 2647 RVA: 0x0000665C File Offset: 0x0000485C
[Token(Token = "0x17000143")]
private bool isBatching
{
[Token(Token = "0x60008EA")]
[Address(RVA = "0x9806A0", Offset = "0x97F6A0", VA = "0x1809806A0")]
get
{
return default(bool);
}
}
// Token: 0x1700016F RID: 367
// (get) Token: 0x06000A58 RID: 2648 RVA: 0x00006674 File Offset: 0x00004874
[Token(Token = "0x17000144")]
public bool isValid
{
[Token(Token = "0x60008EB")]
[Address(RVA = "0x9806B0", Offset = "0x97F6B0", VA = "0x1809806B0")]
get
{
return default(bool);
}
}
// Token: 0x06000A59 RID: 2649 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008EC")]
[Address(RVA = "0x9804D0", Offset = "0x97F4D0", VA = "0x1809804D0")]
public TileHandler(NavmeshBase graph)
{
}
// Token: 0x06000A5A RID: 2650 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008ED")]
[Address(RVA = "0x97ED10", Offset = "0x97DD10", VA = "0x18097ED10")]
public void OnRecalculatedTiles(NavmeshTile[] recalculatedTiles)
{
}
// Token: 0x06000A5B RID: 2651 RVA: 0x0000668C File Offset: 0x0000488C
[Token(Token = "0x60008EE")]
[Address(RVA = "0x97E8D0", Offset = "0x97D8D0", VA = "0x18097E8D0")]
public int GetActiveRotation(Int2 p)
{
return 0;
}
// Token: 0x06000A5C RID: 2652 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x60008EF")]
[Address(RVA = "0x97FAB0", Offset = "0x97EAB0", VA = "0x18097FAB0")]
public TileHandler.TileType RegisterTileType(Mesh source, Int3 centerOffset, int width = 1, int depth = 1)
{
return null;
}
// Token: 0x06000A5D RID: 2653 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F0")]
[Address(RVA = "0x97AD20", Offset = "0x979D20", VA = "0x18097AD20")]
public void CreateTileTypesFromGraph()
{
}
// Token: 0x06000A5E RID: 2654 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F1")]
[Address(RVA = "0x980150", Offset = "0x97F150", VA = "0x180980150")]
private void UpdateTileType(NavmeshTile tile)
{
}
// Token: 0x06000A5F RID: 2655 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F2")]
[Address(RVA = "0x97FFB0", Offset = "0x97EFB0", VA = "0x18097FFB0")]
public void StartBatchLoad()
{
}
// Token: 0x06000A60 RID: 2656 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F3")]
[Address(RVA = "0x97E730", Offset = "0x97D730", VA = "0x18097E730")]
public void EndBatchLoad()
{
}
// Token: 0x06000A61 RID: 2657 RVA: 0x000066A4 File Offset: 0x000048A4
[Token(Token = "0x60008F4")]
[Address(RVA = "0x97B390", Offset = "0x97A390", VA = "0x18097B390")]
private TileHandler.CuttingResult CutPoly(Int3[] verts, int[] tris, Int3[] extraShape, GraphTransform graphTransform, IntRect tiles, TileHandler.CutMode mode = TileHandler.CutMode.CutAll | TileHandler.CutMode.CutDual, int perturbate = -1)
{
return default(TileHandler.CuttingResult);
}
// Token: 0x06000A62 RID: 2658 RVA: 0x00002050 File Offset: 0x00000250
[Token(Token = "0x60008F5")]
[Address(RVA = "0x97F460", Offset = "0x97E460", VA = "0x18097F460")]
private static List<TileHandler.Cut> PrepareNavmeshCutsForCutting(List<NavmeshCut> navmeshCuts, GraphTransform transform, IntRect cutSpaceBounds, int perturbate, bool anyNavmeshAdds)
{
return null;
}
// Token: 0x06000A63 RID: 2659 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F6")]
[Address(RVA = "0x97F040", Offset = "0x97E040", VA = "0x18097F040")]
private static void PoolPolygon(Polygon polygon, Stack<Polygon> pool)
{
}
// Token: 0x06000A64 RID: 2660 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F7")]
[Address(RVA = "0x97AE50", Offset = "0x979E50", VA = "0x18097AE50")]
private void CutAll(List<IntPoint> poly, List<int> intersectingCutIndices, List<TileHandler.Cut> cuts, PolyTree result)
{
}
// Token: 0x06000A65 RID: 2661 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F8")]
[Address(RVA = "0x97AFB0", Offset = "0x979FB0", VA = "0x18097AFB0")]
private void CutDual(List<IntPoint> poly, List<int> tmpIntersectingCuts, List<TileHandler.Cut> cuts, bool hasDual, List<List<IntPoint>> intermediateResult, PolyTree result)
{
}
// Token: 0x06000A66 RID: 2662 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008F9")]
[Address(RVA = "0x97B2D0", Offset = "0x97A2D0", VA = "0x18097B2D0")]
private void CutExtra(List<IntPoint> poly, List<IntPoint> extraClipShape, PolyTree result)
{
}
// Token: 0x06000A67 RID: 2663 RVA: 0x000066BC File Offset: 0x000048BC
[Token(Token = "0x60008FA")]
[Address(RVA = "0x97AA60", Offset = "0x979A60", VA = "0x18097AA60")]
private int ClipAgainstRectangle(Int3[] clipIn, Int3[] clipOut, Int2 size)
{
return 0;
}
// Token: 0x06000A68 RID: 2664 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008FB")]
[Address(RVA = "0x97AB90", Offset = "0x979B90", VA = "0x18097AB90")]
private static void CopyMesh(Int3[] vertices, int[] triangles, List<Int3> outVertices, List<int> outTriangles)
{
}
// Token: 0x06000A69 RID: 2665 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008FC")]
[Address(RVA = "0x97D540", Offset = "0x97C540", VA = "0x18097D540")]
private void DelaunayRefinement(Int3[] verts, int[] tris, ref int tCount, bool delaunay, bool colinear)
{
}
// Token: 0x06000A6A RID: 2666 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008FD")]
[Address(RVA = "0x97A8A0", Offset = "0x9798A0", VA = "0x18097A8A0")]
public void ClearTile(int x, int z)
{
}
// Token: 0x06000A6B RID: 2667 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008FE")]
[Address(RVA = "0x97FC10", Offset = "0x97EC10", VA = "0x18097FC10")]
public void ReloadInBounds(Bounds bounds)
{
}
// Token: 0x06000A6C RID: 2668 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x60008FF")]
[Address(RVA = "0x97FD90", Offset = "0x97ED90", VA = "0x18097FD90")]
public void ReloadInBounds(IntRect tiles)
{
}
// Token: 0x06000A6D RID: 2669 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6000900")]
[Address(RVA = "0x97FED0", Offset = "0x97EED0", VA = "0x18097FED0")]
public void ReloadTile(int x, int z)
{
}
// Token: 0x06000A6E RID: 2670 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6000901")]
[Address(RVA = "0x97E920", Offset = "0x97D920", VA = "0x18097E920")]
public void LoadTile(TileHandler.TileType tile, int x, int z, int rotation, int yoffset)
{
}
// Token: 0x0400072F RID: 1839
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4000546")]
public readonly NavmeshBase graph;
// Token: 0x04000730 RID: 1840
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4000547")]
private readonly int tileXCount;
// Token: 0x04000731 RID: 1841
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4000548")]
private readonly int tileZCount;
// Token: 0x04000732 RID: 1842
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4000549")]
private readonly Clipper clipper;
// Token: 0x04000733 RID: 1843
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400054A")]
private readonly Dictionary<Int2, int> cached_Int2_int_dict;
// Token: 0x04000734 RID: 1844
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400054B")]
private readonly TileHandler.TileType[] activeTileTypes;
// Token: 0x04000735 RID: 1845
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400054C")]
private readonly int[] activeTileRotations;
// Token: 0x04000736 RID: 1846
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400054D")]
private readonly int[] activeTileOffsets;
// Token: 0x04000737 RID: 1847
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400054E")]
private readonly bool[] reloadedInBatch;
// Token: 0x04000738 RID: 1848
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400054F")]
public readonly GridLookup<NavmeshClipper> cuts;
// Token: 0x04000739 RID: 1849
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4000550")]
private int batchDepth;
// Token: 0x0400073A RID: 1850
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4000551")]
private readonly Int3PolygonClipper simpleClipper;
// Token: 0x02000143 RID: 323
[Token(Token = "0x200014B")]
public class TileType
{
// Token: 0x17000170 RID: 368
// (get) Token: 0x06000A71 RID: 2673 RVA: 0x00006704 File Offset: 0x00004904
[Token(Token = "0x17000172")]
public int Width
{
[Token(Token = "0x6000AAA")]
[Address(RVA = "0x4D9880", Offset = "0x4D8880", VA = "0x1804D9880")]
get
{
return 0;
}
}
// Token: 0x17000171 RID: 369
// (get) Token: 0x06000A72 RID: 2674 RVA: 0x0000671C File Offset: 0x0000491C
[Token(Token = "0x17000173")]
public int Depth
{
[Token(Token = "0x6000AAB")]
[Address(RVA = "0x42B830", Offset = "0x42A830", VA = "0x18042B830")]
get
{
return 0;
}
}
// Token: 0x06000A73 RID: 2675 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6000AAC")]
[Address(RVA = "0x980DD0", Offset = "0x97FDD0", VA = "0x180980DD0")]
public TileType(Int3[] sourceVerts, int[] sourceTris, Int3 tileSize, Int3 centerOffset, int width = 1, int depth = 1)
{
}
// Token: 0x06000A74 RID: 2676 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6000AAD")]
[Address(RVA = "0x980AA0", Offset = "0x97FAA0", VA = "0x180980AA0")]
public TileType(Mesh source, Int3 tileSize, Int3 centerOffset, int width = 1, int depth = 1)
{
}
// Token: 0x06000A75 RID: 2677 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6000AAE")]
[Address(RVA = "0x980710", Offset = "0x97F710", VA = "0x180980710")]
public void Load(out Int3[] verts, out int[] tris, int rotation, int yoffset)
{
}
// Token: 0x0400073B RID: 1851
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4000761")]
private Int3[] verts;
// Token: 0x0400073C RID: 1852
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4000762")]
private int[] tris;
// Token: 0x0400073D RID: 1853
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4000763")]
private Int3 offset;
// Token: 0x0400073E RID: 1854
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4000764")]
private int lastYOffset;
// Token: 0x0400073F RID: 1855
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4000765")]
private int lastRotation;
// Token: 0x04000740 RID: 1856
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x4000766")]
private int width;
// Token: 0x04000741 RID: 1857
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4000767")]
private int depth;
// Token: 0x04000742 RID: 1858
[Token(Token = "0x4000768")]
private static readonly int[] Rotations;
}
// Token: 0x02000144 RID: 324
[Token(Token = "0x200014C")]
[Flags]
public enum CutMode
{
// Token: 0x04000744 RID: 1860
[Token(Token = "0x400076A")]
CutAll = 1,
// Token: 0x04000745 RID: 1861
[Token(Token = "0x400076B")]
CutDual = 2,
// Token: 0x04000746 RID: 1862
[Token(Token = "0x400076C")]
CutExtra = 4
}
// Token: 0x02000145 RID: 325
[Token(Token = "0x200014D")]
private class Cut
{
// Token: 0x06000A77 RID: 2679 RVA: 0x00002082 File Offset: 0x00000282
[Token(Token = "0x6000AB0")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public Cut()
{
}
// Token: 0x04000747 RID: 1863
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400076D")]
public IntRect bounds;
// Token: 0x04000748 RID: 1864
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400076E")]
public Int2 boundsY;
// Token: 0x04000749 RID: 1865
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400076F")]
public bool isDual;
// Token: 0x0400074A RID: 1866
[FieldOffset(Offset = "0x29")]
[Token(Token = "0x4000770")]
public bool cutsAddedGeom;
// Token: 0x0400074B RID: 1867
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4000771")]
public List<IntPoint> contour;
}
// Token: 0x02000146 RID: 326
[Token(Token = "0x200014E")]
private struct CuttingResult
{
// Token: 0x0400074C RID: 1868
[FieldOffset(Offset = "0x0")]
[Token(Token = "0x4000772")]
public Int3[] verts;
// Token: 0x0400074D RID: 1869
[FieldOffset(Offset = "0x8")]
[Token(Token = "0x4000773")]
public int[] tris;
}
}
}