Skip to content

Commit

Permalink
extended GOOD format
Browse files Browse the repository at this point in the history
  • Loading branch information
LudovicMalot committed Jan 13, 2024
1 parent a7db475 commit 3ed12dc
Show file tree
Hide file tree
Showing 6 changed files with 132 additions and 0 deletions.
1 change: 1 addition & 0 deletions types/GOOD/AchievementCategoryKey.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export type AchievementCategoryKey = "";
1 change: 1 addition & 0 deletions types/GOOD/AchievementKey.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export type AchievementKey = "";
96 changes: 96 additions & 0 deletions types/GOOD/BannerKey.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
export type BannerKey =
| "BalladInGoblets1"
| "SparklingSteps1"
| "FarewellOfSnezhnaya1"
| "GentryOfHermitage1"
| "SecretumSecretorum1"
| "AdriftInTheHarbor1"
| "InvitationToMundaneLife1"
| "DanceOfLanterns1"
| "MomentOfBloom1"
| "BornOfOceanSwell1"
| "LeavesInTheWind1"
| "TheHeronsCourt1"
| "TapestryOfGoldenFlames1"
| "ReignOfSerenity1"
| "DriftingLuminescence1"
| "TwilightArbiter1"
| "TwirlingLotus1"
| "TheMoongrassEnlightenment1"
| "DiscernerOfEnigmas1"
| "AuricBlaze1"
| "EverbloomViolet1"
| "FromAshesReborn1"
| "OnisRoyale1"
| "TheTranscendentOneReturns1"
| "AzureExcursion1"
| "CautionInConfidence1"
| "InvitationToMundaneLife2"
| "GentryOfHermitage2"
| "AdriftInTheHarbor2"
| "DriftingLuminescence2"
| "FarewellOfSnezhnaya2"
| "MomentOfBloom2"
| "SecretumSecretorum2"
| "BornOfOceanSwell2"
| "SparklingSteps2"
| "LeavesInTheWind2"
| "TheHeronsCourt2"
| "TapestryOfGoldenFlames2"
| "ReignOfSerenity2"
| "DriftingLuminescence3"
| "FromAshesReborn3"
| "OnisRoyale3"
| "ReignOfSerenity3"
| "AzureExcursion3"
| "BalladInGoblets2"
| "TheHeronsCourt3"
| "DiscernerOfEnigmas2"
| "InvitationToMundaneLife3"
| "OnisRoyale4"
| "LeavesInTheWind3"
| "SparklingSteps3"
| "TapestryOfGoldenFlames4"
| "ViridescentVigil1"
| "GentryOfHermitage3"
| "AdriftInTheHarbor4"
| "DriftingLuminescence4"
| "TwilightArbiter2"
| "BalladInGoblets3"
| "TwirlingLotus2"
| "SecretumSecretorum3"
| "TheMoongrassEnlightenment2"
| "TapestryOfGoldenFlames5"
| "EverbloomViolet2"
| "FarewellOfSnezhnaya4"
| "FromAshesReborn4"
| "OnisRoyale5"
| "ReignOfSerenity4"
| "AzureExcursion4"
| "BalladInGoblets4"
| "DiscernerOfEnigmas3"
| "InvitationToMundaneLife4"
| "GentryOfHermitage4"
| "FarewellOfSnezhnaya5"
| "MomentOfBloom3"
| "SecretumSecretorum4"
| "BornOfOceanSwell3"
| "SparklingSteps4"
| "DriftingLuminescence5"
| "FromAshesReborn5"
| "ConjuringChiaroscuro1"
| "DiscernerOfEnigmas4"
| "GentryOfHermitage5"
| "FarewellOfSnezhnaya6"
| "DecreeOfTheDeeps1"
| "MomentOfBloom4"
| "TempestuousDestiny1"
| "BalladInGoblets5"
| "ChansonOfManyWaters1"
| "ImmaculatePulse1"
| "TwilightArbiter3"
| "AzureExcursion5"
| "IntheNameOfTheRosula1"
| "TheHeronsCourt4"
| "ReignOfSerenity5"
| "TapestryOfGoldenFlames6";
32 changes: 32 additions & 0 deletions types/GOOD/GOOD.ts
Original file line number Diff line number Diff line change
@@ -1,20 +1,30 @@
import { AchievementCategoryKey } from "./AchievementCategoryKey";
import { AchievementKey } from "./AchievementKey";
import { ArtifactSetKey } from "./ArtifactSetKey";
import { BannerKey } from "./BannerKey";
import { CharacterKey } from "./CharacterKey";
import { MaterialKey } from "./MaterialKey";
import { ServerKey } from "./ServerKey";
import { SlotKey } from "./SlotKey";
import { StatKey } from "./StatKey";
import { WeaponKey } from "./WeaponKey";
import { WishBannerKey } from "./WishBannerKey";

export interface IGOOD {
format: "GOOD"; // A way for people to recognize this format.
version: number; // GOOD API version.
source: string; // The app that generates this data.
server: ServerKey;
ar: number; // 1-60 inclusive
characters?: ICharacter[];
artifacts?: IArtifact[];
weapons?: IWeapon[];
materials?: {
[key in MaterialKey]: number;
};
achievments?: IAchievement[];
furnishing?: IFurnishing[];
wishes?: IWishBanner[];
}
interface IArtifact {
setKey: ArtifactSetKey; //e.g. "GladiatorsFinale"
Expand Down Expand Up @@ -53,3 +63,25 @@ interface ICharacter {
burst: number;
};
}

interface IAchievement {
key: AchievementKey;
category: AchievementCategoryKey;
achieved: boolean;
preStage?: AchievementKey; // refer to the previous achievements of a series
}

interface IWishBanner {
key: WishBannerKey;
pulls: IWish[];
}

interface IWish {
type: "Weapon" | "Character";
key: WeaponKey | CharacterKey;
date: Date;
pity: 1;
banner: BannerKey;
}

interface IFurnishing {}
1 change: 1 addition & 0 deletions types/GOOD/ServerKey.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export type ServerKey = "Europe" | "America" | "Asia" | "HK-TW" | "China";
1 change: 1 addition & 0 deletions types/GOOD/WishBannerKey.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export type WishBannerKey = "WeaponEvent" | "Standard" | "CharacterEvent";

0 comments on commit 3ed12dc

Please sign in to comment.