디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

제가찾던아이프로여깃엇네요

이제뭐접음?갤로그로 이동합니다. 2022.12.06 22:41:06
조회 96 추천 1 댓글 13

javascript: ( /* ver.2111.1 https://gall.dcinside.com/m/mobage/4071 */ () => { let limitPoint = 0 let limitDaily = 0 let useNormal = 1 let useSpecial = 1 let useDramatic = 1 let useEpisode = 1 let stamina = [8, 14, "relay"] let home = "https://sp.pf.mbga.jp/12008305/?guid=ON&url=http://mobamas.net/idolmaster/" let main = home + "event_produce/" const itemMatchTable = [ {}, { selector: "normal.png", max_use_flag: 0, use_item: 0, info: "[1] 아이템 사용 안함" }, { selector: "normal_01", max_use_flag: 0, use_item: 3, info: "[2] 작은 아이템 1개" }, { selector: "normal_02", max_use_flag: 1, use_item: 3, info: "[3] 작은 아이템 3개" }, { selector: "special", max_use_flag: 0, use_item: 1, info: "[4] 큰 아이템 1개" } ] const find = { // find element a: (el, from) => { return (from ? find._parse(from) : document).querySelector(el) }, all: (el, from) => { return (from ? find._parse(from) : document).querySelectorAll(el) || [] }, _parse: (from) => { // string to HTML if (from && typeof from == "string") { from = new DOMParser().parseFromString(from, 'text/html') } return from } } const figure = (string, ...option) => { // string to number let result = (string + "").replace(/[^0-9]/g, "") * 1 let n = parseInt(result, 10) const suffix = ['th', 'st', 'nd', 'rd'] const mod100 = n % 100 if (option.find(a => a == ",")) { result = result.toLocaleString() } if (option.find(a => a == "th")) { result = result + (suffix[(mod100 - 20) % 10] || suffix[mod100] || suffix[0]) } return result } const xhr = { // xhr send thread: {}, send: (url, request) => { request = request || {} const form = new FormData() const sender = new XMLHttpRequest() request.thread && xhr.thread[request.thread] && xhr.thread[request.thread].abort() for (param in request.data) { form.append(param, request.data[param]) } sender.open(request.method != undefined ? request.method : "GET", url, request.async != undefined ? request.async : true) if (request.timeout) { sender.timeout = request.timeout } request.onprogress && sender.addEventListener("progress", (worker) => { request.onprogress(worker.target) }) request.onload && sender.addEventListener("load", (worker) => { if (request.thread) { xhr.thread[request.thread] = "" } request.onload(worker.target) }) request. && sender.addEventListener("error", (worker) => { request.(worker.target) }) request.ontimeout && sender.addEventListener("timeout", (worker) => { request.ontimeout(worker.target) }) sender.send(form) if (request.thread) { xhr.thread[request.thread] = sender } return sender } } const suspend = { // stop automation triggerString: new RegExp("ㅡ.'.'.'ㅡ"), working: () => { return suspend.triggerString.test(document.body.innerText) }, start: (sec, message) => { if (!find.a('#vove-counter')) { find.a("#top").innerText = message + "\n북마크는 게임 규정을 위반하는 행위입니다. \n" + suspend.triggerString $('<img/>', { id: 'vove-arisa', src: home + 'image_sp/ui/rich/quest/loading/' + (Math.random() > 0.5 ? '100302.gif' : '101131.gif'), style: 'display:block;margin:auto', }).appendTo('#top') $('<progress/>', { id: 'vove-counter', style: 'width:320px', value: 0, max: sec }).appendTo('#top') let progress = 0 const timer = setInterval(() => { progress += 1, find.a("#vove-counter") && (find.a("#vove-counter").value = progress), progress >= sec && (clearInterval(timer), find.a("#top").innerText = "대기 중") }, 1000) } } } const work = () => { xhr.send(main + "play/get_nothing", { timeout: 10000, onprogress: (worker) => { if (/episode_commu/.test(worker.responseURL)) { // 에피 커뮤 worker.abort() location = main + "play/get_nothing" } else if (/appear_raid_boss/.test(worker.responseURL)) { // 일반 커뮤 worker.abort() find.a("#top").innerText = "커뮤 등판" xhr.send(main + "get_raid_boss", { onload: (worker) => { find.a("#top").innerHTML = find.a("#top", worker.response).innerHTML } }) } else if (/_swf/.test(worker.responseURL)) { // 플래시 연출 worker.abort() find.a("#top").innerText = "플래시 연출 차단됨" } else if (find.a(".event_main_graphic", worker.response)) { // 이벤트 메인 페이지 리다이렉트 (인터벌 시간) xhr.send(home + "mypage", { onload: (worker) => { const countDown = find.a("#produce_count", worker.response).innerText.split(':') const minute = (countDown[0] * 60 + countDown[1] * 1) suspend.start(60, "> 이벤트 진행 시간이 아닙니다. \n무의미한 통신을 차단하기 위해 \n1분 후 재시도 가능하며, \n 다음 라운드 까지 약 " + minute + "분 남았습니다. \n-") } }) } else if (/life_empty/.test(worker.responseURL)) { // 스태미나 부족 worker.abort() let csrf = 0 for (i of stamina) { find.a('#top').innerText = `[${i}] 스테미나 회복 중 \n${suspend.triggerString}` if (i == 'relay') { location = home + "event_produce_box_reward/index?box_round=1" return } else if (csrf = find.a("[name = csrf_test_name]", xhr.send(home + 'item/check/' + i, { async: false }).response)) { xhr.send(home + 'item/use_item', { method: "POST", async: false, data: { 'item_id': i, 'csrf_test_name': csrf.value } }) find.a('#top').innerText = "ready" break } } !csrf && suspend.start(10, "스테미나 회복이 불가능합니다.") } }, onload: (worker) => { // 페이지 로드 완료 if (/通信規制/.test(worker.response)) { // 통신규제 suspend.start(60, "통신규제가 발생했습니다. 1분간 기다려 주세요. \n북마크는 게임 규정을 위반하는 행위입니다.\n.") } else { find.a("#top").innerHTML = find.a("#top", worker.response).innerHTML } }, ontimeout: () => { location = main } }) } if (suspend.working()) { return } if (find.a("#top")) { if (limitPoint || limitDaily) { if (/episode_commu/.test(document.referrer)) { // 점수 제한 설정 시 점수 확인을 위해 에피커뮤 종료 후 이벤트 메인 페이지로 돌아감 location = main return } } if (find.a("#itemSelect")) { // 스폐셜 커뮤 이벤트 페이지 if (/communication_sp/.test(find.a(".commu_type").src) && useSpecial) { let itemMatch = find.a(`input[src *= '${itemMatchTable[useSpecial].selector}']`) ? useSpecial : 1 // [useSpecial] 아이템 사용 가능 여부 확인 find.a("#itemSelect > .m-Btm10").innerText = `${itemMatchTable[itemMatch].info} ${suspend.triggerString}` xhr.send(find.a("#itemSelect > div > form").action, { method: "POST", timeout: 10000, data: { area_id: find.a("[name = area_id]").value, csrf_test_name: find.a("[name = csrf_test_name]").value, max_use_flag: itemMatchTable[itemMatch].max_use_flag, use_item: itemMatchTable[itemMatch].use_item }, onprogress: (worker) => { worker.abort() find.a("#top").innerText = "대기 중" }, ontimeout: () => { location = main } }) } else if (/communication_dr/.test(find.a(".commu_type").src) && useDramatic) { //new DOMParser().parseFromString(".commu_type", 'text/html') let itemMatch = find.a(`input[src *= '${itemMatchTable[useDramatic].selector}']`) ? useDramatic : 1 // [useDramatic] 아이템 사용 가능 여부 확인 find.a("#itemSelect > .m-Btm10").innerText = `${itemMatchTable[itemMatch].info} ${suspend.triggerString}` xhr.send(find.a("#itemSelect > div > form").action, { method: "POST", timeout: 10000, data: { area_id: find.a("[name = area_id]").value, csrf_test_name: find.a("[name = csrf_test_name]").value, max_use_flag: itemMatchTable[itemMatch].max_use_flag, use_item: itemMatchTable[itemMatch].use_item }, onprogress: (worker) => { worker.abort() find.a("#top").innerText = "대기 중" }, ontimeout: () => { location = main } }) } else if (/communication_normal/.test(find.a(".commu_type").src) && useNormal) { let itemMatch = find.a(`input[src *= '${itemMatchTable[useNormal].selector}']`) ? useNormal : 1 // [useNormal] 아이템 사용 가능 여부 확인 find.a("#itemSelect > .m-Btm10").innerText = `${itemMatchTable[itemMatch].info} ${suspend.triggerString}` xhr.send(find.a("#itemSelect > div > form").action, { method: "POST", timeout: 10000, data: { area_id: find.a("[name = area_id]").value, csrf_test_name: find.a("[name = csrf_test_name]").value, max_use_flag: itemMatchTable[itemMatch].max_use_flag, use_item: itemMatchTable[itemMatch].use_item }, onprogress: (worker) => { worker.abort() find.a("#top").innerText = "대기 중" }, ontimeout: () => { location = main } }) } else if (/communication_ex/.test(find.a(".commu_type").src) && useNormal) { xhr.send(find.a("#itemSelect > div > form").action, { method: "POST", timeout: 10000, data: { area_id: find.a("[name = area_id]").value, csrf_test_name: find.a("[name = csrf_test_name]").value, }, onprogress: (worker) => { worker.abort() find.a("#top").innerText = "대기 중" }, ontimeout: () => { location = main } }) } return } if (find.a(".event_main_graphic")) { const limit = [limitDaily, limitPoint] for (i = 0; i < 2; i++) { if (limit[i]) { const point = figure(find.all(".statusArea_produce > .list01")[i].innerText.split('pt')[1]) if (point >= limit[i]) { alert(`[Limit] ${figure(point, ",")} / ${figure(limit[i], ",")} \n목표 점수에 도달하여 정지합니다.`) return } } } } work() } if (/episode_commu_swf/.test(document.URL)) { // 에피커뮤 페이지 window.alert = () => { } if (!(document.title == "Episode")) { document.title = "Episode" //setTimeout(() => { location = main + "play/get_nothing" }, useEpisode ? 10000 : 60000) } if (useEpisode) { const epItemCalculation = () => { const epItemMatchTable = [{}, {}, { small: 1, big: 0 }, { small: 3, big: 0 }, { small: 0, big: 1 }] let itemMatch = 1 if (useEpisode > 1) { const item = { small: figure(find.a(".items:nth-child(1)").innerText), big: figure(find.a(".items:nth-child(2)").innerText) } console.info(figure(find.a(".items:nth-child(1)").innerText), figure(find.a(".items:nth-child(2)").innerText)) if (epItemMatchTable[useEpisode].small <= item.small && epItemMatchTable[useEpisode].big <= item.big) { itemMatch = useEpisode find.a(".items:nth-child(1)").innerText = item.small - epItemMatchTable[useEpisode].small find.a(".items:nth-child(2)").innerText = item.big - epItemMatchTable[useEpisode].big } } return itemMatch } if (useEpisode > 1) { if (!find.a(".items")) { find.a("#mbga-pf-footer").innerText = suspend.triggerString xhr.send(main, { onload: (worker) => { find.a("#mbga-pf-footer").innerHTML = find.a(".event_items", worker.response).innerHTML } }) return } } if (call_select_item) { const episodePlay = () => { const itemValue = itemMatchTable[epItemCalculation()] console.info(itemValue) xhr.send(main + "raid_battle", { method: "POST", data: { area_id: new URLSearchParams(location.href.split("?")[2]).get("area_id"), use_item: itemValue.use_item, max_use_flag: itemValue.max_use_flag, play_scene: new URLSearchParams(location.href.split("?")[2]).get("ep"), csrf_test_name: token.csrf_test_name }, onload: (worker) => { const response = JSON.parse(worker.response) if (response.type == "redirect") { location = main } else { token.csrf_test_name = response.csrf_token_value episodePlay() } } }) } episodePlay() find.a("#container").innerText = suspend.triggerString } } return } if (find.a("#mbga-pf-footer")) { find.a("#mbga-pf-footer").innerText = `${useEpisode ? "고객 운영 사무국 요시나가 입니다." : ""}\n북마크 설정값:\n[limitPoint] ${limitPoint}\n[limitDaily] ${limitDaily}\n[useSpecial] ${useSpecial}\n[useEpisode] ${useEpisode}\n[stamina] ${stamina}\nand I also 아리사 좋아` } if (document.readyState === "complete" && !find.a("#top")) { location = main + "play/get_nothing" } } )();


추천 비추천

1

고정닉 1

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 가족과 완벽하게 손절해야 할 것 같은 스타는? 운영자 24/06/24 - -
AD 호요버스 신작 <젠레스 존 제로> 7월 4일 오픈! 운영자 24/06/24 - -
AD 8번째 엘다인 등장. 영원의 메아리 리뉴아 업데이트 운영자 24/06/27 - -
2743797 록볼넛갤로그로 이동합니다. 22.12.08 15 0
2743795 ㄴ착하면 갤끔 책상다람쥐갤로그로 이동합니다. 22.12.08 10 0
2743794 밀실사건 3중확 전발동 ㅋㅋㅋㅋ [6] ㅇㅈㅅ갤로그로 이동합니다. 22.12.08 45 0
2743793 릴리에 최대 문제점 [3] 맑텗핡궭갤로그로 이동합니다. 22.12.08 45 0
2743791 전 멘헤라계열 좀 별루인 [2] 이브충갤로그로 이동합니다. 22.12.08 46 0
2743790 여기서 슈코담당이 이런거 그려와야하는데 [7] ㅇㅇ(223.62) 22.12.08 124 1
2743789 어 이걸 왜 까먹고 있었지 [4] ㅁㅁ(39.121)갤로그로 이동합니다. 22.12.08 60 0
2743788 체리 체리푸딩갤로그로 이동합니다. 22.12.08 18 0
2743787 비추달지마셈 [3] 책상다람쥐갤로그로 이동합니다. 22.12.08 50 1
2743786 [6] GBA갤로그로 이동합니다. 22.12.08 46 0
2743785 윤둥창 지지율 40프로 찍은거 보면 하야테도 40프로로 1등한다 ㅇㅇ(209.150) 22.12.08 42 0
2743784 키무라 나츠키 떡인지 떴다 ㅇㅇ(14.51) 22.12.08 37 0
2743782 릴리에는 자신의 어두운 힘을 자각하라 [2] π3갤로그로 이동합니다. 22.12.08 61 0
2743781 씹레떠갑ㅂ 책상다람쥐갤로그로 이동합니다. 22.12.08 20 0
2743780 ㄴ진심어린 씹타떡밥이면 자살함 [2] 디사이디드갤로그로 이동합니다. 22.12.08 31 0
2743778 아마 좆데 마지막 유즈 대사... [4] 록볼넛갤로그로 이동합니다. 22.12.08 44 0
2743777 소신발언)젖둥이 정병끼 있는거 보고 좀 호감됨 [4] 벚단갤로그로 이동합니다. 22.12.08 76 0
2743776 고구마 캐는 유키미 코즈에 [1] ㅇㅇ(175.192) 22.12.08 60 0
2743775 누가 문둥이 찾음? [3] 아이돌자매갤로그로 이동합니다. 22.12.08 63 4
2743773 나는 오늘도 씹레 드므므판을 킨다 [3] ㅁㅁ(39.121)갤로그로 이동합니다. 22.12.08 35 0
2743772 라이라씨랑 페이페이 뉴짤 [14] LAYLA갤로그로 이동합니다. 22.12.08 55 1
2743771 신캐들 어그로 끌리는것도 그냥 그럼 ㅇㅇ(223.39) 22.12.08 58 1
2743770 도자기의푸른꽃갤로그로 이동합니다. 22.12.08 32 0
2743769 갤에 둥견 약 18명 [4] 책상다람쥐갤로그로 이동합니다. 22.12.08 117 0
2743768 와꾸 하나로 다해먹는 캐릭터 [1] 빌리진갤로그로 이동합니다. 22.12.08 52 0
2743767 글고보니 저 둥지라면 먹어본 적이 없음 [3] 보라색맛홍차갤로그로 이동합니다. 22.12.08 31 0
2743765 푸키먼 근데 1회차엔딩보고나니까 급의욕떨어지네 [1] 글로벌액티브갤로그로 이동합니다. 22.12.08 29 0
2743764 로코언니 감탄이 절로 나오네 ㅇㅇ(211.248) 22.12.08 36 0
2743763 와꾸하나로 다해먹는거도 불가능은 아니지 씩훈아갤로그로 이동합니다. 22.12.08 49 0
2743762 데비야 추하구나.... [2] 맑텗핡궭갤로그로 이동합니다. 22.12.08 36 0
2743761 다스몰 vs 니가몰ㅋㅋㅋㅋㅋ 생선의극의갤로그로 이동합니다. 22.12.08 21 0
2743760 야구얘기하니 내년에 7위할거같음 오펀스의눈물갤로그로 이동합니다. 22.12.08 29 0
2743759 퇴물아이돌 시호 shiho갤로그로 이동합니다. 22.12.08 26 0
2743758 1차 중확률 콤보 카드 주요어필 엄청 낮네 ㅡㅡ ㅇㅇ(14.52) 22.12.08 32 0
2743757 담당이 한글자로 표현되는 아이돌이 어딧어 하려다가 흠칫함 [3] 여기서만피는꽃갤로그로 이동합니다. 22.12.08 65 0
2743756 노노콘은 얼마나 팔렸나 [2] 책상다람쥐갤로그로 이동합니다. 22.12.08 40 0
2743755 솔직히 욕먹는 캐릭이라도 이렇게 생겼으면 빨아줄만한데 [8] 허니갤로그로 이동합니다. 22.12.08 130 0
2743754 츠무기콘은 몇개 팔렸을까 빌리진갤로그로 이동합니다. 22.12.08 22 0
2743753 오늘은 집가면 그림 안그리고 게임이나 하다 자야지 보라색맛홍차갤로그로 이동합니다. 22.12.08 18 0
2743752 윤둥창 [1] 생선의극의갤로그로 이동합니다. 22.12.08 61 0
2743750 갤놈들이 좋아하는거 다 모였네 ㅁㅁ(39.121)갤로그로 이동합니다. 22.12.08 42 0
2743748 오 세레비 신작에 혼다 나오네 [4] 후라이드치킨갤로그로 이동합니다. 22.12.08 144 12
2743747 나병은 원래부터 있지않았나 책상다람쥐갤로그로 이동합니다. 22.12.08 32 0
2743745 아니 호타루콘보다 젖둥콘이 많이팔림? [5] 한여름의다이아갤로그로 이동합니다. 22.12.08 90 0
2743744 이번작 너트령이랑 더시마사리 있나? [7] KAWAIIIIIIIIIIIIIIII갤로그로 이동합니다. 22.12.08 51 0
2743743 노좆 어그로 끌던 놈이 지지율 드립치니까 자동으로 튀어나오지 [1] ㅇㅇ갤로그로 이동합니다. 22.12.08 77 3
2743742 둥이가 이쁘긴해 ㅇㅇ(223.39) 22.12.08 46 3
2743741 아마나 텐카는 쌍둥이라고불린적 거의업ㅇ는거같은데 [2] 글로벌액티브갤로그로 이동합니다. 22.12.08 75 0
2743740 [4] 생선의극의갤로그로 이동합니다. 22.12.08 58 0
2743737 감도 튀도 뭔가 앰흑같은데 한글자 뭐 없나요 [10] 카레ㄴ갤로그로 이동합니다. 22.12.08 92 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2