feat: wire QuestConfig into game settings service
This commit is contained in:
@@ -9,6 +9,7 @@ import type {
|
||||
LootdropConfig,
|
||||
TriviaConfig,
|
||||
ModerationConfig,
|
||||
QuestConfig,
|
||||
} from "@db/schema/game-settings";
|
||||
|
||||
export type GameSettingsData = {
|
||||
@@ -18,6 +19,7 @@ export type GameSettingsData = {
|
||||
lootdrop: LootdropConfig;
|
||||
trivia: TriviaConfig;
|
||||
moderation: ModerationConfig;
|
||||
quest: QuestConfig;
|
||||
commands: Record<string, boolean>;
|
||||
system: Record<string, unknown>;
|
||||
};
|
||||
@@ -45,6 +47,7 @@ export const gameSettingsService = {
|
||||
lootdrop: settings.lootdrop,
|
||||
trivia: settings.trivia,
|
||||
moderation: settings.moderation,
|
||||
quest: settings.quest,
|
||||
commands: settings.commands ?? {},
|
||||
system: settings.system ?? {},
|
||||
};
|
||||
@@ -64,6 +67,7 @@ export const gameSettingsService = {
|
||||
lootdrop: data.lootdrop ?? existing?.lootdrop ?? gameSettingsService.getDefaultLootdrop(),
|
||||
trivia: data.trivia ?? existing?.trivia ?? gameSettingsService.getDefaultTrivia(),
|
||||
moderation: data.moderation ?? existing?.moderation ?? gameSettingsService.getDefaultModeration(),
|
||||
quest: data.quest ?? existing?.quest ?? gameSettingsService.getDefaultQuest(),
|
||||
commands: data.commands ?? existing?.commands ?? {},
|
||||
system: data.system ?? existing?.system ?? {},
|
||||
updatedAt: new Date(),
|
||||
@@ -180,6 +184,10 @@ export const gameSettingsService = {
|
||||
},
|
||||
}),
|
||||
|
||||
getDefaultQuest: (): QuestConfig => ({
|
||||
maxActiveQuests: 3,
|
||||
}),
|
||||
|
||||
getDefaults: (): GameSettingsData => ({
|
||||
leveling: gameSettingsService.getDefaultLeveling(),
|
||||
economy: gameSettingsService.getDefaultEconomy(),
|
||||
@@ -187,6 +195,7 @@ export const gameSettingsService = {
|
||||
lootdrop: gameSettingsService.getDefaultLootdrop(),
|
||||
trivia: gameSettingsService.getDefaultTrivia(),
|
||||
moderation: gameSettingsService.getDefaultModeration(),
|
||||
quest: gameSettingsService.getDefaultQuest(),
|
||||
commands: {},
|
||||
system: {},
|
||||
}),
|
||||
|
||||
Reference in New Issue
Block a user