Skip to main content

Open-source Plugin References

Code Snippet Example

// Auto-purchase wool when you don't have enough
public class AutoWool extends ExtensionModule implements EventHandler {
    public AutoWool() {
        super("Auto Wool", "Auto purchase wools when you don't have 64 wools", EnumModuleCategory.MISC);
        setEventHandler(this);
    }

    // Override onPlayerUpdate from EventHandler, executed once every PlayerTick
    @Override                                                                    
    public void onPlayerUpdate() {
        if(openAPI.getLocalPlayer().isBedWarsShopScreen() &&                     // Check if in shop screen
            countWool() < 65 &&                                                  // Check if player has enough wool
            openAPI.getLocalPlayer().countResource(EnumResource.IRON) >= 4){     // Check if player has 4 iron
            openAPI.getLocalPlayer().purchase(EnumShopItem.WOOL);                // Purchase wool
        }
    }

    private int countWool(){
        int count = 0;
        for (ItemStack itemStack : openAPI.getLocalPlayer().getInventory().getMainInventory()) { // Get all items in player's inventory
            if(itemStack == null) continue;                                                     // Skip empty slots
            if(itemStack.getName().equals("tile.cloth")){                                       // Check if the item is wool
                count += itemStack.getStackSize();                                              // Add the stack size to total
            }
        }
        return count;
    }
}