mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-03 00:38:21 +00:00
Add Report Abuse Message
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
package org.apollo.game.message.impl;
|
||||
|
||||
import org.apollo.net.message.Message;
|
||||
|
||||
/**
|
||||
* A {@link Message} sent by the client when a player reports another player.
|
||||
*
|
||||
* @author Lmctruck30
|
||||
*/
|
||||
public final class ReportAbuseMessage extends Message {
|
||||
|
||||
/**
|
||||
* The username of the player who was reported.
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
/**
|
||||
* The id of the rule that was broken.
|
||||
*/
|
||||
private final int rule; // TODO enum for this?
|
||||
|
||||
/**
|
||||
* Whether or not a mute was requested.
|
||||
*/
|
||||
private final boolean mute;
|
||||
|
||||
/**
|
||||
* Creates the ReportAbuseMessage.
|
||||
*
|
||||
* @param name The username of the reported player.
|
||||
* @param rule The id of the rule that was broken.
|
||||
* @param mute The mute flag.
|
||||
*/
|
||||
public ReportAbuseMessage(String name, int rule, boolean mute) {
|
||||
this.name = name;
|
||||
this.rule = rule;
|
||||
this.mute = mute;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the username of the reported player.
|
||||
*
|
||||
* @return The reported.
|
||||
*/
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the id of rule that was broken.
|
||||
*
|
||||
* @return The rule.
|
||||
*/
|
||||
public int getRule() {
|
||||
return rule;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets whether or not a mute was requested.
|
||||
*
|
||||
* @return {@code true} iff a mute was requested.
|
||||
*/
|
||||
public boolean getMute() {
|
||||
return mute;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -177,6 +177,8 @@ public final class Release317 extends Release {
|
||||
register(74, new RemoveIgnoreMessageDecoder());
|
||||
register(126, new PrivateChatMessageDecoder());
|
||||
|
||||
register(218, new ReportAbuseMessageDecoder());
|
||||
|
||||
// register encoders
|
||||
register(IdAssignmentMessage.class, new IdAssignmentMessageEncoder());
|
||||
register(RegionChangeMessage.class, new RegionChangeMessageEncoder());
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.apollo.game.release.r317;
|
||||
|
||||
import org.apollo.game.message.impl.ReportAbuseMessage;
|
||||
import org.apollo.net.codec.game.DataType;
|
||||
import org.apollo.net.codec.game.GamePacket;
|
||||
import org.apollo.net.codec.game.GamePacketReader;
|
||||
import org.apollo.net.release.MessageDecoder;
|
||||
import org.apollo.util.NameUtil;
|
||||
|
||||
/**
|
||||
* A {@link MessageDecoder} for the {@link ReportAbuseMessage}.
|
||||
*
|
||||
* @author Lmctruck30
|
||||
*/
|
||||
public final class ReportAbuseMessageDecoder extends MessageDecoder<ReportAbuseMessage> {
|
||||
|
||||
@Override
|
||||
public ReportAbuseMessage decode(GamePacket packet) {
|
||||
GamePacketReader reader = new GamePacketReader(packet);
|
||||
|
||||
String name = NameUtil.decodeBase37(reader.getSigned(DataType.LONG));
|
||||
int rule = (int) reader.getUnsigned(DataType.BYTE);
|
||||
boolean mute = reader.getUnsigned(DataType.BYTE) == 1;
|
||||
|
||||
return new ReportAbuseMessage(name, rule, mute);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -171,6 +171,8 @@ public final class Release377 extends Release {
|
||||
register(160, new RemoveIgnoreMessageDecoder());
|
||||
register(227, new PrivateChatMessageDecoder());
|
||||
|
||||
register(184, new ReportAbuseMessageDecoder());
|
||||
|
||||
register(IdAssignmentMessage.class, new IdAssignmentMessageEncoder());
|
||||
register(RegionChangeMessage.class, new RegionChangeMessageEncoder());
|
||||
register(ServerChatMessage.class, new ServerMessageMessageEncoder());
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package org.apollo.game.release.r377;
|
||||
|
||||
import org.apollo.game.message.impl.ReportAbuseMessage;
|
||||
import org.apollo.net.codec.game.DataType;
|
||||
import org.apollo.net.codec.game.GamePacket;
|
||||
import org.apollo.net.codec.game.GamePacketReader;
|
||||
import org.apollo.net.release.MessageDecoder;
|
||||
import org.apollo.util.NameUtil;
|
||||
|
||||
/**
|
||||
* A {@link MessageDecoder} for the {@link ReportAbuseMessage}.
|
||||
*
|
||||
* @author Major
|
||||
*/
|
||||
public final class ReportAbuseMessageDecoder extends MessageDecoder<ReportAbuseMessage> {
|
||||
|
||||
@Override
|
||||
public ReportAbuseMessage decode(GamePacket packet) {
|
||||
GamePacketReader reader = new GamePacketReader(packet);
|
||||
|
||||
String name = NameUtil.decodeBase37(reader.getSigned(DataType.LONG));
|
||||
int rule = (int) reader.getUnsigned(DataType.BYTE);
|
||||
boolean mute = reader.getUnsigned(DataType.BYTE) == 1;
|
||||
|
||||
return new ReportAbuseMessage(name, rule, mute);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user