forked from syntaxbullet/AuroraBot-discord
feat: Introduce dynamic JSON-based configuration for game settings and command toggling via a new admin command.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import { users, transactions, userTimers } from "@/db/schema";
|
||||
import { eq, sql, and } from "drizzle-orm";
|
||||
import { DrizzleClient } from "@/lib/DrizzleClient";
|
||||
import { GameConfig } from "@/config/game";
|
||||
import { config } from "@/lib/config";
|
||||
|
||||
export const economyService = {
|
||||
transfer: async (fromUserId: string, toUserId: string, amount: bigint, tx?: any) => {
|
||||
@@ -110,9 +110,9 @@ export const economyService = {
|
||||
streak = 1;
|
||||
}
|
||||
|
||||
const bonus = (BigInt(streak) - 1n) * GameConfig.economy.daily.streakBonus;
|
||||
const bonus = (BigInt(streak) - 1n) * config.economy.daily.streakBonus;
|
||||
|
||||
const totalReward = GameConfig.economy.daily.amount + bonus;
|
||||
const totalReward = config.economy.daily.amount + bonus;
|
||||
await txFn.update(users)
|
||||
.set({
|
||||
balance: sql`${users.balance} + ${totalReward}`,
|
||||
@@ -122,7 +122,7 @@ export const economyService = {
|
||||
.where(eq(users.id, BigInt(userId)));
|
||||
|
||||
// Set new cooldown (now + 24h)
|
||||
const nextReadyAt = new Date(now.getTime() + GameConfig.economy.daily.cooldownMs);
|
||||
const nextReadyAt = new Date(now.getTime() + config.economy.daily.cooldownMs);
|
||||
|
||||
await txFn.insert(userTimers)
|
||||
.values({
|
||||
|
||||
Reference in New Issue
Block a user