From 61ff80b69f90671adfaaec6f1d3b8abedd5de8e3 Mon Sep 17 00:00:00 2001 From: youhavetrouble Date: Sun, 9 Apr 2023 15:35:56 +0200 Subject: [PATCH] style buttons and fix up number formatting --- src/App.vue | 3 ++- src/assets/main.scss | 32 ++++++++++++++++++++++------ src/classes/Guild.ts | 3 ++- src/classes/NumberMagic.ts | 16 +++++++++++--- src/components/AdventurerDetails.vue | 5 ++++- src/components/UpgradesList.vue | 5 +++-- src/views/HomeView.vue | 10 ++++++--- 7 files changed, 57 insertions(+), 17 deletions(-) diff --git a/src/App.vue b/src/App.vue index 0cec817..c5efbe4 100644 --- a/src/App.vue +++ b/src/App.vue @@ -157,7 +157,8 @@ export default defineComponent({ data.portrait, data.attackExponent ?? 1.1, data.level ?? 1, - data.exp ?? 0 + data.exp ?? 0, + data.prestige ?? 0, ); adventurer.busy = data.busy; adventurers[data.id] = adventurer; diff --git a/src/assets/main.scss b/src/assets/main.scss index be85da0..47f0f35 100644 --- a/src/assets/main.scss +++ b/src/assets/main.scss @@ -1,8 +1,3 @@ - -:root { - -} - body { margin: 0; padding: 0 0 10rem; @@ -61,4 +56,29 @@ body { filter: drop-shadow(-0.15rem 0.2rem 0.1rem rgba(0, 0, 0, 0.25)); border-image: url("/img/borders/metal_corner.png") 30 round; } -} \ No newline at end of file +} + +.button { + padding: 0.5rem 1rem; + font-size: 1.2rem; + font-family: 'EB Garamond', serif; + font-weight: bold; + cursor: pointer; + border: 2px solid rgb(0, 0, 0); + transition: filter 0.05s linear; + white-space: nowrap; + &.metal { + background-image: url("/img/borders/metal_strip.png"); + background-size: contain; + background-blend-mode: darken; + background-repeat: repeat; + color: #dcdcdc; + } + &:disabled { + opacity: 0.55; + cursor: not-allowed; + } + &:hover:not(:disabled) { + filter: brightness(1.2); + } +} diff --git a/src/classes/Guild.ts b/src/classes/Guild.ts index d1a7fe2..8d5b189 100644 --- a/src/classes/Guild.ts +++ b/src/classes/Guild.ts @@ -1,6 +1,7 @@ import type {GuildUpgrade} from "@/classes/GuildUpgrade"; import {AdventurerCapacityUpgrade} from "@/classes/guildUpgrades/AdventurerCapacityUpgrade"; -import formatGold from "@/classes/NumberMagic"; +import {formatGold} from "@/classes/NumberMagic"; + export class Guild { gold: number; diff --git a/src/classes/NumberMagic.ts b/src/classes/NumberMagic.ts index 6f7673e..fe9d2f6 100644 --- a/src/classes/NumberMagic.ts +++ b/src/classes/NumberMagic.ts @@ -1,10 +1,20 @@ -const formatter = new Intl.NumberFormat('en-US', { +const goldFormatter = new Intl.NumberFormat('en-US', { maximumFractionDigits: 3, // @ts-ignore - typescript doesn't know about this option for some godforsaken reason notation: "compact", useGrouping: true, }); -export default function formatGold(number: number): string { - return formatter.format(number); +const damageFormatter = new Intl.NumberFormat('en-US', { + maximumFractionDigits: 2, + // @ts-ignore - typescript doesn't know about this option for some godforsaken reason + notation: "compact", +}); + +export function formatGold(number: number): string { + return goldFormatter.format(number); +} + +export function formatDamage(number: number): string { + return damageFormatter.format(number); } \ No newline at end of file diff --git a/src/components/AdventurerDetails.vue b/src/components/AdventurerDetails.vue index d4eba6f..9a9c3e1 100644 --- a/src/components/AdventurerDetails.vue +++ b/src/components/AdventurerDetails.vue @@ -11,10 +11,11 @@

Prestige level: {{ adventurer.prestige }}

Exp: {{ adventurer.exp }} / {{ adventurer.getNextLevelExpRequirement() }}

-

DPS: {{ adventurer.getDPS().toPrecision(2) }}

+

DPS: {{ formatDamage(adventurer.getDPS()) }}

@@ -40,7 +44,7 @@ import {Guild} from "@/classes/Guild"; import {version} from "../../package.json" import UpgradesList from "@/components/UpgradesList.vue"; -import formatGold from "../classes/NumberMagic"; +import {formatGold} from "@/classes/NumberMagic"; export default defineComponent({ name: "GuildView",