mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-07 00:38:46 +00:00
Format line endings
This commit is contained in:
@@ -116,11 +116,9 @@ public final class GameObjectDecoder {
|
|||||||
block = true;
|
block = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Predicate<Integer> walls = (value) -> value >= ObjectType.LENGTHWISE_WALL.getValue()
|
Predicate<Integer> walls = (value) -> value >= ObjectType.LENGTHWISE_WALL.getValue() && value <= ObjectType.RECTANGULAR_CORNER.getValue() || value == ObjectType.DIAGONAL_WALL.getValue();
|
||||||
&& value <= ObjectType.RECTANGULAR_CORNER.getValue() || value == ObjectType.DIAGONAL_WALL.getValue();
|
|
||||||
|
|
||||||
Predicate<Integer> roofs = (value) -> value > ObjectType.DIAGONAL_INTERACTABLE.getValue()
|
Predicate<Integer> roofs = (value) -> value > ObjectType.DIAGONAL_INTERACTABLE.getValue() && value < ObjectType.FLOOR_DECORATION.getValue();
|
||||||
&& value < ObjectType.FLOOR_DECORATION.getValue();
|
|
||||||
|
|
||||||
if (walls.test(type) || roofs.test(type)) {
|
if (walls.test(type) || roofs.test(type)) {
|
||||||
block = true;
|
block = true;
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ public final class ObjectDefinitionDecoder {
|
|||||||
data.getShort();
|
data.getShort();
|
||||||
data.getShort();
|
data.getShort();
|
||||||
int count = data.get();
|
int count = data.get();
|
||||||
for (int i = 0; i <= count; i++){
|
for (int i = 0; i <= count; i++) {
|
||||||
data.getShort();
|
data.getShort();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -50,8 +50,7 @@ public final class GameService extends Service {
|
|||||||
/**
|
/**
|
||||||
* The scheduled executor service.
|
* The scheduled executor service.
|
||||||
*/
|
*/
|
||||||
private final ScheduledExecutorService scheduledExecutor = Executors.newSingleThreadScheduledExecutor(new NamedThreadFactory(
|
private final ScheduledExecutorService scheduledExecutor = Executors.newSingleThreadScheduledExecutor(new NamedThreadFactory("GameService"));
|
||||||
"GameService"));
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The {@link ClientSynchronizer}.
|
* The {@link ClientSynchronizer}.
|
||||||
@@ -157,7 +156,7 @@ public final class GameService extends Service {
|
|||||||
*/
|
*/
|
||||||
public RegistrationStatus registerPlayer(Player player, GameSession session) {
|
public RegistrationStatus registerPlayer(Player player, GameSession session) {
|
||||||
World world = World.getWorld();
|
World world = World.getWorld();
|
||||||
|
|
||||||
synchronized (this) {
|
synchronized (this) {
|
||||||
RegistrationStatus status = world.register(player);
|
RegistrationStatus status = world.register(player);
|
||||||
if (status == RegistrationStatus.OK) {
|
if (status == RegistrationStatus.OK) {
|
||||||
@@ -176,8 +175,7 @@ public final class GameService extends Service {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void start() {
|
public void start() {
|
||||||
scheduledExecutor.scheduleAtFixedRate(new GamePulseHandler(this), GameConstants.PULSE_DELAY, GameConstants.PULSE_DELAY,
|
scheduledExecutor.scheduleAtFixedRate(new GamePulseHandler(this), GameConstants.PULSE_DELAY, GameConstants.PULSE_DELAY, TimeUnit.MILLISECONDS);
|
||||||
TimeUnit.MILLISECONDS);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ public final class ObjectActionVerificationHandler extends MessageHandler<Object
|
|||||||
ctx.breakHandlerChain();
|
ctx.breakHandlerChain();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Position position = message.getPosition();
|
Position position = message.getPosition();
|
||||||
Region region = repository.fromPosition(position);
|
Region region = repository.fromPosition(position);
|
||||||
|
|||||||
@@ -53,8 +53,7 @@ public final class PlayerSynchronizationMessage extends Message {
|
|||||||
* @param localPlayers The number of local players.
|
* @param localPlayers The number of local players.
|
||||||
* @param segments A list of segments.
|
* @param segments A list of segments.
|
||||||
*/
|
*/
|
||||||
public PlayerSynchronizationMessage(Position lastKnownRegion, Position position, boolean regionChanged,
|
public PlayerSynchronizationMessage(Position lastKnownRegion, Position position, boolean regionChanged, SynchronizationSegment segment, int localPlayers, List<SynchronizationSegment> segments) {
|
||||||
SynchronizationSegment segment, int localPlayers, List<SynchronizationSegment> segments) {
|
|
||||||
this.lastKnownRegion = lastKnownRegion;
|
this.lastKnownRegion = lastKnownRegion;
|
||||||
this.position = position;
|
this.position = position;
|
||||||
this.regionChanged = regionChanged;
|
this.regionChanged = regionChanged;
|
||||||
|
|||||||
@@ -226,8 +226,7 @@ public final class Position {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return MoreObjects.toStringHelper(this).add("x", getX()).add("y", getY()).add("height", getHeight())
|
return MoreObjects.toStringHelper(this).add("x", getX()).add("y", getY()).add("height", getHeight()).add("region", getRegionCoordinates()).toString();
|
||||||
.add("region", getRegionCoordinates()).toString();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -41,8 +41,7 @@ public final class Region {
|
|||||||
@Override
|
@Override
|
||||||
public void execute(Region region, Entity entity, EntityUpdateType update) {
|
public void execute(Region region, Entity entity, EntityUpdateType update) {
|
||||||
EntityType type = entity.getEntityType();
|
EntityType type = entity.getEntityType();
|
||||||
if (type != EntityType.PLAYER && type != EntityType.NPC
|
if (type != EntityType.PLAYER && type != EntityType.NPC && (type != EntityType.STATIC_OBJECT || update == EntityUpdateType.REMOVE)) {
|
||||||
&& (type != EntityType.STATIC_OBJECT || update == EntityUpdateType.REMOVE)) {
|
|
||||||
region.record(entity, update);
|
region.record(entity, update);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -190,8 +189,7 @@ public final class Region {
|
|||||||
|
|
||||||
Set<EntityType> set = new HashSet<>(Arrays.asList(types));
|
Set<EntityType> set = new HashSet<>(Arrays.asList(types));
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
Set<T> filtered = (Set<T>) local.stream().filter(entity -> set.contains(entity.getEntityType()))
|
Set<T> filtered = (Set<T>) local.stream().filter(entity -> set.contains(entity.getEntityType())).collect(Collectors.toSet());
|
||||||
.collect(Collectors.toSet());
|
|
||||||
return ImmutableSet.copyOf(filtered);
|
return ImmutableSet.copyOf(filtered);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -291,8 +289,7 @@ public final class Region {
|
|||||||
* @throws IllegalArgumentException If the specified position is not included in this Region.
|
* @throws IllegalArgumentException If the specified position is not included in this Region.
|
||||||
*/
|
*/
|
||||||
private void checkPosition(Position position) {
|
private void checkPosition(Position position) {
|
||||||
Preconditions.checkArgument(coordinates.equals(RegionCoordinates.fromPosition(position)),
|
Preconditions.checkArgument(coordinates.equals(RegionCoordinates.fromPosition(position)), "Position is not included in this Region.");
|
||||||
"Position is not included in this Region.");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -184,8 +184,7 @@ public final class CollisionMatrix {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return MoreObjects.toStringHelper(this).add("width", width).add("length", length).add("matrix", Arrays.toString(matrix))
|
return MoreObjects.toStringHelper(this).add("width", width).add("length", length).add("matrix", Arrays.toString(matrix)).toString();
|
||||||
.toString();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/**
|
/**
|
||||||
* Contains snapshot-related classes.
|
* Contains snapshot-related classes.
|
||||||
*/
|
*/
|
||||||
package org.apollo.game.model.area.update;
|
package org.apollo.game.model.area.update;
|
||||||
@@ -196,8 +196,8 @@ public abstract class Mob extends Entity {
|
|||||||
*/
|
*/
|
||||||
public final Direction[] getDirections() {
|
public final Direction[] getDirections() {
|
||||||
if (firstDirection != Direction.NONE) {
|
if (firstDirection != Direction.NONE) {
|
||||||
return secondDirection == Direction.NONE ? new Direction[] { firstDirection } : new Direction[] { firstDirection,
|
return secondDirection == Direction.NONE ? new Direction[] { firstDirection } : new Direction[] {
|
||||||
secondDirection };
|
firstDirection, secondDirection };
|
||||||
}
|
}
|
||||||
|
|
||||||
return Direction.EMPTY_DIRECTION_ARRAY;
|
return Direction.EMPTY_DIRECTION_ARRAY;
|
||||||
|
|||||||
@@ -942,8 +942,7 @@ public final class Player extends Mob {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return MoreObjects.toStringHelper(this).add("username", getUsername()).add("privilege", privilegeLevel)
|
return MoreObjects.toStringHelper(this).add("username", getUsername()).add("privilege", privilegeLevel).add("client version", getClientVersion()).toString();
|
||||||
.add("client version", getClientVersion()).toString();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -962,11 +961,9 @@ public final class Player extends Mob {
|
|||||||
InventoryListener fullBankListener = new FullInventoryListener(this, FullInventoryListener.FULL_BANK_MESSAGE);
|
InventoryListener fullBankListener = new FullInventoryListener(this, FullInventoryListener.FULL_BANK_MESSAGE);
|
||||||
InventoryListener appearanceListener = new AppearanceInventoryListener(this);
|
InventoryListener appearanceListener = new AppearanceInventoryListener(this);
|
||||||
|
|
||||||
InventoryListener syncInventoryListener = new SynchronizationInventoryListener(this,
|
InventoryListener syncInventoryListener = new SynchronizationInventoryListener(this, SynchronizationInventoryListener.INVENTORY_ID);
|
||||||
SynchronizationInventoryListener.INVENTORY_ID);
|
|
||||||
InventoryListener syncBankListener = new SynchronizationInventoryListener(this, BankConstants.BANK_INVENTORY_ID);
|
InventoryListener syncBankListener = new SynchronizationInventoryListener(this, BankConstants.BANK_INVENTORY_ID);
|
||||||
InventoryListener syncEquipmentListener = new SynchronizationInventoryListener(this,
|
InventoryListener syncEquipmentListener = new SynchronizationInventoryListener(this, SynchronizationInventoryListener.EQUIPMENT_ID);
|
||||||
SynchronizationInventoryListener.EQUIPMENT_ID);
|
|
||||||
|
|
||||||
inventory.addListener(syncInventoryListener);
|
inventory.addListener(syncInventoryListener);
|
||||||
inventory.addListener(fullInventoryListener);
|
inventory.addListener(fullInventoryListener);
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ public final class StringAttribute extends Attribute<String> {
|
|||||||
public byte[] encode() {
|
public byte[] encode() {
|
||||||
byte[] bytes = value.getBytes(Charset.forName("UTF-8"));
|
byte[] bytes = value.getBytes(Charset.forName("UTF-8"));
|
||||||
int length = bytes.length;
|
int length = bytes.length;
|
||||||
|
|
||||||
bytes = Arrays.copyOf(bytes, length + 1);
|
bytes = Arrays.copyOf(bytes, length + 1);
|
||||||
bytes[length - 1] = 0;
|
bytes[length - 1] = 0;
|
||||||
return bytes;
|
return bytes;
|
||||||
|
|||||||
@@ -89,8 +89,7 @@ public abstract class GameObject extends Entity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return MoreObjects.toStringHelper(this).add("id", getId()).add("type", getType()).add("orientation", getOrientation())
|
return MoreObjects.toStringHelper(this).add("id", getId()).add("type", getType()).add("orientation", getOrientation()).toString();
|
||||||
.toString();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -38,8 +38,7 @@ public enum ObjectGroup {
|
|||||||
* @throws IllegalArgumentException If there is no ObjectGroup with the specified value.
|
* @throws IllegalArgumentException If there is no ObjectGroup with the specified value.
|
||||||
*/
|
*/
|
||||||
public static ObjectGroup valueOf(int value) {
|
public static ObjectGroup valueOf(int value) {
|
||||||
return Arrays.stream(values()).filter(group -> group.value == value).findAny()
|
return Arrays.stream(values()).filter(group -> group.value == value).findAny().orElseThrow(() -> new IllegalArgumentException("No ObjectGroup with a value of " + value + " exists."));
|
||||||
.orElseThrow(() -> new IllegalArgumentException("No ObjectGroup with a value of " + value + " exists."));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/**
|
/**
|
||||||
* Contains object-related classes.
|
* Contains object-related classes.
|
||||||
*/
|
*/
|
||||||
package org.apollo.game.model.entity.obj;
|
package org.apollo.game.model.entity.obj;
|
||||||
@@ -79,8 +79,7 @@ public final class PrePlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
* @param updates The {@link Map} containing {@link Region} updates.
|
* @param updates The {@link Map} containing {@link Region} updates.
|
||||||
* @param snapshots The Map containing Region snapshots.
|
* @param snapshots The Map containing Region snapshots.
|
||||||
*/
|
*/
|
||||||
public PrePlayerSynchronizationTask(Player player, Map<RegionCoordinates, List<RegionUpdateMessage>> updates,
|
public PrePlayerSynchronizationTask(Player player, Map<RegionCoordinates, List<RegionUpdateMessage>> updates, Map<RegionCoordinates, List<RegionUpdateMessage>> snapshots) {
|
||||||
Map<RegionCoordinates, List<RegionUpdateMessage>> snapshots) {
|
|
||||||
this.player = player;
|
this.player = player;
|
||||||
this.updates = updates;
|
this.updates = updates;
|
||||||
this.snapshots = snapshots;
|
this.snapshots = snapshots;
|
||||||
@@ -210,8 +209,7 @@ public final class PrePlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
int deltaX = current.getLocalX(last);
|
int deltaX = current.getLocalX(last);
|
||||||
int deltaY = current.getLocalY(last);
|
int deltaY = current.getLocalY(last);
|
||||||
|
|
||||||
return deltaX <= Position.MAX_DISTANCE || deltaX >= (VIEWPORT_WIDTH - Position.MAX_DISTANCE - 1)
|
return deltaX <= Position.MAX_DISTANCE || deltaX >= (VIEWPORT_WIDTH - Position.MAX_DISTANCE - 1) || deltaY <= Position.MAX_DISTANCE || deltaY >= (VIEWPORT_WIDTH - Position.MAX_DISTANCE - 1);
|
||||||
|| deltaY <= Position.MAX_DISTANCE || deltaY >= (VIEWPORT_WIDTH - Position.MAX_DISTANCE - 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -224,8 +222,7 @@ public final class PrePlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
* @param repository The {@link RegionRepository} containing the Regions.
|
* @param repository The {@link RegionRepository} containing the Regions.
|
||||||
* @return The Optional containing the GroupedRegionUpdateMessage.
|
* @return The Optional containing the GroupedRegionUpdateMessage.
|
||||||
*/
|
*/
|
||||||
private Optional<GroupedRegionUpdateMessage> toUpdateMessage(RegionUpdateMode mode, Position position,
|
private Optional<GroupedRegionUpdateMessage> toUpdateMessage(RegionUpdateMode mode, Position position, RegionCoordinates coordinates, RegionRepository repository) {
|
||||||
RegionCoordinates coordinates, RegionRepository repository) {
|
|
||||||
List<RegionUpdateMessage> messages;
|
List<RegionUpdateMessage> messages;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -241,8 +238,7 @@ public final class PrePlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
messages = updates.get(coordinates);
|
messages = updates.get(coordinates);
|
||||||
if (messages == null) {
|
if (messages == null) {
|
||||||
synchronized (updates) {
|
synchronized (updates) {
|
||||||
messages = updates.computeIfAbsent(coordinates,
|
messages = updates.computeIfAbsent(coordinates, coords -> repository.get(coords).getUpdates(position.getHeight()));
|
||||||
coords -> repository.get(coords).getUpdates(position.getHeight()));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -251,8 +247,7 @@ public final class PrePlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
messages = snapshots.get(coordinates);
|
messages = snapshots.get(coordinates);
|
||||||
if (messages == null) {
|
if (messages == null) {
|
||||||
synchronized (snapshots) {
|
synchronized (snapshots) {
|
||||||
messages = snapshots.computeIfAbsent(coordinates,
|
messages = snapshots.computeIfAbsent(coordinates, coords -> repository.get(coords).getSnapshot(position.getHeight()));
|
||||||
coords -> repository.get(coords).getSnapshot(position.getHeight()));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -261,8 +256,7 @@ public final class PrePlayerSynchronizationTask extends SynchronizationTask {
|
|||||||
throw new IllegalArgumentException("Unrecognised RegionUpdateMode " + mode + ".");
|
throw new IllegalArgumentException("Unrecognised RegionUpdateMode " + mode + ".");
|
||||||
}
|
}
|
||||||
|
|
||||||
return messages.isEmpty() ? Optional.empty() : Optional
|
return messages.isEmpty() ? Optional.empty() : Optional.of(new GroupedRegionUpdateMessage(position, coordinates, messages));
|
||||||
.of(new GroupedRegionUpdateMessage(position, coordinates, messages));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -72,8 +72,7 @@ public final class NetworkConstants {
|
|||||||
Preconditions.checkState(rsa != null, "Root node must have a child named 'rsa'.");
|
Preconditions.checkState(rsa != null, "Root node must have a child named 'rsa'.");
|
||||||
|
|
||||||
XmlNode modulus = rsa.getChild("modulus"), exponent = rsa.getChild("private-exponent");
|
XmlNode modulus = rsa.getChild("modulus"), exponent = rsa.getChild("private-exponent");
|
||||||
Preconditions.checkState(modulus != null && exponent != null,
|
Preconditions.checkState(modulus != null && exponent != null, "Rsa node must have two children: 'modulus' and 'private-exponent'.");
|
||||||
"Rsa node must have two children: 'modulus' and 'private-exponent'.");
|
|
||||||
|
|
||||||
RSA_MODULUS = new BigInteger(modulus.getValue());
|
RSA_MODULUS = new BigInteger(modulus.getValue());
|
||||||
RSA_EXPONENT = new BigInteger(exponent.getValue());
|
RSA_EXPONENT = new BigInteger(exponent.getValue());
|
||||||
@@ -82,8 +81,7 @@ public final class NetworkConstants {
|
|||||||
Preconditions.checkState(ports != null, "Root node must have a child named 'ports'.");
|
Preconditions.checkState(ports != null, "Root node must have a child named 'ports'.");
|
||||||
|
|
||||||
XmlNode http = ports.getChild("http"), service = ports.getChild("service"), jaggrab = ports.getChild("jaggrab");
|
XmlNode http = ports.getChild("http"), service = ports.getChild("service"), jaggrab = ports.getChild("jaggrab");
|
||||||
Preconditions.checkState(http != null && service != null && jaggrab != null,
|
Preconditions.checkState(http != null && service != null && jaggrab != null, "Ports node must have three children: 'http', 'service', and 'jaggrab'.");
|
||||||
"Ports node must have three children: 'http', 'service', and 'jaggrab'.");
|
|
||||||
|
|
||||||
HTTP_PORT = Integer.parseInt(http.getValue());
|
HTTP_PORT = Integer.parseInt(http.getValue());
|
||||||
SERVICE_PORT = Integer.parseInt(service.getValue());
|
SERVICE_PORT = Integer.parseInt(service.getValue());
|
||||||
|
|||||||
@@ -44,8 +44,7 @@ public final class GroupedRegionUpdateMessageEncoder extends MessageEncoder<Grou
|
|||||||
for (RegionUpdateMessage update : message.getMessages()) {
|
for (RegionUpdateMessage update : message.getMessages()) {
|
||||||
System.out.println("==== Sending " + update + " as part of grum");
|
System.out.println("==== Sending " + update + " as part of grum");
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
MessageEncoder<RegionUpdateMessage> encoder = (MessageEncoder<RegionUpdateMessage>) release.getMessageEncoder(update
|
MessageEncoder<RegionUpdateMessage> encoder = (MessageEncoder<RegionUpdateMessage>) release.getMessageEncoder(update.getClass());
|
||||||
.getClass());
|
|
||||||
|
|
||||||
GamePacket packet = encoder.encode(update);
|
GamePacket packet = encoder.encode(update);
|
||||||
builder.put(DataType.BYTE, packet.getOpcode());
|
builder.put(DataType.BYTE, packet.getOpcode());
|
||||||
|
|||||||
@@ -194,8 +194,8 @@ public final class NpcSynchronizationMessageEncoder extends MessageEncoder<NpcSy
|
|||||||
private static void putGraphicBlock(GraphicBlock block, GamePacketBuilder builder) {
|
private static void putGraphicBlock(GraphicBlock block, GamePacketBuilder builder) {
|
||||||
Graphic graphic = block.getGraphic();
|
Graphic graphic = block.getGraphic();
|
||||||
builder.put(DataType.SHORT, graphic.getId());
|
builder.put(DataType.SHORT, graphic.getId());
|
||||||
builder.put(DataType.INT, graphic.getHeight() << 16 | graphic.getDelay() & 0xFFFF);
|
builder.put(DataType.INT, graphic.getHeight() << 16 | graphic.getDelay() & 0xFFFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Puts a hit update block into the specified builder.
|
* Puts a hit update block into the specified builder.
|
||||||
|
|||||||
@@ -20,8 +20,7 @@ public final class RemoveObjectMessageEncoder extends MessageEncoder<RemoveObjec
|
|||||||
builder.put(DataType.BYTE, DataTransformation.NEGATE, message.getType() << 2 | message.getOrientation());
|
builder.put(DataType.BYTE, DataTransformation.NEGATE, message.getType() << 2 | message.getOrientation());
|
||||||
builder.put(DataType.BYTE, message.getPositionOffset());
|
builder.put(DataType.BYTE, message.getPositionOffset());
|
||||||
|
|
||||||
System.out.println("Sending rm obj: type=" + message.getType() + ", orient=" + message.getOrientation() + ",posoff="
|
System.out.println("Sending rm obj: type=" + message.getType() + ", orient=" + message.getOrientation() + ",posoff=" + Integer.toBinaryString(message.getPositionOffset()));
|
||||||
+ Integer.toBinaryString(message.getPositionOffset()));
|
|
||||||
return builder.toGamePacket();
|
return builder.toGamePacket();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -32,8 +32,7 @@ public final class GroupedRegionUpdateMessageEncoder extends MessageEncoder<Grou
|
|||||||
*
|
*
|
||||||
* @param encoders The Map of RegionUpdateMessages to MessageEncoders.
|
* @param encoders The Map of RegionUpdateMessages to MessageEncoders.
|
||||||
*/
|
*/
|
||||||
public GroupedRegionUpdateMessageEncoder(
|
public GroupedRegionUpdateMessageEncoder(Map<Class<? extends RegionUpdateMessage>, MessageEncoder<? extends RegionUpdateMessage>> encoders) {
|
||||||
Map<Class<? extends RegionUpdateMessage>, MessageEncoder<? extends RegionUpdateMessage>> encoders) {
|
|
||||||
this.encoders = ImmutableMap.copyOf(encoders);
|
this.encoders = ImmutableMap.copyOf(encoders);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -49,8 +48,7 @@ public final class GroupedRegionUpdateMessageEncoder extends MessageEncoder<Grou
|
|||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
MessageEncoder<RegionUpdateMessage> encoder = (MessageEncoder<RegionUpdateMessage>) encoders.get(update);
|
MessageEncoder<RegionUpdateMessage> encoder = (MessageEncoder<RegionUpdateMessage>) encoders.get(update);
|
||||||
|
|
||||||
Preconditions.checkState(encoder != null, update.getClass()
|
Preconditions.checkState(encoder != null, update.getClass() + " does not have a registered encoder in GroupedRegionUpdateMessageEncoder.");
|
||||||
+ " does not have a registered encoder in GroupedRegionUpdateMessageEncoder.");
|
|
||||||
|
|
||||||
GamePacket packet = encoder.encode(update);
|
GamePacket packet = encoder.encode(update);
|
||||||
builder.put(DataType.BYTE, packet.getOpcode());
|
builder.put(DataType.BYTE, packet.getOpcode());
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ public final class NpcSynchronizationMessageEncoder extends MessageEncoder<NpcSy
|
|||||||
private static void putGraphicBlock(GraphicBlock block, GamePacketBuilder builder) {
|
private static void putGraphicBlock(GraphicBlock block, GamePacketBuilder builder) {
|
||||||
Graphic graphic = block.getGraphic();
|
Graphic graphic = block.getGraphic();
|
||||||
builder.put(DataType.SHORT, graphic.getId());
|
builder.put(DataType.SHORT, graphic.getId());
|
||||||
builder.put(DataType.INT, graphic.getHeight() << 16 | graphic.getDelay() & 0xFFFF);
|
builder.put(DataType.INT, graphic.getHeight() << 16 | graphic.getDelay() & 0xFFFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -221,8 +221,7 @@ public final class Release377 extends Release {
|
|||||||
regionUpdates.put(SendObjectMessage.class, new SendObjectMessageEncoder());
|
regionUpdates.put(SendObjectMessage.class, new SendObjectMessageEncoder());
|
||||||
regionUpdates.put(RemoveObjectMessage.class, new RemoveObjectMessageEncoder());
|
regionUpdates.put(RemoveObjectMessage.class, new RemoveObjectMessageEncoder());
|
||||||
|
|
||||||
for (Map.Entry<Class<? extends RegionUpdateMessage>, MessageEncoder<? extends RegionUpdateMessage>> entry : regionUpdates
|
for (Map.Entry<Class<? extends RegionUpdateMessage>, MessageEncoder<? extends RegionUpdateMessage>> entry : regionUpdates.entrySet()) {
|
||||||
.entrySet()) {
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
Class<RegionUpdateMessage> clazz = (Class<RegionUpdateMessage>) entry.getKey();
|
Class<RegionUpdateMessage> clazz = (Class<RegionUpdateMessage>) entry.getKey();
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
|||||||
@@ -9,8 +9,7 @@ import io.netty.channel.Channel;
|
|||||||
*
|
*
|
||||||
* @param <T> The type of request.
|
* @param <T> The type of request.
|
||||||
*/
|
*/
|
||||||
public final class ComparableChannelRequest<T extends Comparable<T>> extends ChannelRequest<T> implements
|
public final class ComparableChannelRequest<T extends Comparable<T>> extends ChannelRequest<T> implements Comparable<ComparableChannelRequest<T>> {
|
||||||
Comparable<ComparableChannelRequest<T>> {
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates the ComparableChannelRequest.
|
* Creates the ComparableChannelRequest.
|
||||||
|
|||||||
@@ -146,14 +146,14 @@ public final class XmlNode implements Iterable<XmlNode> {
|
|||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the value of this node, wrapped in an {@link Optional}
|
* Gets the value of this node, wrapped in an {@link Optional}
|
||||||
*
|
*
|
||||||
* @return The value of this node if it exists otherwise {@link Optional#empty()} is returned
|
* @return The value of this node if it exists otherwise {@link Optional#empty()} is returned
|
||||||
*/
|
*/
|
||||||
public Optional<String> getOptionalValue() {
|
public Optional<String> getOptionalValue() {
|
||||||
return Optional.ofNullable(value);
|
return Optional.ofNullable(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if this node has a value.
|
* Checks if this node has a value.
|
||||||
|
|||||||
Reference in New Issue
Block a user