Despite infrequent Blog updates, progress has been slow but steady over the last couple of days; I kicked off by adding the cursor pulse routines, which required a little investigation due to the fact that Blitz Max handles Data statements a little differently (indeed, it handles everything a little differently - maybe I should stop pointing this out...). Next came the Map display code - potentially a big headache but the routine slid into the framework seamlessly.
Next up came the Control routine, undoubtedly the biggest single function in the whole program. The task at hand involved removing any keychecks that were already covered in the Menu event checks (if a hotkey is assigned to a Menu item, Blitz Max will generate an event if either the Menu item is selected or if the hotkey is pressed - this means that one doesn't have to do a multitude of keychecks).
The changes in the Control routine also threw up a few little errors (Control was being called 100 times a second, sometimes twice, and the Event queue was saturated with requests). The change in the logic flow also required a few Event-driven checks, such as the Mouse Wheel, to be moved elsewhere in the program.
Rounded things off by writing my own Draw Box routine; Blitz+ had a lovely little flag that told the Draw Rect routine whether or not to draw a solid box or just an outline; Blitz Max lacks this feature (for some obscure reason), so a little bit of creative coding was needed.
