bitburner-src/src/Arcade/ui/ArcadeRoot.tsx

43 lines
936 B
TypeScript
Raw Normal View History

2022-03-11 21:19:10 +01:00
import React, { useState } from "react";
import { BBCabinetRoot } from "./BBCabinet";
import Button from "@mui/material/Button";
import { Player } from "@player";
2022-03-11 21:19:10 +01:00
import { AlertEvents } from "../../ui/React/AlertManager";
enum Page {
None,
Megabyteburner2000,
}
export function ArcadeRoot(): React.ReactElement {
const [page, setPage] = useState(Page.None);
function mbBurner2000(): void {
2022-09-13 00:00:09 +02:00
if (Player.sourceFileLvl(1) === 0) {
2022-03-11 21:19:10 +01:00
AlertEvents.emit("This machine is broken.");
} else {
setPage(Page.Megabyteburner2000);
}
}
if (page === Page.None) {
return (
<>
<Button onClick={mbBurner2000}>Megabyte burner 2000</Button>
</>
);
}
let currentGame = <></>;
switch (page) {
case Page.Megabyteburner2000:
currentGame = <BBCabinetRoot />;
}
return (
<>
<Button onClick={() => setPage(Page.None)}>Back</Button>
{currentGame}
</>
);
}