RuneHive-Game
Loading...
Searching...
No Matches
SendMessage.java
Go to the documentation of this file.
1package com.runehive.net.packet.out;
2
3import com.runehive.game.world.entity.mob.player.Player;
4import com.runehive.net.packet.OutgoingPacket;
5import com.runehive.net.packet.PacketType;
6import com.runehive.util.MessageColor;
7
8/**
9 * The {@code OutgoingPacket} that sends a message to a {@code Player}s chatbox
10 * in the client.
11 *
12 * @author Michael | Chex
13 */
14public class SendMessage extends OutgoingPacket {
15
16 private final Object message;
17 private final boolean filtered;
18
19 public SendMessage(Object message) {
21 }
22
23 public SendMessage(Object message, boolean filtered) {
25 }
26
27 public SendMessage(Object message, MessageColor color) {
28 this(message, color, false);
29 }
30
31 public SendMessage(Object message, MessageColor color, boolean filtered) {
32 super(253, PacketType.VAR_BYTE);
33 this.message = (color == MessageColor.BLACK ? "" : "<col=" + color.getColor() + ">") + message;
34 this.filtered = filtered;
35 }
36
37 @Override
38 public boolean encode(Player player) {
39 builder.writeString(String.valueOf(message));
40 builder.writeByte(filtered ? 1 : 0);
41 return true;
42 }
43}
This class represents a character controlled by a player.
Definition Player.java:125
OutgoingPacket(int opcode, int capacity)
SendMessage(Object message, MessageColor color, boolean filtered)
SendMessage(Object message, MessageColor color)
SendMessage(Object message, boolean filtered)
Represents a type of packet.
VAR_BYTE
A variable packet where the size is indicated by a byte.
Holds an enum of colors for ease.
String getColor()
Gets the color.