Add AutoSell feature with commands and tasks for automated item selling

This commit is contained in:
stijn committed 2025-07-23 03:11:46 +02:00
1 parent 36c92fcdb3
commit 1909c6d5bc
8 files changed
+406 -7

No files matched your search

+13 -5
View File
@@ -11,6 +11,7 @@ import com.alttd.datalock.DataLockAPI;
import com.alttd.events.*;
import com.alttd.logging.LogInOut;
import com.alttd.objects.EconUser;
import com.alttd.util.auto_sell.AutoSellTask;
import com.alttd.util.Logger;
import com.alttd.util.SaveTask;
import net.milkbowl.vault.economy.Economy;
@@ -36,15 +37,16 @@ public class VillagerUI extends JavaPlugin {
@Override
public void onEnable() {
logInOut = new LogInOut();
registerEvents();
new CommandManager();
AutoSellTask autoSellTask = new AutoSellTask();
registerEvents(autoSellTask);
new CommandManager(autoSellTask);
Config.reload();
VillagerConfig.reload();
WorthConfig.reload();
if (!setupEconomy())
return;
Database.getDatabase().init();
scheduleTasks();
scheduleTasks(autoSellTask);
DataLockAPI dataLockAPI = DataLockAPI.get();
if (dataLockAPI == null) {
Logger.severe("Unable to load datalockapi");
@@ -68,7 +70,7 @@ public class VillagerUI extends JavaPlugin {
logInOut.run();
}
private void scheduleTasks() {
private void scheduleTasks(AutoSellTask autoSellTask) {
new SaveTask().runTaskTimerAsynchronously(
this,
0,
@@ -77,9 +79,14 @@ public class VillagerUI extends JavaPlugin {
this,
0,
20);
autoSellTask.runTaskTimerAsynchronously(
this,
10 * 20,
10 * 20
);
}
private void registerEvents() {
private void registerEvents(AutoSellTask autoSellTask) {
getServer().getPluginManager().registerEvents(new GUIListener(), this);
getServer().getPluginManager().registerEvents(new VillagerEvents(), this);
getServer().getPluginManager().registerEvents(new LogoutEvent(), this);
@@ -87,6 +94,7 @@ public class VillagerUI extends JavaPlugin {
getServer().getPluginManager().registerEvents(new VehicleEvent(), this);
getServer().getPluginManager().registerEvents(new SpawnShopListener(logInOut), this);
getServer().getPluginManager().registerEvents(new DataLock(), this);
getServer().getPluginManager().registerEvents(new ItemPickupEvent(autoSellTask), this);
}
public Economy getEconomy() {