diff --git a/src/components/Sidebar/Sidebar.svelte b/src/components/Sidebar/Sidebar.svelte index 90338b66..f58f6c3d 100644 --- a/src/components/Sidebar/Sidebar.svelte +++ b/src/components/Sidebar/Sidebar.svelte @@ -62,6 +62,12 @@ image="/images/calculator.png" label="Calculator" href="/calculator" /> + import { fade } from 'svelte/transition'; - import { mdiStar, mdiClose, mdiInformationOutline } from '@mdi/js'; + import { mdiStar, mdiClose, mdiInformationOutline, mdiCheckCircleOutline } from '@mdi/js'; import Select from '../../components/Select.svelte'; import Input from '../../components/Input.svelte'; @@ -12,6 +12,7 @@ import Icon from '../../components/Icon.svelte'; import { weaponExp } from '../../data/weaponExp'; + import { addTodo } from '../../stores/todo'; let weaponsRarity = [ { label: '3 Star', value: 3 }, @@ -23,17 +24,55 @@ { selected: true, disabled: true, - image: '/images/crystal_3.png', + id: 'mystic_enhancement_ore', + image: '/images/items/mystic_enhancement_ore.png', label: 'Mystic Enhancement Ore', value: '10000', }, - { selected: true, disabled: false, image: '/images/crystal_2.png', label: 'Fine Enhancement Ore', value: '2000' }, - { selected: true, disabled: false, image: '/images/crystal_1.png', label: 'Enhancement Ore', value: '400' }, - { selected: true, disabled: false, image: '/images/weapons/sword.png', label: '1 Star Weapon', value: '600' }, - { selected: true, disabled: false, image: '/images/weapons/sword.png', label: '2 Star Weapon', value: '1200' }, - { selected: true, disabled: false, image: '/images/weapons/sword.png', label: '3 Star Weapon', value: '1800' }, + { + selected: true, + disabled: false, + id: 'fine_enhancement_ore', + image: '/images/items/fine_enhancement_ore.png', + label: 'Fine Enhancement Ore', + value: '2000', + }, + { + selected: true, + disabled: false, + id: 'enhancement_ore', + image: '/images/items/enhancement_ore.png', + label: 'Enhancement Ore', + value: '400', + }, + { + selected: true, + disabled: false, + id: 'any_weapon_1', + image: '/images/weapons/sword.png', + label: '1 Star Weapon', + value: '600', + }, + { + selected: true, + disabled: false, + id: 'any_weapon_2', + image: '/images/weapons/sword.png', + label: '2 Star Weapon', + value: '1200', + }, + { + selected: true, + disabled: false, + id: 'any_weapon_3', + image: '/images/weapons/sword.png', + label: '3 Star Weapon', + value: '1800', + }, ]; + let addedToTodo = false; + let withAscension = true; let rarity = null; @@ -248,6 +287,40 @@ changed = false; } + + function addToTodo() { + const levelRes = usedResource.reduce((prev, item, i) => { + if (currentMax.usage[i] > 0) { + prev[item.id] = currentMax.usage[i]; + } + + return prev; + }, {}); + + const ascensionRes = Object.keys(ascensionResouce).reduce((prev, item) => { + if (ascensionResouce[item].amount > 0) { + prev[item] = ascensionResouce[item].amount; + } + + return prev; + }, {}); + + addTodo({ + type: 'weapon', + weapon: selectedWeapon, + level: { from: currentLevel, to: intendedLevel }, + resources: { + mora: moraNeeded, + ...levelRes, + ...ascensionRes, + }, + }); + + addedToTodo = true; + setTimeout(() => { + addedToTodo = false; + }, 2000); + }
@@ -400,6 +473,14 @@ {/if} +
{/if} diff --git a/src/routes/todo.svelte b/src/routes/todo.svelte new file mode 100644 index 00000000..43a4dbb0 --- /dev/null +++ b/src/routes/todo.svelte @@ -0,0 +1,6 @@ + + Todo List - Paimon.moe + +
+

Todo List

+
diff --git a/src/stores/todo.js b/src/stores/todo.js new file mode 100644 index 00000000..4dea0e64 --- /dev/null +++ b/src/stores/todo.js @@ -0,0 +1,10 @@ +import { writable } from 'svelte/store'; + +export const todos = writable([]); + +export function addTodo(data) { + todos.update((value) => { + console.log([...value, data]); + return [...value, data]; + }); +} diff --git a/static/images/items/any_weapon_1.png b/static/images/items/any_weapon_1.png new file mode 100644 index 00000000..0bf68b8b Binary files /dev/null and b/static/images/items/any_weapon_1.png differ diff --git a/static/images/items/any_weapon_2.png b/static/images/items/any_weapon_2.png new file mode 100644 index 00000000..0bf68b8b Binary files /dev/null and b/static/images/items/any_weapon_2.png differ diff --git a/static/images/items/any_weapon_3.png b/static/images/items/any_weapon_3.png new file mode 100644 index 00000000..0bf68b8b Binary files /dev/null and b/static/images/items/any_weapon_3.png differ diff --git a/static/images/crystal_1.png b/static/images/items/enhancement_ore.png similarity index 100% rename from static/images/crystal_1.png rename to static/images/items/enhancement_ore.png diff --git a/static/images/crystal_2.png b/static/images/items/fine_enhancement_ore.png similarity index 100% rename from static/images/crystal_2.png rename to static/images/items/fine_enhancement_ore.png diff --git a/static/images/crystal_3.png b/static/images/items/mystic_enhancement_ore.png similarity index 100% rename from static/images/crystal_3.png rename to static/images/items/mystic_enhancement_ore.png