The problem is here:
Mouse clicker = new Mouse();
clicker.move(new MiniMapTileDestination(bot, p));
sleep(random(200,300));
clicker.click(false); //false = left click
You cannot instantiate your own instances of API classes like that without exchanging bot contexts with it.
What you simply need to do (in the context of the Script class, like in your case here) is use getMouse() instead, as Script already inherits from MethodProvider and has pre-initialized instances of all the API classes.
so it should just be:
getMouse().move(new MiniMapTileDestination(bot, p));
sleep(random(200,300));
getMouse().click(false); //false = left click