49 lines
1.1 KiB
TypeScript
Executable File
49 lines
1.1 KiB
TypeScript
Executable File
import { PetBasicAction, PetGatherAction } from "./PetUpdateActionRequest";
|
|
|
|
export type PetClass = 'FOREST_SPIRIT' | 'OCEAN_GUARDIAN' | 'FIRE_ELEMENTAL' | 'MYTHICAL_BEAST' | 'SHADOW_WALKER' | 'CYBER_PET' | 'BIO_MECHANICAL';
|
|
|
|
export interface PetStats {
|
|
intelligence: number;
|
|
strength: number;
|
|
charisma: number;
|
|
maxIntelligence: number;
|
|
maxStrength: number;
|
|
maxCharisma: number;
|
|
}
|
|
|
|
export interface Resources {
|
|
wisdom: number;
|
|
gold: number;
|
|
food: number;
|
|
junk: number;
|
|
}
|
|
|
|
export interface Pet {
|
|
id: string;
|
|
name: string;
|
|
class: PetClass;
|
|
stats: PetStats;
|
|
resources: Resources;
|
|
level: number;
|
|
health: number;
|
|
maxHealth: number;
|
|
petGatherAction: PetGatherAction;
|
|
basicActionCooldown: Date;
|
|
petBasicAction: PetBasicAction;
|
|
skillPoints: number;
|
|
inventory: Inventory;
|
|
}
|
|
|
|
export type InvItemInteraction = 'EQUIP' | 'UNEQUIP' | 'USE' | 'DROP';
|
|
export interface Inventory {
|
|
items: number[];
|
|
capacity: number;
|
|
}
|
|
|
|
export interface PetClassInfo {
|
|
name: string;
|
|
description: string;
|
|
modifiers: string[];
|
|
color: string;
|
|
emoji: string;
|
|
} |