您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Opens with '1', has close button. Automatically updates on location change.
// ==UserScript== // @name OpenGuessr Location Hack/Cheat // @namespace https://openguessr.com/ // @version 3.3 // @description Opens with '1', has close button. Automatically updates on location change. // @author Kakoncheater // @license MIT // @match https://openguessr.com/* // @grant GM_addStyle // ==/UserScript== (function () { 'use strict'; // Add CSS for the floating iframe GM_addStyle(` #locationFrameContainer { position: fixed; bottom: 10px; left: 10px; /* Displayed in bottom left */ width: 600px; height: 400px; background-color: white; border: 1px solid #ccc; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); z-index: 1000; /* Ensure it's on top */ overflow: hidden; /* Hide scrollbars */ } #locationFrame { width: 100%; height: 100%; border: none; } #locationFrameHeader { background-color: #f0f0f0; padding: 5px; cursor: move; /* Indicate draggable */ text-align: center; font-weight: bold; display: flex; /* Use flexbox for alignment */ justify-content: space-between; /* Push items to the edges */ align-items: center; /* Vertically align items */ } #closeButton { background-color: #f44336; color: white; border: none; padding: 5px 10px; text-align: center; text-decoration: none; display: inline-block; font-size: 12px; cursor: pointer; border-radius: 3px; } `); let locationFrameContainer = null; // Store the iframe container element let currentLocation = null; // Store the last known location let isDragging = false; let dragOffsetX = 0; let dragOffsetY = 0; const zoomLevel = 3; // Adjusted Zoom Level // Function to create and display the iframe function createLocationFrame(location) { if (!location) return; // Prevent creating with null location if (locationFrameContainer) { // Iframe already exists, just update the URL const locationFrame = locationFrameContainer.querySelector('#locationFrame'); locationFrame.src = `https://www.google.com/maps?q=${location}&output=embed&z=${zoomLevel}`; currentLocation = location; //Update known location return; } // Create the container locationFrameContainer = document.createElement('div'); locationFrameContainer.id = 'locationFrameContainer'; // Create the header (for dragging) const locationFrameHeader = document.createElement('div'); locationFrameHeader.id = 'locationFrameHeader'; locationFrameHeader.textContent = 'Google Maps Location (Drag to Move)'; // Create the close button const closeButton = document.createElement('button'); closeButton.id = 'closeButton'; closeButton.textContent = 'Close'; closeButton.addEventListener('click', closeLocationFrame); // Add event listener // Add elements to the header locationFrameHeader.appendChild(document.createTextNode('Google Maps Location (Drag to Move)')); // Text node locationFrameHeader.appendChild(closeButton); locationFrameContainer.appendChild(locationFrameHeader); // Create the iframe const locationFrame = document.createElement('iframe'); locationFrame.id = 'locationFrame'; locationFrame.src = `https://www.google.com/maps?q=${location}&output=embed&z=${zoomLevel}`; // Embedded version of Maps, zoomed out to level 3 locationFrameContainer.appendChild(locationFrame); // Add to the document document.body.appendChild(locationFrameContainer); // Make it draggable locationFrameHeader.addEventListener('mousedown', dragStart); document.addEventListener('mouseup', dragEnd); document.addEventListener('mousemove', drag); currentLocation = location; // Store initial location. } function dragStart(e) { isDragging = true; dragOffsetX = e.clientX - locationFrameContainer.offsetLeft; dragOffsetY = e.clientY - locationFrameContainer.offsetTop; } function dragEnd() { isDragging = false; } function drag(e) { if (!isDragging) return; locationFrameContainer.style.left = (e.clientX - dragOffsetX) + 'px'; locationFrameContainer.style.top = (e.clientY - dragOffsetY) + 'px'; locationFrameContainer.style.right = 'auto'; // prevent weirdness locationFrameContainer.style.bottom = 'auto'; // prevent weirdness } function closeLocationFrame() { if (locationFrameContainer) { locationFrameContainer.remove(); locationFrameContainer = null; // Clear the reference currentLocation = null; // Clear the stored location } } // Function to extract location from iframe function extractLocation() { try { const iframe = document.querySelector('#PanoramaIframe'); const src = iframe.getAttribute('src'); const url = new URL(src); return url.searchParams.get('location'); } catch (e) { return null; } } // Key press listener, toggles the map document.addEventListener('keydown', function(event) { if (event.key === '1') { const location = extractLocation(); if (location) { if (locationFrameContainer) { // Iframe exists, update the location if needed or close if current location matches const locationFrame = locationFrameContainer.querySelector('#locationFrame'); if (locationFrame.src !== `https://www.google.com/maps?q=${location}&output=embed&z=${zoomLevel}`){ locationFrame.src = `https://www.google.com/maps?q=${location}&output=embed&z=${zoomLevel}`; } else { closeLocationFrame(); } } else { createLocationFrame(location); } currentLocation = location; } else { if(locationFrameContainer){ closeLocationFrame(); //Close if location cannot be extracted } } } }); //Try extracting location every second and update if it changes setInterval(() => { const location = extractLocation(); if (location) { if (location !== currentLocation) { // Location has changed! if (locationFrameContainer) { const locationFrame = locationFrameContainer.querySelector('#locationFrame'); locationFrame.src = `https://www.google.com/maps?q=${location}&output=embed&z=${zoomLevel}`; } else { createLocationFrame(location); } currentLocation = location; // Update the stored location } } else if (locationFrameContainer) { closeLocationFrame(); // Close the frame if no location can be found. } }, 1000); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址