From 497dfd720aec9a95f6d4db8fbde38f43306cb494 Mon Sep 17 00:00:00 2001 From: Hansoo Date: Sun, 29 Jan 2023 21:03:34 +0900 Subject: [PATCH] added type definition --- src/lib/DamageCalculator.svelte | 9 +++++---- src/lib/MainWrapper.svelte | 5 +++-- src/model/PokemonStatus.ts | 10 ++++++++++ 3 files changed, 18 insertions(+), 6 deletions(-) create mode 100644 src/model/PokemonStatus.ts diff --git a/src/lib/DamageCalculator.svelte b/src/lib/DamageCalculator.svelte index e8ad553..a19a7ea 100644 --- a/src/lib/DamageCalculator.svelte +++ b/src/lib/DamageCalculator.svelte @@ -2,9 +2,10 @@ import { invoke } from "@tauri-apps/api/tauri"; import AutoComplete from "simple-svelte-autocomplete"; import attack_types from "../const/attack_types.json"; + import type { PokemonData } from "../model/PokemonStatus"; - export let player1Data; - export let player2Data; + export let player1Data: PokemonData | undefined; + export let player2Data: PokemonData | undefined; let attackData; $: { if (myValue > 0 && myValue !== currentValue) { @@ -62,13 +63,13 @@ minDamage: 0, // 攻撃側タイプ // TODO: try catchでエラーハンドリング - atk_type: JSON.parse(attacker.types), // 配列なのでjson parse + atk_type: attacker.types, atk_terastype: attacker.terastype, // 防御側タイプ def_type: defender.terastype[0] > 0 ? defender.terastype - : JSON.parse(defender.types), + : defender.types, // 技タイプ move_type: JSON.parse(attackData.types), diff --git a/src/lib/MainWrapper.svelte b/src/lib/MainWrapper.svelte index 63fd764..56fae2d 100644 --- a/src/lib/MainWrapper.svelte +++ b/src/lib/MainWrapper.svelte @@ -2,6 +2,7 @@ import { invoke } from "@tauri-apps/api/tauri"; import AutoComplete from "simple-svelte-autocomplete"; import DisplayData from "./DisplayData.svelte"; + import type { PokemonData } from "../model/PokemonStatus"; $: { if (myValue > 0 && myValue !== currentValue) { invoke("search", { index: myValue }).then((r) => { @@ -11,7 +12,7 @@ }); } pokemonStatus = { - types: pokemonData?.types ? pokemonData.types : [], + types: pokemonData?.types ? JSON.parse(pokemonData.types) : [], terastype: terastype, hp: hp_final, atk: atk_final, @@ -32,7 +33,7 @@ let spatk_final = 0; let spdef_final = 0; let spd_final = 0; - export let pokemonStatus = { + export let pokemonStatus: PokemonData = { types: [], terastype: [0], hp: 0, diff --git a/src/model/PokemonStatus.ts b/src/model/PokemonStatus.ts new file mode 100644 index 0000000..397b89e --- /dev/null +++ b/src/model/PokemonStatus.ts @@ -0,0 +1,10 @@ +export interface PokemonData { + types: number[], + terastype: number[], + hp: number, + atk: number, + def: number, + spatk: number, + spdef: number, + spd: number +};