aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/TickNextTickData.h
blob: 60fe3be3c6091e2a0bcc4dbd740b0aaae9baa8c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#pragma once

#include <cstdint>

// 4J Stu - In Java TickNextTickData implements Comparable<TickNextTickData>
// We don't need to do that as it is only as helper for the java sdk sorting operations

class TickNextTickData
{
private:
	static int64_t C;

public:
	int x, y, z, tileId;
	int64_t m_delay;
	int priorityTilt;

private:
	int64_t c;

public:
	TickNextTickData(int x, int y, int z, int tileId);

	bool equals(const TickNextTickData *o) const;
	int hashCode() const;
	TickNextTickData *delay(int64_t l);
	void setPriorityTilt(int priorityTilt);
	int compareTo(const TickNextTickData *tnd) const;

	static bool compare_fnct(const TickNextTickData &x, const TickNextTickData &y);
	static int hash_fnct(const TickNextTickData &k);
	static bool eq_test(const TickNextTickData &x, const TickNextTickData &y);
	bool operator==(const TickNextTickData &k);
};

struct TickNextTickDataKeyHash
{
	int operator() (const TickNextTickData &k) const
	{ return TickNextTickData::hash_fnct (k); }
};

struct TickNextTickDataKeyEq
{
	bool operator() (const TickNextTickData &x, const TickNextTickData &y) const
	{ return TickNextTickData::eq_test (x, y); }
};

struct TickNextTickDataKeyCompare
{
	bool operator() (const TickNextTickData &x, const TickNextTickData &y) const
	{ return TickNextTickData::compare_fnct (x, y); }

};