diff --git a/src/org/apollo/Server.java b/src/org/apollo/Server.java index 6e8b3fb2..3cedcd31 100644 --- a/src/org/apollo/Server.java +++ b/src/org/apollo/Server.java @@ -170,7 +170,6 @@ public final class Server { */ public void start() throws Exception { PluginManager mgr = new PluginManager(new PluginContext(context)); - mgr.start(); // TODO move this? serviceManager.startAll(); diff --git a/src/org/apollo/game/model/Entity.java b/src/org/apollo/game/model/Entity.java index 25fa3eb2..d44beba3 100644 --- a/src/org/apollo/game/model/Entity.java +++ b/src/org/apollo/game/model/Entity.java @@ -12,6 +12,15 @@ public abstract class Entity { */ protected Position position; + /** + * Creates a new entity with the specified position. + * + * @param position The position. + */ + public Entity(Position position) { + this.position = position; + } + /** * Gets the {@link EntityType} of this entity. * diff --git a/src/org/apollo/game/model/Mob.java b/src/org/apollo/game/model/Mob.java index c99f4d94..b6228aa5 100644 --- a/src/org/apollo/game/model/Mob.java +++ b/src/org/apollo/game/model/Mob.java @@ -89,7 +89,7 @@ public abstract class Mob extends Entity { * @param position The initial position. */ public Mob(Position position) { - this.position = position; + super(position); init(); } @@ -315,9 +315,9 @@ public abstract class Mob extends Entity { * player. * * @param message The message. - * @param chatBox If the message should be shown in the player's chat box. + * @param chatOnly If the message should only be shown in the player's chat box, or above their head too. */ - public void shout(String message, boolean chatBox) { + public void shout(String message, boolean chatOnly) { blockSet.add(SynchronizationBlock.createForceChatBlock(message)); } diff --git a/src/org/apollo/game/model/Player.java b/src/org/apollo/game/model/Player.java index 5c8bf896..0a07b168 100644 --- a/src/org/apollo/game/model/Player.java +++ b/src/org/apollo/game/model/Player.java @@ -623,10 +623,10 @@ public final class Player extends Mob { /** * Sets the design flag. * - * @param designed A flag indicating if the player has been designed. + * @param designedAvatar A flag indicating if the player has designed their avatar. */ - public void setDesigned(boolean designed) { - this.designedAvatar = designed; + public void setDesigned(boolean designedAvatar) { + this.designedAvatar = designedAvatar; } /** @@ -717,8 +717,8 @@ public final class Player extends Mob { } @Override - public void shout(String message, boolean chatBox) { - blockSet.add(SynchronizationBlock.createForceChatBlock(chatBox ? '~' + message : message)); + public void shout(String message, boolean chatOnly) { + blockSet.add(SynchronizationBlock.createForceChatBlock(chatOnly ? message : '~' + message)); } @Override @@ -740,8 +740,8 @@ public final class Player extends Mob { @Override public String toString() { - return Player.class.getName() + " [username=" + credentials.getUsername() + ", privilegeLevel=" - + privilegeLevel + "]"; + return Player.class.getName() + " [username=" + credentials.getUsername() + ", privilege=" + privilegeLevel + + "]"; } } \ No newline at end of file diff --git a/src/org/apollo/game/model/World.java b/src/org/apollo/game/model/World.java index 708e6387..2a21ae7c 100644 --- a/src/org/apollo/game/model/World.java +++ b/src/org/apollo/game/model/World.java @@ -192,7 +192,7 @@ public final class World { * @param manager The plugin manager. TODO move this. * @throws IOException If an I/O error occurs. */ - public void init(int release, IndexedFileSystem fs, PluginManager manager) throws IOException { + public void init(int release, IndexedFileSystem fs, PluginManager manager) throws Exception { this.releaseNumber = release; ItemDefinitionDecoder itemDefParser = new ItemDefinitionDecoder(fs); ItemDefinition[] itemDefs = itemDefParser.decode(); @@ -224,6 +224,7 @@ public final class World { placeEntities(objects); logger.info("Loaded " + objects.length + " static objects."); + manager.start(); pluginManager = manager; // TODO move!! } @@ -268,9 +269,9 @@ public final class World { public boolean register(final Npc npc) { boolean success = npcRepository.add(npc); if (success) { - logger.info("Registered npc: " + npc + " [online=" + npcRepository.size() + "]"); + logger.info("Registered npc: " + npc + " [count=" + npcRepository.size() + "]"); } else { - logger.warning("Failed to register npc, repository capacity reached: [online=" + npcRepository.size() + "]"); + logger.warning("Failed to register npc, repository capacity reached: [count=" + npcRepository.size() + "]"); } return success; } @@ -288,10 +289,10 @@ public final class World { boolean success = playerRepository.add(player) & players.put(player.getName(), player) == null; if (success) { - logger.info("Registered player: " + player + " [online=" + playerRepository.size() + "]"); + logger.info("Registered player: " + player + " [count=" + playerRepository.size() + "]"); return RegistrationStatus.OK; } - logger.warning("Failed to register player (server full): " + player + " [online=" + playerRepository.size() + logger.warning("Failed to register player (server full): " + player + " [count=" + playerRepository.size() + "]"); return RegistrationStatus.WORLD_FULL; } @@ -325,7 +326,7 @@ public final class World { */ public void unregister(Player player) { if (playerRepository.remove(player) & players.remove(player.getName()) == player) { - logger.info("Unregistered player: " + player + " [online=" + playerRepository.size() + "]"); + logger.info("Unregistered player: " + player + " [count=" + playerRepository.size() + "]"); } else { logger.warning("Could not find player " + player + " to unregister!"); } diff --git a/src/org/apollo/game/model/obj/GameObject.java b/src/org/apollo/game/model/obj/GameObject.java index 4fcc03eb..95a8d841 100644 --- a/src/org/apollo/game/model/obj/GameObject.java +++ b/src/org/apollo/game/model/obj/GameObject.java @@ -23,8 +23,8 @@ public final class GameObject extends Entity { * @param definition The object's definition. */ public GameObject(ObjectDefinition definition, Position position) { + super(position); this.definition = definition; - this.position = position; } /** diff --git a/src/org/apollo/game/model/obj/StaticObject.java b/src/org/apollo/game/model/obj/StaticObject.java index 1afebada..e8cde0b2 100644 --- a/src/org/apollo/game/model/obj/StaticObject.java +++ b/src/org/apollo/game/model/obj/StaticObject.java @@ -42,8 +42,8 @@ public final class StaticObject extends Entity { * @param rotation The rotation of the object. */ public StaticObject(int id, Position position, int type, int rotation) { + super(position); this.id = id; - this.position = position; this.type = type; this.rotation = rotation; definition = ObjectDefinition.lookup(id);