A simple script that let you get a direct download link from ROMS43's 3DS section
当前为
// ==UserScript==
// @name ROMS43 3DS Downloader
// @namespace roms43_3ds_downloader
// @description A simple script that let you get a direct download link from ROMS43's 3DS section
// @license GPL; https://www.gnu.org/licenses/gpl.html
// @version 1
// @grant none
// @match http://www.roms43.com/download/*
// ==/UserScript==
/*
*
* ROMS43 3DS Downloader
* A simple script that let you get a direct download link from ROMS43's 3DS section.
* Licensed under the GPL license.
* https://www.gnu.org/licenses/gpl.html
*
* Made by / aka slash
*
* Some files are still returning a 404 error, feel free to report these bugs as well as any idea to improve this script.
*
* Have fun
*
*/
link = "http://www.instantshare.net";
region = "none";
releaseName = ""
breadcrumb = document.getElementById("breadcrumb").innerHTML;
baseTitle = document.querySelectorAll(".topbar.orange")[0].innerHTML.slice(4,-5);
title = baseTitle.replace("Patched - ", "");
title = title.replace(/ /g, "%20");
if(document.body.innerHTML.search("eu.gif")!=-1){
region = "eu";
} else if((document.body.innerHTML.search("jp.gif")!=-1)||(document.body.innerHTML.search("ja.gif")!=-1)){
region = "jp";
} else if(document.body.innerHTML.search("us.gif")!=-1){
region = "us";
}
if(breadcrumb.search("3ds")!=-1){
if(breadcrumb.search("/3ds/")!=-1){
link = link + "/3DS/" + title + ".3ds";
}
else if(breadcrumb.search("/3dscia/")!=-1){
for(i=0;i<document.querySelectorAll(".right").length;i++){
if(document.querySelectorAll(".right")[i].innerHTML.search(baseTitle)!=-1){
releaseName = document.querySelectorAll(".right")[i].innerHTML;
releaseName = releaseName.replace(/ /g, "%20");
link = "http://www.instantshare.net/3DSCIA/" + releaseName+".cia";
}
}
if(releaseName!=""){
downloading = "<div style='text-align:center'><a style='font-size:50px' href="+link+">Download</a></div><p style='font-size:10px'>Feel free to report any bug <a style='font-size:10px' href='#'>there.</a></p>";
document.querySelectorAll(".full-wrapper")[1].innerHTML = downloading;
}else{
link = link + "/3DSCIA/" + title;
downloading = "<div style='text-align:center;'><p style='font-size:50px'>Please check every link*</p><p style='font-size:10px'>Feel free to report any bug <a style='font-size:10px' href='#'>there.</a></p><br/>";
switch(region){
case "eu":downloading = downloading + "<a href="+link+"%20(Europe).cia>Link 1</a><br/>";
downloading = downloading + "<a href="+link+"%20(Europe)%20(eShop).cia>Link 2</a><br/>";
downloading = downloading + "<a href="+link+"%20(eShop)%20(Europe).cia>Link 3</a><br/>";
downloading = downloading + "<a href="+link+"%20(Europe)(En,Fr,Ge,It,Es).cia>Link 4</a><br/>";
downloading = downloading + "<a href="+link+"%20(Europe)%20(En,Fr,Ge,It,Es).cia>Link 4</a><br/>";
downloading = downloading + "<a href="+link+"%20(Europe)%20(Theme).cia>Link 5</a><br/>";break;
case "jp":if(document.body.innerHTML.search("(RF)")!=-1){
downloading + "<a href="+link+"%20(Japan)%20(RF).cia>Link 1</a><br/>";
downloading = downloading + "<a href="+link+"%20(Japan)(RF%20FS).cia>Link 2</a><br/>";
}else{
downloading = downloading + "<a href="+link+"%20(Japan).cia>Link 1</a><br/>";
downloading = downloading + "<a href="+link+"%20(eShop)%20(Japan).cia>Link 2</a><br/>";
downloading = downloading + "<a href="+link+"%20(Japan)%20(Theme).cia>Link 3</a><br/>";
};break;
case "us":if(document.body.innerHTML.search("(RF)")!=-1){
downloading = downloading + "<a href="+link+"%20(USA)%20(RF).cia>Link 1</a><br/>";
downloading = downloading + "<a href="+link+"%20(USA)(RF%20FS).cia>Link 2</a><br/>";
}else{
downloading = downloading + "<a href="+link+"%20(USA).cia>Link 1</a><br/>";
downloading = downloading + "<a href="+link+"%20(Usa).cia>Link 2</a><br/>";
downloading = downloading + "<a href="+link+"%20(USA)%20(Theme).cia>Link 3</a><br/>";
};break;
case "none":downloading = downloading + "<a href="+link+".cia>Link</a>";break;
}
downloading = downloading + "</div><p style='font-size:10px'>*There's a lot of filename confusion in CIA's and you cannot directly know how a file is named using it's page informations.<br/>It's possible that you have to use the links ROMS43 is providing you.</p><p style='font-size:5px'>I'm sorry guys.</p>"
document.querySelectorAll(".full-wrapper")[1].innerHTML = downloading + document.querySelectorAll(".full-wrapper")[1].innerHTML;
}
}
else if(breadcrumb.search("/3dsvc/")!=-1){
link = link + "/3DSVC/" + title;
switch(region){
case "eu":link=link+"%20(E).cia";break;
case "jp":link=link+"%20(J).cia";break;
case "us":link=link+"%20(U).cia";break;
}
}
else if(breadcrumb.search("/3ds-patched/")!=-1){
link = link + "/3DS-onlinepatched/" + title;
switch(region){
case "eu":link=link+"EUR-Online%20Patched.3dz";break;
case "jp":link=link+"JPN-Online%20Patched.3dz";break;
case "us":link=link+"USA-Online%20Patched.3dz";break;
}
}
if(breadcrumb.search("/3dscia/")==-1){
downloading = "<div style='text-align:center'><a style='font-size:50px' href="+link+">Download</a></div><p style='font-size:10px'>Feel free to report any bug <a style='font-size:10px' href='#'>there.</a></p>";
document.querySelectorAll(".full-wrapper")[1].innerHTML = downloading;}
}