diff --git a/AquaNet/src/libs/generalTypes.ts b/AquaNet/src/libs/generalTypes.ts index 22cec995..ea0f3e5c 100644 --- a/AquaNet/src/libs/generalTypes.ts +++ b/AquaNet/src/libs/generalTypes.ts @@ -116,8 +116,6 @@ export interface MusicMeta { export type AllMusic = { [key: string]: MusicMeta } export interface GameOption { - name: string - desc: string key: string value: any type: "Boolean" diff --git a/AquaNet/src/libs/i18n/en_ref.ts b/AquaNet/src/libs/i18n/en_ref.ts index ec531605..e0749aac 100644 --- a/AquaNet/src/libs/i18n/en_ref.ts +++ b/AquaNet/src/libs/i18n/en_ref.ts @@ -87,6 +87,15 @@ export const EN_REF_SETTINGS = { 'settings.title': 'Settings', 'settings.tabs.profile': 'Profile', 'settings.tabs.game': 'Game', + 'settings.fields.unlockMusic.name': 'Unlock All Music', + 'settings.fields.unlockMusic.desc': 'Unlock all music and master difficulty in game.', + 'settings.fields.unlockChara.name': 'Unlock All Characters', + 'settings.fields.unlockChara.desc': 'Unlock all characters, voices, and partners in game.', + 'settings.fields.unlockCollectables.name': 'Unlock All Collectables', + 'settings.fields.unlockCollectables.desc': 'Unlock all collectables (nameplate, title, icon, frame) in game. ' + + 'This setting is not relevant in chusan because in-game user box is disabled.', + 'settings.fields.unlockTickets.name': 'Unlock All Tickets', + 'settings.fields.unlockTickets.desc': 'Infinite map/ex tickets (note: maimai still limits which tickets can be used).', } export const EN_REF = { ...EN_REF_USER, ...EN_REF_Welcome, ...EN_REF_GENERAL, diff --git a/AquaNet/src/pages/User/Settings.svelte b/AquaNet/src/pages/User/Settings.svelte index e2e39c9b..935aba47 100644 --- a/AquaNet/src/pages/User/Settings.svelte +++ b/AquaNet/src/pages/User/Settings.svelte @@ -134,11 +134,11 @@
{#if field.type === "Boolean"}
- submitGameOption(field.key, field.value)} /> -
{/if} diff --git a/src/main/java/ext/Ext.kt b/src/main/java/ext/Ext.kt index 27cd7b3f..1067f5d1 100644 --- a/src/main/java/ext/Ext.kt +++ b/src/main/java/ext/Ext.kt @@ -47,7 +47,7 @@ annotation class Doc( @Target(AnnotationTarget.PROPERTY) @Retention(AnnotationRetention.RUNTIME) -annotation class SettingField(val name: Str, val desc: Str) +annotation class SettingField // Reflection @Suppress("UNCHECKED_CAST") diff --git a/src/main/java/icu/samnyan/aqua/net/SettingsApi.kt b/src/main/java/icu/samnyan/aqua/net/SettingsApi.kt index 9a2b12af..f5372ebb 100644 --- a/src/main/java/icu/samnyan/aqua/net/SettingsApi.kt +++ b/src/main/java/icu/samnyan/aqua/net/SettingsApi.kt @@ -20,11 +20,8 @@ class SettingsApi( val fields = AquaGameOptions::class.vars() .mapNotNull { it.findAnnotation()?.let { an -> it to an } } val fieldMap = fields.associate { (f, _) -> f.name to f } - val fieldDesc = fields.map { (f, an) -> mapOf( - "key" to f.name, - "name" to an.name, - "desc" to an.desc, - "type" to f.returnType.jvmErasure.simpleName + val fieldDesc = fields.map { (f, _) -> mapOf( + "key" to f.name, "type" to f.returnType.jvmErasure.simpleName ) } @API("get") diff --git a/src/main/java/icu/samnyan/aqua/net/db/AquaGameOptions.kt b/src/main/java/icu/samnyan/aqua/net/db/AquaGameOptions.kt index 34b78be6..e9c579a2 100644 --- a/src/main/java/icu/samnyan/aqua/net/db/AquaGameOptions.kt +++ b/src/main/java/icu/samnyan/aqua/net/db/AquaGameOptions.kt @@ -14,21 +14,16 @@ class AquaGameOptions( @GeneratedValue(strategy = GenerationType.IDENTITY) var id: Long = 0, - @SettingField("Unlock All Music", - "Unlock all music and master difficulty in game") + @SettingField var unlockMusic: Boolean = false, - @SettingField("Unlock All Chara", - "Unlock all characters and partners in game") + @SettingField var unlockChara: Boolean = false, - @SettingField("Unlock All Collectables", - "Unlock all collectables (nameplate, title, icon, frame) in game. " + - "This setting is not relevant in chusan because in-game user box is disabled in chusan.") + @SettingField var unlockCollectables: Boolean = false, - @SettingField("Unlock All Tickets" , - "Unlock all map tickets (the game still limits which tickets can be used)") + @SettingField var unlockTickets: Boolean = false, )