Add ThingPickerManager to main plugin class.

Introduces the ThingPicker framework to the plugin by bootstrapping a
manager for it in the main plugin class. By default, we're just running
the group and random picker parsers, but other plugins should be able to
hook in with their own parsers.

Nothing actually _uses_ the pickers yet, but that's next on the menu.
This commit is contained in:
Andreas Troelsen 2020-08-22 16:27:54 +02:00
parent 2d0aad19d6
commit dd54f70682

View File

@ -16,7 +16,10 @@ import com.garbagemule.MobArena.metrics.VaultChart;
import com.garbagemule.MobArena.signs.ArenaSign;
import com.garbagemule.MobArena.signs.SignBootstrap;
import com.garbagemule.MobArena.signs.SignListeners;
import com.garbagemule.MobArena.things.RandomThingPickerParser;
import com.garbagemule.MobArena.things.ThingGroupPickerParser;
import com.garbagemule.MobArena.things.ThingManager;
import com.garbagemule.MobArena.things.ThingPickerManager;
import com.garbagemule.MobArena.util.config.ConfigUtils;
import com.garbagemule.MobArena.waves.ability.AbilityManager;
import net.milkbowl.vault.economy.Economy;
@ -57,12 +60,17 @@ public class MobArena extends JavaPlugin
private Messenger messenger;
private ThingManager thingman;
private ThingPickerManager pickman;
private SignListeners signListeners;
@Override
public void onLoad() {
thingman = new ThingManager(this);
pickman = new ThingPickerManager(thingman);
pickman.register(new ThingGroupPickerParser(pickman));
pickman.register(new RandomThingPickerParser(pickman, random));
}
public void onEnable() {
@ -275,4 +283,8 @@ public class MobArena extends JavaPlugin
public ThingManager getThingManager() {
return thingman;
}
public ThingPickerManager getThingPickerManager() {
return pickman;
}
}