2021-12-26 08:25:08 +02:00
|
|
|
type puppetEntry = ["Character", Player] | ["Placeholder", "Placeholder"];
|
|
|
|
type serverMessageType = "init" | "promptError" | "enterGame";
|
|
|
|
type clientMessageType = "Placeholder";
|
|
|
|
|
|
|
|
interface saveDataEntry {
|
|
|
|
placeholder: string;
|
2021-09-20 03:47:07 +03:00
|
|
|
}
|
2021-12-26 08:25:08 +02:00
|
|
|
interface playerStorageEntry {
|
|
|
|
inMainMenu: boolean;
|
|
|
|
// + Other data that is unique to players but does not persist between sessions
|
|
|
|
saveData: saveDataEntry;
|
|
|
|
entity?: entity;
|
2021-09-20 03:47:07 +03:00
|
|
|
}
|
2021-12-26 08:25:08 +02:00
|
|
|
interface puppet {
|
|
|
|
model: Model;
|
|
|
|
rootPart: Part;
|
|
|
|
//placeholder: (x: string) => string; // + "Puppet string" functions will (not?) go here
|
2021-09-20 03:47:07 +03:00
|
|
|
}
|
2021-12-26 08:25:08 +02:00
|
|
|
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;
|
2021-09-20 03:47:07 +03:00
|
|
|
}
|
2021-12-26 08:25:08 +02:00
|
|
|
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
|
2021-09-20 03:47:07 +03:00
|
|
|
}
|
2021-12-26 08:25:08 +02:00
|
|
|
|
|
|
|
/*interface hookInEntry {
|
|
|
|
name: string;
|
|
|
|
guiObject: GuiObject;
|
|
|
|
}*/
|
|
|
|
/*interface runningEvent {
|
|
|
|
endTime?: number;
|
|
|
|
}*/
|