February 8, 20169 yr SAPI Hello world. Here's a sneak peak of a little library I'm working on, its goal is to simplify high-level interaction between bot/script and game, useful when you need a superficial game variable but don't have the time or knowledge to fetch it via code or a clunky GUI. Currently, the following types are selectable (with more to come): Entities Widgets Positions Bank slots Inventory slots Prayer buttons Magic spells Currently, the following brushes are available (with more to come): Point Shapes: Arc2D, Ellipse2D, Rectangle2D, RoundRectangle2D The library will be free & available for everyone. No ETA but shouldn't be too long. Code example @ScriptManifest(author = "Botre", info = "", logo = "", name = "Example Script", version = 0) public class Example extends Script { private Sapi sapi; @Override public void onStart() throws InterruptedException { super.onStart(); // Initialize API. sapi = new Sapi(this); // Add a filter to the inventory module: only empty slots are made selectable. sapi.getInventorySlotModule().getFilters().add(slot -> slot.isEmpty()); // Change the painter. sapi.getInventorySlotModule().setPainter(new DefaultItemContainerSlotPainter(this) { @Override public void paint(Graphics2D g2d, ItemContainerSlot object) { g2d.setColor(Color.BLUE); g2d.drawString(object.getItem().getName(), 0, 0); super.paint(g2d, object); } }); // Activate the module / enable selection. sapi.getInventorySlotModule().setActive(true); // Start the API. sapi.start(); } @Override public void onExit() throws InterruptedException { super.onExit(); // Stop API. sapi.stop(); } @Override public int onLoop() throws InterruptedException { // Iterate over selected items. for (ItemContainerSlot slot : sapi.getInventorySlotModule().getSelected()) { log(slot.getItem().getName()); } return 500; } @Override public void onPaint(Graphics2D g2d) { super.onPaint(g2d); sapi.getInventorySlotModule().paintBrush(g2d); sapi.getInventorySlotModule().paintSelected(g2d); } } Screenshots Edited February 12, 20169 yr by Botre
February 12, 20169 yr Author but why tho? "Select the safespot you'd like to use" "Draw the path you would like to record" "Select the entity you would like to attack" "Select the item you'd like to alch" "Select your special attack weapon" "Select the food you would like to eat" "Select all positions to avoid" "Select the rocks you would like to mine" "Select the fishing spots to avoid" "Select your mule character" Etcetera. I hate when GUI's make me type. I hate to update comboboxes. Etcetera,
February 12, 20169 yr "Select the safespot you'd like to use" "Draw the path you would like to record" "Select the entity you would like to attack" "Select the item you'd like to alch" "Select your special attack weapon" "Select the food you would like to eat" "Select all positions to avoid" "Select the rocks you would like to mine" "Select the fishing spots to avoid" "Select your mule character" Etcetera. I hate when GUI's make me type. I hate to update comboboxes. Etcetera, Explv has that shit on his location assistant
Create an account or sign in to comment