Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Country Streak Counter (Manual, Enabled on Challenges)
- // @include /^(https?)?(\:)?(\/\/)?([^\/]*\.)?geoguessr\.com($|\/.*)/
- // @description Adds a country streak counter to the GeoGuessr website
- // @require http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
- // @grant GM_addStyle
- // ==/UserScript==
- // last updated March 16 2022
- let streak = parseInt(sessionStorage.getItem("Streak"), 10);
- if(sessionStorage.getItem("Streak") == null){
- sessionStorage.setItem("Streak", 0);
- streak = 0;
- };
- function updateStreak(newVariable){
- streak = newVariable;
- if(document.getElementById("country-streak") != null){
- document.getElementById("country-streak").innerHTML = `<div id="country-streak"><div class="status_value__xZMNY">${streak}</div></div>`;
- };
- if(document.getElementById("country-streak2") != null && document.querySelectorAll('div[data-qa]')[8] != null && !document.querySelector('.standard-final-result_section___B3ne')){
- document.getElementById("country-streak2").innerHTML = `<br><h2><i>Country Streak: ${streak}</i></h2>`;
- };
- if(document.getElementById("country-streak2") != null && !!document.querySelector('.standard-final-result_section___B3ne')){
- document.getElementById("country-streak2").innerHTML = `<br><h2><i>Country Streak: ${streak}</i></h2>`;
- };
- };
- function addCounter(newDiv0){
- if(document.getElementsByClassName("status_section__8uP8o").length == 3){
- newDiv0 = document.createElement("div")
- newDiv0.className = 'status_section__8uP8o';
- document.getElementsByClassName("status_inner__1eytg")[0].appendChild(newDiv0);
- newDiv0.innerHTML = `<div class="status_label__SNHKT">Streak</div><div id="country-streak"><div class="status_value__xZMNY">${streak}</div></div>`;
- };
- if(document.getElementsByClassName("status_section__8uP8o").length == 4 && document.getElementsByClassName("status_label__SNHKT")[3].innerText == "TIME LEFT"){
- newDiv0 = document.createElement("div")
- newDiv0.className = 'status_section__8uP8o';
- document.getElementsByClassName("status_inner__1eytg")[0].appendChild(newDiv0);
- newDiv0.innerHTML = `<div class="status_label__SNHKT">Streak</div><div id="country-streak"><div class="status_value__xZMNY">${streak}</div></div>`;
- };
- };
- function addCounterOnRefresh(){
- setTimeout(function(){
- addCounter();
- },50);
- setTimeout(function(){
- addCounter();
- },300);
- };
- function addCounter2(){
- addCounter();
- if(document.getElementsByClassName("status_section__8uP8o").length == 0){
- setTimeout(function(){
- addCounter();
- if(document.getElementsByClassName("status_section__8uP8o").length == 0){
- setTimeout(function(){
- addCounter();
- if(document.getElementsByClassName("status_section__8uP8o").length == 0){
- setTimeout(function(){
- addCounter();
- if(document.getElementsByClassName("status_section__8uP8o").length == 0){
- setTimeout(function(){
- addCounter();
- if(document.getElementsByClassName("status_section__8uP8o").length == 0){
- setTimeout(function(){
- addCounter();
- }, 4000);
- };
- }, 3000);
- };
- }, 2000);
- };
- }, 1200);
- };
- }, 400);
- };
- };
- function addStreakRoundResult(newDiv1){
- if(document.getElementById("country-streak2") == null && document.querySelectorAll('div[data-qa]')[8] && !document.querySelector('.standard-final-result_section___B3ne') != null && (location.pathname.startsWith("/game/") || location.pathname.startsWith("/challenge/"))){
- newDiv1 = document.createElement("div")
- document.querySelectorAll('div[data-qa]')[8].appendChild(newDiv1);
- newDiv1.innerHTML = `<div id="country-streak2" style="text-align:center"><br><h2><i>Country Streak: ${streak}</i></h2></div>`;
- };
- };
- function addStreakGameSummary(newDiv2){
- if(document.getElementById("country-streak2") == null && !!document.querySelector('.standard-final-result_section___B3ne') && (location.pathname.startsWith("/game/") || location.pathname.startsWith("/challenge/"))){
- newDiv2 = document.createElement("div")
- document.getElementsByClassName("progress-bar_background__A6ZDS progress-bar_expandHeight__W_59W")[0].appendChild(newDiv2);
- newDiv2.innerHTML = `<div id="country-streak2" style="text-align:center"><br><h2><i>Country Streak: ${streak}</i></h2></div>`;
- };
- };
- function addStreak(){
- setTimeout(function(){
- addStreakRoundResult();
- },300);
- setTimeout(function(){
- addStreakRoundResult();
- },500);
- setTimeout(function(){
- addStreakGameSummary();
- },200);
- setTimeout(function(){
- addStreakGameSummary();
- },400);
- setTimeout(function(){
- addStreakRoundResult();
- addStreakGameSummary();
- },1200);
- setTimeout(function(){
- addStreakRoundResult();
- addStreakGameSummary();
- },2000);
- };
- document.addEventListener('keypress', (e) => {
- switch (e.key){
- case '1':
- updateStreak(streak + 1);
- sessionStorage.setItem("Streak", streak);
- break;
- case '2':
- updateStreak(streak - 1);
- sessionStorage.setItem("Streak", streak);
- break;
- case '0':
- updateStreak(0);
- sessionStorage.setItem("Streak", 0);
- break;
- };
- });
- document.addEventListener('click', addCounter2, false);
- document.addEventListener('click', addStreak, false);
- document.addEventListener('load', addCounterOnRefresh(), false);
Add Comment
Please, Sign In to add comment