diff --git a/cart_unpacked.json b/cart_unpacked.json index 57e291a..77e6a25 100644 --- a/cart_unpacked.json +++ b/cart_unpacked.json @@ -1,7 +1,7 @@ [ { "sheet_type": "code", - "value": "x = code_sheet(1);\nreturn ({init: () => {y = 0}, update: () => {y += speed; if (y > 127) {y = -6}}, draw: () => {clear_screen(); draw_text(x, y, 'hello world')}})" + "value": "x = code_sheet(1);\nreturn ({init: () => {y = 0}, update: () => {y += speed; if (y > 127) {y = -6}}, draw: () => {cls(); txt(x, y, 'hello world')}})" }, { "sheet_type": "code", diff --git a/editmode.ts b/editmode.ts new file mode 100644 index 0000000..b34a4f8 --- /dev/null +++ b/editmode.ts @@ -0,0 +1,14 @@ +import { clearScreen } from "./window.ts" + +const update = () => { + +} + +const draw = () => { + clearScreen() +} + +export const editmode = { + update, + draw, +} \ No newline at end of file diff --git a/index.ts b/index.ts index 5e63b96..e8e3620 100644 --- a/index.ts +++ b/index.ts @@ -7,6 +7,7 @@ import { codeSheet } from "./sheet.ts"; import { refreshKeyboard, keyPressed, K } from "./keyboard.ts"; import { repl, resetRepl } from "./repl.ts"; import { addToContext } from "./runcode.ts"; +import { editmode } from "./editmode.ts"; const game = codeSheet(0); @@ -21,18 +22,19 @@ clearScreen(); await mainloop((_t) => { // TODO: use t if (keyPressed(K.ESCAPE)) { - console.log('pressed escape'); + const modeTo = ({ + play: "repl", + edit: "repl", + repl: "edit", + } as const)[mode]; + console.log(`pressed escape (${mode} -> ${modeTo})`); if (mode === "play") { resetRepl(); } if (mode === "edit") { clearScreen(); } - mode = ({ - play: "repl", - edit: "repl", - repl: "edit", - } as const)[mode]; + mode = modeTo; } else { if (mode === "play") { game.update(); @@ -43,7 +45,8 @@ await mainloop((_t) => { repl.draw(); frame(); } else if (mode === "edit") { - clearScreen(); + editmode.update(); + editmode.draw(); frame(); } }