pinball/assets/_Game/Scripts/Utilities/Utilities.ts

30 lines
639 B
TypeScript

export default class Utilities {
/**
*
* @param time (ms)
* @returns
*/
public static delay(time: number): Promise<any> {
return new Promise((resolve) => setTimeout(resolve, time));
}
/**
*@param predicate
* @param time (ms)
* @returns
*/
public static async waitUntil(predicate: () => boolean, timeCheck = 10) {
while (!predicate()) {
await this.delay(timeCheck);
}
}
public static getJson(json: string): any {
try {
return JSON.parse(json);
} catch (error) {
return false;
}
}
}