norg space to advance

useful keybinds for nestris puzzles

目前為 2025-11-13 提交的版本,檢視 最新版本

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         norg space to advance
// @namespace    http://tampermonkey.net/
// @version      0.1.3
// @description  useful keybinds for nestris puzzles
// @author       tyow
// @match        nestris.org/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=nestris.org
// @grant        none
// @license      MIT
// ==/UserScript==

// add "//" to beginning of line 17 and remoe from line 18 to get the keybind to equal "a/A"

let retryKey = null
// let retryKey = "KeyA"

const RETRY = 1;
const NEXT = 2;


const click = (loc) => {

    let b = document.querySelectorAll(".new-puzzle-button");
    if (b) {
        b = b[loc]
        let child = b.childNodes[0]
        child.click()
    }
}

document.addEventListener('keydown', (e) => {
    if (window.location.pathname !== "/online/puzzle") return;

    if (retryKey != null && e.code == retryKey) {
        click(RETRY)
    }

    if (e.code == "Space") {
        click(e.shiftKey ? RETRY : NEXT)
    }
});