This file contains 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
const fs = require("fs/promises"); | |
const fileName = "input.txt"; | |
async function readInput(fileName) { | |
const file = await fs.readFile(fileName, "utf-8"); | |
return file.trim().replace(/\r/g, "").split("\n"); | |
} | |
async function solveFirst(fileName) { | |
const inputs = await readInput(fileName); |
This file contains 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
{"version":2,"type":"profile","profile":{"id":7,"name":"Coding Garden","hotkey":null,"pause_updates":null,"description":"Commands for CodingGarden","context":[{"id":"5b66b0d5-0d11-4d41-af47-4d4ef92047db","type":"Channel","data":{"login":"codinggarden","id":"413856795"}}]},"toggled":true,"values":{"chat.actions.room":[{"t":"inherit","id":"1657045451549-0.39029851003637184-0"},{"v":{"action":"chat","appearance":{"type":"image","text":"Topic","image":"https://sfo2.digitaloceanspaces.com/alca/static/f/cj/Timer_Start_opt.png","tooltip":"!focus-start"},"options":{"command":"!focus-start 30","paste":true},"display":{}},"id":"1657042750748-0.43892151947400904-0"},{"v":{"action":"chat","appearance":{"type":"image","text":"Topic","image":"https://sfo2.digitaloceanspaces.com/alca/static/f/cj/Timer_Stop_opt.png","tooltip":"!focus-end"},"options":{"command":"!focus-end","paste":false},"display":{}},"id":"1657047049848-0.7201918069457542-1"}]}} |
This file contains 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
/** | |
* How long to wait in milliseconds if Twitch is taking too long to respond with | |
* all of the gifts. | |
*/ | |
const MYSTERYGIFT_TIMEOUT_MS = 10 * 1000; | |
/** | |
* How long to wait in milliseconds if the detected gift sub is not part of a | |
* larger mystery gift initially. | |
*/ | |
const GIFTSUB_ORPHAN_TIMEOUT_MS = 2 * 1000; |
This file contains 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
const tmiParse = require('tmi.js/lib/parser'); | |
const escapedIRCRegex = /\\([sn:r\\])/g; | |
const ircEscapedChars = { s: ' ', n: '', ':': ';', r: '' }; | |
const booleanTagKeys = [ 'mod', 'subscriber', 'msg-param-should-share-streak' ]; | |
const integerTagKeys = [ | |
'tmi-sent-ts', 'msg-param-months', 'msg-param-cumulative-months', | |
'msg-param-streak-months', 'msg-param-sender-count', | |
'msg-param-mass-gift-count', 'msg-param-viewerCount', 'msg-param-threshold', | |
'msg-param-bits-amount', 'msg-param-min-cheer-amount', |
This file contains 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
.chat-lines { | |
font-size: 14px; | |
} |
This file contains 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
class Rose { | |
PShape shape; | |
PVector stemStart, stemEnd; | |
float targetStemLength, growthTimeStart, growthTimeEnd; | |
float n, d, targetR, r; | |
float i; | |
Rose(int index) { | |
stemStart = new PVector( | |
random( |
This file contains 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
const request = require('request'), | |
_kraken = request.defaults({ | |
baseUrl: 'https://api.twitch.tv/kraken/', | |
headers: { | |
'Client-ID': 'CLIENT ID HERE', | |
Accept: 'Accept: application/vnd.twitchtv.v5+json' | |
}, | |
json: true | |
}); |
This file contains 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
float sliderA, sliderB; | |
float dim = 20; | |
void setup() { | |
size(600, 600); | |
sliderA = random(0, dim); | |
sliderB = random(0, dim * 2); | |
} | |
void draw() { |
This file contains 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
PVector lineStart, lineEnd, point; | |
void setup() { | |
size(600, 600); | |
updatePoints(); | |
} | |
void draw() { | |
background(0); | |
This file contains 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
PVector[] points; | |
int pointCount = 0; | |
int lastPointCount = 0; | |
void setup() { | |
size(600, 600, P3D); | |
colorMode(HSB); | |
} | |
void draw() { |
NewerOlder