Improving repl more
This commit is contained in:
32
builtins.ts
32
builtins.ts
@ -1,10 +1,12 @@
|
||||
import {
|
||||
setPixelsInRect,
|
||||
clearScreen,
|
||||
fillRect,
|
||||
} from "./window.ts";
|
||||
import { font } from "./font.ts";
|
||||
import { keyDown, keyPressed, keyReleased } from "./keyboard.ts";
|
||||
// import { keyDown, keyPressed, keyReleased } from "./keyboard.ts";
|
||||
import { addToContext } from "./runcode.ts";
|
||||
import { resetRepl } from "./repl.ts";
|
||||
|
||||
// deno-fmt-ignore
|
||||
const sprites = [
|
||||
@ -40,33 +42,33 @@ const sprites = [
|
||||
],
|
||||
]
|
||||
|
||||
const drawSprite = (x: number, y: number, spr: number) => {
|
||||
export const drawSprite = (x: number, y: number, spr: number) => {
|
||||
setPixelsInRect(x, y, 8, sprites[spr]);
|
||||
}
|
||||
|
||||
const drawChar = (x: number, y: number, char: string) => {
|
||||
export const drawChar = (x: number, y: number, char: string) => {
|
||||
setPixelsInRect(x, y, 4, font[char]);
|
||||
}
|
||||
|
||||
const drawText = (x: number, y: number, text: string) => {
|
||||
export const drawText = (x: number, y: number, text: string) => {
|
||||
[...text].forEach((char, i) => {
|
||||
drawChar(x+4*i, y, char);
|
||||
});
|
||||
}
|
||||
|
||||
const drawRect = (x: number, y: number, w: number, h: number, color: number) => {
|
||||
setPixelsInRect(x, y, w, Array(w*h).fill(color));
|
||||
}
|
||||
|
||||
const faux = {
|
||||
clear_screen: clearScreen,
|
||||
draw_sprite: drawSprite,
|
||||
draw_text: drawText,
|
||||
draw_rect: drawRect,
|
||||
key_down: keyDown,
|
||||
key_pressed: keyPressed,
|
||||
key_released: keyReleased,
|
||||
cls: () => {
|
||||
resetRepl();
|
||||
clearScreen();
|
||||
},
|
||||
spr: drawSprite,
|
||||
txt: drawText,
|
||||
rect: fillRect,
|
||||
// key_down: keyDown,
|
||||
// key_pressed: keyPressed,
|
||||
// key_released: keyReleased,
|
||||
log: console.log,
|
||||
JSON: JSON,
|
||||
};
|
||||
|
||||
for (const key in faux) {
|
||||
|
Reference in New Issue
Block a user