aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/SetPlayerTeamPacket.h
blob: 60364db55df03df051aa4315b417cf3a3a54a7d1 (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
#pragma once

#include "Packet.h"

class PlayerTeam;

class SetPlayerTeamPacket : public Packet , public enable_shared_from_this<SetPlayerTeamPacket>
{
public:
	static const int METHOD_ADD = 0;
	static const int METHOD_REMOVE = 1;
	static const int METHOD_CHANGE = 2;
	static const int METHOD_JOIN = 3;
	static const int METHOD_LEAVE = 4;

	wstring name;
	wstring displayName;
	wstring prefix;
	wstring suffix;
	vector<wstring> players;
	int method;
	int options;

	SetPlayerTeamPacket();
	SetPlayerTeamPacket(PlayerTeam *team, int method);
	SetPlayerTeamPacket(PlayerTeam *team, vector<wstring> *players, int method);
	void read(DataInputStream *dis);
	void write(DataOutputStream *dos);
	void handle(PacketListener *listener);
	int getEstimatedSize();
	
public:
	static shared_ptr<Packet> create() { return std::make_shared<SetPlayerTeamPacket>(); }
	virtual int getId() { return 209; }
};