Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save takustaqu/b58e77df59adea0b6c01686329d4ae1e to your computer and use it in GitHub Desktop.
Save takustaqu/b58e77df59adea0b6c01686329d4ae1e to your computer and use it in GitHub Desktop.
index = ["a","b","c"]
var path = window.location.pathname;
var cardparser = (input) => {
const P = input.split("/");
const F = P[P.length-1];
const A = F.replace(".png","").split("_");
let charName = "";
let rarity = "";
switch(A[0]){
case "a":
charName = "お蝶";
break;
case "b":
charName = "シュウ";
break;
case "カーネ":
charName = "シュウ";
break;
}
switch(A[1]){
case "1":
rarity = "N";
break;
case "2":
rarity = "R";
break;
case "3":
rarity = "SR";
break;
case "4":
rarity = "JC";
break;
}
let result = {
charactor : charName,
rarity : rarity,
rarityNum : parseInt(A[1]),
charactorCode : A[0],
score : A[2] == undefined ? 1 : parseInt(A[2]),
}
return result;
}
const getCards = () => {
return JSON.parse(window.localStorage.getItem('psy-current-deck'));
}
const getLastCard = () => {
return JSON.parse(window.localStorage.getItem('psy-last-taken'));
}
const updateCards = (cards) => {
return window.localStorage.setItem('psy-current-deck',JSON.stringify(cards))
}
if(path.match("card_lay")){
var cards = [];
$(".card img").each(function(){
var U = $(this).attr("src");
cards.push(cardparser(U))
})
updateCards(cards);
console.log("デッキ確認:",cards)
$(".btn_next")[0].click()
}
if(path.match("card_select")){
var cards = $(".card a");
var deckCards = getCards();
var previousCard = getLastCard();
var exist = 0;
let ref = $(".btn_refresh");
for(var i=0,il=deckCards.length;i<il;i++){
const C = deckCards[i];
if((previousCard.charactorCode == C.charactorCode) && !C.taken){
exist++;
}
}
if(exist>2 || ref.length == 0){
//ランダム選択
$(".card a").eq(Math.floor(cards.length*Math.random()))[0].click();
}else if(exist>1){
//ランダム選択
if(Math.floor(Math.random()*5) == 0 ){
// 20%の確率でリフレッシュ
$(".btn_refresh")[0].click();
}else{
//
$(".card a").eq(Math.floor(cards.length*Math.random()))[0].click();
}
}else if(exist>0){
//ランダム選択
if(Math.floor(Math.random()*2) == 0){
// 50%の確率でリフレッシュ
$(".btn_refresh")[0].click();
}else{
//
$(".card a").eq(Math.floor(cards.length*Math.random()))[0].click();
}
}else{
$(".btn_refresh")[0].click();
}
}
// リフレッシュ確認
if(path.match("refresh")){
$(".btn_next")[0].click();
}
if(path.match("draw")){
let gotCard = cardparser($(".draw_result_card").attr('src'));
let deckCards = getCards();
for(var i=0,il=deckCards.length;i<il;i++){
const C = deckCards[i];
if((gotCard.charactorCode == C.charactorCode) &&
(gotCard.rarity == C.rarity) &&
(gotCard.score == C.score)){
C.taken = true;
console.log(C)
}
}
window.localStorage.setItem('psy-last-taken',JSON.stringify(gotCard))
updateCards(deckCards)
$(".btn_next")[0].click();
}
if(path.match("/result/")){
console.log("DONE");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment