Created
January 11, 2022 09:22
-
-
Save mitchallen/3baff3f35c705d3fe8ef18103d0c3ba8 to your computer and use it in GitHub Desktop.
Define a browser app function for display rollDice results
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Author: Mitch Allen | |
| // File: app.js | |
| import { rollDice } from './rolldice.js'; | |
| let canvas = document.getElementById("canvas"); | |
| const SCREEN_SIZE = 300; | |
| const DIM = 10; | |
| const CELL_SIZE = SCREEN_SIZE / DIM; | |
| const BORDER = 1; | |
| const NEON_PINK = "#FF10F0"; | |
| const SOURCE = [ | |
| "white", | |
| NEON_PINK, | |
| "#444444", | |
| ]; | |
| // create an array filled with roll results | |
| const arr = Array.from({ length: DIM * DIM }, () => rollDice( SOURCE )); | |
| console.log(arr); | |
| // draw canvas | |
| let ctx = canvas.getContext('2d'); | |
| if (ctx) { | |
| // draw background | |
| ctx.clearRect(0, 0, SCREEN_SIZE, SCREEN_SIZE); | |
| ctx.fillStyle = "black"; | |
| ctx.fillRect(0, 0, SCREEN_SIZE, SCREEN_SIZE); | |
| // draw cells | |
| let cursor = 0; | |
| for (let i = 0; i < DIM; i++) { | |
| for (let j = 0; j < DIM; j++) { | |
| ctx.fillStyle = arr[cursor++]; | |
| ctx.fillRect( | |
| i * CELL_SIZE + BORDER, | |
| j * CELL_SIZE + BORDER, | |
| CELL_SIZE - BORDER * 2, | |
| CELL_SIZE - BORDER * 2 | |
| ); | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment