Added InterfaceListener.kt and converted a few interfaces over to it
This commit is contained in:
@@ -5,6 +5,7 @@ import core.game.node.entity.player.link.InterfaceManager;
|
||||
import core.net.packet.PacketRepository;
|
||||
import core.net.packet.context.InterfaceContext;
|
||||
import core.net.packet.out.Interface;
|
||||
import rs09.game.interaction.InterfaceListeners;
|
||||
|
||||
/**
|
||||
* Represents a component.
|
||||
@@ -53,6 +54,7 @@ public class Component {
|
||||
*/
|
||||
public void open(Player player) {
|
||||
InterfaceManager manager = player.getInterfaceManager();
|
||||
InterfaceListeners.runOpen(player,this);
|
||||
if (definition == null) {
|
||||
PacketRepository.send(Interface.class, new InterfaceContext(player, manager.getWindowPaneId(), manager.getDefaultChildId(), getId(), false));
|
||||
if (plugin != null) {
|
||||
@@ -82,6 +84,7 @@ public class Component {
|
||||
* @return {@code True} if the component can be closed.
|
||||
*/
|
||||
public boolean close(Player player) {
|
||||
InterfaceListeners.runClose(player,this);
|
||||
if (closeEvent != null && !closeEvent.close(player, this)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
+2
-2
@@ -21,7 +21,7 @@ import core.game.world.map.Location;
|
||||
import core.game.world.map.RegionManager;
|
||||
import core.game.world.update.flag.context.Animation;
|
||||
import core.plugin.Plugin;
|
||||
import rs09.game.interaction.Listeners;
|
||||
import rs09.game.interaction.InteractionListeners;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -147,7 +147,7 @@ public final class DragonSlayerPlugin extends OptionHandler {
|
||||
player.getPacketDispatch().sendMessage("You need to complete the Dragon Slayer Quest in order to wear this.");
|
||||
return true;
|
||||
}
|
||||
Listeners.run(node.getId(),0,"equip",player,node);
|
||||
InteractionListeners.run(node.getId(),0,"equip",player,node);
|
||||
break;
|
||||
case 742:
|
||||
if (player.getQuestRepository().getQuest("Dragon Slayer").getStage(player) == 40 && (player.getInventory().containsItem(DragonSlayer.ELVARG_HEAD) || player.getInventory().containsItem(DragonSlayer.ELVARG_HEAD))) {
|
||||
|
||||
@@ -17,7 +17,7 @@ import core.game.node.object.GameObject;
|
||||
import core.game.system.task.Pulse;
|
||||
import core.game.world.map.Location;
|
||||
import core.plugin.Plugin;
|
||||
import rs09.game.interaction.Listeners;
|
||||
import rs09.game.interaction.InteractionListeners;
|
||||
import rs09.game.world.GameWorld;
|
||||
|
||||
/**
|
||||
@@ -94,7 +94,7 @@ public final class LostCityPlugin extends OptionHandler {
|
||||
player.getPacketDispatch().sendMessage("You need to have completed the Lost City quest in order to wield that weapon.");
|
||||
return true;
|
||||
}
|
||||
return Listeners.run(node.getId(),0,"equip",player,node);
|
||||
return InteractionListeners.run(node.getId(),0,"equip",player,node);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ import core.game.world.update.flag.player.FaceLocationFlag;
|
||||
import core.net.packet.PacketRepository;
|
||||
import core.net.packet.context.InteractionOptionContext;
|
||||
import core.net.packet.out.InteractionOption;
|
||||
import rs09.game.interaction.Listeners;
|
||||
import rs09.game.interaction.InteractionListeners;
|
||||
import rs09.game.system.SystemLogger;
|
||||
import rs09.game.world.GameWorld;
|
||||
|
||||
@@ -106,7 +106,7 @@ public class Interaction {
|
||||
if (player.getLocks().isInteractionLocked() || player.getZoneMonitor().interact(node, option)) {
|
||||
return true;
|
||||
}
|
||||
if(Listeners.run(node.getId(),0,option.getName(),player,node)){
|
||||
if(InteractionListeners.run(node.getId(),0,option.getName(),player,node)){
|
||||
return true;
|
||||
}
|
||||
if (option.getHandler() == null || !option.getHandler().handle(player, node, option.getName().toLowerCase())) {
|
||||
|
||||
@@ -22,7 +22,7 @@ import core.net.packet.out.ContainerPacket;
|
||||
import core.plugin.Initializable;
|
||||
import core.plugin.Plugin;
|
||||
import rs09.game.content.global.action.EquipHandler;
|
||||
import rs09.game.interaction.Listeners;
|
||||
import rs09.game.interaction.InteractionListeners;
|
||||
import rs09.game.world.GameWorld;
|
||||
|
||||
/**
|
||||
@@ -81,7 +81,7 @@ public final class EquipmentInterface extends ComponentPlugin {
|
||||
GameWorld.getPulser().submit(new Pulse(1, p) {
|
||||
@Override
|
||||
public boolean pulse() {
|
||||
Listeners.run(item.getId(),0,"equip",p, item);
|
||||
InteractionListeners.run(item.getId(),0,"equip",p, item);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
@@ -191,7 +191,7 @@ public final class EquipmentInterface extends ComponentPlugin {
|
||||
if (item == null) {
|
||||
return;
|
||||
}
|
||||
if(Listeners.run(item.getId(),0,"operate",player,item)){
|
||||
if(InteractionListeners.run(item.getId(),0,"operate",player,item)){
|
||||
return;
|
||||
}
|
||||
OptionHandler handler = item.getOperateHandler();
|
||||
|
||||
@@ -10,9 +10,10 @@ import core.game.node.entity.player.info.login.LoginConfiguration;
|
||||
import core.game.node.entity.player.link.request.assist.AssistSession;
|
||||
import core.game.node.item.Item;
|
||||
import core.game.system.task.Pulse;
|
||||
import rs09.game.world.GameWorld;
|
||||
import core.net.packet.IncomingPacket;
|
||||
import core.net.packet.IoBuffer;
|
||||
import rs09.game.interaction.InterfaceListeners;
|
||||
import rs09.game.world.GameWorld;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -58,10 +59,15 @@ public class ActionButtonPacket implements IncomingPacket {
|
||||
player.debug("Component " + c + " wasn't opened in interface manager.");
|
||||
return;
|
||||
}
|
||||
int cOpcode = buffer.opcode();
|
||||
ComponentPlugin plugin = c.getPlugin();
|
||||
if (plugin != null) {
|
||||
player.debug("Component plugin = " + plugin.getClass().getSimpleName());
|
||||
plugin.handle(player, c, buffer.opcode(), buttonId, slot, itemId);
|
||||
plugin.handle(player, c, cOpcode, buttonId, slot, itemId);
|
||||
} else {
|
||||
if(InterfaceListeners.run(player,c,cOpcode,buttonId,slot,itemId)){
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ import core.net.packet.context.PlayerContext;
|
||||
import core.net.packet.out.ClearMinimapFlag;
|
||||
import rs09.ServerConstants;
|
||||
import rs09.game.ai.AIPlayer;
|
||||
import rs09.game.interaction.Listeners;
|
||||
import rs09.game.interaction.InteractionListeners;
|
||||
import rs09.game.world.repository.Repository;
|
||||
|
||||
import java.util.List;
|
||||
@@ -186,7 +186,7 @@ public final class InteractionPacket implements IncomingPacket {
|
||||
player.debug("spawn=" + npc.getProperties().getSpawnLocation() + ".");
|
||||
player.debug("Varp ID= " + npc.getDefinition().getConfigId() + " Offset=" + npc.getDefinition().getVarbitOffset() + " Size=" + npc.getDefinition().getVarbitSize());
|
||||
handleAIPLegion(player, 0, optionIndex, index);
|
||||
if(Listeners.run(npc.getId(),2, option.getName(),player,npc)){
|
||||
if(InteractionListeners.run(npc.getId(),2, option.getName(),player,npc)){
|
||||
return;
|
||||
}
|
||||
if(PluginInteractionManager.handle(player,shown,option)){
|
||||
@@ -270,7 +270,7 @@ public final class InteractionPacket implements IncomingPacket {
|
||||
}
|
||||
handleAIPLegion(player, 1, optionIndex, x, y, objectId);
|
||||
|
||||
if(Listeners.run(object.getId(),1, option.getName(),player,object)){
|
||||
if(InteractionListeners.run(object.getId(),1, option.getName(),player,object)){
|
||||
return;
|
||||
}
|
||||
if(PluginInteractionManager.handle(player,object)){
|
||||
|
||||
@@ -17,7 +17,7 @@ import core.net.packet.context.PlayerContext;
|
||||
import core.net.packet.out.ClearMinimapFlag;
|
||||
import org.rs09.consts.Items;
|
||||
import rs09.game.interaction.ItemOnBankBooth;
|
||||
import rs09.game.interaction.Listeners;
|
||||
import rs09.game.interaction.InteractionListeners;
|
||||
import rs09.game.node.entity.skill.farming.CompostBins;
|
||||
import rs09.game.node.entity.skill.farming.FarmingPatch;
|
||||
import rs09.game.node.entity.skill.farming.UseWithBinHandler;
|
||||
@@ -69,7 +69,7 @@ public class ItemActionPacket implements IncomingPacket {
|
||||
if(PluginInteractionManager.handle(player,event)){
|
||||
return;
|
||||
}
|
||||
if(Listeners.run(item,npc,2,player)){
|
||||
if(InteractionListeners.run(item,npc,2,player)){
|
||||
return;
|
||||
}
|
||||
event = new NodeUsageEvent(player, interfaceId, item, npc);
|
||||
@@ -128,7 +128,7 @@ public class ItemActionPacket implements IncomingPacket {
|
||||
RottenPotatoUseWithHandler.handle(used,player);
|
||||
return;
|
||||
}
|
||||
if(Listeners.run(used,with,0,player)){
|
||||
if(InteractionListeners.run(used,with,0,player)){
|
||||
return;
|
||||
}
|
||||
if (usedItemId < usedWithItemId) {
|
||||
@@ -179,7 +179,7 @@ public class ItemActionPacket implements IncomingPacket {
|
||||
RottenPotatoUseWithHandler.handle(object,player);
|
||||
return;
|
||||
}
|
||||
if(Listeners.run(used,object,1,player)){
|
||||
if(InteractionListeners.run(used,object,1,player)){
|
||||
return;
|
||||
}
|
||||
event = new NodeUsageEvent(player, 0, used, object);
|
||||
|
||||
Reference in New Issue
Block a user