Rewrote world map interface handling (search still not implemented)

This commit is contained in:
Sam Marder
2026-07-03 09:23:43 +00:00
committed by Ryan
parent 09d9d1ec55
commit 1d383f0ff3
2 changed files with 23 additions and 39 deletions
@@ -1,39 +0,0 @@
package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
/**
* Handles the world map interface.
* @author Emperor
*
*/
@Initializable
public final class WorldMapInterface extends ComponentPlugin {
@Override
public Plugin<Object> newInstance(Object arg) throws Throwable {
ComponentDefinition.forId(755).setPlugin(this);
return this;
}
//Thanks snicker!
@Override
public boolean handle(Player player, Component component, int opcode, int button, int slot, int itemId) {
switch (button) {
case 3:
player.getInterfaceManager().openWindowsPane(new Component(player.getInterfaceManager().isResizable() ? 746 : 548), 2);
player.getPacketDispatch().sendRunScript(1187, "ii", 0, 0);
player.updateSceneGraph(true);
return true;
default:
//log(this.getClass(), Log.ERR, "World map: buttonid: " + button + ", opcode: " + opcode + ", slot: " + slot);
return true;
}
}
}
@@ -0,0 +1,23 @@
package content.global.handlers.iface
import core.game.component.Component
import core.game.interaction.InterfaceListener
import org.rs09.consts.Components
class WorldMapInterface : InterfaceListener {
override fun defineInterfaceListeners() {
on(Components.WORLDMAP_755) { player, _, _, button, _, _ ->
if (button == 3) {
val paneId = if (player.interfaceManager.isResizable) {
Components.TOPLEVEL_FULLSCREEN_746
} else {
Components.TOPLEVEL_548
}
player.interfaceManager.openWindowsPane(Component(paneId), 2)
player.packetDispatch.sendRunScript(1187, "ii", 0, 0)
player.updateSceneGraph(true)
}
return@on true
}
}
}