GoldenGates Posted May 20, 2013 Share Posted May 20, 2013 How exactly would I buy an item from a general store...I have to sell noted essence and buy back unnoted essense, but I have no idea how this would exactly work, there are no interfaces for each individual slot in the store, I can try searchForInterface or whatever it is, but I want some input first. What would be the most effective way? Link to comment Share on other sites More sharing options...
danieljvdm Posted May 20, 2013 Share Posted May 20, 2013 private Rectangle getShopItemBounds(int itemId) { int slot = -1; for (int i = 0; i < client.getInterface(300).getChild(75).getInv().length; i++) { if (client.getInterface(300).getChild(75).getInv()[i] - 2 == itemId) { slot = i + 1; break; } } if (slot == -1) { return null; } slot = 6; int row = (int) Math.ceil((slot / 8.0) - 1); int column = slot > 8 ? slot - (row * 8) : slot; column--; int x = 80 + (column * 16) + (column * 31); int y = 69 + (row * 16) + (row * 31); return new Rectangle(x, y, 31, 31); } private void buyShopItem(Item item) throws InterruptedException { Rectangle itemBounds = getShopItemBounds(item.getId()); RectangleDestination destination = new RectangleDestination(itemBounds); for (int i = 1; i < 100; i++) { selectOption(null, destination, "Buy 10", false); sleep(100); } } Just modify that, I can't be bothered to 1 Link to comment Share on other sites More sharing options...
GoldenGates Posted May 20, 2013 Author Share Posted May 20, 2013 private Rectangle getShopItemBounds(int itemId) { int slot = -1; for (int i = 0; i < client.getInterface(300).getChild(75).getInv().length; i++) { if (client.getInterface(300).getChild(75).getInv()[i] - 2 == itemId) { slot = i + 1; break; } } if (slot == -1) { return null; } slot = 6; int row = (int) Math.ceil((slot / 8.0) - 1); int column = slot > 8 ? slot - (row * 8) : slot; column--; int x = 80 + (column * 16) + (column * 31); int y = 69 + (row * 16) + (row * 31); return new Rectangle(x, y, 31, 31); } private void buyShopItem(Item item) throws InterruptedException { Rectangle itemBounds = getShopItemBounds(item.getId()); RectangleDestination destination = new RectangleDestination(itemBounds); for (int i = 1; i < 100; i++) { selectOption(null, destination, "Buy 10", false); sleep(100); } } Just modify that, I can't be bothered to Wasn't expecting that, thanks bro. Link to comment Share on other sites More sharing options...