The attached BOD Book Manager script is a sub intended for use in other scripts for managing BOD books. It will move books with filters for full, empty, not-full, and name. It will also rename books. I have gotten the sub running and done some testing. Everything appears to be working as intended, but I always appreciate it if someone can find something I can improve.
The GoSub that calls the script should look like this:
Gosub BOD_Books_Manager A B C D E
A is the name of the book you are looking for or N/A if name doesn't matter
B is the Fill Status of the book you are looking for. It can be Empty [E], Not Empty [NE], Not Full [NF], or N/A
C is the location to look for the book
D is the location to drop the book
E is the new name of the book, or N/A if you don't want to rename the book.
Script returns #False if it couldn't find a book that matched criteria, or #True if it does.
;==========================================================
Sub BOD_Books_Manager
; Author: Paulonius
; PURPOSE:
; This Script is intended to help manage BOD books in another script.
;----------------------------------------------------------
; INPUT
; Script requires all five parameters to have a value.
; %1 BookName, NoName : Book Name if it has or should have one, N/A as %1 will skip this value
; %2 Book Fill Status: E, NE, NF, N/A : Empty, Not Empty, Not Full, Not relevant
; %3 Start Location : A container
; %4 Drop Location ; A container
; %5 New Book Name : If this value is not N/A, it will rename the book to this value
;----------------------------------------------------------
; DEPENDENCIES:
; This Script requires the subs OffsetClick and WaitForGump to work
;----------------------------------------------------------
The attached script BODBookFilterSub is a sub that will allow you to change the filter settings in a bod book by sending it instructions in a single parameter with the gosub. Just stick all the category identifiers you want together into a single awkward, German looking conjunctive and use that as your parameter.
Gosub Set_BOD_Book_Filter SpinedExceptional20small %BookID
Script returns #False if it fails and #True if it succeeds.
;==========================================================
; Author: Paulonius
; PURPOSE:
; This Script is intended to help manage BOD books in another script.
;----------------------------------------------------------
; INPUT
; Receives one parameter with BOD Filter instructions as follows:
; GoSub Set_BOD_Book_Filterlargeexceptionalblacksmith20 will toggle large, Exceptional, Blacksmith and 20
; Quality, Type and Amount will reset those categories to "All"
; There is no failsafe for non-sequitor instructions so don't send it any
Sub Set_BOD_Book_Filter