Skip to content

Instantly share code, notes, and snippets.

@helpimnotdrowning
Forked from oralekin/userscript.user.js
Last active April 2, 2022 22:44
Show Gist options
  • Save helpimnotdrowning/c1e28667a4ec52604c784347b2f01bac to your computer and use it in GitHub Desktop.
Save helpimnotdrowning/c1e28667a4ec52604c784347b2f01bac to your computer and use it in GitHub Desktop.
osu! Logo Template for 2022 /r/place
// ==UserScript==
// @name osu! Logo template
// @namespace http://tampermonkey.net/
// @version 0.3
// @description try to take over the canvas!
// @author oralekin, LittleEndu, ekgame
// @match https://hot-potato.reddit.com/embed*
// @icon https://www.google.com/s2/favicons?sz=64&domain=reddit.com
// @grant none
// ==/UserScript==
if (window.top !== window.self) {
window.addEventListener('load', () => {
// Load the image
const image = document.createElement("img");
image.src = "https://cdn.mirai.gg/tmp/dotted-place-template.png";
image.onload = () => {
image.style = `position: absolute; left: 0; top: 0; width: ${image.width/3}px; height: ${image.height/3}px; image-rendering: crisp-edges; z-index: 1`;
};
// Add the image as overlay
const camera = document.querySelector("mona-lisa-embed").shadowRoot.querySelector("mona-lisa-camera");
const canvas = camera.querySelector("mona-lisa-canvas");
canvas.shadowRoot.querySelector('.container').appendChild(image);
// Add a style to put a hole in the pixel preview (to see the current or desired color)
const waitForPreview = setInterval(() => {
const preview = camera.querySelector("mona-lisa-pixel-preview");
if (preview) {
clearInterval(waitForPreview);
const style = document.createElement('style')
style.innerHTML = '.pixel { clip-path: polygon(-20% -20%, -20% 120%, 37% 120%, 37% 37%, 62% 37%, 62% 62%, 37% 62%, 37% 120%, 120% 120%, 120% -20%); }'
preview.shadowRoot.appendChild(style);
}
}, 100);
}, false);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment