Last active
April 1, 2019 10:57
-
-
Save takustaqu/b58e77df59adea0b6c01686329d4ae1e to your computer and use it in GitHub Desktop.
This file contains 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 characters
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