api: pass menu entry to menu clicked event and forward accessors

This commit is contained in:
Adam
2022-04-16 16:28:38 -04:00
parent 802f8c654a
commit fcb933eeef
4 changed files with 75 additions and 36 deletions

View File

@@ -286,7 +286,7 @@ public class CannonPlugin extends Plugin
// Check if cannonballs are being used on the cannon
if (event.getMenuAction() == MenuAction.ITEM_USE_ON_GAME_OBJECT)
{
final int idx = event.getSelectedItemIndex();
final int idx = client.getSelectedItemIndex();
final ItemContainer items = client.getItemContainer(InventoryID.INVENTORY);
if (items == null)
{

View File

@@ -703,7 +703,7 @@ public class GroundItemsPlugin extends Plugin
return;
}
final Item clickedItem = inventory.getItem(menuOptionClicked.getSelectedItemIndex());
final Item clickedItem = inventory.getItem(client.getSelectedItemIndex());
if (clickedItem == null)
{
return;

View File

@@ -63,6 +63,7 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import static org.mockito.ArgumentMatchers.any;
import org.mockito.Mock;
import static org.mockito.Mockito.lenient;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -164,10 +165,10 @@ public class ClueScrollPluginTest
plugin.onGameTick(new GameTick());
// Simulate clicking on the STASH
MenuOptionClicked menuOptionClicked = new MenuOptionClicked();
menuOptionClicked.setMenuOption("Search");
menuOptionClicked.setMenuTarget("<col=ffff>STASH unit (easy)");
menuOptionClicked.setId(NullObjectID.NULL_28983);
MenuOptionClicked menuOptionClicked = mock(MenuOptionClicked.class);
when(menuOptionClicked.getMenuOption()).thenReturn("Search");
lenient().when(menuOptionClicked.getMenuTarget()).thenReturn("<col=ffff>STASH unit (easy)");
when(menuOptionClicked.getId()).thenReturn(NullObjectID.NULL_28983);
plugin.onMenuOptionClicked(menuOptionClicked);
// Check that the STASH is stored after withdrawing