bitburner-src/src/ui/createStatusText.ts

31 lines
975 B
TypeScript
Raw Normal View History

2019-02-20 09:42:27 +01:00
import { setTimeoutRef } from "../utils/SetTimeoutRef";
import { getElementById } from "../../utils/uiHelpers/getElementById";
import { Action } from "../types";
2021-04-30 05:52:56 +02:00
const threeSeconds = 3000;
let x: number | undefined;
/**
* Displays a status message to the player for approximately 3 seconds.
* @param text The status text to display
*/
2021-05-01 09:17:31 +02:00
export function createStatusText(text: string): void {
if (x !== undefined) {
clearTimeout(x);
// Likely not needed due to clearTimeout, but just in case...
x = undefined;
}
const statusElement: HTMLElement = getElementById("status-text");
statusElement.style.display = "block";
statusElement.classList.add("status-text");
statusElement.innerText = text;
const handler: Action = () => {
statusElement.innerText = "";
statusElement.style.display = "none";
statusElement.classList.remove("status-text");
};
2019-02-20 09:42:27 +01:00
x = setTimeoutRef(handler, threeSeconds);
}