Last active
April 24, 2020 16:22
-
-
Save EnzDev/dd002b4fbfd6913f1a8486a39f0836fd to your computer and use it in GitHub Desktop.
Revisions
-
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 1 addition and 0 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -2,6 +2,7 @@ // @name @_Ninji insect tracker // @description This userscript allows tracking caught and catchable insects on @_Ninji's website page about 1.2.0 update of AC:NH that list impacts on insects spawns. // @version 2.1 // @author github.com/EnzDev // @match https://wuffs.org/acnh/insects120.html // @grant GM.setValue // @grant GM.getValue -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,7 +1,7 @@ // ==UserScript== // @name @_Ninji insect tracker // @description This userscript allows tracking caught and catchable insects on @_Ninji's website page about 1.2.0 update of AC:NH that list impacts on insects spawns. // @version 2.1 // @match https://wuffs.org/acnh/insects120.html // @grant GM.setValue // @grant GM.getValue -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 2 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -10,6 +10,8 @@ // // Icon is @_Ninji profile pic // @icon https://pbs.twimg.com/profile_images/1222542119367299073/zHIcvDtZ_400x400.jpg // // @namespace http://enzomallard.fr/userscripts // ==/UserScript== // Get the current month -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,6 @@ // ==UserScript== // @name @_Ninji insect tracker // @description This userscript allows tracking caught and catchable insects on @_Ninji's website page about 1.2.0 update of AC:NH that list impacts on insects spawns. // @version 2.0 // @match https://wuffs.org/acnh/insects120.html // @grant GM.setValue -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 13 additions and 12 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,5 +1,6 @@ // ==UserScript== // @name @_Ninji insect tracker // @description This userscript allows tracking caught and caughtable insects on @_Ninji's website page about 1.2.0 update of AC:NH that list impacts on insects spawns. // @version 2.0 // @match https://wuffs.org/acnh/insects120.html // @grant GM.setValue @@ -35,9 +36,9 @@ const getState = async (name) => { const updateStyleForTr = (tr) => { if(tr.firstChild.firstChild.checked) { tr.classList.add("caught") } else { tr.classList.remove("caught") } if(tr.getElementsByClassName(month)[0].textContent != "") { @@ -61,7 +62,7 @@ $$("tbody tr").splice(1).forEach(async (tr) => { tr.insertBefore(d, tr.firstChild) if(checkbox.checked) { tr.classList.add("caught") } }) @@ -94,14 +95,14 @@ const pairMonthRule = (rules) => ["jan","mar","may","jul","sep","nov"] sheet.insertRule('tbody > tr:nth-child(5n+1) > td { border-bottom: solid 5px #666; }') // caught && not available => lightgreen sheet.insertRule(`.caught:not(.available) { background: lightgreen !important; }`) sheet.insertRule(`${pairMonthRule('.caught:not(.available)')} { background: #cfc !important; }`) // caught && available => lightblue sheet.insertRule(`.caught.available { background: lightblue !important; }`) sheet.insertRule(`${pairMonthRule('.caught.available')} { background: #def !important; }`) // available && not caught => lightcoral sheet.insertRule(`.available:not(.caught) { background: lightcoral !important; }`) sheet.insertRule(`${pairMonthRule('.available:not(.caught)')} { background: #faa !important; }`) -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 1 addition and 2 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -88,8 +88,7 @@ document.head.appendChild(styleEl) const sheet = styleEl.sheet; const pairMonthRule = (rules) => ["jan","mar","may","jul","sep","nov"] .map(month => `${rules} .${month}`) .join(", ") -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 17 additions and 16 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,13 +1,14 @@ // ==UserScript== // @name @_Ninji insect tracker // @version 2.0 // @match https://wuffs.org/acnh/insects120.html // @grant GM.setValue // @grant GM.getValue // @noframes // @run-at document-end // // Icon is @_Ninji profile pic // @icon https://pbs.twimg.com/profile_images/1222542119367299073/zHIcvDtZ_400x400.jpg // ==/UserScript== // Get the current month @@ -23,14 +24,13 @@ const makeNode = ((type, attrs) => { // Update thr storage when the input change const updateStorage = (e)=>{ let input = e.target GM.setValue(input.value, input.checked ? 1 : 0) updateStyleForTr(input.parentElement.parentElement) } const getState = async (name) => { let state = await GM.getValue(name, 0) return state === 1 ? true : false } const updateStyleForTr = (tr) => { @@ -47,14 +47,15 @@ const updateStyleForTr = (tr) => { } } // Immitate browser $$ function const $$ = (it) => Array.from(document.querySelectorAll(it)) // Create the checkboxes for each insect $$("tbody tr").splice(1).forEach(async (tr) => { let d = makeNode("td",{}) let name = tr.getElementsByClassName("insectname")[0].innerText let checkbox = makeNode("input", {"type":"checkbox", "value":name}) checkbox.checked = await getState(name) checkbox.onchange = updateStorage d.append(checkbox) tr.insertBefore(d, tr.firstChild) @@ -80,28 +81,28 @@ $$(`.${month}`).forEach((month) => { if(month.textContent != "") month.parentElement.classList.add("available") }) // Stylling const styleEl = document.createElement("style") styleEl.appendChild(document.createTextNode("")) document.head.appendChild(styleEl) const sheet = styleEl.sheet; const pairMonthRule = (rules) => "jan mar may jul sep nov" .split(" ") .map(month => `${rules} .${month}`) .join(", ") sheet.insertRule('tbody > tr:nth-child(5n+1) > td { border-bottom: solid 5px #666; }') // catch && not available => lightgreen sheet.insertRule(`.catch:not(.available) { background: lightgreen !important; }`) sheet.insertRule(`${pairMonthRule('.catch:not(.available)')} { background: #cfc !important; }`) // catch && available => lightblue sheet.insertRule(`.catch.available { background: lightblue !important; }`) sheet.insertRule(`${pairMonthRule('.catch.available')} { background: #def !important; }`) // available && not catch => lightcoral sheet.insertRule(`.available:not(.catch) { background: lightcoral !important; }`) sheet.insertRule(`${pairMonthRule('.available:not(.catch)')} { background: #faa !important; }`) -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 2 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -70,10 +70,12 @@ head.insertBefore(makeNode("th", {}), head.firstChild) // Remove old values $$("s").forEach(it => it.remove()) // Set new values as main text $$("b").forEach(it => { it.parentElement.innerText = it.innerText }) // If the month have a textContent, it is available $$(`.${month}`).forEach((month) => { if(month.textContent != "") month.parentElement.classList.add("available") }) -
EnzDev revised this gist
Apr 24, 2020 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -6,7 +6,7 @@ // @noframes // @run-at document-end // // Icon is @_Ninji profile pic // @icon https://pbs.twimg.com/profile_images/1222542119367299073/zHIcvDtZ_400x400.jpg // ==/UserScript== -
EnzDev created this gist
Apr 24, 2020 .There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,105 @@ // ==UserScript== // @name @_Ninji insect tracker // @version 1.9 // @match https://wuffs.org/acnh/insects120.html // @grant unsafeWindow // @noframes // @run-at document-end // // @_Ninji profile pic // @icon https://pbs.twimg.com/profile_images/1222542119367299073/zHIcvDtZ_400x400.jpg // ==/UserScript== // Get the current month const month = (new Date()).toLocaleDateString('en-US', { month: 'short' }).toLowerCase() // Tool to create a node with object of attributes const makeNode = ((type, attrs) => { let node = document.createElement(type); let attributes = Object.entries(attrs).forEach(([t, v]) => node.setAttribute(t, v)); return node; }) // Update thr storage when the input change const updateStorage = (e)=>{ let input = e.target unsafeWindow.localStorage.setItem(input.value, input.checked ? 1 : 0) updateStyleForTr(input.parentElement.parentElement) } const getState = (name) => { let state = unsafeWindow.localStorage.getItem(name) if(state == undefined) unsafeWindow.localStorage.setItem(name, 0) return parseInt(unsafeWindow.localStorage.getItem(name)) ? true : false } const updateStyleForTr = (tr) => { if(tr.firstChild.firstChild.checked) { tr.classList.add("catch") } else { tr.classList.remove("catch") } if(tr.getElementsByClassName(month)[0].textContent != "") { tr.classList.add("available") } else { tr.classList.remove("available") } } const $$ = (it) => Array.from(document.querySelectorAll(it)) // Create the checkboxes for each insect $$("tbody tr").splice(1).forEach((tr) => { let d = makeNode("td",{}) let name = tr.getElementsByClassName("insectname")[0].innerText let checkbox = makeNode("input", {"type":"checkbox", "value":name}) checkbox.checked = getState(name) checkbox.onchange = updateStorage d.append(checkbox) tr.insertBefore(d, tr.firstChild) if(checkbox.checked) { tr.classList.add("catch") } }) // Add a space for the header const head = $$("tbody tr")[0] head.insertBefore(makeNode("th", {}), head.firstChild) // Remove old values $$("s").forEach(it => it.remove()) $$("b").forEach(it => { it.parentElement.innerText = it.innerText }) $$(`.${month}`).forEach((month) => { if(month.textContent != "") month.parentElement.classList.add("available") }) const styleEl = document.createElement("style") styleEl.appendChild(document.createTextNode("")) document.head.appendChild(styleEl) const sheet = styleEl.sheet; const bitches = (rules) => "jan mar may jul sep nov" .split(" ") .map(month => `${rules} .${month}`) .join(", ") // sheet.insertRule(`.${month} { background: lightblue !important; }`) sheet.insertRule('tbody > tr:nth-child(5n+1) > td { border-bottom: solid 5px #666; }') // catch && not available => lightgreen sheet.insertRule(`.catch:not(.available) { background: lightgreen !important; }`) sheet.insertRule(`${bitches('.catch:not(.available)')} { background: #cfc !important; }`) // catch && available => lightblue sheet.insertRule(`.catch.available { background: lightblue !important; }`) sheet.insertRule(`${bitches('.catch.available')} { background: #def !important; }`) // available && not catch => lightcoral sheet.insertRule(`.available:not(.catch) { background: lightcoral !important; }`) sheet.insertRule(`${bitches('.available:not(.catch)')} { background: #faa !important; }`)