diff options
| author | Leonardo Bishop <me@leonardobishop.com> | 2024-03-12 17:48:23 +0000 |
|---|---|---|
| committer | Leonardo Bishop <me@leonardobishop.com> | 2024-03-12 17:48:23 +0000 |
| commit | addf95bc7e1e694cd9ba7797c8b0847bfecaf54c (patch) | |
| tree | 422e96cb24eb3b3ec9d4c96de555b8fa14239c59 /components/editor/quest/OptionsPanel.vue | |
| parent | 8664ad155c89d47affd94f8b0385ebf39841f1f8 (diff) | |
Add nuxt prefixes back to component file names
Diffstat (limited to 'components/editor/quest/OptionsPanel.vue')
| -rw-r--r-- | components/editor/quest/OptionsPanel.vue | 129 |
1 files changed, 0 insertions, 129 deletions
diff --git a/components/editor/quest/OptionsPanel.vue b/components/editor/quest/OptionsPanel.vue deleted file mode 100644 index 5aaff23..0000000 --- a/components/editor/quest/OptionsPanel.vue +++ /dev/null @@ -1,129 +0,0 @@ -<script setup lang="ts"> -import { useSessionStore, type EditorQuest } from '@/stores/session'; -import { computed, ref } from 'vue'; - -const props = defineProps<{ - questId: string; -}>(); - -const sessionStore = useSessionStore(); - -const quest = computed(() => { - return sessionStore.getQuestById(props.questId) as EditorQuest; -}); -const knownCategories = computed(() => { - return sessionStore.session.categories.map((category) => category.id); -}); -const knownQuests = computed(() => { - return sessionStore.session.quests.map((quest) => quest.id); -}); - -</script> - -<template> - <EditorOptionsPanel v-if="quest"> - <div id="options"> - <div class="option-group"> - <label for="quest-category">Category</label> - <multiselect id="quest-category" v-model="quest.options.category" :options="knownCategories" :searchable="true" - placeholder="No category"></multiselect> - </div> - - <div class="option-group"> - <label for="quest-requirements">Requirements</label> - <multiselect id="quest-requirements" v-model="quest.options.requirements" :options="knownQuests" - :searchable="true" :taggable="true" :multiple="true" placeholder="Add requirement"></multiselect> - <p class="description"> - This quest will only be available if the player has completed all of the quests listed above. - </p> - </div> - - <h2>Quest options</h2> - - <div class="option-group"> - <Checkbox id="quest-permissionrequired" label="Require permission to start quest" - description="Players must have permission to start the quest." v-model="quest.options.permissionRequired" /> - </div> - - <div class="option-group"> - <Checkbox id="quest-cancellable" label="Allow players to cancel quest" - description="Players can cancel the quest after they have started it." v-model="quest.options.cancellable" /> - </div> - - <div class="option-group"> - <Checkbox id="quest-countstowardslimit" label="Count towards quest limit" - description="Quest will count towards the player's quest started limit." - v-model="quest.options.countsTowardsLimit" /> - </div> - - <div class="option-group"> - <Checkbox id="quest-repeatable" label="Allow players to repeat quest" - description="Quest can be completed again after it has been completed once." - v-model="quest.options.repeatable" /> - </div> - - <div class="option-group"> - <Checkbox id="quest-autostart" label="Automatically start quest" - description="Quest will start automatically when the player has unlocked it." - v-model="quest.options.autostart" /> - </div> - - - <h2>Cooldown</h2> - - <div class="option-group"> - <Checkbox id="quest-cooldown" label="Enable cooldown" - description="Players will have to wait a certain amount of time before they can start the quest again." - v-model="quest.options.cooldown.enabled" /> - </div> - - <div class="option-group"> - <label for="quest-cooldown-time"> - Cooldown (in seconds) - </label> - <input id="quest-cooldown-time" type="number" v-model="quest.options.cooldown.time" - :disabled="!quest.options.cooldown.enabled" /> - <p class="description"> - Common values are: <code>3600</code> (1 hour), <code>86400</code> (24 hours), <code>604800</code> (7 days), - <code>2592000</code> (30 days) - </p> - </div> - - <h2>Time limit</h2> - - <div class="option-group"> - <Checkbox id="quest-timelimit" label="Enable time limit" - description="Players will be required to complete the quest within a certain amount of time, otherwise it will be automatically cancelled." - v-model="quest.options.timeLimit.enabled" /> - </div> - - <div class="option-group"> - <label for="quest-timelimit-time"> - Time limit (in seconds) - </label> - <input id="quest-timelimit-time" type="number" v-model="quest.options.timeLimit.time" - :disabled="!quest.options.timeLimit.enabled" /> - <p class="description"> - Common values are: <code>3600</code> (1 hour), <code>86400</code> (24 hours), <code>604800</code> (7 days), - <code>2592000</code> (30 days) - </p> - </div> - </div> - </EditorOptionsPanel> -</template> - -<style> -#options { - display: flex; - flex-direction: column; - gap: 1rem; -} - -.description { - font-size: 0.8em; -} - -h2 { - border-bottom: 1px solid var(--color-border); -} -</style> |
