diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java index 865bb441b9..0830e3697f 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPlugin.java @@ -498,7 +498,7 @@ public class MenuEntrySwapperPlugin extends Plugin { swap("harpoon", option, target, index); } - else if (config.swapHomePortal() != HouseMode.ENTER && option.equals("enter")) + else if (config.swapHomePortal() != HouseMode.ENTER && option.equals("enter") && target.equals("portal")) { switch (config.swapHomePortal()) { diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPluginTest.java index 19b101c931..f6e2bbe021 100644 --- a/runelite-client/src/test/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPluginTest.java +++ b/runelite-client/src/test/java/net/runelite/client/plugins/menuentryswapper/MenuEntrySwapperPluginTest.java @@ -263,4 +263,35 @@ public class MenuEntrySwapperPluginTest menu("Cast", "Varrock Teleport", MenuAction.WIDGET_SECOND_OPTION), }, argumentCaptor.getValue()); } + + @Test + public void testTobDoor() + { + when(config.swapQuick()).thenReturn(true); + when(config.swapHomePortal()).thenReturn(HouseMode.HOME); + + //Quick-enter, Enter + entries = new MenuEntry[]{ + menu("Cancel", "", MenuAction.CANCEL), + menu("Examine", "Formidable Passage", MenuAction.EXAMINE_OBJECT), + menu("Walk here", "", MenuAction.WALK), + + menu("Quick-Enter", "Formidable Passage", MenuAction.GAME_OBJECT_SECOND_OPTION), + menu("Enter", "Formidable Passage", MenuAction.GAME_OBJECT_FIRST_OPTION), + }; + + menuEntrySwapperPlugin.onClientTick(new ClientTick()); + + ArgumentCaptor argumentCaptor = ArgumentCaptor.forClass(MenuEntry[].class); + verify(client).setMenuEntries(argumentCaptor.capture()); + + assertArrayEquals(new MenuEntry[]{ + menu("Cancel", "", MenuAction.CANCEL), + menu("Examine", "Formidable Passage", MenuAction.EXAMINE_OBJECT), + menu("Walk here", "", MenuAction.WALK), + + menu("Enter", "Formidable Passage", MenuAction.GAME_OBJECT_FIRST_OPTION), + menu("Quick-Enter", "Formidable Passage", MenuAction.GAME_OBJECT_SECOND_OPTION), + }, argumentCaptor.getValue()); + } } \ No newline at end of file