diff --git a/src/lib/api/adapters/entity.adapter.ts b/src/lib/api/adapters/entity.adapter.ts index 80c6b421..d509ccd9 100644 --- a/src/lib/api/adapters/entity.adapter.ts +++ b/src/lib/api/adapters/entity.adapter.ts @@ -98,12 +98,6 @@ export interface Weapon { en?: string[] ja?: string[] } - links?: { - wikiEn?: string - wikiJa?: string - gamewith?: string - kamigame?: string - } recruits?: { id: string granblueId: string @@ -128,7 +122,7 @@ export interface Weapon { export interface Character { id: string granblueId: string - characterId?: number + characterId?: number[] name: { en?: string ja?: string @@ -148,17 +142,24 @@ export interface Character { series?: CharacterSeriesRef[] | number[] /** Human-readable series names */ seriesNames?: string[] - /** Whether character can be pulled from gacha */ - gachaAvailable?: boolean hp?: { minHp?: number maxHp?: number maxHpFlb?: number + maxHpUlb?: number } atk?: { minAtk?: number maxAtk?: number maxAtkFlb?: number + maxAtkUlb?: number + } + // Other stats + baseDa?: number + baseTa?: number + ougiRatio?: { + ougiRatio?: number + ougiRatioFlb?: number } uncap?: { flb?: boolean @@ -175,12 +176,6 @@ export interface Character { en?: string[] ja?: string[] } - links?: { - wikiEn?: string - wikiJa?: string - gamewith?: string - kamigame?: string - } /** Weapon that recruits this character (reverse of Weapon.recruits) */ recruitedBy?: { id: string @@ -287,12 +282,6 @@ export interface Summon { en?: string[] ja?: string[] } - links?: { - wikiEn?: string - wikiJa?: string - gamewith?: string - kamigame?: string - } // Date fields releaseDate?: string flbDate?: string diff --git a/src/lib/types/api/entities.ts b/src/lib/types/api/entities.ts index 88b79919..b7c3473e 100644 --- a/src/lib/types/api/entities.ts +++ b/src/lib/types/api/entities.ts @@ -2,6 +2,7 @@ // These are the base types for game objects import type { WeaponSeriesRef } from './weaponSeries' +import type { CharacterSeriesRef } from './characterSeries' export interface LocalizedName { en: string @@ -80,19 +81,33 @@ export interface Character { race2: number } proficiency: number[] - hp: { - minHp: number - maxHp: number - maxHpFlb: number + hp?: { + minHp?: number + maxHp?: number + maxHpFlb?: number + maxHpUlb?: number } - atk: { - minAtk: number - maxAtk: number - maxAtkFlb: number + atk?: { + minAtk?: number + maxAtk?: number + maxAtkFlb?: number + maxAtkUlb?: number + } + // Other stats + baseDa?: number + baseTa?: number + ougiRatio?: { + ougiRatio?: number + ougiRatioFlb?: number } // Available awakenings for this character (from :full view) awakenings?: Awakening[] // Database/admin fields + characterId?: number[] + season?: number + series?: number[] | CharacterSeriesRef[] + /** Human-readable series names (computed by API) */ + seriesNames?: string[] releaseDate?: string flbDate?: string ulbDate?: string @@ -100,6 +115,7 @@ export interface Character { gamewith?: string kamigame?: string nicknames?: { en?: string[]; ja?: string[] } + recruitedBy?: { id: string; granblueId: string; name: LocalizedName; promotionNames?: string[] } } // Summon entity from SummonBlueprint