From 8e7f4c063f0cbbd783c9e8d7800ec2f6b683ebe7 Mon Sep 17 00:00:00 2001 From: Kara Alexandra Date: Tue, 6 Jan 2026 23:09:24 -0600 Subject: [PATCH] Coalesce duplicate generation views --- src/data/generator-settings.yaml | 4 ++ src/router/index.js | 12 ++++- src/views/GenerateDungeonMapView.vue | 65 ---------------------------- src/views/GenerateMulti.vue | 14 +++--- src/views/GenerateView.vue | 8 +++- 5 files changed, 29 insertions(+), 74 deletions(-) delete mode 100644 src/views/GenerateDungeonMapView.vue diff --git a/src/data/generator-settings.yaml b/src/data/generator-settings.yaml index a5b9720..0a84145 100644 --- a/src/data/generator-settings.yaml +++ b/src/data/generator-settings.yaml @@ -58,6 +58,10 @@ dungeon_map: entrance_shuffle: all skull_woods: all linked_drops: all + door_shuffle: all + door_lobbies: all + door_type_mode: all + trap_door_mode: all boss_shuffle: all enemy_shuffle: all damage_table_shuffle: all diff --git a/src/router/index.js b/src/router/index.js index 4e13f9d..708f1c0 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -4,7 +4,6 @@ import MultiView from "@/views/MultiView.vue"; import GenerateView from "@/views/GenerateView.vue"; import GenerateMulti from "@/views/GenerateMulti.vue"; import GenerateApr2025View from "@/views/GenerateApr2025View.vue"; -import GenerateDungeonMapView from "@/views/GenerateDungeonMapView.vue"; const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), @@ -14,12 +13,14 @@ const router = createRouter({ name: 'generate', component: GenerateView, alias: '/', + props: { generator: "base", prefix: "" }, }, { path: '/multiworld', name: 'multiworld', component: GenerateMulti, alias: '/multi', + props: { generator: "base", prefix: "" }, }, { path: '/generate/apr2025', @@ -27,7 +28,14 @@ const router = createRouter({ }, { path: '/generate/beta_test', - component: GenerateDungeonMapView, + component: GenerateView, + alias: '/generate/beta', + props: { generator: "dungeon_map", prefix: "dungeon-maps-" }, + }, + { + path: '/multibeta', + component: GenerateMulti, + props: { generator: "dungeon_map", prefix: "dungeon_map_" }, }, { path: '/seed/:id', diff --git a/src/views/GenerateDungeonMapView.vue b/src/views/GenerateDungeonMapView.vue deleted file mode 100644 index f728f5a..0000000 --- a/src/views/GenerateDungeonMapView.vue +++ /dev/null @@ -1,65 +0,0 @@ - - - - diff --git a/src/views/GenerateMulti.vue b/src/views/GenerateMulti.vue index ece5988..a9026ae 100644 --- a/src/views/GenerateMulti.vue +++ b/src/views/GenerateMulti.vue @@ -11,6 +11,10 @@ export default defineComponent({ components: { SettingsPage, }, + props: { + prefix: null, + generator: null, + }, data() { return { worlds: [{}, {}], @@ -23,12 +27,12 @@ export default defineComponent({ await new Promise(r => setTimeout(r, 100)); for (var i = 0; i < this.worldCount; i++) { - this.worlds[i].player_name = await localforage.getItem(`world_${i + 1}_setting_player_name`); + this.worlds[i].player_name = await localforage.getItem(`${this.prefix}world_${i + 1}_setting_player_name`); } }, methods: { async addWorld() { - const newname = await localforage.getItem(`world_${this.worldCount + 1}_setting_player_name`); + const newname = await localforage.getItem(`${this.prefix}world_${this.worldCount + 1}_setting_player_name`); this.worlds.push({player_name: newname}); this.worldCount++; @@ -40,13 +44,13 @@ export default defineComponent({ this.worlds.pop(); }, async playerNameUpdated(num) { - await localforage.setItem(`world_${num + 1}_setting_player_name`, this.worlds[num].player_name); + await localforage.setItem(`${this.prefix}world_${num + 1}_setting_player_name`, this.worlds[num].player_name); }, async generate(race) { const settings = []; for (var i = 0; i < this.worldCount; i++) { const world = { - randomizer: "base", + randomizer: this.generator, race: race ? "race" : "normal" }; for (const setting of Object.keys(this.worlds[i])) { @@ -109,7 +113,7 @@ export default defineComponent({ @change="playerNameUpdated(idx)" />
- +
diff --git a/src/views/GenerateView.vue b/src/views/GenerateView.vue index a998f7f..7686729 100644 --- a/src/views/GenerateView.vue +++ b/src/views/GenerateView.vue @@ -10,6 +10,10 @@ export default defineComponent({ components: { SettingsPage, }, + props: { + prefix: null, + generator: null, + }, data() { return { set: {}, @@ -21,7 +25,7 @@ export default defineComponent({ methods: { async generate(race) { const settings = { - randomizer: "base", + randomizer: this.generator, race: race ? "race" : "normal" }; for (const setting of Object.keys(this.set)) { @@ -46,7 +50,7 @@ export default defineComponent({ Generate Seed
- +