Files
2026-08-24 22:20:36 +02:00

29 lines
1.1 KiB
JavaScript

const [playerEconomy, guildEconomy] = require("../Data/batchSave");
const BATCH_SIZE = 1000;
const INTERVAL_TIME = 60000;
function resourceLoop() {
const guildValues = [];
const playerValues = [];
guildEconomy.clearEach((key, value) => {
const [guildID, categoryID, rewardID] = key.split("-");
guildValues.push([guildID, categoryID, rewardID, value]);
});
if (guildValues.length) query("INSERT INTO guildresources (guildID, categoryID, itemID, amount) VALUES ? ON DUPLICATE KEY UPDATE amount = amount + VALUES(amount)", [guildValues]);
playerEconomy.clearEach((key, value) => {
const [playerID, categoryID, rewardID] = key.split("-");
playerValues.push([playerID, categoryID, rewardID, value]);
});
if (playerValues.length) query("INSERT INTO resources (playerID, categoryID, itemID, amount) VALUES ? ON DUPLICATE KEY UPDATE amount = amount + VALUES(amount)", [playerValues]);
console.info(guildValues.length, playerValues.length, "periodic save")
};
setInterval(resourceLoop, INTERVAL_TIME);
module.exports = resourceLoop;