mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-03 00:38:21 +00:00
Clean-up.
This commit is contained in:
@@ -45,21 +45,6 @@ public final class IsaacRandom {
|
||||
*/
|
||||
private static int MASK = SIZE - 1 << 2;
|
||||
|
||||
/**
|
||||
* The count through the results in the results array.
|
||||
*/
|
||||
private int count;
|
||||
|
||||
/**
|
||||
* The results given to the user.
|
||||
*/
|
||||
private int[] rsl;
|
||||
|
||||
/**
|
||||
* The internal state.
|
||||
*/
|
||||
private int[] mem;
|
||||
|
||||
/**
|
||||
* The accumulator.
|
||||
*/
|
||||
@@ -75,6 +60,21 @@ public final class IsaacRandom {
|
||||
*/
|
||||
private int c;
|
||||
|
||||
/**
|
||||
* The count through the results in the results array.
|
||||
*/
|
||||
private int count;
|
||||
|
||||
/**
|
||||
* The internal state.
|
||||
*/
|
||||
private int[] mem;
|
||||
|
||||
/**
|
||||
* The results given to the user.
|
||||
*/
|
||||
private int[] rsl;
|
||||
|
||||
/**
|
||||
* Creates the random number generator without an initial seed.
|
||||
*/
|
||||
|
||||
@@ -61,9 +61,9 @@ public final class Server {
|
||||
}
|
||||
|
||||
/**
|
||||
* The {@link ServerBootstrap} for the service listener.
|
||||
* The server's context.
|
||||
*/
|
||||
private final ServerBootstrap serviceBootstrap = new ServerBootstrap();
|
||||
private ServerContext context;
|
||||
|
||||
/**
|
||||
* The {@link ServerBootstrap} for the HTTP listener.
|
||||
@@ -81,6 +81,11 @@ public final class Server {
|
||||
*/
|
||||
private final ExecutorService networkExecutor = Executors.newCachedThreadPool();
|
||||
|
||||
/**
|
||||
* The {@link ServerBootstrap} for the service listener.
|
||||
*/
|
||||
private final ServerBootstrap serviceBootstrap = new ServerBootstrap();
|
||||
|
||||
/**
|
||||
* The service manager.
|
||||
*/
|
||||
@@ -91,11 +96,6 @@ public final class Server {
|
||||
*/
|
||||
private final Timer timer = new HashedWheelTimer();
|
||||
|
||||
/**
|
||||
* The server's context.
|
||||
*/
|
||||
private ServerContext context;
|
||||
|
||||
/**
|
||||
* Creates the Apollo server.
|
||||
*
|
||||
|
||||
@@ -15,6 +15,11 @@ import org.jboss.netty.channel.group.DefaultChannelGroup;
|
||||
*/
|
||||
public final class ServerContext {
|
||||
|
||||
/**
|
||||
* The channel group.
|
||||
*/
|
||||
private final ChannelGroup group = new DefaultChannelGroup();
|
||||
|
||||
/**
|
||||
* The current release.
|
||||
*/
|
||||
@@ -25,11 +30,6 @@ public final class ServerContext {
|
||||
*/
|
||||
private final ServiceManager serviceManager;
|
||||
|
||||
/**
|
||||
* The channel group.
|
||||
*/
|
||||
private final ChannelGroup group = new DefaultChannelGroup();
|
||||
|
||||
/**
|
||||
* Creates a new server context.
|
||||
*
|
||||
|
||||
@@ -7,16 +7,16 @@ package org.apollo.fs;
|
||||
*/
|
||||
public final class FileDescriptor {
|
||||
|
||||
/**
|
||||
* The file type.
|
||||
*/
|
||||
private final int type;
|
||||
|
||||
/**
|
||||
* The file id.
|
||||
*/
|
||||
private final int file;
|
||||
|
||||
/**
|
||||
* The file type.
|
||||
*/
|
||||
private final int type;
|
||||
|
||||
/**
|
||||
* Creates the file descriptor.
|
||||
*
|
||||
|
||||
@@ -7,41 +7,40 @@ package org.apollo.fs;
|
||||
*/
|
||||
public final class FileSystemConstants {
|
||||
|
||||
/**
|
||||
* The number of caches.
|
||||
*/
|
||||
public static final int CACHE_COUNT = 5;
|
||||
|
||||
/**
|
||||
* The number of archives in cache 0.
|
||||
*/
|
||||
public static final int ARCHIVE_COUNT = 9;
|
||||
|
||||
/**
|
||||
* The size of an index.
|
||||
*/
|
||||
public static final int INDEX_SIZE = 6;
|
||||
|
||||
/**
|
||||
* The size of a header.
|
||||
*/
|
||||
public static final int HEADER_SIZE = 8;
|
||||
|
||||
/**
|
||||
* The size of a chunk.
|
||||
*/
|
||||
public static final int CHUNK_SIZE = 512;
|
||||
|
||||
/**
|
||||
* The size of a header.
|
||||
*/
|
||||
public static final int HEADER_SIZE = 8;
|
||||
|
||||
/**
|
||||
* The size of a block.
|
||||
*/
|
||||
public static final int BLOCK_SIZE = HEADER_SIZE + CHUNK_SIZE;
|
||||
|
||||
/**
|
||||
* The number of caches.
|
||||
*/
|
||||
public static final int CACHE_COUNT = 5;
|
||||
|
||||
/**
|
||||
* The size of an index.
|
||||
*/
|
||||
public static final int INDEX_SIZE = 6;
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation.
|
||||
*/
|
||||
private FileSystemConstants() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -25,16 +25,16 @@ public final class Index {
|
||||
return new Index(size, block);
|
||||
}
|
||||
|
||||
/**
|
||||
* The size of the file.
|
||||
*/
|
||||
private final int size;
|
||||
|
||||
/**
|
||||
* The first block of the file.
|
||||
*/
|
||||
private final int block;
|
||||
|
||||
/**
|
||||
* The size of the file.
|
||||
*/
|
||||
private final int size;
|
||||
|
||||
/**
|
||||
* Creates the index.
|
||||
*
|
||||
|
||||
@@ -17,14 +17,9 @@ import java.util.zip.CRC32;
|
||||
public final class IndexedFileSystem implements Closeable {
|
||||
|
||||
/**
|
||||
* Read only flag.
|
||||
* The cached CRC table.
|
||||
*/
|
||||
private final boolean readOnly;
|
||||
|
||||
/**
|
||||
* The index files.
|
||||
*/
|
||||
private RandomAccessFile[] indices = new RandomAccessFile[256];
|
||||
private ByteBuffer crcTable;
|
||||
|
||||
/**
|
||||
* The data file.
|
||||
@@ -32,9 +27,14 @@ public final class IndexedFileSystem implements Closeable {
|
||||
private RandomAccessFile data;
|
||||
|
||||
/**
|
||||
* The cached CRC table.
|
||||
* The index files.
|
||||
*/
|
||||
private ByteBuffer crcTable;
|
||||
private RandomAccessFile[] indices = new RandomAccessFile[256];
|
||||
|
||||
/**
|
||||
* Read only flag.
|
||||
*/
|
||||
private final boolean readOnly;
|
||||
|
||||
/**
|
||||
* Creates the file system with the specified base directory.
|
||||
|
||||
@@ -9,16 +9,16 @@ import java.nio.ByteBuffer;
|
||||
*/
|
||||
public final class ArchiveEntry {
|
||||
|
||||
/**
|
||||
* The identifier of this entry.
|
||||
*/
|
||||
private final int identifier;
|
||||
|
||||
/**
|
||||
* The buffer of this entry.
|
||||
*/
|
||||
private final ByteBuffer buffer;
|
||||
|
||||
/**
|
||||
* The identifier of this entry.
|
||||
*/
|
||||
private final int identifier;
|
||||
|
||||
/**
|
||||
* Creates a new archive entry.
|
||||
*
|
||||
|
||||
@@ -7,16 +7,16 @@ package org.apollo.game;
|
||||
*/
|
||||
public final class GameConstants {
|
||||
|
||||
/**
|
||||
* The delay between consecutive pulses, in milliseconds.
|
||||
*/
|
||||
public static final int PULSE_DELAY = 600;
|
||||
|
||||
/**
|
||||
* The maximum events per pulse per session.
|
||||
*/
|
||||
public static final int EVENTS_PER_PULSE = 10;
|
||||
|
||||
/**
|
||||
* The delay between consecutive pulses, in milliseconds.
|
||||
*/
|
||||
public static final int PULSE_DELAY = 600;
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation by other classes.
|
||||
*/
|
||||
|
||||
@@ -35,10 +35,9 @@ public final class GameService extends Service {
|
||||
private static final int UNREGISTERS_PER_CYCLE = 50;
|
||||
|
||||
/**
|
||||
* The scheduled executor service.
|
||||
* The {@link EventHandlerChainGroup}.
|
||||
*/
|
||||
private final ScheduledExecutorService scheduledExecutor = Executors
|
||||
.newSingleThreadScheduledExecutor(new NamedThreadFactory("GameService"));
|
||||
private EventHandlerChainGroup chainGroup;
|
||||
|
||||
/**
|
||||
* A queue of players to remove.
|
||||
@@ -46,9 +45,10 @@ public final class GameService extends Service {
|
||||
private final Queue<Player> oldPlayers = new ConcurrentLinkedQueue<Player>();
|
||||
|
||||
/**
|
||||
* The {@link EventHandlerChainGroup}.
|
||||
* The scheduled executor service.
|
||||
*/
|
||||
private EventHandlerChainGroup chainGroup;
|
||||
private final ScheduledExecutorService scheduledExecutor = Executors
|
||||
.newSingleThreadScheduledExecutor(new NamedThreadFactory("GameService"));
|
||||
|
||||
/**
|
||||
* The {@link ClientSynchronizer}.
|
||||
|
||||
@@ -12,25 +12,25 @@ import org.apollo.game.model.Position;
|
||||
public abstract class DistancedAction<T extends Character> extends Action<T> {
|
||||
|
||||
/**
|
||||
* The position to distance check with.
|
||||
* The delay once the threshold is reached.
|
||||
*/
|
||||
private final Position position;
|
||||
private final int delay;
|
||||
|
||||
/**
|
||||
* The minimum distance before the action fires.
|
||||
*/
|
||||
private final int distance;
|
||||
|
||||
/**
|
||||
* The delay once the threshold is reached.
|
||||
*/
|
||||
private final int delay;
|
||||
|
||||
/**
|
||||
* A flag indicating if this action fires immediately after the threshold is reached.
|
||||
*/
|
||||
private final boolean immediate;
|
||||
|
||||
/**
|
||||
* The position to distance check with.
|
||||
*/
|
||||
private final Position position;
|
||||
|
||||
/**
|
||||
* A flag indicating if the distance has been reached yet.
|
||||
*/
|
||||
|
||||
@@ -7,16 +7,16 @@ package org.apollo.game.command;
|
||||
*/
|
||||
public final class Command {
|
||||
|
||||
/**
|
||||
* The name of the command.
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
/**
|
||||
* The command's arguments.
|
||||
*/
|
||||
private final String[] arguments;
|
||||
|
||||
/**
|
||||
* The name of the command.
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
/**
|
||||
* Creates the command.
|
||||
*
|
||||
|
||||
@@ -10,25 +10,25 @@ import org.apollo.game.event.Event;
|
||||
public final class ChatEvent extends Event {
|
||||
|
||||
/**
|
||||
* The message.
|
||||
* The text color.
|
||||
*/
|
||||
private final String message;
|
||||
private final int color;
|
||||
|
||||
/**
|
||||
* The compressed message.
|
||||
*/
|
||||
private final byte[] compressedMessage;
|
||||
|
||||
/**
|
||||
* The text color.
|
||||
*/
|
||||
private final int color;
|
||||
|
||||
/**
|
||||
* The text effects.
|
||||
*/
|
||||
private final int effects;
|
||||
|
||||
/**
|
||||
* The message.
|
||||
*/
|
||||
private final String message;
|
||||
|
||||
/**
|
||||
* Creates a new chat event.
|
||||
*
|
||||
|
||||
@@ -2,12 +2,14 @@ package org.apollo.game.event.impl;
|
||||
|
||||
/**
|
||||
* The fifth {@link ItemOptionEvent}, used mainly for dropping items.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
public final class FifthItemOptionEvent extends ItemOptionEvent {
|
||||
|
||||
/**
|
||||
* Creates the fifth item option event.
|
||||
*
|
||||
* @param interfaceId The interface id.
|
||||
* @param id The id.
|
||||
* @param slot The slot.
|
||||
|
||||
@@ -2,12 +2,14 @@ package org.apollo.game.event.impl;
|
||||
|
||||
/**
|
||||
* The first {@link ItemOptionEvent}, used for eating food or identifying herbs (amongst others).
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
public final class FirstItemOptionEvent extends ItemOptionEvent {
|
||||
|
||||
/**
|
||||
* Creates the first item option event.
|
||||
*
|
||||
* @param interfaceId The interface id.
|
||||
* @param id The id.
|
||||
* @param slot The slot.
|
||||
|
||||
@@ -2,12 +2,14 @@ package org.apollo.game.event.impl;
|
||||
|
||||
/**
|
||||
* The fourth {@link ItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
public final class FourthItemOptionEvent extends ItemOptionEvent {
|
||||
|
||||
/**
|
||||
* Creates the fourth item option event.
|
||||
*
|
||||
* @param interfaceId The interface id.
|
||||
* @param id The id.
|
||||
* @param slot The slot.
|
||||
|
||||
@@ -11,9 +11,9 @@ import org.apollo.game.event.Event;
|
||||
public abstract class InventoryItemEvent extends Event {
|
||||
|
||||
/**
|
||||
* The option number (1-5).
|
||||
* The item id.
|
||||
*/
|
||||
private final int option;
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* The interface id.
|
||||
@@ -21,9 +21,9 @@ public abstract class InventoryItemEvent extends Event {
|
||||
private final int interfaceId;
|
||||
|
||||
/**
|
||||
* The item id.
|
||||
* The option number (1-5).
|
||||
*/
|
||||
private final int id;
|
||||
private final int option;
|
||||
|
||||
/**
|
||||
* The item's slot.
|
||||
@@ -46,12 +46,12 @@ public abstract class InventoryItemEvent extends Event {
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the option number.
|
||||
* Gets the item id.
|
||||
*
|
||||
* @return The option number.
|
||||
* @return The item id.
|
||||
*/
|
||||
public final int getOption() {
|
||||
return option;
|
||||
public final int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -64,12 +64,12 @@ public abstract class InventoryItemEvent extends Event {
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the item id.
|
||||
* Gets the option number.
|
||||
*
|
||||
* @return The item id.
|
||||
* @return The option number.
|
||||
*/
|
||||
public final int getId() {
|
||||
return id;
|
||||
public final int getOption() {
|
||||
return option;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
package org.apollo.game.event.impl;
|
||||
|
||||
/**
|
||||
* An {@link InventoryItemEvent} which is sent by the client when an item's option is clicked (e.g. equip,
|
||||
* eat, drink, etc).
|
||||
* An {@link InventoryItemEvent} which is sent by the client when an item's option is clicked (e.g. equip, eat, drink,
|
||||
* etc).
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
public abstract class ItemOptionEvent extends InventoryItemEvent {
|
||||
|
||||
@@ -14,6 +14,11 @@ import org.apollo.game.sync.seg.SynchronizationSegment;
|
||||
*/
|
||||
public class NpcSynchronizationEvent extends Event {
|
||||
|
||||
/**
|
||||
* The amount of local npcs.
|
||||
*/
|
||||
private final int localNpcs;
|
||||
|
||||
/**
|
||||
* The npc's position.
|
||||
*/
|
||||
@@ -24,11 +29,6 @@ public class NpcSynchronizationEvent extends Event {
|
||||
*/
|
||||
private final List<SynchronizationSegment> segments;
|
||||
|
||||
/**
|
||||
* The amount of local npcs.
|
||||
*/
|
||||
private final int localNpcs;
|
||||
|
||||
/**
|
||||
* Creates a new {@link NpcSynchronizationEvent}.
|
||||
*
|
||||
|
||||
@@ -10,16 +10,16 @@ import org.apollo.game.model.Position;
|
||||
*/
|
||||
public abstract class ObjectActionEvent extends Event {
|
||||
|
||||
/**
|
||||
* The option number (1-3).
|
||||
*/
|
||||
private final int option;
|
||||
|
||||
/**
|
||||
* The object's id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* The option number (1-3).
|
||||
*/
|
||||
private final int option;
|
||||
|
||||
/**
|
||||
* The object's position.
|
||||
*/
|
||||
|
||||
@@ -18,6 +18,11 @@ public final class PlayerSynchronizationEvent extends Event {
|
||||
*/
|
||||
private final Position lastKnownRegion;
|
||||
|
||||
/**
|
||||
* The number of local players.
|
||||
*/
|
||||
private final int localPlayers;
|
||||
|
||||
/**
|
||||
* The player's position.
|
||||
*/
|
||||
@@ -33,11 +38,6 @@ public final class PlayerSynchronizationEvent extends Event {
|
||||
*/
|
||||
private final SynchronizationSegment segment;
|
||||
|
||||
/**
|
||||
* The number of local players.
|
||||
*/
|
||||
private final int localPlayers;
|
||||
|
||||
/**
|
||||
* A list of segments.
|
||||
*/
|
||||
|
||||
@@ -2,12 +2,14 @@ package org.apollo.game.event.impl;
|
||||
|
||||
/**
|
||||
* The second {@link ItemOptionEvent}, used for equipping an item (amongst others?).
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
public final class SecondItemOptionEvent extends ItemOptionEvent {
|
||||
|
||||
/**
|
||||
* Creates the second item option event.
|
||||
*
|
||||
* @param interfaceId The interface id.
|
||||
* @param id The id.
|
||||
* @param slot The slot.
|
||||
|
||||
@@ -9,26 +9,26 @@ import org.apollo.game.event.Event;
|
||||
*/
|
||||
public final class SwitchItemEvent extends Event {
|
||||
|
||||
/**
|
||||
* The interface id.
|
||||
*/
|
||||
private final int interfaceId;
|
||||
|
||||
/**
|
||||
* A flag indicating if insertion mode is enabled.
|
||||
*/
|
||||
private final boolean inserting;
|
||||
|
||||
/**
|
||||
* The old slot.
|
||||
* The interface id.
|
||||
*/
|
||||
private final int oldSlot;
|
||||
private final int interfaceId;
|
||||
|
||||
/**
|
||||
* The new slot.
|
||||
*/
|
||||
private final int newSlot;
|
||||
|
||||
/**
|
||||
* The old slot.
|
||||
*/
|
||||
private final int oldSlot;
|
||||
|
||||
/**
|
||||
* Creates a new switch item event.
|
||||
*
|
||||
|
||||
@@ -9,16 +9,16 @@ import org.apollo.game.event.Event;
|
||||
*/
|
||||
public final class SwitchTabInterfaceEvent extends Event {
|
||||
|
||||
/**
|
||||
* The tab id.
|
||||
*/
|
||||
private final int tab;
|
||||
|
||||
/**
|
||||
* The interface id.
|
||||
*/
|
||||
private final int interfaceId;
|
||||
|
||||
/**
|
||||
* The tab id.
|
||||
*/
|
||||
private final int tab;
|
||||
|
||||
/**
|
||||
* Creates the switch interface event.
|
||||
*
|
||||
|
||||
@@ -2,12 +2,14 @@ package org.apollo.game.event.impl;
|
||||
|
||||
/**
|
||||
* The third {@link ItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
public final class ThirdItemOptionEvent extends ItemOptionEvent {
|
||||
|
||||
/**
|
||||
* Creates the third item option event.
|
||||
*
|
||||
* @param interfaceId The interface id.
|
||||
* @param id The id.
|
||||
* @param slot The slot.
|
||||
|
||||
@@ -10,16 +10,16 @@ import org.apollo.game.model.Position;
|
||||
*/
|
||||
public final class WalkEvent extends Event {
|
||||
|
||||
/**
|
||||
* The steps.
|
||||
*/
|
||||
private final Position[] steps;
|
||||
|
||||
/**
|
||||
* The running flag.
|
||||
*/
|
||||
private boolean run;
|
||||
|
||||
/**
|
||||
* The steps.
|
||||
*/
|
||||
private final Position[] steps;
|
||||
|
||||
/**
|
||||
* Creates the event.
|
||||
*
|
||||
|
||||
@@ -7,141 +7,61 @@ package org.apollo.game.model;
|
||||
*/
|
||||
public final class Animation {
|
||||
|
||||
/**
|
||||
* A special animation which stops the current animation.
|
||||
*/
|
||||
public static final Animation STOP_ANIMATION = new Animation(-1);
|
||||
|
||||
/**
|
||||
* The yes animation.
|
||||
*/
|
||||
public static final Animation YES = new Animation(855);
|
||||
|
||||
/**
|
||||
* The no animation.
|
||||
*/
|
||||
public static final Animation NO = new Animation(856);
|
||||
|
||||
/**
|
||||
* The thinking animation.
|
||||
*/
|
||||
public static final Animation THINKING = new Animation(857);
|
||||
|
||||
/**
|
||||
* The bow animation.
|
||||
*/
|
||||
public static final Animation BOW = new Animation(858);
|
||||
|
||||
/**
|
||||
* The angry animation.
|
||||
*/
|
||||
public static final Animation ANGRY = new Animation(859);
|
||||
|
||||
/**
|
||||
* The cry animation.
|
||||
*/
|
||||
public static final Animation CRY = new Animation(860);
|
||||
|
||||
/**
|
||||
* The laugh animation.
|
||||
*/
|
||||
public static final Animation LAUGH = new Animation(861);
|
||||
|
||||
/**
|
||||
* The cheer animation.
|
||||
*/
|
||||
public static final Animation CHEER = new Animation(862);
|
||||
|
||||
/**
|
||||
* The wave animation.
|
||||
*/
|
||||
public static final Animation WAVE = new Animation(863);
|
||||
|
||||
/**
|
||||
* The beckon animation.
|
||||
*/
|
||||
public static final Animation BECKON = new Animation(864);
|
||||
|
||||
/**
|
||||
* The clap animation.
|
||||
*/
|
||||
public static final Animation CLAP = new Animation(865);
|
||||
|
||||
/**
|
||||
* The dance animation.
|
||||
*/
|
||||
public static final Animation DANCE = new Animation(866);
|
||||
|
||||
/**
|
||||
* The panic animation.
|
||||
*/
|
||||
public static final Animation PANIC = new Animation(2105);
|
||||
|
||||
/**
|
||||
* The jig animation.
|
||||
*/
|
||||
public static final Animation JIG = new Animation(2106);
|
||||
|
||||
/**
|
||||
* The spin animation.
|
||||
*/
|
||||
public static final Animation SPIN = new Animation(2107);
|
||||
|
||||
/**
|
||||
* The head bang animation.
|
||||
*/
|
||||
public static final Animation HEAD_BANG = new Animation(2108);
|
||||
|
||||
/**
|
||||
* The joy jump animation.
|
||||
*/
|
||||
public static final Animation JOY_JUMP = new Animation(2109);
|
||||
|
||||
/**
|
||||
* The raspberry animation.
|
||||
*/
|
||||
public static final Animation RASPBERRY = new Animation(2110);
|
||||
|
||||
/**
|
||||
* The yawn animation.
|
||||
*/
|
||||
public static final Animation YAWN = new Animation(2111);
|
||||
|
||||
/**
|
||||
* The salute animation.
|
||||
*/
|
||||
public static final Animation SALUTE = new Animation(2112);
|
||||
|
||||
/**
|
||||
* The shrug animation.
|
||||
*/
|
||||
public static final Animation SHRUG = new Animation(2113);
|
||||
|
||||
/**
|
||||
* The blow kiss animation.
|
||||
*/
|
||||
public static final Animation BLOW_KISS = new Animation(1368);
|
||||
|
||||
/**
|
||||
* The glass wall animation.
|
||||
* The bow animation.
|
||||
*/
|
||||
public static final Animation GLASS_WALL = new Animation(1128);
|
||||
public static final Animation BOW = new Animation(858);
|
||||
|
||||
/**
|
||||
* The lean animation.
|
||||
* The cheer animation.
|
||||
*/
|
||||
public static final Animation LEAN = new Animation(1129);
|
||||
public static final Animation CHEER = new Animation(862);
|
||||
|
||||
/**
|
||||
* The clap animation.
|
||||
*/
|
||||
public static final Animation CLAP = new Animation(865);
|
||||
|
||||
/**
|
||||
* The climb rope animation.
|
||||
*/
|
||||
public static final Animation CLIMB_ROPE = new Animation(1130);
|
||||
|
||||
/**
|
||||
* The cry animation.
|
||||
*/
|
||||
public static final Animation CRY = new Animation(860);
|
||||
|
||||
/**
|
||||
* The dance animation.
|
||||
*/
|
||||
public static final Animation DANCE = new Animation(866);
|
||||
|
||||
/**
|
||||
* The glass box animation.
|
||||
*/
|
||||
public static final Animation GLASS_BOX = new Animation(1131);
|
||||
|
||||
/**
|
||||
* The glass wall animation.
|
||||
*/
|
||||
public static final Animation GLASS_WALL = new Animation(1128);
|
||||
|
||||
/**
|
||||
* The goblin bow animation.
|
||||
*/
|
||||
@@ -153,15 +73,95 @@ public final class Animation {
|
||||
public static final Animation GOBLIN_DANCE = new Animation(2128);
|
||||
|
||||
/**
|
||||
* The id.
|
||||
* The head bang animation.
|
||||
*/
|
||||
private final int id;
|
||||
public static final Animation HEAD_BANG = new Animation(2108);
|
||||
|
||||
/**
|
||||
* The jig animation.
|
||||
*/
|
||||
public static final Animation JIG = new Animation(2106);
|
||||
|
||||
/**
|
||||
* The joy jump animation.
|
||||
*/
|
||||
public static final Animation JOY_JUMP = new Animation(2109);
|
||||
|
||||
/**
|
||||
* The laugh animation.
|
||||
*/
|
||||
public static final Animation LAUGH = new Animation(861);
|
||||
|
||||
/**
|
||||
* The lean animation.
|
||||
*/
|
||||
public static final Animation LEAN = new Animation(1129);
|
||||
|
||||
/**
|
||||
* The no animation.
|
||||
*/
|
||||
public static final Animation NO = new Animation(856);
|
||||
|
||||
/**
|
||||
* The panic animation.
|
||||
*/
|
||||
public static final Animation PANIC = new Animation(2105);
|
||||
|
||||
/**
|
||||
* The raspberry animation.
|
||||
*/
|
||||
public static final Animation RASPBERRY = new Animation(2110);
|
||||
|
||||
/**
|
||||
* The salute animation.
|
||||
*/
|
||||
public static final Animation SALUTE = new Animation(2112);
|
||||
|
||||
/**
|
||||
* The shrug animation.
|
||||
*/
|
||||
public static final Animation SHRUG = new Animation(2113);
|
||||
|
||||
/**
|
||||
* The spin animation.
|
||||
*/
|
||||
public static final Animation SPIN = new Animation(2107);
|
||||
|
||||
/**
|
||||
* A special animation which stops the current animation.
|
||||
*/
|
||||
public static final Animation STOP_ANIMATION = new Animation(-1);
|
||||
|
||||
/**
|
||||
* The thinking animation.
|
||||
*/
|
||||
public static final Animation THINKING = new Animation(857);
|
||||
|
||||
/**
|
||||
* The wave animation.
|
||||
*/
|
||||
public static final Animation WAVE = new Animation(863);
|
||||
|
||||
/**
|
||||
* The yawn animation.
|
||||
*/
|
||||
public static final Animation YAWN = new Animation(2111);
|
||||
|
||||
/**
|
||||
* The yes animation.
|
||||
*/
|
||||
public static final Animation YES = new Animation(855);
|
||||
|
||||
/**
|
||||
* The delay.
|
||||
*/
|
||||
private final int delay;
|
||||
|
||||
/**
|
||||
* The id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* Creates a new animation with no delay.
|
||||
*
|
||||
|
||||
@@ -13,6 +13,11 @@ public final class Appearance {
|
||||
public static final Appearance DEFAULT_APPEARANCE = new Appearance(Gender.MALE, new int[] { 0, 10, 18, 26, 33, 36,
|
||||
42 }, new int[5]);
|
||||
|
||||
/**
|
||||
* The array of clothing/skin colours.
|
||||
*/
|
||||
private final int[] colors;
|
||||
|
||||
/**
|
||||
* The player's gender.
|
||||
*/
|
||||
@@ -23,11 +28,6 @@ public final class Appearance {
|
||||
*/
|
||||
private final int[] style;
|
||||
|
||||
/**
|
||||
* The array of clothing/skin colours.
|
||||
*/
|
||||
private final int[] colors;
|
||||
|
||||
/**
|
||||
* Creates the appearance with the specified gender, style and colors.
|
||||
*
|
||||
|
||||
@@ -7,6 +7,16 @@ package org.apollo.game.model;
|
||||
*/
|
||||
public enum Direction {
|
||||
|
||||
/**
|
||||
* East movement.
|
||||
*/
|
||||
EAST(4),
|
||||
|
||||
/**
|
||||
* No movement.
|
||||
*/
|
||||
NONE(-1),
|
||||
|
||||
/**
|
||||
* North movement.
|
||||
*/
|
||||
@@ -18,20 +28,20 @@ public enum Direction {
|
||||
NORTH_EAST(2),
|
||||
|
||||
/**
|
||||
* East movement.
|
||||
* North west movement.
|
||||
*/
|
||||
EAST(4),
|
||||
|
||||
/**
|
||||
* South east movement.
|
||||
*/
|
||||
SOUTH_EAST(7),
|
||||
NORTH_WEST(0),
|
||||
|
||||
/**
|
||||
* South movement.
|
||||
*/
|
||||
SOUTH(6),
|
||||
|
||||
/**
|
||||
* South east movement.
|
||||
*/
|
||||
SOUTH_EAST(7),
|
||||
|
||||
/**
|
||||
* South west movement.
|
||||
*/
|
||||
@@ -40,17 +50,7 @@ public enum Direction {
|
||||
/**
|
||||
* West movement.
|
||||
*/
|
||||
WEST(3),
|
||||
|
||||
/**
|
||||
* North west movement.
|
||||
*/
|
||||
NORTH_WEST(0),
|
||||
|
||||
/**
|
||||
* No movement.
|
||||
*/
|
||||
NONE(-1);
|
||||
WEST(3);
|
||||
|
||||
/**
|
||||
* An empty direction array.
|
||||
|
||||
@@ -8,59 +8,59 @@ package org.apollo.game.model;
|
||||
public final class EquipmentConstants {
|
||||
|
||||
/**
|
||||
* The hat slot.
|
||||
* The amulet slot.
|
||||
*/
|
||||
public static final int HAT = 0;
|
||||
public static final int AMULET = 2;
|
||||
|
||||
/**
|
||||
* The arrows slot.
|
||||
*/
|
||||
public static final int ARROWS = 13;
|
||||
|
||||
/**
|
||||
* The cape slot.
|
||||
*/
|
||||
public static final int CAPE = 1;
|
||||
|
||||
/**
|
||||
* The amulet slot.
|
||||
*/
|
||||
public static final int AMULET = 2;
|
||||
|
||||
/**
|
||||
* The weapon slot.
|
||||
*/
|
||||
public static final int WEAPON = 3;
|
||||
|
||||
/**
|
||||
* The chest slot.
|
||||
*/
|
||||
public static final int CHEST = 4;
|
||||
|
||||
/**
|
||||
* The shield slot.
|
||||
*/
|
||||
public static final int SHIELD = 5;
|
||||
|
||||
/**
|
||||
* The legs slot.
|
||||
*/
|
||||
public static final int LEGS = 7;
|
||||
|
||||
/**
|
||||
* The hands slot.
|
||||
*/
|
||||
public static final int HANDS = 9;
|
||||
|
||||
/**
|
||||
* The feet slot.
|
||||
*/
|
||||
public static final int FEET = 10;
|
||||
|
||||
/**
|
||||
* The hands slot.
|
||||
*/
|
||||
public static final int HANDS = 9;
|
||||
|
||||
/**
|
||||
* The hat slot.
|
||||
*/
|
||||
public static final int HAT = 0;
|
||||
|
||||
/**
|
||||
* The legs slot.
|
||||
*/
|
||||
public static final int LEGS = 7;
|
||||
|
||||
/**
|
||||
* The ring slot.
|
||||
*/
|
||||
public static final int RING = 12;
|
||||
|
||||
/**
|
||||
* The arrows slot.
|
||||
* The shield slot.
|
||||
*/
|
||||
public static final int ARROWS = 13;
|
||||
public static final int SHIELD = 5;
|
||||
|
||||
/**
|
||||
* The weapon slot.
|
||||
*/
|
||||
public static final int WEAPON = 3;
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation;
|
||||
|
||||
@@ -7,15 +7,15 @@ package org.apollo.game.model;
|
||||
*/
|
||||
public enum Gender {
|
||||
|
||||
/**
|
||||
* The male gender.
|
||||
*/
|
||||
MALE(0),
|
||||
|
||||
/**
|
||||
* The female gender.
|
||||
*/
|
||||
FEMALE(1);
|
||||
FEMALE(1),
|
||||
|
||||
/**
|
||||
* The male gender.
|
||||
*/
|
||||
MALE(0);
|
||||
|
||||
/**
|
||||
* An integer representation used by the client.
|
||||
|
||||
@@ -12,11 +12,6 @@ public final class Graphic {
|
||||
*/
|
||||
public static final Graphic STOP_GRAPHIC = new Graphic(-1);
|
||||
|
||||
/**
|
||||
* The id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* The delay.
|
||||
*/
|
||||
@@ -27,6 +22,11 @@ public final class Graphic {
|
||||
*/
|
||||
private final int height;
|
||||
|
||||
/**
|
||||
* The id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* Creates a new graphic with no delay and a height of zero.
|
||||
*
|
||||
|
||||
@@ -32,9 +32,9 @@ import org.apollo.game.model.inter.InterfaceListener;
|
||||
public final class InterfaceSet {
|
||||
|
||||
/**
|
||||
* The player whose interfaces are being managed.
|
||||
* The current enter amount listener.
|
||||
*/
|
||||
private final Player player; // TODO: maybe switch to a listener system like the inventory?
|
||||
private EnterAmountListener amountListener;
|
||||
|
||||
// TODO: maybe store the current inventory tab ids here??
|
||||
/**
|
||||
@@ -48,9 +48,9 @@ public final class InterfaceSet {
|
||||
private InterfaceListener listener;
|
||||
|
||||
/**
|
||||
* The current enter amount listener.
|
||||
* The player whose interfaces are being managed.
|
||||
*/
|
||||
private EnterAmountListener amountListener;
|
||||
private final Player player; // TODO: maybe switch to a listener system like the inventory?
|
||||
|
||||
/**
|
||||
* Creates an interface set.
|
||||
|
||||
@@ -8,9 +8,19 @@ package org.apollo.game.model;
|
||||
public enum InterfaceType {
|
||||
|
||||
/**
|
||||
* A window is an interface which occupies the game screen.
|
||||
* A dialogue is an interface which appears in the chat box.
|
||||
*/
|
||||
WINDOW,
|
||||
DIALOGUE,
|
||||
|
||||
/**
|
||||
* An interface which is shown behind a fullscreen window.
|
||||
*/
|
||||
FULLSCREEN_BACKGROUND,
|
||||
|
||||
/**
|
||||
* An interface which is shown in full screen mode.
|
||||
*/
|
||||
FULLSCREEN_WINDOW,
|
||||
|
||||
/**
|
||||
* An overlay is an interface which occupies the game screen like a window, however, you can walk around and perform
|
||||
@@ -18,24 +28,14 @@ public enum InterfaceType {
|
||||
*/
|
||||
OVERLAY,
|
||||
|
||||
/**
|
||||
* A dialogue is an interface which appears in the chat box.
|
||||
*/
|
||||
DIALOGUE,
|
||||
|
||||
/**
|
||||
* An interface which displays over the inventory area.
|
||||
*/
|
||||
SIDEBAR,
|
||||
|
||||
/**
|
||||
* An interface which is shown in full screen mode.
|
||||
* A window is an interface which occupies the game screen.
|
||||
*/
|
||||
FULLSCREEN_WINDOW,
|
||||
|
||||
/**
|
||||
* An interface which is shown behind a fullscreen window.
|
||||
*/
|
||||
FULLSCREEN_BACKGROUND;
|
||||
WINDOW;
|
||||
|
||||
}
|
||||
|
||||
@@ -26,34 +26,39 @@ public final class Inventory implements Cloneable {
|
||||
*/
|
||||
STACK_ALWAYS,
|
||||
|
||||
/**
|
||||
* When in {@link #STACK_NEVER} mode, an {@link Inventory} will never stack items.
|
||||
*/
|
||||
STACK_NEVER,
|
||||
|
||||
/**
|
||||
* When in {@link #STACK_STACKABLE_ITEMS} mode, an {@link Inventory} will stack items depending on their
|
||||
* settings.
|
||||
*/
|
||||
STACK_STACKABLE_ITEMS,
|
||||
|
||||
/**
|
||||
* When in {@link #STACK_NEVER} mode, an {@link Inventory} will never stack items.
|
||||
*/
|
||||
STACK_NEVER;
|
||||
STACK_STACKABLE_ITEMS;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* A list of inventory listeners.
|
||||
*/
|
||||
private final List<InventoryListener> listeners = new ArrayList<InventoryListener>();
|
||||
|
||||
/**
|
||||
* The capacity of this inventory.
|
||||
*/
|
||||
private final int capacity;
|
||||
|
||||
/**
|
||||
* A flag indicating if events are being fired.
|
||||
*/
|
||||
private boolean firingEvents = true; // TODO: make this reentrant
|
||||
|
||||
/**
|
||||
* The items in this inventory.
|
||||
*/
|
||||
private Item[] items;
|
||||
|
||||
/**
|
||||
* A list of inventory listeners.
|
||||
*/
|
||||
private final List<InventoryListener> listeners = new ArrayList<InventoryListener>();
|
||||
|
||||
/**
|
||||
* The stacking mode.
|
||||
*/
|
||||
@@ -64,11 +69,6 @@ public final class Inventory implements Cloneable {
|
||||
*/
|
||||
private int size = 0;
|
||||
|
||||
/**
|
||||
* A flag indicating if events are being fired.
|
||||
*/
|
||||
private boolean firingEvents = true; // TODO: make this reentrant
|
||||
|
||||
/**
|
||||
* Creates an inventory.
|
||||
*
|
||||
|
||||
@@ -12,16 +12,16 @@ public final class InventoryConstants {
|
||||
*/
|
||||
public static final int BANK_CAPACITY = 352;
|
||||
|
||||
/**
|
||||
* The capacity of the inventory.
|
||||
*/
|
||||
public static final int INVENTORY_CAPACITY = 28;
|
||||
|
||||
/**
|
||||
* The capacity of the equipment inventory.
|
||||
*/
|
||||
public static final int EQUIPMENT_CAPACITY = 14;
|
||||
|
||||
/**
|
||||
* The capacity of the inventory.
|
||||
*/
|
||||
public static final int INVENTORY_CAPACITY = 28;
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation.
|
||||
*/
|
||||
|
||||
@@ -9,16 +9,16 @@ import org.apollo.game.model.def.ItemDefinition;
|
||||
*/
|
||||
public final class Item {
|
||||
|
||||
/**
|
||||
* The item's id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* The amount of items in the stack.
|
||||
*/
|
||||
private final int amount;
|
||||
|
||||
/**
|
||||
* The item's id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* Creates an item with an amount of {@code 1}.
|
||||
*
|
||||
|
||||
@@ -17,6 +17,11 @@ public final class Position {
|
||||
*/
|
||||
public static final int MAX_DISTANCE = 15;
|
||||
|
||||
/**
|
||||
* The height level.
|
||||
*/
|
||||
private final int height;
|
||||
|
||||
/**
|
||||
* The x coordinate.
|
||||
*/
|
||||
@@ -27,11 +32,6 @@ public final class Position {
|
||||
*/
|
||||
private final int y;
|
||||
|
||||
/**
|
||||
* The height level.
|
||||
*/
|
||||
private final int height;
|
||||
|
||||
/**
|
||||
* Creates a position at the default height.
|
||||
*
|
||||
|
||||
@@ -7,60 +7,35 @@ package org.apollo.game.model;
|
||||
*/
|
||||
public final class Skill {
|
||||
|
||||
/**
|
||||
* The agility id.
|
||||
*/
|
||||
public static final int AGILITY = 16;
|
||||
|
||||
/**
|
||||
* The attack id.
|
||||
*/
|
||||
public static final int ATTACK = 0;
|
||||
|
||||
/**
|
||||
* The defence id.
|
||||
*/
|
||||
public static final int DEFENCE = 1;
|
||||
|
||||
/**
|
||||
* The strength id.
|
||||
*/
|
||||
public static final int STRENGTH = 2;
|
||||
|
||||
/**
|
||||
* The hitpoints id.
|
||||
*/
|
||||
public static final int HITPOINTS = 3;
|
||||
|
||||
/**
|
||||
* The ranged id.
|
||||
*/
|
||||
public static final int RANGED = 4;
|
||||
|
||||
/**
|
||||
* The prayer id.
|
||||
*/
|
||||
public static final int PRAYER = 5;
|
||||
|
||||
/**
|
||||
* The magic id.
|
||||
*/
|
||||
public static final int MAGIC = 6;
|
||||
|
||||
/**
|
||||
* The cooking id.
|
||||
*/
|
||||
public static final int COOKING = 7;
|
||||
|
||||
/**
|
||||
* The woodcutting id.
|
||||
* The crafting id.
|
||||
*/
|
||||
public static final int WOODCUTTING = 8;
|
||||
public static final int CRAFTING = 12;
|
||||
|
||||
/**
|
||||
* The fletching id.
|
||||
* The defence id.
|
||||
*/
|
||||
public static final int FLETCHING = 9;
|
||||
public static final int DEFENCE = 1;
|
||||
|
||||
/**
|
||||
* The fishing id.
|
||||
* The farming id.
|
||||
*/
|
||||
public static final int FISHING = 10;
|
||||
public static final int FARMING = 19;
|
||||
|
||||
/**
|
||||
* The firemaking id.
|
||||
@@ -68,19 +43,14 @@ public final class Skill {
|
||||
public static final int FIREMAKING = 11;
|
||||
|
||||
/**
|
||||
* The crafting id.
|
||||
* The fishing id.
|
||||
*/
|
||||
public static final int CRAFTING = 12;
|
||||
public static final int FISHING = 10;
|
||||
|
||||
/**
|
||||
* The smithing id.
|
||||
* The fletching id.
|
||||
*/
|
||||
public static final int SMITHING = 13;
|
||||
|
||||
/**
|
||||
* The mining id.rivate
|
||||
*/
|
||||
public static final int MINING = 14;
|
||||
public static final int FLETCHING = 9;
|
||||
|
||||
/**
|
||||
* The herblore id.
|
||||
@@ -88,24 +58,29 @@ public final class Skill {
|
||||
public static final int HERBLORE = 15;
|
||||
|
||||
/**
|
||||
* The agility id.
|
||||
* The hitpoints id.
|
||||
*/
|
||||
public static final int AGILITY = 16;
|
||||
public static final int HITPOINTS = 3;
|
||||
|
||||
/**
|
||||
* The thieving id.
|
||||
* The magic id.
|
||||
*/
|
||||
public static final int THIEVING = 17;
|
||||
public static final int MAGIC = 6;
|
||||
|
||||
/**
|
||||
* The slayer id.
|
||||
* The mining id.rivate
|
||||
*/
|
||||
public static final int SLAYER = 18;
|
||||
public static final int MINING = 14;
|
||||
|
||||
/**
|
||||
* The farming id.
|
||||
* The prayer id.
|
||||
*/
|
||||
public static final int FARMING = 19;
|
||||
public static final int PRAYER = 5;
|
||||
|
||||
/**
|
||||
* The ranged id.
|
||||
*/
|
||||
public static final int RANGED = 4;
|
||||
|
||||
/**
|
||||
* The runecrafting id.
|
||||
@@ -119,6 +94,31 @@ public final class Skill {
|
||||
"Magic", "Cooking", "Woodcutting", "Fletching", "Fishing", "Firemaking", "Crafting", "Smithing", "Mining",
|
||||
"Herblore", "Agility", "Thieving", "Slayer", "Farming", "Runecraft" };
|
||||
|
||||
/**
|
||||
* The slayer id.
|
||||
*/
|
||||
public static final int SLAYER = 18;
|
||||
|
||||
/**
|
||||
* The smithing id.
|
||||
*/
|
||||
public static final int SMITHING = 13;
|
||||
|
||||
/**
|
||||
* The strength id.
|
||||
*/
|
||||
public static final int STRENGTH = 2;
|
||||
|
||||
/**
|
||||
* The thieving id.
|
||||
*/
|
||||
public static final int THIEVING = 17;
|
||||
|
||||
/**
|
||||
* The woodcutting id.
|
||||
*/
|
||||
public static final int WOODCUTTING = 8;
|
||||
|
||||
/**
|
||||
* Gets the name of a skill.
|
||||
*
|
||||
@@ -129,16 +129,16 @@ public final class Skill {
|
||||
return SKILL_NAMES[id];
|
||||
}
|
||||
|
||||
/**
|
||||
* The experience.
|
||||
*/
|
||||
private final double experience;
|
||||
|
||||
/**
|
||||
* The current level.
|
||||
*/
|
||||
private final int currentLevel;
|
||||
|
||||
/**
|
||||
* The experience.
|
||||
*/
|
||||
private final double experience;
|
||||
|
||||
/**
|
||||
* The maximum level.
|
||||
*/
|
||||
|
||||
@@ -12,16 +12,16 @@ import org.apollo.game.model.skill.SkillListener;
|
||||
*/
|
||||
public final class SkillSet {
|
||||
|
||||
/**
|
||||
* The number of skills.
|
||||
*/
|
||||
private static final int SKILL_COUNT = 21;
|
||||
|
||||
/**
|
||||
* The maximum allowed experience.
|
||||
*/
|
||||
public static final double MAXIMUM_EXP = 200000000;
|
||||
|
||||
/**
|
||||
* The number of skills.
|
||||
*/
|
||||
private static final int SKILL_COUNT = 21;
|
||||
|
||||
/**
|
||||
* Gets the minimum experience required for the specified level.
|
||||
*
|
||||
@@ -60,6 +60,11 @@ public final class SkillSet {
|
||||
return 99;
|
||||
}
|
||||
|
||||
/**
|
||||
* A flag indicating if events are being fired.
|
||||
*/
|
||||
private boolean firingEvents = true;
|
||||
|
||||
/**
|
||||
* A list of skill listeners.
|
||||
*/
|
||||
@@ -70,11 +75,6 @@ public final class SkillSet {
|
||||
*/
|
||||
private final Skill[] skills = new Skill[SKILL_COUNT];
|
||||
|
||||
/**
|
||||
* A flag indicating if events are being fired.
|
||||
*/
|
||||
private boolean firingEvents = true;
|
||||
|
||||
/**
|
||||
* Creates the skill set.
|
||||
*/
|
||||
|
||||
@@ -7,16 +7,16 @@ package org.apollo.game.model;
|
||||
*/
|
||||
public final class SlottedItem {
|
||||
|
||||
/**
|
||||
* The slot.
|
||||
*/
|
||||
private final int slot;
|
||||
|
||||
/**
|
||||
* The item.
|
||||
*/
|
||||
private final Item item;
|
||||
|
||||
/**
|
||||
* The slot.
|
||||
*/
|
||||
private final int slot;
|
||||
|
||||
/**
|
||||
* Creates a new slotted item.
|
||||
*
|
||||
|
||||
@@ -18,16 +18,16 @@ public final class WalkingQueue {
|
||||
*/
|
||||
private static final class Point {
|
||||
|
||||
/**
|
||||
* The point's position.
|
||||
*/
|
||||
private final Position position;
|
||||
|
||||
/**
|
||||
* The direction to walk to this point.
|
||||
*/
|
||||
private final Direction direction;
|
||||
|
||||
/**
|
||||
* The point's position.
|
||||
*/
|
||||
private final Position position;
|
||||
|
||||
/**
|
||||
* Creates a point.
|
||||
*
|
||||
@@ -56,16 +56,16 @@ public final class WalkingQueue {
|
||||
*/
|
||||
private Character character;
|
||||
|
||||
/**
|
||||
* The queue of directions.
|
||||
*/
|
||||
private Deque<Point> points = new ArrayDeque<Point>();
|
||||
|
||||
/**
|
||||
* The old queue of directions.
|
||||
*/
|
||||
private Deque<Point> oldPoints = new ArrayDeque<Point>();
|
||||
|
||||
/**
|
||||
* The queue of directions.
|
||||
*/
|
||||
private Deque<Point> points = new ArrayDeque<Point>();
|
||||
|
||||
/**
|
||||
* Flag indicating if this queue (only) should be ran.
|
||||
*/
|
||||
|
||||
@@ -7,6 +7,11 @@ package org.apollo.game.model.inter.bank;
|
||||
*/
|
||||
public final class BankConstants {
|
||||
|
||||
/**
|
||||
* The bank inventory id.
|
||||
*/
|
||||
public static final int BANK_INVENTORY_ID = 5382;
|
||||
|
||||
/**
|
||||
* The bank window id.
|
||||
*/
|
||||
@@ -17,11 +22,6 @@ public final class BankConstants {
|
||||
*/
|
||||
public static final int SIDEBAR_ID = 2005;
|
||||
|
||||
/**
|
||||
* The bank inventory id.
|
||||
*/
|
||||
public static final int BANK_INVENTORY_ID = 5382;
|
||||
|
||||
/**
|
||||
* The sidebar inventory id.
|
||||
*/
|
||||
|
||||
@@ -10,6 +10,11 @@ import org.apollo.game.model.inter.EnterAmountListener;
|
||||
*/
|
||||
public final class BankDepositEnterAmountListener implements EnterAmountListener {
|
||||
|
||||
/**
|
||||
* The item id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* The player.
|
||||
*/
|
||||
@@ -20,11 +25,6 @@ public final class BankDepositEnterAmountListener implements EnterAmountListener
|
||||
*/
|
||||
private final int slot;
|
||||
|
||||
/**
|
||||
* The item id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* Creates the bank deposit amount listener.
|
||||
*
|
||||
|
||||
@@ -12,9 +12,9 @@ import org.apollo.game.model.inv.InventoryListener;
|
||||
public final class BankInterfaceListener implements InterfaceListener {
|
||||
|
||||
/**
|
||||
* The player.
|
||||
* The bank listener.
|
||||
*/
|
||||
private final Player player;
|
||||
private final InventoryListener bankListener;
|
||||
|
||||
/**
|
||||
* The inventory listener.
|
||||
@@ -22,9 +22,9 @@ public final class BankInterfaceListener implements InterfaceListener {
|
||||
private final InventoryListener invListener;
|
||||
|
||||
/**
|
||||
* The bank listener.
|
||||
* The player.
|
||||
*/
|
||||
private final InventoryListener bankListener;
|
||||
private final Player player;
|
||||
|
||||
/**
|
||||
* Creates the bank interface listener.
|
||||
|
||||
@@ -10,6 +10,11 @@ import org.apollo.game.model.inter.EnterAmountListener;
|
||||
*/
|
||||
public final class BankWithdrawEnterAmountListener implements EnterAmountListener {
|
||||
|
||||
/**
|
||||
* The item id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* The player.
|
||||
*/
|
||||
@@ -20,11 +25,6 @@ public final class BankWithdrawEnterAmountListener implements EnterAmountListene
|
||||
*/
|
||||
private final int slot;
|
||||
|
||||
/**
|
||||
* The item id.
|
||||
*/
|
||||
private final int id;
|
||||
|
||||
/**
|
||||
* Creates the bank withdraw amount listener.
|
||||
*
|
||||
|
||||
@@ -12,11 +12,6 @@ import org.apollo.game.model.Player;
|
||||
*/
|
||||
public final class FullInventoryListener extends InventoryAdapter {
|
||||
|
||||
/**
|
||||
* The inventory full message.
|
||||
*/
|
||||
public static final String FULL_INVENTORY_MESSAGE = "Not enough inventory space.";
|
||||
|
||||
/**
|
||||
* The bank full message.
|
||||
*/
|
||||
@@ -28,15 +23,20 @@ public final class FullInventoryListener extends InventoryAdapter {
|
||||
public static final String FULL_EQUIPMENT_MESSAGE = "Not enough equipment space."; // TODO confirm if possible
|
||||
|
||||
/**
|
||||
* The player.
|
||||
* The inventory full message.
|
||||
*/
|
||||
private final Player player;
|
||||
public static final String FULL_INVENTORY_MESSAGE = "Not enough inventory space.";
|
||||
|
||||
/**
|
||||
* The event to send when the capacity has been exceeded.
|
||||
*/
|
||||
private final Event event;
|
||||
|
||||
/**
|
||||
* The player.
|
||||
*/
|
||||
private final Player player;
|
||||
|
||||
/**
|
||||
* Creates the empty inventory listener.
|
||||
*
|
||||
|
||||
@@ -14,26 +14,26 @@ import org.apollo.game.model.SlottedItem;
|
||||
*/
|
||||
public final class SynchronizationInventoryListener extends InventoryAdapter {
|
||||
|
||||
/**
|
||||
* The inventory interface id.
|
||||
*/
|
||||
public static final int INVENTORY_ID = 3214;
|
||||
|
||||
/**
|
||||
* The equipment interface id.
|
||||
*/
|
||||
public static final int EQUIPMENT_ID = 1688;
|
||||
|
||||
/**
|
||||
* The player.
|
||||
* The inventory interface id.
|
||||
*/
|
||||
private final Player player;
|
||||
public static final int INVENTORY_ID = 3214;
|
||||
|
||||
/**
|
||||
* The interface id.
|
||||
*/
|
||||
private final int interfaceId;
|
||||
|
||||
/**
|
||||
* The player.
|
||||
*/
|
||||
private final Player player;
|
||||
|
||||
/**
|
||||
* Creates the syncrhonization inventory listener.
|
||||
*
|
||||
|
||||
@@ -18,31 +18,31 @@ public final class StaticObject {
|
||||
public static void init(StaticObject[] objects) {
|
||||
}
|
||||
|
||||
/**
|
||||
* The object's id.
|
||||
*/
|
||||
private final short id;
|
||||
|
||||
/**
|
||||
* The object's definition.
|
||||
*/
|
||||
private final ObjectDefinition definition;
|
||||
|
||||
/**
|
||||
* The object's id.
|
||||
*/
|
||||
private final short id;
|
||||
|
||||
/**
|
||||
* The object's position.
|
||||
*/
|
||||
private final Position position;
|
||||
|
||||
/**
|
||||
* The object type.
|
||||
*/
|
||||
private final byte type;
|
||||
|
||||
/**
|
||||
* The object's rotation.
|
||||
*/
|
||||
private final byte rotation;
|
||||
|
||||
/**
|
||||
* The object type.
|
||||
*/
|
||||
private final byte type;
|
||||
|
||||
/**
|
||||
* Creates a new static object.
|
||||
*
|
||||
|
||||
@@ -7,11 +7,6 @@ package org.apollo.game.scheduling;
|
||||
*/
|
||||
public abstract class ScheduledTask {
|
||||
|
||||
/**
|
||||
* A flag indicating if the task is running.
|
||||
*/
|
||||
private boolean running = true;
|
||||
|
||||
/**
|
||||
* The delay between executions of the task, in pulses.
|
||||
*/
|
||||
@@ -22,6 +17,11 @@ public abstract class ScheduledTask {
|
||||
*/
|
||||
private int pulses;
|
||||
|
||||
/**
|
||||
* A flag indicating if the task is running.
|
||||
*/
|
||||
private boolean running = true;
|
||||
|
||||
/**
|
||||
* Creates a new scheduled task.
|
||||
*
|
||||
|
||||
@@ -10,11 +10,6 @@ import org.apollo.game.model.Inventory;
|
||||
*/
|
||||
public final class AppearanceBlock extends SynchronizationBlock {
|
||||
|
||||
/**
|
||||
* The player's name.
|
||||
*/
|
||||
private final long name;
|
||||
|
||||
/**
|
||||
* The player's appearance.
|
||||
*/
|
||||
@@ -25,31 +20,36 @@ public final class AppearanceBlock extends SynchronizationBlock {
|
||||
*/
|
||||
private final int combat;
|
||||
|
||||
/**
|
||||
* The player's total skill level (or 0).
|
||||
*/
|
||||
private final int skill;
|
||||
|
||||
/**
|
||||
* The player's equipment.
|
||||
*/
|
||||
private final Inventory equipment;
|
||||
|
||||
/**
|
||||
* The player's prayer icon.
|
||||
*/
|
||||
private final int prayerIcon;
|
||||
|
||||
/**
|
||||
* The player's head icon.
|
||||
*/
|
||||
private final int headIcon;
|
||||
|
||||
/**
|
||||
* The player's name.
|
||||
*/
|
||||
private final long name;
|
||||
|
||||
/**
|
||||
* The npc id this player is appearing as, if any.
|
||||
*/
|
||||
private final int npcId;
|
||||
|
||||
/**
|
||||
* The player's prayer icon.
|
||||
*/
|
||||
private final int prayerIcon;
|
||||
|
||||
/**
|
||||
* The player's total skill level (or 0).
|
||||
*/
|
||||
private final int skill;
|
||||
|
||||
/**
|
||||
* Creates the appearance block.
|
||||
*
|
||||
|
||||
@@ -10,16 +10,16 @@ import org.apollo.game.model.Player.PrivilegeLevel;
|
||||
*/
|
||||
public final class ChatBlock extends SynchronizationBlock {
|
||||
|
||||
/**
|
||||
* The privilege level.
|
||||
*/
|
||||
private final PrivilegeLevel privilegeLevel;
|
||||
|
||||
/**
|
||||
* The chat event.
|
||||
*/
|
||||
private final ChatEvent chatEvent;
|
||||
|
||||
/**
|
||||
* The privilege level.
|
||||
*/
|
||||
private final PrivilegeLevel privilegeLevel;
|
||||
|
||||
/**
|
||||
* Creates the chat block.
|
||||
*/
|
||||
|
||||
@@ -15,15 +15,20 @@ import org.apollo.game.model.Position;
|
||||
public class ForceMovementBlock extends SynchronizationBlock {
|
||||
|
||||
/**
|
||||
* The initial {@link Position} of the player.
|
||||
* The direction the player is moving.
|
||||
*/
|
||||
private final Position initialPosition;
|
||||
private final Direction direction;
|
||||
|
||||
/**
|
||||
* The {@link Position} the player is being moved to.
|
||||
*/
|
||||
private final Position finalPosition;
|
||||
|
||||
/**
|
||||
* The initial {@link Position} of the player.
|
||||
*/
|
||||
private final Position initialPosition;
|
||||
|
||||
/**
|
||||
* The length of time (in game ticks) the player's movement along the X axis will last.
|
||||
*/
|
||||
@@ -34,11 +39,6 @@ public class ForceMovementBlock extends SynchronizationBlock {
|
||||
*/
|
||||
private final int travelDurationY;
|
||||
|
||||
/**
|
||||
* The direction the player is moving.
|
||||
*/
|
||||
private final Direction direction;
|
||||
|
||||
/**
|
||||
* Creates a new Force Movement block.
|
||||
*
|
||||
|
||||
@@ -8,26 +8,26 @@ package org.apollo.game.sync.block;
|
||||
*/
|
||||
public class HitUpdateBlock extends SynchronizationBlock {
|
||||
|
||||
/**
|
||||
* The amount of damage the hit will do.
|
||||
*/
|
||||
private final int damage;
|
||||
|
||||
/**
|
||||
* The type of hit (e.g. normal, poison).
|
||||
*/
|
||||
private final int type;
|
||||
|
||||
/**
|
||||
* The {@link org.apollo.game.model.Character}'s current health.
|
||||
*/
|
||||
private final int currentHealth;
|
||||
|
||||
/**
|
||||
* The amount of damage the hit will do.
|
||||
*/
|
||||
private final int damage;
|
||||
|
||||
/**
|
||||
* The {@link org.apollo.game.model.Character}'s maximum health.
|
||||
*/
|
||||
private final int maximumHealth;
|
||||
|
||||
/**
|
||||
* The type of hit (e.g. normal, poison).
|
||||
*/
|
||||
private final int type;
|
||||
|
||||
/**
|
||||
* Creates a new Hit Update block.
|
||||
*
|
||||
|
||||
@@ -9,26 +9,26 @@ package org.apollo.game.sync.block;
|
||||
*/
|
||||
public class SecondHitUpdateBlock extends SynchronizationBlock {
|
||||
|
||||
/**
|
||||
* The amount of damage the hit will do.
|
||||
*/
|
||||
private final int damage;
|
||||
|
||||
/**
|
||||
* The type of hit (e.g. normal, poison).
|
||||
*/
|
||||
private final int type;
|
||||
|
||||
/**
|
||||
* The character's current health.
|
||||
*/
|
||||
private final int currentHealth;
|
||||
|
||||
/**
|
||||
* The amount of damage the hit will do.
|
||||
*/
|
||||
private final int damage;
|
||||
|
||||
/**
|
||||
* The character's maximum health.
|
||||
*/
|
||||
private final int maximumHealth;
|
||||
|
||||
/**
|
||||
* The type of hit (e.g. normal, poison).
|
||||
*/
|
||||
private final int type;
|
||||
|
||||
/**
|
||||
* Creates a new Second Hit Update block.
|
||||
*
|
||||
|
||||
@@ -15,16 +15,16 @@ public final class AddNpcSegment extends SynchronizationSegment {
|
||||
*/
|
||||
private final int index;
|
||||
|
||||
/**
|
||||
* The position.
|
||||
*/
|
||||
private final Position position;
|
||||
|
||||
/**
|
||||
* The id of the npc.
|
||||
*/
|
||||
private final int npcId;
|
||||
|
||||
/**
|
||||
* The position.
|
||||
*/
|
||||
private final Position position;
|
||||
|
||||
/**
|
||||
* Creates the add npc segment.
|
||||
*
|
||||
|
||||
@@ -7,15 +7,20 @@ package org.apollo.game.sync.seg;
|
||||
*/
|
||||
public enum SegmentType {
|
||||
|
||||
/**
|
||||
* A segment where the character is added.
|
||||
*/
|
||||
ADD_CHARACTER,
|
||||
|
||||
/**
|
||||
* A segment without any movement.
|
||||
*/
|
||||
NO_MOVEMENT,
|
||||
|
||||
/**
|
||||
* A segment with movement in a single direction.
|
||||
* A segment where the character is removed.
|
||||
*/
|
||||
WALK,
|
||||
REMOVE_CHARACTER,
|
||||
|
||||
/**
|
||||
* A segment with movement in two directions.
|
||||
@@ -28,13 +33,8 @@ public enum SegmentType {
|
||||
TELEPORT,
|
||||
|
||||
/**
|
||||
* A segment where the character is added.
|
||||
* A segment with movement in a single direction.
|
||||
*/
|
||||
ADD_CHARACTER,
|
||||
|
||||
/**
|
||||
* A segment where the character is removed.
|
||||
*/
|
||||
REMOVE_CHARACTER;
|
||||
WALK;
|
||||
|
||||
}
|
||||
|
||||
@@ -22,16 +22,16 @@ import org.xml.sax.SAXException;
|
||||
*/
|
||||
public final class EventHandlerChainParser {
|
||||
|
||||
/**
|
||||
* The {@link XmlParser} instance.
|
||||
*/
|
||||
private final XmlParser parser;
|
||||
|
||||
/**
|
||||
* The source {@link InputStream}.
|
||||
*/
|
||||
private final InputStream is;
|
||||
|
||||
/**
|
||||
* The {@link XmlParser} instance.
|
||||
*/
|
||||
private final XmlParser parser;
|
||||
|
||||
/**
|
||||
* Creates the event chain parser.
|
||||
*
|
||||
|
||||
@@ -20,16 +20,16 @@ public final class PluginMetaDataParser {
|
||||
*/
|
||||
private static final XmlNode[] EMPTY_NODE_ARRAY = new XmlNode[0];
|
||||
|
||||
/**
|
||||
* The XML parser.
|
||||
*/
|
||||
private final XmlParser parser;
|
||||
|
||||
/**
|
||||
* The input stream.
|
||||
*/
|
||||
private final InputStream is;
|
||||
|
||||
/**
|
||||
* The XML parser.
|
||||
*/
|
||||
private final XmlParser parser;
|
||||
|
||||
/**
|
||||
* Creates the plugin meta data parser.
|
||||
*
|
||||
|
||||
@@ -10,16 +10,16 @@ import org.apollo.net.codec.login.LoginConstants;
|
||||
*/
|
||||
public final class PlayerLoaderResponse {
|
||||
|
||||
/**
|
||||
* The status code.
|
||||
*/
|
||||
private final int status;
|
||||
|
||||
/**
|
||||
* The player.
|
||||
*/
|
||||
private final Player player;
|
||||
|
||||
/**
|
||||
* The status code.
|
||||
*/
|
||||
private final int status;
|
||||
|
||||
/**
|
||||
* Creates a {@link PlayerLoaderResponse} with only a status code.
|
||||
*
|
||||
|
||||
@@ -26,16 +26,16 @@ public final class PlayerLoaderWorker implements Runnable {
|
||||
*/
|
||||
private final PlayerLoader loader;
|
||||
|
||||
/**
|
||||
* The session that submitted the request.
|
||||
*/
|
||||
private final LoginSession session;
|
||||
|
||||
/**
|
||||
* The request.
|
||||
*/
|
||||
private final LoginRequest request;
|
||||
|
||||
/**
|
||||
* The session that submitted the request.
|
||||
*/
|
||||
private final LoginSession session;
|
||||
|
||||
/**
|
||||
* Creates a {@link PlayerLoaderWorker} which will do the work for a single player load request.
|
||||
*
|
||||
|
||||
@@ -19,6 +19,11 @@ public final class PlayerSaverWorker implements Runnable {
|
||||
*/
|
||||
private static final Logger logger = Logger.getLogger(PlayerSaverWorker.class.getName());
|
||||
|
||||
/**
|
||||
* The player to save.
|
||||
*/
|
||||
private final Player player;
|
||||
|
||||
/**
|
||||
* The player saver.
|
||||
*/
|
||||
@@ -29,11 +34,6 @@ public final class PlayerSaverWorker implements Runnable {
|
||||
*/
|
||||
private final GameSession session;
|
||||
|
||||
/**
|
||||
* The player to save.
|
||||
*/
|
||||
private final Player player;
|
||||
|
||||
/**
|
||||
* Creates the player saver worker.
|
||||
*
|
||||
|
||||
@@ -22,9 +22,9 @@ import org.jboss.netty.util.Timer;
|
||||
public final class JagGrabPipelineFactory implements ChannelPipelineFactory {
|
||||
|
||||
/**
|
||||
* The maximum length of a request, in bytes.
|
||||
* A buffer with two line feed (LF) characters in it.
|
||||
*/
|
||||
private static final int MAX_REQUEST_LENGTH = 8192;
|
||||
private static final ChannelBuffer DOUBLE_LINE_FEED_DELIMITER = ChannelBuffers.buffer(2);
|
||||
|
||||
/**
|
||||
* The character set used in the request.
|
||||
@@ -32,9 +32,9 @@ public final class JagGrabPipelineFactory implements ChannelPipelineFactory {
|
||||
private static final Charset JAGGRAB_CHARSET = Charset.forName("US-ASCII");
|
||||
|
||||
/**
|
||||
* A buffer with two line feed (LF) characters in it.
|
||||
* The maximum length of a request, in bytes.
|
||||
*/
|
||||
private static final ChannelBuffer DOUBLE_LINE_FEED_DELIMITER = ChannelBuffers.buffer(2);
|
||||
private static final int MAX_REQUEST_LENGTH = 8192;
|
||||
|
||||
/**
|
||||
* Populates the double line feed buffer.
|
||||
|
||||
@@ -8,9 +8,14 @@ package org.apollo.net;
|
||||
public final class NetworkConstants {
|
||||
|
||||
/**
|
||||
* The service port.
|
||||
* The HTTP port.
|
||||
*/
|
||||
public static final int SERVICE_PORT = 43594;
|
||||
public static final int HTTP_PORT = 80;
|
||||
|
||||
/**
|
||||
* The number of seconds before a connection becomes idle.
|
||||
*/
|
||||
public static final int IDLE_TIME = 15;
|
||||
|
||||
/**
|
||||
* The JAGGRAB port.
|
||||
@@ -18,20 +23,15 @@ public final class NetworkConstants {
|
||||
public static final int JAGGRAB_PORT = 43595;
|
||||
|
||||
/**
|
||||
* The HTTP port.
|
||||
* The service port.
|
||||
*/
|
||||
public static final int HTTP_PORT = 80;
|
||||
public static final int SERVICE_PORT = 43594;
|
||||
|
||||
/**
|
||||
* The terminator of a string.
|
||||
*/
|
||||
public static final int STRING_TERMINATOR = 10;
|
||||
|
||||
/**
|
||||
* The number of seconds before a connection becomes idle.
|
||||
*/
|
||||
public static final int IDLE_TIME = 15;
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation by other classes.
|
||||
*/
|
||||
|
||||
@@ -7,14 +7,14 @@ package org.apollo.net.codec.game;
|
||||
*/
|
||||
public enum AccessMode {
|
||||
|
||||
/**
|
||||
* When in byte access modes, bytes are written directly to the buffer.
|
||||
*/
|
||||
BYTE_ACCESS,
|
||||
|
||||
/**
|
||||
* When in bit access mode, bits can be written and packed into bytes.
|
||||
*/
|
||||
BIT_ACCESS;
|
||||
BIT_ACCESS,
|
||||
|
||||
/**
|
||||
* When in byte access modes, bytes are written directly to the buffer.
|
||||
*/
|
||||
BYTE_ACCESS;
|
||||
|
||||
}
|
||||
|
||||
@@ -8,14 +8,9 @@ package org.apollo.net.codec.game;
|
||||
public enum DataOrder {
|
||||
|
||||
/**
|
||||
* Least significant byte to most significant byte.
|
||||
* Most significant byte to least significant byte.
|
||||
*/
|
||||
LITTLE,
|
||||
|
||||
/**
|
||||
* Also known as the V1 order.
|
||||
*/
|
||||
MIDDLE,
|
||||
BIG,
|
||||
|
||||
/**
|
||||
* Also known as the V2 order.
|
||||
@@ -23,8 +18,13 @@ public enum DataOrder {
|
||||
INVERSED_MIDDLE,
|
||||
|
||||
/**
|
||||
* Most significant byte to least significant byte.
|
||||
* Least significant byte to most significant byte.
|
||||
*/
|
||||
BIG;
|
||||
LITTLE,
|
||||
|
||||
/**
|
||||
* Also known as the V1 order.
|
||||
*/
|
||||
MIDDLE;
|
||||
|
||||
}
|
||||
|
||||
@@ -7,11 +7,6 @@ package org.apollo.net.codec.game;
|
||||
*/
|
||||
public enum DataTransformation {
|
||||
|
||||
/**
|
||||
* No transformation is done.
|
||||
*/
|
||||
NONE,
|
||||
|
||||
/**
|
||||
* Adds 128 to the value when it is written, takes 128 from the value when it is read (also known as type-A).
|
||||
*/
|
||||
@@ -22,6 +17,11 @@ public enum DataTransformation {
|
||||
*/
|
||||
NEGATE,
|
||||
|
||||
/**
|
||||
* No transformation is done.
|
||||
*/
|
||||
NONE,
|
||||
|
||||
/**
|
||||
* Subtracts the value from 128 (also known as type-S).
|
||||
*/
|
||||
|
||||
@@ -12,16 +12,6 @@ public enum DataType {
|
||||
*/
|
||||
BYTE(1),
|
||||
|
||||
/**
|
||||
* A short.
|
||||
*/
|
||||
SHORT(2),
|
||||
|
||||
/**
|
||||
* A 'tri byte' - a group of three bytes.
|
||||
*/
|
||||
TRI_BYTE(3),
|
||||
|
||||
/**
|
||||
* An integer.
|
||||
*/
|
||||
@@ -30,7 +20,17 @@ public enum DataType {
|
||||
/**
|
||||
* A long.
|
||||
*/
|
||||
LONG(8);
|
||||
LONG(8),
|
||||
|
||||
/**
|
||||
* A short.
|
||||
*/
|
||||
SHORT(2),
|
||||
|
||||
/**
|
||||
* A 'tri byte' - a group of three bytes.
|
||||
*/
|
||||
TRI_BYTE(3);
|
||||
|
||||
/**
|
||||
* The number of bytes this type occupies.
|
||||
|
||||
@@ -7,18 +7,18 @@ package org.apollo.net.codec.game;
|
||||
*/
|
||||
public enum GameDecoderState {
|
||||
|
||||
/**
|
||||
* The game opcode state waits for an encrypted opcode. It decrypts it, and will either set the next state to the
|
||||
* length (if the packet is variably- sized) or the payload (if it is not variably-sized) state.
|
||||
*/
|
||||
GAME_OPCODE,
|
||||
|
||||
/**
|
||||
* The game length state waits for the packet length. Once it has been received, it sets the state to the payload
|
||||
* state.
|
||||
*/
|
||||
GAME_LENGTH,
|
||||
|
||||
/**
|
||||
* The game opcode state waits for an encrypted opcode. It decrypts it, and will either set the next state to the
|
||||
* length (if the packet is variably- sized) or the payload (if it is not variably-sized) state.
|
||||
*/
|
||||
GAME_OPCODE,
|
||||
|
||||
/**
|
||||
* The payload state will wait for the whole packet to be received. Then, it will pass a {@link GamePacket} object
|
||||
* to Netty and reset the state back to the game opcode state, ready for the next packet.
|
||||
|
||||
@@ -10,26 +10,26 @@ import org.jboss.netty.buffer.ChannelBuffer;
|
||||
*/
|
||||
public final class GamePacket {
|
||||
|
||||
/**
|
||||
* The opcode.
|
||||
*/
|
||||
private final int opcode;
|
||||
|
||||
/**
|
||||
* The packet type.
|
||||
*/
|
||||
private final PacketType type;
|
||||
|
||||
/**
|
||||
* The length.
|
||||
*/
|
||||
private final int length;
|
||||
|
||||
/**
|
||||
* The opcode.
|
||||
*/
|
||||
private final int opcode;
|
||||
|
||||
/**
|
||||
* The payload.
|
||||
*/
|
||||
private final ChannelBuffer payload;
|
||||
|
||||
/**
|
||||
* The packet type.
|
||||
*/
|
||||
private final PacketType type;
|
||||
|
||||
/**
|
||||
* Creates the game packet.
|
||||
*
|
||||
|
||||
@@ -13,14 +13,9 @@ import org.jboss.netty.buffer.ChannelBuffers;
|
||||
public final class GamePacketBuilder {
|
||||
|
||||
/**
|
||||
* The opcode.
|
||||
* The current bit index.
|
||||
*/
|
||||
private final int opcode;
|
||||
|
||||
/**
|
||||
* The {@link PacketType}.
|
||||
*/
|
||||
private final PacketType type;
|
||||
private int bitIndex;
|
||||
|
||||
/**
|
||||
* The buffer.
|
||||
@@ -33,9 +28,14 @@ public final class GamePacketBuilder {
|
||||
private AccessMode mode = AccessMode.BYTE_ACCESS;
|
||||
|
||||
/**
|
||||
* The current bit index.
|
||||
* The opcode.
|
||||
*/
|
||||
private int bitIndex;
|
||||
private final int opcode;
|
||||
|
||||
/**
|
||||
* The {@link PacketType}.
|
||||
*/
|
||||
private final PacketType type;
|
||||
|
||||
/**
|
||||
* Creates a raw {@link GamePacketBuilder}.
|
||||
|
||||
@@ -19,30 +19,30 @@ import org.jboss.netty.channel.ChannelHandlerContext;
|
||||
public final class GamePacketDecoder extends StatefulFrameDecoder<GameDecoderState> {
|
||||
|
||||
/**
|
||||
* The current release.
|
||||
* The current length.
|
||||
*/
|
||||
private final Release release;
|
||||
|
||||
/**
|
||||
* The random number generator.
|
||||
*/
|
||||
private final IsaacRandom random;
|
||||
private int length;
|
||||
|
||||
/**
|
||||
* The current opcode.
|
||||
*/
|
||||
private int opcode;
|
||||
|
||||
/**
|
||||
* The random number generator.
|
||||
*/
|
||||
private final IsaacRandom random;
|
||||
|
||||
/**
|
||||
* The current release.
|
||||
*/
|
||||
private final Release release;
|
||||
|
||||
/**
|
||||
* The packet type.
|
||||
*/
|
||||
private PacketType type;
|
||||
|
||||
/**
|
||||
* The current length.
|
||||
*/
|
||||
private int length;
|
||||
|
||||
/**
|
||||
* Creates the {@link GamePacketDecoder}.
|
||||
*
|
||||
|
||||
@@ -10,6 +10,11 @@ import org.jboss.netty.buffer.ChannelBuffer;
|
||||
*/
|
||||
public final class GamePacketReader {
|
||||
|
||||
/**
|
||||
* The current bit index.
|
||||
*/
|
||||
private int bitIndex;
|
||||
|
||||
/**
|
||||
* The buffer.
|
||||
*/
|
||||
@@ -20,11 +25,6 @@ public final class GamePacketReader {
|
||||
*/
|
||||
private AccessMode mode = AccessMode.BYTE_ACCESS;
|
||||
|
||||
/**
|
||||
* The current bit index.
|
||||
*/
|
||||
private int bitIndex;
|
||||
|
||||
/**
|
||||
* Creates the reader.
|
||||
*
|
||||
|
||||
@@ -7,36 +7,6 @@ package org.apollo.net.codec.login;
|
||||
*/
|
||||
public final class LoginConstants {
|
||||
|
||||
/**
|
||||
* Standard login type id.
|
||||
*/
|
||||
public static final int TYPE_STANDARD = 16;
|
||||
|
||||
/**
|
||||
* Reconnection login type id.
|
||||
*/
|
||||
public static final int TYPE_RECONNECTION = 18;
|
||||
|
||||
/**
|
||||
* Exchange data login status.
|
||||
*/
|
||||
public static final int STATUS_EXCHANGE_DATA = 0;
|
||||
|
||||
/**
|
||||
* Delay for 2 seconds login status.
|
||||
*/
|
||||
public static final int STATUS_DELAY = 1;
|
||||
|
||||
/**
|
||||
* OK login status.
|
||||
*/
|
||||
public static final int STATUS_OK = 2;
|
||||
|
||||
/**
|
||||
* Invalid credentials login status.
|
||||
*/
|
||||
public static final int STATUS_INVALID_CREDENTIALS = 3;
|
||||
|
||||
/**
|
||||
* Account disabled login status.
|
||||
*/
|
||||
@@ -47,31 +17,51 @@ public final class LoginConstants {
|
||||
*/
|
||||
public static final int STATUS_ACCOUNT_ONLINE = 5;
|
||||
|
||||
/**
|
||||
* Bad session id login status.
|
||||
*/
|
||||
public static final int STATUS_BAD_SESSION_ID = 10;
|
||||
|
||||
/**
|
||||
* Could not complete login status.
|
||||
*/
|
||||
public static final int STATUS_COULD_NOT_COMPLETE = 13;
|
||||
|
||||
/**
|
||||
* Delay for 2 seconds login status.
|
||||
*/
|
||||
public static final int STATUS_DELAY = 1;
|
||||
|
||||
/**
|
||||
* Exchange data login status.
|
||||
*/
|
||||
public static final int STATUS_EXCHANGE_DATA = 0;
|
||||
|
||||
/**
|
||||
* Game updated login status.
|
||||
*/
|
||||
public static final int STATUS_GAME_UPDATED = 6;
|
||||
|
||||
/**
|
||||
* Server full login status.
|
||||
* Standing in members area on free world status.
|
||||
*/
|
||||
public static final int STATUS_SERVER_FULL = 7;
|
||||
public static final int STATUS_IN_MEMBERS_AREA = 17;
|
||||
|
||||
/**
|
||||
* Invalid credentials login status.
|
||||
*/
|
||||
public static final int STATUS_INVALID_CREDENTIALS = 3;
|
||||
|
||||
/**
|
||||
* Invalid login server status.
|
||||
*/
|
||||
public static final int STATUS_INVALID_LOGIN_SERVER = 20;
|
||||
|
||||
/**
|
||||
* Login server offline login status.
|
||||
*/
|
||||
public static final int STATUS_LOGIN_SERVER_OFFLINE = 8;
|
||||
|
||||
/**
|
||||
* Too many connections login status.
|
||||
*/
|
||||
public static final int STATUS_TOO_MANY_CONNECTIONS = 9;
|
||||
|
||||
/**
|
||||
* Bad session id login status.
|
||||
*/
|
||||
public static final int STATUS_BAD_SESSION_ID = 10;
|
||||
|
||||
/**
|
||||
* Login server rejected session login status.
|
||||
*/
|
||||
@@ -83,39 +73,49 @@ public final class LoginConstants {
|
||||
public static final int STATUS_MEMBERS_ACCOUNT_REQUIRED = 12;
|
||||
|
||||
/**
|
||||
* Could not complete login status.
|
||||
* OK login status.
|
||||
*/
|
||||
public static final int STATUS_COULD_NOT_COMPLETE = 13;
|
||||
public static final int STATUS_OK = 2;
|
||||
|
||||
/**
|
||||
* Server updating login status.
|
||||
* Profile transfer login status.
|
||||
*/
|
||||
public static final int STATUS_UPDATING = 14;
|
||||
public static final int STATUS_PROFILE_TRANSFER = 21;
|
||||
|
||||
/**
|
||||
* Reconnection OK login status.
|
||||
*/
|
||||
public static final int STATUS_RECONNECTION_OK = 15;
|
||||
|
||||
/**
|
||||
* Server full login status.
|
||||
*/
|
||||
public static final int STATUS_SERVER_FULL = 7;
|
||||
|
||||
/**
|
||||
* Too many connections login status.
|
||||
*/
|
||||
public static final int STATUS_TOO_MANY_CONNECTIONS = 9;
|
||||
|
||||
/**
|
||||
* Too many login attempts login status.
|
||||
*/
|
||||
public static final int STATUS_TOO_MANY_LOGINS = 16;
|
||||
|
||||
/**
|
||||
* Standing in members area on free world status.
|
||||
* Server updating login status.
|
||||
*/
|
||||
public static final int STATUS_IN_MEMBERS_AREA = 17;
|
||||
public static final int STATUS_UPDATING = 14;
|
||||
|
||||
/**
|
||||
* Invalid login server status.
|
||||
* Reconnection login type id.
|
||||
*/
|
||||
public static final int STATUS_INVALID_LOGIN_SERVER = 20;
|
||||
public static final int TYPE_RECONNECTION = 18;
|
||||
|
||||
/**
|
||||
* Profile transfer login status.
|
||||
* Standard login type id.
|
||||
*/
|
||||
public static final int STATUS_PROFILE_TRANSFER = 21;
|
||||
public static final int TYPE_STANDARD = 16;
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation.
|
||||
|
||||
@@ -27,14 +27,9 @@ public final class LoginDecoder extends StatefulFrameDecoder<LoginDecoderState>
|
||||
private static final SecureRandom random = new SecureRandom();
|
||||
|
||||
/**
|
||||
* The username hash.
|
||||
* The login packet length.
|
||||
*/
|
||||
private int usernameHash;
|
||||
|
||||
/**
|
||||
* The server-side session key.
|
||||
*/
|
||||
private long serverSeed;
|
||||
private int loginLength;
|
||||
|
||||
/**
|
||||
* The reconnecting flag.
|
||||
@@ -42,9 +37,14 @@ public final class LoginDecoder extends StatefulFrameDecoder<LoginDecoderState>
|
||||
private boolean reconnecting;
|
||||
|
||||
/**
|
||||
* The login packet length.
|
||||
* The server-side session key.
|
||||
*/
|
||||
private int loginLength;
|
||||
private long serverSeed;
|
||||
|
||||
/**
|
||||
* The username hash.
|
||||
*/
|
||||
private int usernameHash;
|
||||
|
||||
/**
|
||||
* Creates the login decoder with the default initial state.
|
||||
|
||||
@@ -10,21 +10,26 @@ import org.apollo.security.PlayerCredentials;
|
||||
*/
|
||||
public final class LoginRequest {
|
||||
|
||||
/**
|
||||
* The archive CRCs.
|
||||
*/
|
||||
private final int[] archiveCrcs;
|
||||
|
||||
/**
|
||||
* The player's credentials.
|
||||
*/
|
||||
private final PlayerCredentials credentials;
|
||||
|
||||
/**
|
||||
* The pair of random number generators.
|
||||
*/
|
||||
private final IsaacRandomPair randomPair;
|
||||
|
||||
/**
|
||||
* The low memory flag.
|
||||
*/
|
||||
private final boolean lowMemory;
|
||||
|
||||
/**
|
||||
* The pair of random number generators.
|
||||
*/
|
||||
private final IsaacRandomPair randomPair;
|
||||
|
||||
/**
|
||||
* The reconnecting flag.
|
||||
*/
|
||||
@@ -35,11 +40,6 @@ public final class LoginRequest {
|
||||
*/
|
||||
private final int releaseNumber;
|
||||
|
||||
/**
|
||||
* The archive CRCs.
|
||||
*/
|
||||
private final int[] archiveCrcs;
|
||||
|
||||
/**
|
||||
* Creates a login request.
|
||||
*
|
||||
|
||||
@@ -7,11 +7,6 @@ package org.apollo.net.codec.login;
|
||||
*/
|
||||
public final class LoginResponse {
|
||||
|
||||
/**
|
||||
* The login status.
|
||||
*/
|
||||
private final int status;
|
||||
|
||||
/**
|
||||
* The flagged flag.
|
||||
*/
|
||||
@@ -22,6 +17,11 @@ public final class LoginResponse {
|
||||
*/
|
||||
private final int rights;
|
||||
|
||||
/**
|
||||
* The login status.
|
||||
*/
|
||||
private final int status;
|
||||
|
||||
/**
|
||||
* Creates the login response.
|
||||
*
|
||||
|
||||
@@ -21,16 +21,16 @@ public final class OnDemandRequest implements Comparable<OnDemandRequest> {
|
||||
*/
|
||||
HIGH(0),
|
||||
|
||||
/**
|
||||
* Medium priority - used while loading the 'bare minimum' required to run the game.
|
||||
*/
|
||||
MEDIUM(1),
|
||||
|
||||
/**
|
||||
* Low priority - used when a file is not required urgently. The client login screen says
|
||||
* "loading extra files.." when low priority loading is being performed.
|
||||
*/
|
||||
LOW(2);
|
||||
LOW(2),
|
||||
|
||||
/**
|
||||
* Medium priority - used while loading the 'bare minimum' required to run the game.
|
||||
*/
|
||||
MEDIUM(1);
|
||||
|
||||
/**
|
||||
* Converts the integer value to a priority.
|
||||
|
||||
@@ -10,6 +10,16 @@ import org.jboss.netty.buffer.ChannelBuffer;
|
||||
*/
|
||||
public final class OnDemandResponse {
|
||||
|
||||
/**
|
||||
* The chunk data.
|
||||
*/
|
||||
private final ChannelBuffer chunkData;
|
||||
|
||||
/**
|
||||
* The chunk id.
|
||||
*/
|
||||
private final int chunkId;
|
||||
|
||||
/**
|
||||
* The file descriptor.
|
||||
*/
|
||||
@@ -20,16 +30,6 @@ public final class OnDemandResponse {
|
||||
*/
|
||||
private final int fileSize;
|
||||
|
||||
/**
|
||||
* The chunk id.
|
||||
*/
|
||||
private final int chunkId;
|
||||
|
||||
/**
|
||||
* The chunk data.
|
||||
*/
|
||||
private final ChannelBuffer chunkData;
|
||||
|
||||
/**
|
||||
* Creates the 'on-demand' response.
|
||||
*
|
||||
|
||||
@@ -39,16 +39,16 @@ public final class PacketMetaData {
|
||||
return new PacketMetaData(PacketType.VARIABLE_SHORT, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* The type of packet.
|
||||
*/
|
||||
private final PacketType type;
|
||||
|
||||
/**
|
||||
* The length of this packet.
|
||||
*/
|
||||
private final int length;
|
||||
|
||||
/**
|
||||
* The type of packet.
|
||||
*/
|
||||
private final PacketType type;
|
||||
|
||||
/**
|
||||
* Creates the packet meta data object. This should not be called directy. Use the {@link #createFixed(int)},
|
||||
* {@link #createVariableByte()} and {@link #createVariableShort()} methods instead!
|
||||
|
||||
@@ -7,16 +7,16 @@ package org.apollo.net.meta;
|
||||
*/
|
||||
public enum PacketType {
|
||||
|
||||
/**
|
||||
* A packet with no header.
|
||||
*/
|
||||
RAW,
|
||||
|
||||
/**
|
||||
* A packet where the length is known by both the client and server already.
|
||||
*/
|
||||
FIXED,
|
||||
|
||||
/**
|
||||
* A packet with no header.
|
||||
*/
|
||||
RAW,
|
||||
|
||||
/**
|
||||
* A packet where the length is sent to its destination with it as a byte.
|
||||
*/
|
||||
|
||||
@@ -14,11 +14,6 @@ import org.apollo.net.meta.PacketMetaDataGroup;
|
||||
*/
|
||||
public abstract class Release {
|
||||
|
||||
/**
|
||||
* The release number, e.g. {@code 317}.
|
||||
*/
|
||||
private final int releaseNumber;
|
||||
|
||||
/**
|
||||
* The decoders.
|
||||
*/
|
||||
@@ -34,6 +29,11 @@ public abstract class Release {
|
||||
*/
|
||||
private final PacketMetaDataGroup incomingPacketMetaData;
|
||||
|
||||
/**
|
||||
* The release number, e.g. {@code 317}.
|
||||
*/
|
||||
private final int releaseNumber;
|
||||
|
||||
/**
|
||||
* Creates the release.
|
||||
*
|
||||
|
||||
@@ -9,6 +9,7 @@ import org.apollo.net.release.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link FifthItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class FifthItemOptionEventDecoder extends EventDecoder<FifthItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r317;
|
||||
|
||||
import org.apollo.game.event.impl.FirstItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link FirstItemOptionEvent}.
|
||||
*
|
||||
* @author Graham
|
||||
*/
|
||||
final class FirstItemOptionEventDecoder extends EventDecoder<FirstItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r317;
|
||||
|
||||
import org.apollo.game.event.impl.FourthItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link FourthItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class FourthItemOptionEventDecoder extends EventDecoder<FourthItemOptionEvent> {
|
||||
|
||||
@@ -9,6 +9,7 @@ import org.apollo.net.release.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link SecondItemOptionEvent}.
|
||||
*
|
||||
* @author Graham
|
||||
*/
|
||||
final class SecondItemOptionEventDecoder extends EventDecoder<SecondItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r317;
|
||||
|
||||
import org.apollo.game.event.impl.ThirdItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link ThirdItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class ThirdItemOptionEventDecoder extends EventDecoder<ThirdItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r377;
|
||||
|
||||
import org.apollo.game.event.impl.FifthItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link FifthItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class FifthItemOptionEventDecoder extends EventDecoder<FifthItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r377;
|
||||
|
||||
import org.apollo.game.event.impl.FirstItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link FirstItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class FirstItemOptionEventDecoder extends EventDecoder<FirstItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r377;
|
||||
|
||||
import org.apollo.game.event.impl.FourthItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link FourthItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class FourthItemOptionEventDecoder extends EventDecoder<FourthItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r377;
|
||||
|
||||
import org.apollo.game.event.impl.SecondItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link SecondItemOptionEvent}.
|
||||
*
|
||||
* @author Graham
|
||||
*/
|
||||
final class SecondItemOptionEventDecoder extends EventDecoder<SecondItemOptionEvent> {
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.apollo.net.release.r377;
|
||||
|
||||
import org.apollo.game.event.impl.ThirdItemOptionEvent;
|
||||
import org.apollo.net.codec.game.*;
|
||||
import org.apollo.net.codec.game.DataOrder;
|
||||
import org.apollo.net.codec.game.DataTransformation;
|
||||
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.EventDecoder;
|
||||
|
||||
/**
|
||||
* An {@link EventDecoder} for the {@link ThirdItemOptionEvent}.
|
||||
*
|
||||
* @author Chris Fletcher
|
||||
*/
|
||||
final class ThirdItemOptionEventDecoder extends EventDecoder<ThirdItemOptionEvent> {
|
||||
|
||||
@@ -10,16 +10,16 @@ import net.burtleburtle.bob.rand.IsaacRandom;
|
||||
*/
|
||||
public final class IsaacRandomPair {
|
||||
|
||||
/**
|
||||
* The random number generator used to encode data.
|
||||
*/
|
||||
private final IsaacRandom encodingRandom;
|
||||
|
||||
/**
|
||||
* The random number generator used to decode data.
|
||||
*/
|
||||
private final IsaacRandom decodingRandom;
|
||||
|
||||
/**
|
||||
* The random number generator used to encode data.
|
||||
*/
|
||||
private final IsaacRandom encodingRandom;
|
||||
|
||||
/**
|
||||
* Creates the pair of random number generators.
|
||||
*
|
||||
|
||||
@@ -9,11 +9,6 @@ import org.apollo.util.NameUtil;
|
||||
*/
|
||||
public final class PlayerCredentials {
|
||||
|
||||
/**
|
||||
* The player's username.
|
||||
*/
|
||||
private final String username;
|
||||
|
||||
/**
|
||||
* The player's username encoded as a long.
|
||||
*/
|
||||
@@ -24,16 +19,21 @@ public final class PlayerCredentials {
|
||||
*/
|
||||
private final String password;
|
||||
|
||||
/**
|
||||
* The hash of the player's username.
|
||||
*/
|
||||
private final int usernameHash;
|
||||
|
||||
/**
|
||||
* The computer's unique identifier.
|
||||
*/
|
||||
private final int uid;
|
||||
|
||||
/**
|
||||
* The player's username.
|
||||
*/
|
||||
private final String username;
|
||||
|
||||
/**
|
||||
* The hash of the player's username.
|
||||
*/
|
||||
private final int usernameHash;
|
||||
|
||||
/**
|
||||
* Creates a new {@link PlayerCredentials} object with the specified name, password and uid.
|
||||
*
|
||||
|
||||
@@ -8,33 +8,6 @@ package org.apollo.tools;
|
||||
*/
|
||||
public final class EquipmentConstants {
|
||||
|
||||
/**
|
||||
* Capes.
|
||||
*/
|
||||
public static final String[] CAPES = { "cape", "Cape" };
|
||||
|
||||
/**
|
||||
* Hats.
|
||||
*/
|
||||
public static final String[] HATS = { "helm", "hood", "coif", "Coif", "hat", "partyhat", "Hat", "full helm (t)",
|
||||
"full helm (g)", "hat (t)", "hat (g)", "cav", "boater", "helmet", "mask", "Helm of neitiznot" };
|
||||
|
||||
/**
|
||||
* Boots.
|
||||
*/
|
||||
public static final String[] BOOTS = { "boots", "Boots" };
|
||||
|
||||
/**
|
||||
* Gloves.
|
||||
*/
|
||||
public static final String[] GLOVES = { "gloves", "gauntlets", "Gloves", "vambraces", "vamb", "bracers" };
|
||||
|
||||
/**
|
||||
* Shields.
|
||||
*/
|
||||
public static final String[] SHIELDS = { "kiteshield", "sq shield", "Toktz-ket", "books", "book", "kiteshield (t)",
|
||||
"kiteshield (g)", "kiteshield(h)", "defender", "shield" };
|
||||
|
||||
/**
|
||||
* Amulets.
|
||||
*/
|
||||
@@ -46,11 +19,6 @@ public final class EquipmentConstants {
|
||||
public static final String[] ARROWS = { "arrow", "arrows", "arrow(p)", "arrow(+)", "arrow(s)", "bolt", "Bolt rack",
|
||||
"Opal bolts", "Dragon bolts" };
|
||||
|
||||
/**
|
||||
* Rings.
|
||||
*/
|
||||
public static final String[] RINGS = { "ring", "Ring of" };
|
||||
|
||||
/**
|
||||
* Bodies.
|
||||
*/
|
||||
@@ -59,20 +27,14 @@ public final class EquipmentConstants {
|
||||
"torso", "shirt" };
|
||||
|
||||
/**
|
||||
* Legs.
|
||||
* Boots.
|
||||
*/
|
||||
public static final String[] LEGS = { "platelegs", "plateskirt", "skirt", "bottoms", "chaps", "platelegs (t)",
|
||||
"platelegs (g)", "bottom", "skirt", "skirt (g)", "skirt (t)", "chaps (g)", "chaps (t)", "tassets", "legs",
|
||||
"Flared trousers" };
|
||||
public static final String[] BOOTS = { "boots", "Boots" };
|
||||
|
||||
/**
|
||||
* Weapons.
|
||||
* Capes.
|
||||
*/
|
||||
public static final String[] WEAPONS = { "scimitar", "longsword", "sword", "longbow", "shortbow", "dagger", "mace",
|
||||
"halberd", "spear", "Abyssal whip", "axe", "flail", "crossbow", "Torags hammers", "dagger(p)", "dagger(+)",
|
||||
"dagger(s)", "spear(p)", "spear(+)", "spear(s)", "spear(kp)", "maul", "dart", "dart(p)", "javelin",
|
||||
"javelin(p)", "knife", "knife(p)", "Longbow", "Shortbow", "Crossbow", "Toktz-xil", "Toktz-mej",
|
||||
"Tzhaar-ket", "staff", "Staff", "godsword", "c'bow", "Crystal bow", "Dark bow", "Magic butterfly net" };
|
||||
public static final String[] CAPES = { "cape", "Cape" };
|
||||
|
||||
/**
|
||||
* Full bodies.
|
||||
@@ -92,6 +54,44 @@ public final class EquipmentConstants {
|
||||
public static final String[] FULL_MASKS = { "full helm", "mask", "Veracs helm", "Guthans helm", "Torags helm",
|
||||
"Karils coif", "full helm (t)", "full helm (g)", "mask" };
|
||||
|
||||
/**
|
||||
* Gloves.
|
||||
*/
|
||||
public static final String[] GLOVES = { "gloves", "gauntlets", "Gloves", "vambraces", "vamb", "bracers" };
|
||||
|
||||
/**
|
||||
* Hats.
|
||||
*/
|
||||
public static final String[] HATS = { "helm", "hood", "coif", "Coif", "hat", "partyhat", "Hat", "full helm (t)",
|
||||
"full helm (g)", "hat (t)", "hat (g)", "cav", "boater", "helmet", "mask", "Helm of neitiznot" };
|
||||
|
||||
/**
|
||||
* Legs.
|
||||
*/
|
||||
public static final String[] LEGS = { "platelegs", "plateskirt", "skirt", "bottoms", "chaps", "platelegs (t)",
|
||||
"platelegs (g)", "bottom", "skirt", "skirt (g)", "skirt (t)", "chaps (g)", "chaps (t)", "tassets", "legs",
|
||||
"Flared trousers" };
|
||||
|
||||
/**
|
||||
* Rings.
|
||||
*/
|
||||
public static final String[] RINGS = { "ring", "Ring of" };
|
||||
|
||||
/**
|
||||
* Shields.
|
||||
*/
|
||||
public static final String[] SHIELDS = { "kiteshield", "sq shield", "Toktz-ket", "books", "book", "kiteshield (t)",
|
||||
"kiteshield (g)", "kiteshield(h)", "defender", "shield" };
|
||||
|
||||
/**
|
||||
* Weapons.
|
||||
*/
|
||||
public static final String[] WEAPONS = { "scimitar", "longsword", "sword", "longbow", "shortbow", "dagger", "mace",
|
||||
"halberd", "spear", "Abyssal whip", "axe", "flail", "crossbow", "Torags hammers", "dagger(p)", "dagger(+)",
|
||||
"dagger(s)", "spear(p)", "spear(+)", "spear(s)", "spear(kp)", "maul", "dart", "dart(p)", "javelin",
|
||||
"javelin(p)", "knife", "knife(p)", "Longbow", "Shortbow", "Crossbow", "Toktz-xil", "Toktz-mej",
|
||||
"Tzhaar-ket", "staff", "Staff", "godsword", "c'bow", "Crystal bow", "Dark bow", "Magic butterfly net" };
|
||||
|
||||
/**
|
||||
* Default private construcotr to prevent instantiation.
|
||||
*/
|
||||
|
||||
@@ -27,6 +27,11 @@ import org.jboss.netty.handler.codec.http.HttpResponseStatus;
|
||||
*/
|
||||
public final class HttpRequestWorker extends RequestWorker<HttpRequest, ResourceProvider> {
|
||||
|
||||
/**
|
||||
* The default character set.
|
||||
*/
|
||||
private static final Charset CHARACTER_SET = Charset.forName("ISO-8859-1");
|
||||
|
||||
/**
|
||||
* The value of the server header.
|
||||
*/
|
||||
@@ -37,11 +42,6 @@ public final class HttpRequestWorker extends RequestWorker<HttpRequest, Resource
|
||||
*/
|
||||
private static final File WWW_DIRECTORY = new File("./data/www/");
|
||||
|
||||
/**
|
||||
* The default character set.
|
||||
*/
|
||||
private static final Charset CHARACTER_SET = Charset.forName("ISO-8859-1");
|
||||
|
||||
/**
|
||||
* Creates the HTTP request worker.
|
||||
*
|
||||
|
||||
@@ -13,16 +13,16 @@ import org.jboss.netty.channel.Channel;
|
||||
*/
|
||||
public abstract class RequestWorker<T, P> implements Runnable {
|
||||
|
||||
/**
|
||||
* The resource provider.
|
||||
*/
|
||||
private final P provider;
|
||||
|
||||
/**
|
||||
* The update dispatcher.
|
||||
*/
|
||||
private final UpdateDispatcher dispatcher;
|
||||
|
||||
/**
|
||||
* The resource provider.
|
||||
*/
|
||||
private final P provider;
|
||||
|
||||
/**
|
||||
* A flag indicating if the worker should be running.
|
||||
*/
|
||||
|
||||
@@ -22,9 +22,9 @@ public final class UpdateDispatcher {
|
||||
private static final int MAXIMUM_QUEUE_SIZE = 1024;
|
||||
|
||||
/**
|
||||
* A queue for pending 'on-demand' requests.
|
||||
* A queue for pending HTTP requests.
|
||||
*/
|
||||
private final BlockingQueue<ChannelRequest<OnDemandRequest>> onDemandQueue = new PriorityBlockingQueue<ChannelRequest<OnDemandRequest>>();
|
||||
private final BlockingQueue<ChannelRequest<HttpRequest>> httpQueue = new LinkedBlockingQueue<ChannelRequest<HttpRequest>>();
|
||||
|
||||
/**
|
||||
* A queue for pending JAGGRAB requests.
|
||||
@@ -32,9 +32,9 @@ public final class UpdateDispatcher {
|
||||
private final BlockingQueue<ChannelRequest<JagGrabRequest>> jagGrabQueue = new LinkedBlockingQueue<ChannelRequest<JagGrabRequest>>();
|
||||
|
||||
/**
|
||||
* A queue for pending HTTP requests.
|
||||
* A queue for pending 'on-demand' requests.
|
||||
*/
|
||||
private final BlockingQueue<ChannelRequest<HttpRequest>> httpQueue = new LinkedBlockingQueue<ChannelRequest<HttpRequest>>();
|
||||
private final BlockingQueue<ChannelRequest<OnDemandRequest>> onDemandQueue = new PriorityBlockingQueue<ChannelRequest<OnDemandRequest>>();
|
||||
|
||||
/**
|
||||
* Dispatches a HTTP request.
|
||||
|
||||
@@ -16,15 +16,20 @@ import org.apollo.fs.IndexedFileSystem;
|
||||
*/
|
||||
public final class UpdateService extends Service {
|
||||
|
||||
/**
|
||||
* The number of request types.
|
||||
*/
|
||||
private static final int REQUEST_TYPES = 3;
|
||||
|
||||
/**
|
||||
* The number of threads per request type.
|
||||
*/
|
||||
private static final int THREADS_PER_REQUEST_TYPE = Runtime.getRuntime().availableProcessors();
|
||||
|
||||
/**
|
||||
* The number of request types.
|
||||
* The update dispatcher.
|
||||
*/
|
||||
private static final int REQUEST_TYPES = 3;
|
||||
private final UpdateDispatcher dispatcher = new UpdateDispatcher();
|
||||
|
||||
/**
|
||||
* The executor service.
|
||||
@@ -36,11 +41,6 @@ public final class UpdateService extends Service {
|
||||
*/
|
||||
private final List<RequestWorker<?, ?>> workers = new ArrayList<RequestWorker<?, ?>>();
|
||||
|
||||
/**
|
||||
* The update dispatcher.
|
||||
*/
|
||||
private final UpdateDispatcher dispatcher = new UpdateDispatcher();
|
||||
|
||||
/**
|
||||
* Creates the update service.
|
||||
*/
|
||||
|
||||
@@ -20,16 +20,16 @@ public final class CharacterRepository<T extends Character> implements Iterable<
|
||||
*/
|
||||
private final class CharacterRepositoryIterator implements Iterator<T> {
|
||||
|
||||
/**
|
||||
* The previous index of this iterator.
|
||||
*/
|
||||
private int previousIndex = -1;
|
||||
|
||||
/**
|
||||
* The current index of this iterator.
|
||||
*/
|
||||
private int index = 0;
|
||||
|
||||
/**
|
||||
* The previous index of this iterator.
|
||||
*/
|
||||
private int previousIndex = -1;
|
||||
|
||||
@Override
|
||||
public boolean hasNext() {
|
||||
for (int i = index; i < characters.length; i++) {
|
||||
@@ -77,16 +77,16 @@ public final class CharacterRepository<T extends Character> implements Iterable<
|
||||
*/
|
||||
private final Character[] characters;
|
||||
|
||||
/**
|
||||
* The current size of this repository.
|
||||
*/
|
||||
private int size = 0;
|
||||
|
||||
/**
|
||||
* The position of the next free index.
|
||||
*/
|
||||
private int pointer = 0;
|
||||
|
||||
/**
|
||||
* The current size of this repository.
|
||||
*/
|
||||
private int size = 0;
|
||||
|
||||
/**
|
||||
* Creates a new character repository with the specified capacity.
|
||||
*
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user