the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#include "stdafx.h"
2#include "net.minecraft.world.entity.h"
3#include "ChunkPos.h"
4
5ChunkPos::ChunkPos(int x, int z) : x( x ), z( z )
6{
7}
8
9__int64 ChunkPos::hashCode(int x, int z)
10{
11 __int64 xx = x;
12 __int64 zz = z;
13 return (xx & 0xffffffffl) | ((zz & 0xffffffffl) << 32l);
14}
15
16int ChunkPos::hashCode()
17{
18 __int64 hash = hashCode(x, z);
19 int h1 = (int) (hash);
20 int h2 = (int) (hash >> 32l);
21 return h1 ^ h2;
22}
23
24double ChunkPos::distanceToSqr(shared_ptr<Entity> e)
25{
26 double xPos = x * 16 + 8;
27 double zPos = z * 16 + 8;
28
29 double xd = xPos - e->x;
30 double zd = zPos - e->z;
31
32 return xd * xd + zd * zd;
33}
34
35double ChunkPos::distanceToSqr(double px, double pz)
36{
37 double xPos = x * 16 + 8;
38 double zPos = z * 16 + 8;
39
40 double xd = xPos - px;
41 double zd = zPos - pz;
42
43 return xd * xd + zd * zd;
44}
45
46int ChunkPos::getMiddleBlockX()
47{
48 return ( x << 4 ) + 8;
49}
50
51int ChunkPos::getMiddleBlockZ()
52{
53 return ( z << 4 ) + 8;
54}
55
56TilePos ChunkPos::getMiddleBlockPosition(int y)
57{
58 return TilePos(getMiddleBlockX(), y, getMiddleBlockZ());
59}
60
61wstring ChunkPos::toString()
62{
63 return L"[" + _toString<int>(x) + L", " + _toString<int>(z) + L"]";
64}
65
66__int64 ChunkPos::hash_fnct(const ChunkPos &k)
67{
68 return k.hashCode(k.x,k.z);
69}
70
71bool ChunkPos::eq_test(const ChunkPos &x, const ChunkPos &y)
72{
73 return x.x == y.x && x.z == y.z;
74}
75