Battler-Generator/types.ts
2024-04-30 10:57:50 +00:00

171 lines
3.7 KiB
TypeScript

export enum Colour {
Black = "Black",
Red = "Red",
Orange = "Orange",
Yellow = "Yellow",
Green = "Green",
Blue = "Blue",
Pink = "Pink",
Purple = "Purple",
White = "White",
}
export type ColouredOpt<T extends string = string> = `${T} ${Colour}` | "None";
export enum Hats {
Headtie = "Beginner Headtie",
CommanderHat = "Commander Hat",
TopHat = "Top Hat",
BackCap = "Back Cap",
TheItem = "The Item",
}
export enum Faces {
DWI = "Deal with it",
EyeMask = "Eye Mask",
}
export enum Eyes {
Serious = "Serious",
Angry = "Angry",
Confused = "Confused",
Cheerful = "Cheerful",
Tired = "Tired",
Excited = "Excited",
Dizzy = "Dizzy",
Worried = "Worried",
}
export enum Tops {
Sash = "Sash",
SideCloak = "Side Cloak",
BizznizzTie = "Bizznizz Tie",
HouseVibeHoodie = "House Vibe Hoo",
}
export enum Bottoms {
KneePads = "Knee Pads",
Skirt = "Skirt",
BattlerDrip = "Battler Drip",
}
export enum Buddies {
Battler = "Battler",
HouseVibe = "House Vibe",
LockBlock = "Lock Block",
BattleSpecial = "Battle Special",
BattleSupport = "Battle Support",
Houseannor = "Houseannor",
Ranger = "Ranger",
PCSB = "PCSB",
PLR = "PLR",
Basketiballu = "Basketiballu",
StartingMountain = "Starting Mountain",
Olivia = "Olivia",
PrototypeRanger = "Prototype Ranger",
DEMUL = "DEMUL",
IncomingSword = "Incoming Sword",
MARZBall = "MARZ Ball",
NoodleTheKitten = "Noodle the Kitten",
}
export enum Backs {
BattleSword = "Battle Sword",
Tail = "Tail",
GenericPole = "Generic Pole",
BattleHammer = "Battle Hammer",
BattleScythe = "Battle Scythe",
BattleSpear = "Battle Spear",
THEFIRE = "THE FIRE",
}
export enum Necks {
NeckChain = "Neck Chain",
OneKChain = "1K Chain",
}
export enum Opponents {
None = "None",
BattleBeginner = "BattleBeginner",
BattleBeginner2024 = "BattleBeginner2024",
BattleCasual = "BattleCasual",
BattlePro = "BattlePro",
BattleMaster = "BattleMaster",
Battler = "Battler",
BattlerElite = "BattlerElite",
RapStar = "RapStar",
ArtMaster = "ArtMaster",
TheInterrogator = "TheInterrogator",
CommonOverseer = "CommonOverseer",
Moonlite = "Moonlite",
Dicey = "Dicey",
Kacey = "Kacey",
Lexa = "Lexa",
Delta = "Delta",
DoodlePro = "DoodlePro",
GuitarHero = "GuitarHero",
SmallKeyMaster = "SmallKeyMaster",
RareOverseer = "RareOverseer",
DEMUL = "DEMUL",
AgentZ = "AgentZ",
MediumKeyMaster = "MediumKeyMaster",
IncomingSword = "IncomingSword",
Eda = "Eda",
TheFirewall = "TheFirewall",
HouseannorSupport = "HouseannorSupport",
}
export enum Hair {
BeginnerSpikes = "Beginner Spikes",
CasualFro = "Casual Fro",
ProCut = "Pro Cut",
SpecialHair = "Special Hair",
SupportShort = "Support Short",
BuilderTails = "Builder Tails",
}
export enum UpperBottom {}
export enum UpperTop {}
export type GenerateBattlerOptions = {
colour: Colour;
hat?: ColouredOpt<Hats>;
face?: ColouredOpt<Faces>;
top?: ColouredOpt<Tops>;
bottom?: ColouredOpt<Bottoms>;
buddy?: Buddies | "None";
back?: ColouredOpt<Backs>;
neck?: ColouredOpt<Necks>;
glow?: Colour | "None";
eye?: ColouredOpt<Eyes>;
hair?: ColouredOpt<Hair>;
upperBottom?: ColouredOpt<UpperBottom>;
upperTop?: ColouredOpt<UpperTop>;
};
export enum PlayerActions {
AttackLeft = "Attack Left",
DefendLeft = "Defend Left",
ItemLeft = "Item Left",
AttackRight = "Attack Right",
DefendRight = "Defend Right",
ItemRight = "Item Right"
}
export type PlayerActionOptions = {
action: PlayerActions;
player: string;
};
export type GenerateBattleImageOptions = {
opponent: Opponents;
username: string;
};
export type CustomActionOptions = {
background: string;
player: string;
position: "left" | "middle"
}