mirror of
https://github.com/yogstation13/Yogstation.git
synced 2025-02-26 09:04:50 +00:00
* TGUI Preferences Menu + total rewrite of the preferences backend (#17368) * It compiles * It opens * Sync 1 * Add asset caching * Sync 2 * It opens without dev now * Update a few packages * Sync 3 * Sync 4 keybind fix * start of dehardcoded species * Small fixes * Add more individual preferences * ASS sync * Automatic changelog generation #17368 [ci skip] * AHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH * e * Fix some TS stuff * Sort quirks starting from good * Fix skin tone selector * Jamie Fixes * Update moth.dm * Fix latejoin menu + tweaks * Some fixes * Finally fix job selection * e * Ling * MORE * config * Convert pref: ooccolor * Convert pref: asay color * Convert pref: tooltips * Convert pref: ui style * Convert pref: buttons locked * Convert pref: hotkeys * Convert pref: tgui stuff * Convert pref: windowflashing * Convert pref: ghost stuff * Convert pref: map & antag * Convert pref: PDA stuff * Convert pref: credits & glasses 1 * Convert pref: name * Convert pref: appearances 1 * Convert pref: appearances 2 * Convert pref: jobless role * Convert pref: runechat * Convert pref: yogtoggles + tail wagging 1 * Convert pref: client fps * Convert pref: graphic settings * Convert pref: pda uplink & menuoptions * Convert pref: map & flare * Convert pref: Bar choice * Fix setup character button * Convert pref: alt announcer * Fix * Add cycle background button * Convert pref: disable balloon alert * fix * Clean savefile * Fix backpack pref * Fix underwear selection * Fixes some shit * Updates * Fix computer runtime * Fix pref names * Convert pref: donor item & hat * More computer fixes * Convert pref: borg hat * Convert pref: donor pda (broken) * Convert pref: purrbation * Convert pref: afreeze * Convert pref: accent * Various savefile improvements * Convert pref: persistent scars 1 * A few pref fixes * Some more fixes * Various SSoverlays improvements * Add IPC appearances * Add polysmorph appearances * No icons for ipc and polysmorph * Podpeople deserve death * Add plasmaman appearance * h * fix * fix2 * asdf * fsdf * aaaaa * FUCK MOTHS * Preternis color * e * e * Update human.dmi * icon fix * un snowflake * fix underwear icon * remove color from here * donor ree * aa * maybe * Restore a bunch of TGUI files * More TGUI fixes * test * Fix more errors * a * test * e? * a;lso this * maybe * Fix * Revert "maybe" This reverts commit14d044a7e3. * fuck off m8 * e * fak off m8 * e2? * AHHH * AHA * AHHH * fix linter 2 * debug * fix runtime * Update dynamic.json * Revert "debug" This reverts commit18681432bd. * 2 * who sleeps in an async? * Hack * e * Fix a few blocking calls * Oh bother * Stay dead * fuck * Update jobs.dm * move debugging * Update jobs.dm * Test * YEET * Revert "YEET" This reverts commit4082e3b133. * Update jobs.dm * Update jobs.dm * e * Fix sechailer runtime * Fix human hair color * d * Ports part of that job refactor * Convert latejoin to new departments * Fix ghost form * Quirk validation * Hopefully pod color fix * oops * Prayge job fix * test * Better unit test asset loading * Remove print * Add error just in case * Remove brief outfit and bypass centcom deadmin * Remove broadcast login/logout * Remove darkened flash * Remove fov darkness * Remove ghost lighting * Remove some tgui prefs * Typo fix * Small fixes * IPC name fix * IPC and pod colors * Jobless fix * Donor item fix * Oopsie * Quirk bandaid * Misc * Move new prefs to Preferences tab for now * Add skillcape * FUCK THIS SHIT * Remove /tg/ gamer cloak * Restrict some job related preferences to clean up UI * Remove useless client var * e * Small tweaks * Dont allow selecting mood quirks if mood is disabled * AHHH * Filter ckey-locked donor items * stupid jamie * AI core display fix * Move donor stuff back to the top * Remove TODOs * Clean up perks * Linter fixes * e * WORKS * LORE * Fix skillcape list * Backpack why * Fixes * Fix cargo console * Remove these * Add horns, frills and mark * Fix not applying all features * Add some missing mutant bodyparts * Update numberinput * Makes animatednumber cooler * Oops * Add default ghost orbit * Default to normal backpack * Fixes skillcapes not being filtered * Donor fix prayge * yep * Adds fallback latejoin menu * Rework donor stuff a bit * Fix donor tgui logic * Delete unused proc * Update FA * Un-yogify quirks * Better checking of quirks * Update tgfont * Fix quirk icons * Fix backup name * Fix donor stuff * A few runtime fixes * Fix another runtime * Give fallback latejoin verb upon connecting * Update AirAlarm interface * maybe this works * Test * Sentient * Remove AI core display preview icons * Fix resetting plasmaman helmet style * Equip plasman in preview * Fix plasmaman preview icon * fuck keybind fix * Extra keybind sanity --------- Co-authored-by: Yogbot-13 <admin@yogstation.net> Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com> Co-authored-by: TheGamerdk <5618080+TheGamerdk@users.noreply.github.com> Co-authored-by: adamsong <adamsong@users.noreply.github.com>
183 lines
3.9 KiB
TypeScript
183 lines
3.9 KiB
TypeScript
/**
|
|
* @file
|
|
* @copyright 2021 Aleksej Komarov
|
|
* @license MIT
|
|
*/
|
|
|
|
// Webpack asset modules.
|
|
// Should match extensions used in webpack config.
|
|
declare module '*.png' {
|
|
const content: string;
|
|
export default content;
|
|
}
|
|
|
|
declare module '*.jpg' {
|
|
const content: string;
|
|
export default content;
|
|
}
|
|
|
|
declare module '*.svg' {
|
|
const content: string;
|
|
export default content;
|
|
}
|
|
|
|
type TguiMessage = {
|
|
type: string;
|
|
payload?: any;
|
|
[key: string]: any;
|
|
};
|
|
|
|
type ByondType = {
|
|
/**
|
|
* ID of the Byond window this script is running on.
|
|
* Can be used as a parameter to winget/winset.
|
|
*/
|
|
windowId: string;
|
|
|
|
/**
|
|
* True if javascript is running in BYOND.
|
|
*/
|
|
IS_BYOND: boolean;
|
|
|
|
/**
|
|
* Version of Trident engine of Internet Explorer. Null if N/A.
|
|
*/
|
|
TRIDENT: number | null;
|
|
|
|
/**
|
|
* True if browser is IE8 or lower.
|
|
*/
|
|
IS_LTE_IE8: boolean;
|
|
|
|
/**
|
|
* True if browser is IE9 or lower.
|
|
*/
|
|
IS_LTE_IE9: boolean;
|
|
|
|
/**
|
|
* True if browser is IE10 or lower.
|
|
*/
|
|
IS_LTE_IE10: boolean;
|
|
|
|
/**
|
|
* True if browser is IE11 or lower.
|
|
*/
|
|
IS_LTE_IE11: boolean;
|
|
|
|
/**
|
|
* Makes a BYOND call.
|
|
*
|
|
* If path is empty, this will trigger a Topic call.
|
|
* You can reference a specific object by setting the "src" parameter.
|
|
*
|
|
* See: https://secure.byond.com/docs/ref/skinparams.html
|
|
*/
|
|
call(path: string, params: object): void;
|
|
|
|
/**
|
|
* Makes an asynchronous BYOND call. Returns a promise.
|
|
*/
|
|
callAsync(path: string, params: object): Promise<any>;
|
|
|
|
/**
|
|
* Makes a Topic call.
|
|
*
|
|
* You can reference a specific object by setting the "src" parameter.
|
|
*/
|
|
topic(params: object): void;
|
|
|
|
/**
|
|
* Runs a command or a verb.
|
|
*/
|
|
command(command: string): void;
|
|
|
|
/**
|
|
* Retrieves all properties of the BYOND skin element.
|
|
*
|
|
* Returns a promise with a key-value object containing all properties.
|
|
*/
|
|
winget(id: string | null): Promise<object>;
|
|
|
|
/**
|
|
* Retrieves all properties of the BYOND skin element.
|
|
*
|
|
* Returns a promise with a key-value object containing all properties.
|
|
*/
|
|
winget(id: string | null, propName: '*'): Promise<object>;
|
|
|
|
/**
|
|
* Retrieves an exactly one property of the BYOND skin element,
|
|
* as defined in `propName`.
|
|
*
|
|
* Returns a promise with the value of that property.
|
|
*/
|
|
winget(id: string | null, propName: string): Promise<any>;
|
|
|
|
/**
|
|
* Retrieves multiple properties of the BYOND skin element,
|
|
* as defined in the `propNames` array.
|
|
*
|
|
* Returns a promise with a key-value object containing listed properties.
|
|
*/
|
|
winget(id: string | null, propNames: string[]): Promise<object>;
|
|
|
|
/**
|
|
* Assigns properties to BYOND skin elements in bulk.
|
|
*/
|
|
winset(props: object): void;
|
|
|
|
/**
|
|
* Assigns properties to the BYOND skin element.
|
|
*/
|
|
winset(id: string | null, props: object): void;
|
|
|
|
/**
|
|
* Sets a property on the BYOND skin element to a certain value.
|
|
*/
|
|
winset(id: string | null, propName: string, propValue: any): void;
|
|
|
|
/**
|
|
* Parses BYOND JSON.
|
|
*
|
|
* Uses a special encoding to preserve `Infinity` and `NaN`.
|
|
*/
|
|
parseJson(text: string): any;
|
|
|
|
/**
|
|
* Sends a message to `/datum/tgui_window` which hosts this window instance.
|
|
*/
|
|
sendMessage(type: string, payload?: any): void;
|
|
sendMessage(message: TguiMessage): void;
|
|
|
|
/**
|
|
* Subscribe to incoming messages that were sent from `/datum/tgui_window`.
|
|
*/
|
|
subscribe(listener: (type: string, payload: any) => void): void;
|
|
|
|
/**
|
|
* Subscribe to incoming messages *of some specific type*
|
|
* that were sent from `/datum/tgui_window`.
|
|
*/
|
|
subscribeTo(type: string, listener: (payload: any) => void): void;
|
|
|
|
/**
|
|
* Loads a stylesheet into the document.
|
|
*/
|
|
loadCss(url: string): void;
|
|
|
|
/**
|
|
* Loads a script into the document.
|
|
*/
|
|
loadJs(url: string): void;
|
|
};
|
|
|
|
/**
|
|
* Object that provides access to Byond Skin API and is available in
|
|
* any tgui application.
|
|
*/
|
|
const Byond: ByondType;
|
|
|
|
interface Window {
|
|
Byond: ByondType;
|
|
}
|