2023-04-28 20:01:48 -07:00
|
|
|
import {
|
|
|
|
mainloop,
|
2023-04-29 15:16:35 -07:00
|
|
|
frame,
|
|
|
|
} from "./window.ts";
|
2023-05-02 17:06:54 -07:00
|
|
|
import { codeSheet } from "./sheet.ts";
|
2023-05-02 18:17:31 -07:00
|
|
|
import { refreshKeyboard } from "./keyboard.ts";
|
|
|
|
import { repl } from "./repl.ts";
|
2023-05-01 18:42:55 -07:00
|
|
|
|
2023-05-02 17:06:54 -07:00
|
|
|
const game = codeSheet(0);
|
2023-04-29 15:16:35 -07:00
|
|
|
|
2023-05-01 11:12:08 -07:00
|
|
|
game.init();
|
2023-04-29 20:07:06 -07:00
|
|
|
|
2023-05-02 18:17:31 -07:00
|
|
|
let mode: "play" | "edit" = "edit";
|
|
|
|
|
2023-05-01 18:42:55 -07:00
|
|
|
await mainloop((_t) => {
|
2023-05-01 11:12:08 -07:00
|
|
|
// TODO: use t
|
2023-05-02 18:17:31 -07:00
|
|
|
if (mode === "play") {
|
|
|
|
game.update();
|
|
|
|
game.draw();
|
|
|
|
frame();
|
|
|
|
} else if (mode === "edit") {
|
|
|
|
repl.update();
|
|
|
|
repl.draw();
|
|
|
|
frame();
|
|
|
|
}
|
|
|
|
refreshKeyboard();
|
2023-04-29 14:34:26 -07:00
|
|
|
});
|