p94-ts/src/services.d.ts

36 lines
1.3 KiB
TypeScript

type puppetEntry = ["Character", Player] | ["Placeholder", "Placeholder"];
type serverMessageType = "init" | "promptError" | "enterGame";
type clientMessageType = "Placeholder";
interface saveDataEntry {
placeholder: string;
}
interface playerStorageEntry {
inMainMenu: boolean;
// + Other data that is unique to players but does not persist between sessions
saveData: saveDataEntry;
entity?: entity;
}
interface puppet {
model: Model;
rootPart: Part;
//placeholder: (x: string) => string; // + "Puppet string" functions will (not?) go here
}
interface entity {
baseStats: [number, number, number, number]; // MaxHealth, Attack, Speed, Defense (things used for calculation, only modified by buffs and debuffs)
baseAmounts: [number, number]; // Health, Barrier (things of indescribable importance)
puppet: puppet;
}
interface event {
winEvents?: event[]; // A list of events that need to return true (in sequence) to complete this event
winEntities?: entity[]; // A list of entities that need to die to complete the event
timeout?: number; // A timeout for the event; passes a lose condition if there are other completion requirements that have not been satisfied
}
/*interface hookInEntry {
name: string;
guiObject: GuiObject;
}*/
/*interface runningEvent {
endTime?: number;
}*/