디시인사이드 갤러리

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

갤러리 본문 영역

밑에 로컬도장 안 된다는 거 이거 보셈

루시드Lucid갤로그로 이동합니다. 2022.05.09 14:55:09
조회 64 추천 0 댓글 5

javascript: (

    /* ver.1911.1

    https://gall.dcinside.com/m/mobage/4640

    */

    function () {

        var safety = 30;

        var deal = 3000

        var local = {record: 0, use:2}

        var greeting = { use:0, msg:'ありがとうございました!' };

        var energy = [0]

        var home = "http://sp.pf.mbga.jp/12008305/?guid=ON&url=http://mobamas.net/idolmaster/"

        var main = home + "battles/";

        function find(s) { return document.querySelector(s); }

        function text(s, e, x) { return (e ? find(s).textContent.split(e)[x] : find(s).textContent) || ''}

        function number(s, e, x) { return ((e ? text(s).split(e)[x] : text(s)) || '0').replace(/[^0-9]/g, '') * 1 }

        function value(s) { return find(s) ? find(s).value : 0}

        const send = (type, url, request) => {

            const option = request || {}

            const form = new FormData()

            const xhr = new XMLHttpRequest()

            for (param in option.data) { form.append(param, option.data[param]) }

            xhr.open(type, url, option.async != undefined ? option.async : true)

            option.onprogress && (xhr.onprogress = (res) => { option.onprogress(res) })

            option.onload && (xhr.onload = (res) => { option.onload(res.target) })

            xhr.send(form)

            return xhr

        }

        function reload(target, action) {

            $('#top').load(main + target + " h1#JtextLimit, section.bg_gray_s.m-Top5.m-Btm10.m-Top8, form[action *= battle_processing]:eq(0), [value = 回復する], a[href *= 'profile'], table:nth-child(1), table:nth-child(4), form[action *= use_item]:eq(0)", function (response) {

                action && action()

            });

        }

        function index() {

            if (local.record || local.use) {

                var last = localStorage.getItem('vove.dojo.last') || '0000000000'

                var date = new Date()

                var now = [date.getFullYear(), date.getMonth() + 1, date.getDate(), date.getHours()];

                for (i in now) {

                    if (now[i] < 10) {

                        now[i] = "0" + now[i];

                    }

                    now[i] += ''

                }

                var now = now[0] + now[1] + now[2] + now[3]

                var nowdate = 1 * now.slice(0, 8),

                    nowhours = 1 * now.slice(8),

                    lastdate = 1 * last.slice(0, 8),

                    lasthours = 1 * last.slice(8)

                if ((nowdate > lastdate && nowhours >= 5) || (nowdate == lastdate && nowhours >= 5 && lasthours < 5)) {

                    console.log('reset')

                    if (local.use == 2) {

                        send("GET", "https://imcg.pink-check.school/api/v1/dojo?minLevel=300", {

                            async: false,

                            onload: (res) => {

                                const api = JSON.parse(res.response)

                                api.forEach((apiDojo) => {

                                    let found = DJ.some((localDojo) => {

                                        if (localDojo.id * 1 == apiDojo.mobageId * 1) {

                                            localDojo.lv = apiDojo.level

                                            localDojo.title = apiDojo.unitName

                                            return true

                                        }

                                    })

                                    if (!found) {

                                        DJ.push({ enable: 1, failed: 0, id: apiDojo.mobageId, lv: apiDojo.level, title: apiDojo.unitName })

                                    }

                                })

                                console.log(DJ)

                            }

                        })


                    }

                    for (var i = 0; i < DJ.length; i++) {

                        if (!DJ[i].id) {

                            DJ.splice(i, 1)

                        }

                        for (var j = i + 1; j < DJ.length; j++) {

                            if (DJ[i].id === DJ[j].id) {

                                DJ[i].failed > DJ[j].failed ? DJ.splice(j, 1) : DJ.splice(i, 1)

                            }

                        }

                    }

                    for (i = 0; i < DJ.length; i++) {

                        DJ[i].enable = 1

                    }

                    DJ.sort((a, b) => { return b.enable - a.enable || b.lv - a.lv || a.failed - b.failed });

                    localStorage.setItem('vove.dojo', JSON.stringify(DJ))

                }

                localStorage.setItem('vove.dojo.last', now)

            }

            var index = - 1

            for (i = 0; i < DJ.length; i++) {

                if (DJ[i].id == id) {

                    var index = i

                    break

                }

            }

            return index

        }

        function next(index, failed) {

            document.title = ">>>>"

            if (failed || local.record == 2) {

                if (index == - 1) {

                    DJ.push({ enable: 0, lv: level, id: id, failed: failed, title: title })

                    localStorage.setItem('vove.dojo', JSON.stringify(DJ))

                    var index = DJ.length - 1

                }

                if (index + 1) {

                    if (DJ[index].failed < failed) {

                        DJ[index].failed = failed

                    }

                    DJ[index].lv = level

                    DJ[index].title = title

                }

            }

            if (index + 1) {

                DJ[index].enable = 0

            }

            if (local.use) {

                DJ.sort((a, b) => { return b.enable - a.enable || b.lv - a.lv || a.failed - b.failed });

                localStorage.setItem('vove.dojo', JSON.stringify(DJ))

                for (i = 0; i < DJ.length; i++) {

                    if (DJ[i].enable && DJ[i].failed < deal) {

                        $('<input/>', { value: '送信中' }).appendTo('#top');

                        reload('battle_check/' + DJ[i].id, function () { document.title = "Ready" })

                        return

                    }

                }

                alert('모든 로컬 도장을 사용했습니다.')

            }

            window.close()

        }

        if (document.title == ">>>>" || find("[value = 送信中]") || document.readyState != 'complete') {

            return

        }

        if (find("#dojos")) {

            find("#dojos > div:nth-child(1) > a").click();

            document.title = ">>>>";

            setTimeout(() => { document.title = "Ready" }, 200);

        } else if (find("#dojoList")) {

            document.title = ">>>>";

            setTimeout(() => { document.title = "Ready" }, 200);

            document.querySelectorAll('#dojoList > tbody')[1].querySelector('a').click()

            document.querySelectorAll('#dojoList > tbody')[1].remove()

        } else if (find('div[onclick ^= navigateToDojo]')) {

            document.title = ">>>>";

            setTimeout(() => { document.title = "Ready" }, 200);

            find('div[onclick ^= navigateToDojo]').click();

        }else if (find("h1#JtextLimit")) {

            var DJ = JSON.parse(localStorage.getItem('vove.dojo') || '[]')

            if (find("a[href *= 'profile']")) {

                var id = decodeURIComponent(find("a[href *= 'profile']").href).split(/[/?]/)[11]

                find('#mbga-pf-footer').innerText = id

                var myLevel = number("td[align='left']", '\n', 2)

                var level = number("td[align='right']", '\n', 2)

                var title = text("td[align='right']", '\n', 1)

            }

            if (find("[value = LIVEバトル開始]")) {

                if (safety) {

                    if (value("[name = my_param_attack]") * 1 - number(".t-Cnt > div > span.red_mild") > safety) {

                        alert("[Safety] 사용 코스트가 " + safety + "를 초과했습니다.");

                        return

                    }

                }

                var gap = level / myLevel

                if (first = !(document.title * 1)) {

                    var index = index()

                    if (gap < 0.7 || /休業/.test(title) || /休止/.test(title) || ((index + 1) && (DJ[index].failed > deal))) {

                        next(index, 0)

                        return

                    }

                    document.title = id

                }

                find("[value = LIVEバトル開始]").value = '送信中';

                let failed = 0

                send('POST', main + "battle_processing", {

                    async: first && local.record ? false : true,

                    data: {

                        'enemy_id': value("[name = 'enemy_id']"),

                        'csrf_test_name': value("[name = 'csrf_test_name']")

                    },

                    onload: () => {

                        if (first && local.record) {

                            if (/start_lose/.test(send('GET', main + "win_or_lose?enemy_id=" + id, { async: false }).response) ? 1 : 0) {

                                document.title == "패배한 도장을 기록합니다."

                                failed = send('GET', main + "flash?enemy_id=" + id, { async: false }).response.split('self')[2].replace(/[^0-9]/g, "") * 1

                                next(index, failed)

                                throw new Error('this is not dojo. failed deal: ' + failed)

                                return

                            }

                        }

                    }

                })

                failed || reload("battle_check/" + id);

                return

            } else if (find("[value = 回復する]")) {

                find("[value = 回復する]").value = '送信中';

                for (i of energy) {

                    if (csrf = $(send('GET', home + 'item/check/' + i, { async: false }).response).find("[name = csrf_test_name]").val()) {

                        send('POST', home + 'item/use_item', {

                            async: false,

                            data: {

                                'item_id': i,

                                'csrf_test_name': csrf

                            },

                            onload: () => {

                                setTimeout(() => { reload('battle_check/' + find('#mbga-pf-footer').innerText) }, 100)

                            }

                        })

                        return

                    }

                }

                alert('공격 코스트 회복 아이템이 없어 보입니다.')

            }

            if ((document.title * 1) && greeting.use) {

                document.title = 'Now greeting...';

                find("#top").innerText = '';

                send('POST', home + "cheer/send_check", {

                    async: false,

                    data: {

                        'to_viewer_id': id,

                        'message': greeting.msg

                    }

                })

            }

            next(index(), 0)

            return

        }

    }

)();



나도 같은 문제 있었음

결국 어디가 문제였는지는 모르겠는데

암튼 원래 쓰던 스크립트로 쓰니까 해결됐었음


도장 스크립트에 복붙하셈

추천 비추천

0

고정닉 0

0

댓글 영역

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

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 소속 연예인 논란에 잘 대응하지 못하는 것 같은 소속사는? 운영자 25/04/21 - -
AD 작혼X페스나 헤븐즈필 콜라보 개시! 운영자 25/04/22 - -
1936060 vr로 할수있는 자유도 높은 포켓몬 게임 안나오나 [3] 하야미카나데.갤로그로 이동합니다. 22.07.09 35 0
1936056 ㅋㅋㅋㅋ사요코 이번스알 [2] 도자기의푸른꽃갤로그로 이동합니다. 22.07.09 44 0
1936055 vr챗에 던전도 없고 사냥 기능도 없다는데 왜 함 [1] ㅇㅇ(118.46) 22.07.09 23 0
1936054 말안통하는놈이랑 사이버렉카가 문제지 [9] 흑단갤로그로 이동합니다. 22.07.09 64 0
1936052 아마나 응딩이 이제제발그만갤로그로 이동합니다. 22.07.09 29 0
1936051 씹타 버리고 씹레로 갈아탈 생각인데 [2] ㅇㅇ(61.97) 22.07.09 47 0
1936049 보빔은 상관 없는데 똥꼬충은 무조건 반대임 쵸코코로네갤로그로 이동합니다. 22.07.09 28 1
1936046 와 오늘날씨 좀 살만하네 [2] 쉽알못갤로그로 이동합니다. 22.07.09 33 0
1936045 좀 밝고 재미있는 애니 없나 [6] 코즈키오뎅갤로그로 이동합니다. 22.07.09 75 0
1936043 씹레룸하니까 생각난건데 타워이벤 표절임 작약갤로그로 이동합니다. 22.07.09 41 0
1936041 아마나뉴짤 [1] 도자기의푸른꽃갤로그로 이동합니다. 22.07.09 55 0
1936040 강제자위무한절정쇼가보고싶다 [2] 설탕물갤로그로 이동합니다. 22.07.09 48 0
1936039 이게 vr챗 일상 대화라면서 [3] ㅇㅇ(118.46) 22.07.09 48 0
1936038 제 자랑스러운 씹레룸임 책상다람쥐갤로그로 이동합니다. 22.07.09 29 0
1936036 애들아 박원순 무슨일 있냐? [4] ㅇㅇ갤로그로 이동합니다. 22.07.09 82 1
1936035 룸 이거 거의 2년째 쓰는거같은데 [2] 도자기의푸른꽃갤로그로 이동합니다. 22.07.09 47 0
1936033 짤쟁이가 뜬금 정치인 리트윗하길래 놀랐네 [1] 유코갤로그로 이동합니다. 22.07.09 72 0
1936029 이 손가락 요즘 많이 보이는듯 [1] ㅇㅇ(118.46) 22.07.09 65 0
1936028 코미치이새끼는 모모코만그려야되는데 [1] ㅇㅇ갤로그로 이동합니다. 22.07.09 46 0
1936027 진짜 게이는 왜안보임 [4] ㅇㅇㅇㅇ갤로그로 이동합니다. 22.07.09 44 0
1936026 코코나츠 노트모양 コココ 뭐냐고 ㅇㅇ(221.151) 22.07.09 31 0
1936022 저 일뽕이랑 빵이랑 진짜 동일인인가 [4] Tickin갤로그로 이동합니다. 22.07.09 67 1
1936021 당분간 씹레룸 메인은 이거임 [3] 오버랩갤로그로 이동합니다. 22.07.09 48 0
1936020 미합중국 대통령 호소인 작약갤로그로 이동합니다. 22.07.09 31 0
1936019 보기만 해도 누구 담당인지 알아버리는 룸,, [7] 딸기맨갤로그로 이동합니다. 22.07.09 93 0
1936018 기원의 망딩 lycoris갤로그로 이동합니다. 22.07.09 28 0
1936016 안녕하세요 (구) 이카루가 루카입니다 [6] 흑단갤로그로 이동합니다. 22.07.09 67 0
1936015 게이풉 창녀들이 백날 뛰어다녀 봤자 순헐 버튜버에게 안되는 이유.txt ㅇㅇ(61.77) 22.07.09 51 1
1936014 씨발 롤중계를 하지말던가 [3] ㅇㅇ(118.235) 22.07.09 119 14
1936012 두창견들 똥주빈 선례도 있어서 유독 더 기분나쁨 [3] 아트리움갤로그로 이동합니다. 22.07.09 68 0
1936011 아베가 원래 나라현에 갈 예정이 아니였구나 하야미카나데.갤로그로 이동합니다. 22.07.09 68 0
1936010 뉴비 씹레 곧 100렙됨 책상다람쥐갤로그로 이동합니다. 22.07.09 29 0
1936009 탑건 4dx 그렇게 쩜? ㅇㅇ(116.32) 22.07.09 34 0
1936007 나 인터넷엔젤 초텐인데. [3] 만신갤로그로 이동합니다. 22.07.09 59 0
1936005 룸라이크다해주고 싶어도 너무 귀찮아 [1] 도자기의푸른꽃갤로그로 이동합니다. 22.07.09 21 0
1936004 근데 닉에 레몬맛 들어가는 개미담당 탈갤함? [1] ㅇㅇ(39.7) 22.07.09 57 0
1936003 룸라이크 요즘은 교환하는 갤나까마들한테만 해줌 YUI☆MARY♪갤로그로 이동합니다. 22.07.09 25 0
1936002 근데 딴건몰라도 요즘 단어차단은 필수임 [4] 아이올라이트갤로그로 이동합니다. 22.07.09 70 0
1936000 붕어인천컷보고 다른애들 인천컷보다가 어이털렸다니까 [2] 도자기의푸른꽃갤로그로 이동합니다. 22.07.09 48 0
1935999 린제반고닉 진짜 많이 차단했나보네 ㅇㅇ(223.38) 22.07.09 74 0
1935997 룸 캡쳐중에 젤 마음에 드는 짤 카레ㄴ갤로그로 이동합니다. 22.07.09 40 0
1935995 베니스 진입 ㅇㅇ갤로그로 이동합니다. 22.07.09 25 0
1935994 나도 이제 페이페이의 노예가 되기로함 [1] Tickin갤로그로 이동합니다. 22.07.09 27 0
1935993 메어리가 유이 계속 언급하고 같이 나오니까... YUI☆MARY♪갤로그로 이동합니다. 22.07.09 29 0
1935988 난 갤도 자주 안오는대 차단당한거같음 [3] 대충짓고갤로그로 이동합니다. 22.07.09 43 0
1935987 하트 담당들 보면 좀 궁금한게 있음 [3] ㅇㅇ(146.70) 22.07.09 94 2
1935986 똥꼬충들 뻔뻔하게 굴땐 좀 차단마려움 [2] 노노귀여운갤로그로 이동합니다. 22.07.09 64 0
1935985 빵집 뭔가 갈수록 그림체가 변하는거같네 책도둑갤로그로 이동합니다. 22.07.09 48 0
1935984 ㅋㅋㅋㅋㅋㅋ 이점수를 찍어도 인천안정권까지 10만점 더 찍어야하다니 [2] 도자기의푸른꽃갤로그로 이동합니다. 22.07.09 51 0
1935983 전쟁터지면 공익도 끌려나가려나 [6] 만신갤로그로 이동합니다. 22.07.09 48 0
뉴스 “첫 여행 사진..4월 다툼 끝” 강은비, ‘얼짱 출신’ 변준필과 신혼 일상 공개 디시트렌드 14:00
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2