import { setPixelsInRect, clearScreen, } from "./window.ts"; import { font } from "./font.ts"; import { keyDown, keyPressed, keyReleased } from "./keyboard.ts"; // import { codeSheet } from "./sheet.ts"; // deno-fmt-ignore const sprites = [ [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, ], [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 1, 1, 3, 3, 2, 2, 3, 3, 1, 1, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 1, 1, 3, 3, 2, 2, 3, 3, 1, 1, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, ], [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, 4, 4, 4, 5, 5, 2, 2, 4, 4, 4, 5, 5, 5, 2, 2, 4, 4, 5, 5, 5, 6, 2, 2, 4, 5, 5, 5, 6, 6, 2, 2, 5, 5, 5, 6, 6, 6, 2, 2, 5, 5, 6, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, ], ] const drawSprite = (x: number, y: number, spr: number) => { setPixelsInRect(x, y, 8, sprites[spr]); } const drawChar = (x: number, y: number, char: string) => { setPixelsInRect(x, y, 4, font[char]); } 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, // code_sheet: codeSheet, }; export default faux;