Skip to content

Instantly share code, notes, and snippets.

(function(){const CONFIG={CONDITION_MAP:{"絶好調":5,"好調":4,"平常":3,"不調":2,"絶不調":1,"静養":0},RARITY_MAP:{"LR":6,"UR":5,"SR":4,"R":3,"N":2},GRADE_MAP:{"S":8,"A":7,"B":6,"C":5,"D":4,"E":3,"F":2,"G":1},URLS:{BENCH:"https://orekou.net/regular/bench",STARTERS:"https://orekou.net/regular/starters",ORDER:"https://orekou.net/regular/order",RELIEF:"https://orekou.net/regular/relief",COACH:"https://orekou.net/regular/base_coach"}};function log(msg){console.log("[OrekouAuto] "+msg)}function getElementsByXPath(xpath,parent=document){let results=[];let query=document.evaluate(xpath,parent,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(let i=0;i<query.snapshotLength;i++){results.push(query.snapshotItem(i))}return results}class Player{constructor(row){this.row=row;this.name=this.queryText(".//a[contains(@onclick, 'ajax_student')]")||"Unknown";this.rarity=this.queryText(".//span[contains(@class, 'rarity_')]")||"N";this.rarityScore=CONFIG.RARITY_MAP[this.rarity]||2;const syText=this.queryText(".//span[contains(@class, 's_y_')