mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-03 16:49:11 +00:00
Change interface management (see commit notes).
This commit is contained in:
@@ -2,16 +2,9 @@ WALK_BUTTON_ID = 152
|
||||
RUN_BUTTON_ID = 153
|
||||
|
||||
on :button, WALK_BUTTON_ID do |player|
|
||||
player.running = false
|
||||
player.toggle_running
|
||||
end
|
||||
|
||||
on :button, RUN_BUTTON_ID do |player|
|
||||
player.running = true
|
||||
end
|
||||
|
||||
on :command, :run do |player, command|
|
||||
running = player.is_running
|
||||
player.running = !running
|
||||
|
||||
player.send_message(running ? "You are now running." : "You are no longer running.")
|
||||
player.toggle_running
|
||||
end
|
||||
@@ -33,12 +33,12 @@ public final class IsaacRandom {
|
||||
/**
|
||||
* The log of the size of the result and memory arrays.
|
||||
*/
|
||||
private static final int SIZEL = 8;
|
||||
private static final int LOG_SIZE = 8;
|
||||
|
||||
/**
|
||||
* The size of the result and memory arrays.
|
||||
*/
|
||||
private static final int SIZE = 1 << SIZEL;
|
||||
private static final int SIZE = 1 << LOG_SIZE;
|
||||
|
||||
/**
|
||||
* A mask for pseudorandom lookup.
|
||||
@@ -241,25 +241,25 @@ public final class IsaacRandom {
|
||||
a ^= a << 13;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
|
||||
x = mem[i];
|
||||
a ^= a >>> 6;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
|
||||
x = mem[i];
|
||||
a ^= a << 2;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
|
||||
x = mem[i];
|
||||
a ^= a >>> 16;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
}
|
||||
|
||||
for (j = 0; j < SIZE / 2;) {
|
||||
@@ -267,25 +267,25 @@ public final class IsaacRandom {
|
||||
a ^= a << 13;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
|
||||
x = mem[i];
|
||||
a ^= a >>> 6;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
|
||||
x = mem[i];
|
||||
a ^= a << 2;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
|
||||
x = mem[i];
|
||||
a ^= a >>> 16;
|
||||
a += mem[j++];
|
||||
mem[i] = y = mem[(x & MASK) >> 2] + a + b;
|
||||
rsl[i++] = b = mem[(y >> SIZEL & MASK) >> 2] + x;
|
||||
rsl[i++] = b = mem[(y >> LOG_SIZE & MASK) >> 2] + x;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -46,4 +46,4 @@ public final class Command {
|
||||
return name;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -39,7 +39,7 @@ public final class CommandDispatcher {
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers a listener with the
|
||||
* Registers a listener with the dispatcher.
|
||||
*
|
||||
* @param command The command's name.
|
||||
* @param listener The listener.
|
||||
@@ -48,4 +48,4 @@ public final class CommandDispatcher {
|
||||
listeners.put(command.toLowerCase(), listener);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -17,4 +17,4 @@ public interface CommandListener {
|
||||
*/
|
||||
public void execute(Player player, Command command);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.apollo.game.command;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apollo.game.event.impl.SetWidgetTextEvent;
|
||||
import org.apollo.game.model.Player;
|
||||
import org.apollo.game.model.World;
|
||||
import org.apollo.game.model.inter.quest.QuestConstants;
|
||||
import org.apollo.util.plugin.PluginManager;
|
||||
|
||||
/**
|
||||
@@ -27,36 +27,26 @@ public final class CreditsCommandListener implements CommandListener {
|
||||
@Override
|
||||
public void execute(Player player, Command command) {
|
||||
PluginManager mgr = World.getWorld().getPluginManager();
|
||||
Iterator<String> it = mgr.createAuthorsIterator();
|
||||
final Set<String> authors = mgr.getAuthors();
|
||||
|
||||
int pos = 0;
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], "@dre@Apollo"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], "@dre@Introduction"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], ""));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++],
|
||||
"This server is based on Apollo, a lightweight, fast, secure"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++],
|
||||
"and open-source RuneScape emulator. For more"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++],
|
||||
"information about Apollo, visit the website at:"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++],
|
||||
"@dbl@https://github.com/apollo-rsps/apollo"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], ""));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++],
|
||||
"Apollo is released under the terms of the ISC"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++],
|
||||
"license, details can be found in the root folder of the "));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], "Apollo distribution."));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], ""));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], "@dre@Credits"));
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos++], ""));
|
||||
List<String> text = new ArrayList<String>(14 + authors.size());
|
||||
text.add("@dre@Apollo");
|
||||
text.add("@dre@Introduction");
|
||||
text.add("");
|
||||
text.add("This server is based on Apollo, a lightweight, fast, secure");
|
||||
text.add("and open-source RuneScape emulator. For more");
|
||||
text.add("information about Apollo, visit the website at:");
|
||||
text.add("@dbl@https://github.com/apollo-rsps/apollo");
|
||||
text.add("");
|
||||
text.add("Apollo is released under the terms of the ISC");
|
||||
text.add("license, details can be found in the root folder of the");
|
||||
text.add("Apollo distribution.");
|
||||
text.add("");
|
||||
text.add("@dre@Credits");
|
||||
text.add("");
|
||||
text.addAll(authors);
|
||||
|
||||
for (; pos < QuestConstants.QUEST_TEXT.length; pos++) {
|
||||
String text = it.hasNext() ? it.next() : "";
|
||||
player.send(new SetWidgetTextEvent(QuestConstants.QUEST_TEXT[pos], text));
|
||||
}
|
||||
|
||||
player.getInterfaceSet().openWindow(QuestConstants.QUEST_INTERFACE);
|
||||
player.sendQuestInterface(text);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -39,4 +39,4 @@ public abstract class PrivilegedCommandListener implements CommandListener {
|
||||
*/
|
||||
public abstract void executePrivileged(Player player, Command command);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -5,9 +5,9 @@ import org.apollo.game.event.handler.EventHandlerContext;
|
||||
import org.apollo.game.event.impl.InventoryItemEvent;
|
||||
import org.apollo.game.model.Inventory;
|
||||
import org.apollo.game.model.Item;
|
||||
import org.apollo.game.model.Player;
|
||||
import org.apollo.game.model.inter.bank.BankConstants;
|
||||
import org.apollo.game.model.inv.SynchronizationInventoryListener;
|
||||
import org.apollo.game.model.Player;
|
||||
|
||||
/**
|
||||
* An {@link EventHandler} which verifies {@link InventoryItemEvent}s.
|
||||
|
||||
@@ -3,9 +3,9 @@ package org.apollo.game.event.handler.impl;
|
||||
import org.apollo.game.event.handler.EventHandler;
|
||||
import org.apollo.game.event.handler.EventHandlerContext;
|
||||
import org.apollo.game.event.impl.WalkEvent;
|
||||
import org.apollo.game.model.Player;
|
||||
import org.apollo.game.model.Position;
|
||||
import org.apollo.game.model.WalkingQueue;
|
||||
import org.apollo.game.model.Player;
|
||||
|
||||
/**
|
||||
* A handler for the {@link WalkEvent}.
|
||||
|
||||
@@ -7,16 +7,16 @@ package org.apollo.game.event.impl;
|
||||
*/
|
||||
public final class ItemOnItemEvent extends InventoryItemEvent {
|
||||
|
||||
/**
|
||||
* The interface id of the target item.
|
||||
*/
|
||||
private final int targetInterface;
|
||||
|
||||
/**
|
||||
* The id of the target item.
|
||||
*/
|
||||
private final int targetId;
|
||||
|
||||
/**
|
||||
* The interface id of the target item.
|
||||
*/
|
||||
private final int targetInterface;
|
||||
|
||||
/**
|
||||
* The slot of the target item.
|
||||
*/
|
||||
@@ -40,15 +40,6 @@ public final class ItemOnItemEvent extends InventoryItemEvent {
|
||||
this.targetId = targetId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the interface id of the target item.
|
||||
*
|
||||
* @return The target item's interface id.
|
||||
*/
|
||||
public int getTargetInterfaceId() {
|
||||
return targetInterface;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the id of the target item.
|
||||
*
|
||||
@@ -58,6 +49,15 @@ public final class ItemOnItemEvent extends InventoryItemEvent {
|
||||
return targetId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the interface id of the target item.
|
||||
*
|
||||
* @return The target item's interface id.
|
||||
*/
|
||||
public int getTargetInterfaceId() {
|
||||
return targetInterface;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the slot of the target item.
|
||||
*
|
||||
|
||||
+27
-15
@@ -1,11 +1,25 @@
|
||||
package org.apollo.game.model.inter.quest;
|
||||
package org.apollo.game.model;
|
||||
|
||||
/**
|
||||
* Contains quest-related constants.
|
||||
* Contains interface-related constants.
|
||||
*
|
||||
* @author Graham
|
||||
* @author Major
|
||||
*/
|
||||
public final class QuestConstants {
|
||||
public class InterfaceConstants {
|
||||
|
||||
/**
|
||||
* The character design interface id.
|
||||
*/
|
||||
public static final int CHARACTER_DESIGN = 3559;
|
||||
|
||||
/**
|
||||
* The default inventory tab ids.
|
||||
*/
|
||||
public static final int[] DEFAULT_INVENTORY_TABS = { 2423, 3917, 638, 3213, 1644, 5608, 1151, -1, 5065, 5715, 2449,
|
||||
904, 147, 962, };
|
||||
// 6299 = music tab, music disabled
|
||||
// 4445 = settings tab, music disabled
|
||||
// 12855 = ancients magic
|
||||
|
||||
/**
|
||||
* The quest interface id.
|
||||
@@ -13,12 +27,17 @@ public final class QuestConstants {
|
||||
public static final int QUEST_INTERFACE = 8134;
|
||||
|
||||
/**
|
||||
* The part of the quest interface that contains the scroll bar.
|
||||
* The scroll bar widget.
|
||||
*/
|
||||
public static final int QUEST_SCROLL_PANE = 8143; // 8144 = title
|
||||
public static final int QUEST_SCROLL_PANE = 8143;
|
||||
|
||||
/**
|
||||
* The array of sub interfaces which display the text.
|
||||
* The quest title widget id.
|
||||
*/
|
||||
public static final int QUEST_TITLE = 8144;
|
||||
|
||||
/**
|
||||
* The array of widgets that display the text.
|
||||
*/
|
||||
public static final int[] QUEST_TEXT = { 8144, 8145, 8147, 8148, 8149, 8150, 8151, 8152, 8153, 8154, 8155, 8156,
|
||||
8157, 8158, 8159, 8160, 8161, 8162, 8163, 8164, 8165, 8166, 8167, 8168, 8169, 8170, 8171, 8172, 8173, 8174,
|
||||
@@ -28,11 +47,4 @@ public final class QuestConstants {
|
||||
12201, 12202, 12203, 12204, 12205, 12206, 12207, 12208, 12209, 12210, 12211, 12212, 12213, 12214, 12215,
|
||||
12216, 12217, 12218, 12219, 12220, 12221, 12222, 12223 };
|
||||
|
||||
/**
|
||||
* Default private constructor to prevent instantiation.
|
||||
*/
|
||||
private QuestConstants() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -36,7 +36,6 @@ public final class InterfaceSet {
|
||||
*/
|
||||
private EnterAmountListener amountListener;
|
||||
|
||||
// TODO: maybe store the current inventory tab ids here??
|
||||
/**
|
||||
* A map of open interfaces.
|
||||
*/
|
||||
@@ -174,4 +173,13 @@ public final class InterfaceSet {
|
||||
player.send(new OpenInterfaceSidebarEvent(windowId, sidebarId));
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
* Gets the size of the interface set.
|
||||
*
|
||||
* @return The size.
|
||||
*/
|
||||
public int size() {
|
||||
return interfaces.size();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -38,4 +38,4 @@ public enum InterfaceType {
|
||||
*/
|
||||
WINDOW;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,15 @@
|
||||
package org.apollo.game.model;
|
||||
|
||||
import java.util.ArrayDeque;
|
||||
import java.util.List;
|
||||
import java.util.Queue;
|
||||
|
||||
import org.apollo.game.event.Event;
|
||||
import org.apollo.game.event.impl.ConfigEvent;
|
||||
import org.apollo.game.event.impl.IdAssignmentEvent;
|
||||
import org.apollo.game.event.impl.LogoutEvent;
|
||||
import org.apollo.game.event.impl.ServerMessageEvent;
|
||||
import org.apollo.game.event.impl.SetWidgetTextEvent;
|
||||
import org.apollo.game.event.impl.SwitchTabInterfaceEvent;
|
||||
import org.apollo.game.model.inter.bank.BankConstants;
|
||||
import org.apollo.game.model.inv.AppearanceInventoryListener;
|
||||
@@ -105,6 +108,11 @@ public final class Player extends Character {
|
||||
*/
|
||||
private boolean designedCharacter = false;
|
||||
|
||||
/**
|
||||
* The player's run energy.
|
||||
*/
|
||||
private int runEnergy = 100;
|
||||
|
||||
/**
|
||||
* A flag which indicates there are npcs that couldn't be added.
|
||||
*/
|
||||
@@ -173,7 +181,7 @@ public final class Player extends Character {
|
||||
/**
|
||||
* A flag indicating if the player is withdrawing items as notes.
|
||||
*/
|
||||
private boolean withdrawingNotes = false; // TODO find a better place!
|
||||
private boolean withdrawingNotes = false;
|
||||
|
||||
/**
|
||||
* Creates the {@link Player}.
|
||||
@@ -191,7 +199,7 @@ public final class Player extends Character {
|
||||
* Decrements this player's viewing distance if it is greater than 1.
|
||||
*/
|
||||
public void decrementViewingDistance() {
|
||||
if (viewingDistance > 1) { // TODO should it be 0?
|
||||
if (viewingDistance > 1) {
|
||||
viewingDistance--;
|
||||
}
|
||||
}
|
||||
@@ -496,27 +504,19 @@ public final class Player extends Character {
|
||||
send(new IdAssignmentEvent(getIndex(), members)); // TODO should this be sent when we reconnect?
|
||||
sendMessage("Welcome to RuneScape.");
|
||||
|
||||
// character design screen
|
||||
if (!designedCharacter) {
|
||||
interfaceSet.openWindow(3559); // TODO make the interface id a constant or something?
|
||||
interfaceSet.openWindow(InterfaceConstants.CHARACTER_DESIGN);
|
||||
}
|
||||
|
||||
// tabs TODO make a constant? look at player settings
|
||||
int[] tabs = {
|
||||
// 6299 = music tab, music disabled
|
||||
// 4445 = settings tab, music disabled
|
||||
// 12855 = ancients magic
|
||||
2423, 3917, 638, 3213, 1644, 5608, 1151, -1, 5065, 5715, 2449, 904, 147, 962, };
|
||||
int[] tabs = InterfaceConstants.DEFAULT_INVENTORY_TABS;
|
||||
for (int i = 0; i < tabs.length; i++) {
|
||||
send(new SwitchTabInterfaceEvent(i, tabs[i]));
|
||||
}
|
||||
|
||||
// force inventories to update
|
||||
getInventory().forceRefresh();
|
||||
getEquipment().forceRefresh();
|
||||
getBank().forceRefresh();
|
||||
|
||||
// force skills to update
|
||||
getSkillSet().forceRefresh();
|
||||
}
|
||||
|
||||
@@ -529,6 +529,23 @@ public final class Player extends Character {
|
||||
send(new ServerMessageEvent(message));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends the quest interface
|
||||
*
|
||||
* @param text The text to display on the interface.
|
||||
*/
|
||||
public void sendQuestInterface(List<String> text) {
|
||||
int size = text.size(), lines = InterfaceConstants.QUEST_TEXT.length;
|
||||
if (size > lines) {
|
||||
throw new IllegalArgumentException("List contains too much text for the interface.");
|
||||
}
|
||||
|
||||
for (int pos = 0; pos < lines; pos++) {
|
||||
send(new SetWidgetTextEvent(InterfaceConstants.QUEST_TEXT[pos], pos < size ? text.get(pos) : ""));
|
||||
}
|
||||
interfaceSet.openWindow(InterfaceConstants.QUEST_INTERFACE);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the player's appearance.
|
||||
*
|
||||
@@ -602,16 +619,6 @@ public final class Player extends Character {
|
||||
this.regionChanged = regionChanged;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets whether the running toggle is enabled.
|
||||
*
|
||||
* @param running The toggle.
|
||||
*/
|
||||
public void setRunning(boolean running) {
|
||||
this.running = running;
|
||||
getWalkingQueue().setRunningQueue(running);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the player's {@link GameSession}.
|
||||
*
|
||||
@@ -638,7 +645,18 @@ public final class Player extends Character {
|
||||
@Override
|
||||
public void teleport(Position position) {
|
||||
super.teleport(position); // TODO put this in the same place as Character#teleport and WalkEventHandler!!
|
||||
interfaceSet.close(); // TODO: should this be done if size == 0?
|
||||
if (interfaceSet.size() > 0) {
|
||||
interfaceSet.close();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Toggles whether the player is running or not.
|
||||
*/
|
||||
public void toggleRunning() {
|
||||
running = !running;
|
||||
getWalkingQueue().setRunningQueue(running);
|
||||
send(new ConfigEvent(173, running ? 1 : 0));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -647,4 +665,22 @@ public final class Player extends Character {
|
||||
+ privilegeLevel + "]";
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the player's run energy.
|
||||
*
|
||||
* @return The run energy.
|
||||
*/
|
||||
public int getRunEnergy() {
|
||||
return runEnergy;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the player's run energy.
|
||||
*
|
||||
* @param runEnergy The energy.
|
||||
*/
|
||||
public void setRunEnergy(int runEnergy) {
|
||||
this.runEnergy = runEnergy;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
/**
|
||||
* Contains classes related to the quest interfaces.
|
||||
*/
|
||||
package org.apollo.game.model.inter.quest;
|
||||
|
||||
@@ -75,29 +75,34 @@ public final class Release317 extends Release {
|
||||
*/
|
||||
private void init() {
|
||||
// register decoders
|
||||
register(0, new KeepAliveEventDecoder());
|
||||
register(101, new CharacterDesignEventDecoder());
|
||||
WalkEventDecoder walkEventDecoder = new WalkEventDecoder();
|
||||
register(248, walkEventDecoder);
|
||||
register(164, walkEventDecoder);
|
||||
register(98, walkEventDecoder);
|
||||
|
||||
register(0, new KeepAliveEventDecoder());
|
||||
register(101, new CharacterDesignEventDecoder());
|
||||
register(4, new ChatEventDecoder());
|
||||
register(185, new ButtonEventDecoder());
|
||||
register(103, new CommandEventDecoder());
|
||||
register(214, new SwitchItemEventDecoder());
|
||||
|
||||
register(132, new FirstObjectActionEventDecoder());
|
||||
register(252, new SecondObjectActionEventDecoder());
|
||||
register(70, new ThirdObjectActionEventDecoder());
|
||||
|
||||
register(122, new FirstItemOptionEventDecoder());
|
||||
register(41, new SecondItemOptionEventDecoder());
|
||||
register(16, new ThirdItemOptionEventDecoder());
|
||||
register(75, new FourthItemOptionEventDecoder());
|
||||
register(87, new FifthItemOptionEventDecoder());
|
||||
|
||||
register(145, new FirstItemActionEventDecoder());
|
||||
register(117, new SecondItemActionEventDecoder());
|
||||
register(43, new ThirdItemActionEventDecoder());
|
||||
register(129, new FourthItemActionEventDecoder());
|
||||
register(135, new FifthItemActionEventDecoder());
|
||||
|
||||
register(185, new ButtonEventDecoder());
|
||||
register(130, new ClosedInterfaceEventDecoder());
|
||||
register(208, new EnteredAmountEventDecoder());
|
||||
register(53, new ItemOnItemEventDecoder());
|
||||
|
||||
@@ -75,29 +75,34 @@ public final class Release377 extends Release {
|
||||
*/
|
||||
private void init() {
|
||||
// register decoders
|
||||
register(248, new KeepAliveEventDecoder());
|
||||
register(163, new CharacterDesignEventDecoder());
|
||||
WalkEventDecoder walkEventDecoder = new WalkEventDecoder();
|
||||
register(213, walkEventDecoder);
|
||||
register(28, walkEventDecoder);
|
||||
register(247, walkEventDecoder);
|
||||
|
||||
register(248, new KeepAliveEventDecoder());
|
||||
register(163, new CharacterDesignEventDecoder());
|
||||
register(49, new ChatEventDecoder());
|
||||
register(79, new ButtonEventDecoder());
|
||||
register(56, new CommandEventDecoder());
|
||||
register(123, new SwitchItemEventDecoder());
|
||||
|
||||
register(181, new FirstObjectActionEventDecoder());
|
||||
register(241, new SecondObjectActionEventDecoder());
|
||||
register(50, new ThirdObjectActionEventDecoder());
|
||||
|
||||
register(203, new FirstItemOptionEventDecoder());
|
||||
register(24, new SecondItemOptionEventDecoder());
|
||||
register(161, new ThirdItemOptionEventDecoder());
|
||||
register(228, new FourthItemOptionEventDecoder());
|
||||
register(4, new FifthItemOptionEventDecoder());
|
||||
|
||||
register(3, new FirstItemActionEventDecoder());
|
||||
register(177, new SecondItemActionEventDecoder());
|
||||
register(91, new ThirdItemActionEventDecoder());
|
||||
register(231, new FourthItemActionEventDecoder());
|
||||
register(158, new FifthItemActionEventDecoder());
|
||||
|
||||
register(79, new ButtonEventDecoder());
|
||||
register(110, new ClosedInterfaceEventDecoder());
|
||||
register(75, new EnteredAmountEventDecoder());
|
||||
register(1, new ItemOnItemEventDecoder());
|
||||
|
||||
@@ -9,7 +9,6 @@ import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.SortedSet;
|
||||
@@ -46,12 +45,12 @@ public final class PluginManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an iterator for the set of authors.
|
||||
* Creates an unmodifiable {@link Set} containing the authors.
|
||||
*
|
||||
* @return The iterator.
|
||||
* @return The set.
|
||||
*/
|
||||
public Iterator<String> createAuthorsIterator() {
|
||||
return authors.iterator();
|
||||
public Set<String> getAuthors() {
|
||||
return Collections.unmodifiableSortedSet(authors);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user