매크로 커뮤니티

조회 수 1021 추천 0 댓글 2

제가 완전 아무것도 몰라서 파일 구하면 복사 불어넣기로 변형해서 쓰고 있는데
이거만큼은 못 구해서 좀 알고 싶습니다ㅠㅠ


  • profile
    버슴커 2024.11.07 16:20

    오잉 gui에 대한 사용방법이 내장함수나 

    사용 팁에 많이 있던데요.
    혹시 윈도우 시간이 보이는쪽 트레이아이콘으로 이미지맥스 보이시면 

    거기에 마우스 오른쪽 누르면 

    스크립트에 prescript 편집 하고 
    그곳에 gui를 그려넣으시면되요.

    카페에 팁에 jp님이 남겨주신 자료들 보시고 하나씩 그려 넣으셔야해요.
    rgmjRn9.gif


  • profile
    버슴커 2024.11.07 16:23
    -- 프로그램 실행시 전처리 스크립트-- 메인 GUI 생성

    -- 메인 GUI 생성
    gui1 = '매크로 설정'
    GUIAddTab(gui1)
    GUISetCurTab(gui1)


    --매크로 기능 선택
    x, y, w, h = 8, 10, 345, 20
    GUIAddGroup(x, y, w, h, '매크로 선택')
    item_table = {}
    item_enable_table = {}
    stage_table = {}

    GUIAddRadio(x+2, y+5, -1, -1, '아이템계 ', 'SelectMacroFunc', 'mMacroFunc')
    GUIAddRadio(x+87, y+5, 150, -1, '스테이지 자동주회 ', 'SelectMacroFunc')
    GUIAddRadio(x+220, y+5, 130, -1, '레이드 자동반복 ', 'SelectMacroFunc')
    function SelectMacroFunc()
    if mMacroFunc == 0 then -- 아이템계
    for i = 1, #item_table do
    GUIItemShow(item_table[i],true)
    end
    for i = 1, #item_enable_table do
    GUIItemShow(item_enable_table[i],true)
    end
    for i = 1, #stage_table do
    GUIItemShow(stage_table[i],false)
    end
    elseif mMacroFunc == 1 then --스테이지 자동주회
    for i = 1, #stage_table do
    GUIItemShow(stage_table[i],true)
    end
    for i = 1, #item_enable_table do
    GUIItemShow(item_enable_table[i],false)
    end
    for i = 1, #item_table do
    GUIItemShow(item_table[i],false)
    end
    elseif mMacroFunc == 2 then --레이드
    for i = 1, #item_enable_table do
    GUIItemShow(item_enable_table[i],false)
    end
    for i = 1, #item_table do
    GUIItemShow(item_table[i],false)
    end
    for i = 1, #stage_table do
    GUIItemShow(stage_table[i],false)
    end
    else --그 외
    for i = 1, #stage_table do
    GUIItemShow(stage_table[i],false)
    end
    for i = 1, #item_enable_table do
    GUIItemShow(item_enable_table[i],false)
    end
    for i = 1, #item_table do
    GUIItemShow(item_table[i],false)
    end
    end


    end


    --아이템계
    function ItemMenu()
    x, y, w, h = 8, 60, 345, 208
    table.insert(item_table,
    GUIAddGroup(x, y, w, h, '아이템계 설정')
    )
    table.insert(item_table,
    GUIAddCheck(x+2, y+5, -1, -1, '레전드 획득 시 알림음 재생',nil, 'mLegendAlarm')
    )
    id0 = GUIAddCheck(x+252, y+5, -1, -1, '단순비교모드','CompareMode', 'mCompare')
    table.insert(item_table,
    id0
    )
    table.insert(item_table,
    GUIAddText(x+2, y+30, -1, -1, '획득할 상자 등급 선택:')
    )
    table.insert(item_table,
    GUIAddCombo(x+132, y+30, 80, -1, {'커먼이상','레어이상','레전드','미획득'}, nil, 'mDropBox')
    )
    table.insert(item_table,
    GUIAddCheck(x+224, y+30, -1, -1, '100층 강제 레전드 ',nil, 'mForceLegendPick')
    )

    table.insert(item_enable_table,
    GUIAddText(x+2, y+55, -1, -1, '입장할 장비 등급 선택:')
    )

    table.insert(item_table,
    GUIAddText(x+195, y+55, -1, -1, '우선순위:')
    )
    table.insert(item_table,
    GUIAddRadio(x+250, y+55, -1, -1, '무기',nil, 'mSelectEquip')
    )

    table.insert(item_table,
    GUIAddRadio(x+295, y+55, 55, -1, '방어구',nil)
    )

    table.insert(item_enable_table,
    GUIAddCombo(x+132, y+55, -1, -1, {'커먼','레어','레전드'}, nil, 'mEquipGrade')
    )
    id1 = GUIAddText(x+2, y+80, 210, -1, '입장할 장비 레벨 또는 랭크 입력: 최소')
    table.insert(item_enable_table,
    id1
    )
    id2 = GUIAddEdit(x+212, y+80, 35, -1, '', nil, 'mEquipLowLv')
    table.insert(item_enable_table,
    id2
    )

    id3 = GUIAddText(x+245, y+80, -1, -1, '부터 최대')
    table.insert(item_enable_table,
    id3
    )
    id4 = GUIAddEdit(x+300, y+80, 35, -1, '', nil, 'mEquipHighLv')
    table.insert(item_enable_table,
    id4
    )
    id5 = GUIAddCheck(x+2, y+105, 130, -1, '장비 상세 체크: 레벨', 'InfoDialog', 'mAddCheck')
    table.insert(item_enable_table,
    id5
    )
    win = GUIAddDialog('안내', 'info', 720, 160)
    GUIAddText(win, 0, 20, 650, -1, '유사도를 낮게 잡을 경우 동일 장비를 2~3번 클릭하나 높게 잡으면 놓치는 장비가 생기므로 2~3번 클릭하는건 정상으로 생각하여도 됩니다.')
    GUIAddText(win, 0, 55, 650, -1, '클릭이 아예 이상할 경우 아이템계 폴더의 (커먼장비), (레어장비), (레전드장비) 설정 필요')
    GUIAddText(win, 0, 75, -1, -1, '*이미지 유사도 조절, 이미지 재편집')

    id6 = GUIAddEdit(x+130, y+105, 35, -1, '', nil, 'mAddLowLv')
    id7 = GUIAddText(x+165, y+105, -1, -1, '~')
    id8 = GUIAddEdit(x+175, y+105, 35, -1, '', nil, 'mAddHighLv')
    id9 = GUIAddText(x+215, y+105, -1, -1, ', 랭크')
    id10 = GUIAddEdit(x+250, y+105, 35, -1, '', nil, 'mAddLowRank')
    id11 = GUIAddText(x+285, y+105, -1, -1, '~')
    id12 = GUIAddEdit(x+300, y+105, 35, -1, '', nil, 'mAddHighRank')

    table.insert(item_enable_table,
    id6
    )
    table.insert(item_enable_table,
    id7
    )
    table.insert(item_enable_table,
    id8
    )
    table.insert(item_enable_table,
    id9
    )
    table.insert(item_enable_table,
    id10
    )
    table.insert(item_enable_table,
    id11
    )
    table.insert(item_enable_table,
    id12
    )

    table.insert(item_table,
    GUIAddText(x+2, y+130, -1, -1, '상자 획득 시:')
    )
    table.insert(item_table,
    GUIAddRadio(x+80, y+130, -1, -1, '나가기 ', nil, 'mBoxRadio')
    )
    table.insert(item_table,
    GUIAddRadio(x+140, y+130, -1, -1, '계속 진행 ', nil)
    )

    table.insert(item_enable_table,
    GUIAddText(x+227, y+135, -1, 15, '스크롤 시도 횟수:')
    )
    table.insert(item_enable_table,
    GUIAddEdit(x+322, y+130, 30, -1, '', nil, 'mScrollMax')
    )

    table.insert(item_table,GUIAddGroup(x+6, y+162, 100, 40, ''))

    table.insert(item_table,
    GUIAddCheck(x+6, y+152, -1, 15, '스킬 사용',nil, 'skill_used')
    )
    table.insert(item_table,
    GUIAddRadio(x+6, y+170, -1, 15, '스킬1', nil, 'skill')
    )
    table.insert(item_table,
    GUIAddRadio(x+56, y+170, -1, 15, '스킬2', nil)
    )
    table.insert(item_table,
    GUIAddRadio(x+6, y+192, -1, 15, '스킬3', nil)
    )
    table.insert(item_table,
    GUIAddRadio(x+56, y+192, -1, 15, '스킬4', nil)
    )

    table.insert(item_table,GUIAddGroup(x+126, y+162, 150, 20, ''))

    table.insert(item_table,
    GUIAddCheck(x+126, y+152, -1, 15, '아군 선택',nil, 'char_select_used')
    )
    table.insert(item_table,
    GUIAddRadio(x+126, y+170, -1, 15, '1', nil, 'chara_select')
    )
    table.insert(item_table,
    GUIAddRadio(x+156, y+170, -1, 15, '2', nil)
    )
    table.insert(item_table,
    GUIAddRadio(x+186, y+170, -1, 15, '3', nil)
    )
    table.insert(item_table,
    GUIAddRadio(x+216, y+170, -1, 15, '4', nil)
    )
    table.insert(item_table,
    GUIAddRadio(x+246, y+170, -1, 15, '5', nil)
    )


    table.insert(item_table,
    GUIAddText(x, y+220, -1, -1, '획득한 장비 갯수:')
    )
    get_equip1 = GUIAddEdit(x+100, y+220, 30, -1, '0', nil, 'mGetCommon')
    get_equip2 = GUIAddEdit(x+130, y+220, 30, -1, '0', nil, 'mGetRare')
    get_equip3 = GUIAddEdit(x+160, y+220, 30, -1, '0', nil, 'mGetLegend')
    table.insert(item_table,get_equip1)
    table.insert(item_table,get_equip2)
    table.insert(item_table,get_equip3)


    table.insert(item_table,
    GUIAddCheck(x+175, y+193, -1, -1, '40랭크만 선택(OCR 미사용)', 'InfoDialog', 'mNoOCR')
    )

    end

    function CompareMode(arg)
    if mCompare == 1 then
    for i = 1, #item_enable_table do
    GUIItemEnable(item_enable_table[i],false)
    end
    else
    for i = 1, #item_enable_table do
    GUIItemEnable(item_enable_table[i],true)
    end
    InfoDialog()
    end
    end

    function InfoDialog(arg)
    --print(mAddCheck)
    if mNoOCR == 1 then
    GUIItemEnable(id0,false)
    GUIItemEnable(id1,false)
    GUIItemEnable(id2,false)
    GUIItemEnable(id3,false)
    GUIItemEnable(id4,false)
    GUIItemEnable(id5,false)
    GUIItemEnable(id6,false)
    GUIItemEnable(id7,false)
    GUIItemEnable(id8,false)
    GUIItemEnable(id9,false)
    GUIItemEnable(id10,false)
    GUIItemEnable(id11,false)
    GUIItemEnable(id12,false)
    elseif mAddCheck == 1 then
    GUIItemShow(win, true)
    GUIItemEnable(id0,true)
    GUIItemEnable(id1,false)
    GUIItemEnable(id2,false)
    GUIItemEnable(id3,false)
    GUIItemEnable(id4,false)
    GUIItemEnable(id5,true)
    GUIItemEnable(id6,true)
    GUIItemEnable(id7,true)
    GUIItemEnable(id8,true)
    GUIItemEnable(id9,true)
    GUIItemEnable(id10,true)
    GUIItemEnable(id11,true)
    GUIItemEnable(id12,true)
    else
    GUIItemEnable(id0,true)
    GUIItemEnable(id1,true)
    GUIItemEnable(id2,true)
    GUIItemEnable(id3,true)
    GUIItemEnable(id4,true)
    GUIItemEnable(id5,true)
    GUIItemEnable(id6,true)
    GUIItemEnable(id7,true)
    GUIItemEnable(id8,true)
    GUIItemEnable(id9,true)
    GUIItemEnable(id10,true)
    GUIItemEnable(id11,true)
    GUIItemEnable(id12,true)
    end
    end

    ItemMenu()
    -- 아이템계 끝


    --자동 스테이지
    function StageMenu()
    x, y, w, h = 8, 60, 345, 40
    table.insert(stage_table,
    GUIAddGroup(x, y, w, h, '자동 스테이지 설정')
    )
    table.insert(stage_table,
    GUIAddCheck(x+2, y+5, -1, -1, '행동력 물약 자동 사용',nil, 'potion')
    )
    table.insert(stage_table,
    GUIAddCheck(x+2, y+25, 170, -1, '스테이지 반복하기 좌표 x:',nil, 'stage_repeat')
    )
    table.insert(stage_table,
    GUIAddEdit(x+178, y+25, 35, -1, '', nil, 'stage_coord_x')
    )
    table.insert(stage_table,
    GUIAddText(x+223, y+25, -1, -1, 'y:')
    )
    table.insert(stage_table,
    GUIAddEdit(x+237, y+25, 35, -1, '', nil, 'stage_coord_y')
    )
    end
    StageMenu()
    -- 자동 스테이지 끝

    --레이드
    function RaidMenu()

    end
    RaidMenu()
    -- 레이드 끝

    x, y, w, h = 8, 280, 345, 20
    GUIAddText(x+240, y, -1, -1, '해상도: 1080x1920 ')
    GUIAddText(x+0, y+20, -1, -1, '커먼상자~레전드상자 재편집 必')
    --버전
    GUIAddText(x+320, y+20, -1, -1, 'v1.0')


    -- 윈도우 앱 실행
    function runApp(_string_path)
    --os.execute('start "" "'.._string_path..'""')
    os.execute('start "" '.._string_path)
    --print('실행: '..tostring(_string_path))
    end

    -- ## 앱플레이어 GUI
    appplayer_gui = '앱플레이어 설정'
    GUIAddTab(appplayer_gui)
    GUISetCurTab(appplayer_gui)

    -- # 앱플레이어 선택 그룹
    x, y, w, h = 5, 10, 350, 25
    GUIAddGroup(x, y, w, h, '앱플레이어 선택')
    GUIAddRadio(x + 0, y + 6, -1, -1, 'Nox ', nil, 'mPlayerRadio')
    GUIAddRadio(x + 60, y + 6, -1, -1, 'LD ', nil)
    GUIAddRadio(x + 120, y + 6, -1, -1, '그 외(미지원)', nil)

    -- # 앱플레이어 경로 그룹
    x, y, w, h = 5, 60, 350, 25
    GUIAddGroup(x, y, w, h, '앱플레이어 경로 *\\는 두번 입력 必 ex)c:\\\\folder\\\\')
    ld_path_edit_id = GUIAddEdit(x + 0, y + 8, 340, -1, 'c:\\\\folder\\\\', 'mPlayerPath', 'ld_path_edit')
    function mPlayerPath()
    if mPlayerRadio == 0 then
    mPlayerConsole = 'NoxConsole.exe'
    elseif mPlayerRadio == 1 then
    mPlayerConsole = 'ldconsole.exe'
    else
    mPlayerConsole = '모름'
    end
    --print(mPlayerConsole)
    ld_path_edit = '"'..ld_path_edit..mPlayerConsole..'"'
    print(ld_path_edit)
    end


    -- # 앱플레이어 기본 설정 그룹
    x, y, w, h = 5, 110, 350, 25
    GUIAddGroup(x, y, w, h, '앱플레이어 설정')
    ld_index_text_id = GUIAddText(x + 0, y + 8, -1, -1, '번호')
    ld_index_combo_table = {
    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
    '10', '11', '12', '13', '14', '15', '16', '17', '18', '19',
    '20', '21', '22', '23', '24', '25', '26', '27', '28', '29',
    '30', '31', '32', '33', '34', '35', '36', '37', '38', '39',
    '40', '41', '42', '43', '44', '45', '46', '47', '48', '49'
    }
    ld_index_combo_id = GUIAddCombo(x + 35, y + 8, -1, -1, ld_index_combo_table, nil, 'ld_index_combo')

    ld_app_text_id = GUIAddText(x + 110, y + 8, -1, -1, '앱패키지')
    ld_app_edit_id = GUIAddEdit(x + 165, y + 8, 180, -1, 'com.amazingcat.srotd.kr', nil, 'ld_app_edit')

    -- # 앱플레이어 제어 기능 그룹
    x, y, w, h = 5, 160, 180, 30
    GUIAddGroup(x, y, w, h, '앱플레이어 제어 테스트')

    -- 앱플레이어 종료 함수
    function ld_quit()
    if mPlayerRadio == 0 then
    runApp(ld_path_edit..' quit -index:'..ld_index_combo)
    elseif mPlayerRadio == 1 then
    runApp(ld_path_edit..' quit --index '..ld_index_combo)
    else
    end
    -- print(ld_path_edit..' quit --index '..ld_index_combo)
    end

    -- 앱플레이어 실행+앱실행 함수
    function ld_launchex()
    if mPlayerRadio == 0 then
    --runApp(ld_path_edit..' reboot -index:'..ld_index_combo)
    runApp(ld_path_edit..' action -index:'..ld_index_combo..' -key:call.reboot -value:'..ld_app_edit)
    --runApp(ld_path_edit..' runapp -index:'..ld_index_combo..' -packagename:'..ld_app_edit)
    elseif mPlayerRadio == 1 then
    ld_quit()
    sleep_ms(5000)
    runApp(ld_path_edit..' launchex --index '..ld_index_combo..' --packagename '..ld_app_edit)
    else
    end
    sleep_ms(60000)
    -- print(ld_path_edit..' launchex --index '..ld_index_combo..' --packagename '..ld_app_edit)
    end

    -- 앱플레이어 앱실행 함수
    function ld_runapp()
    ld_killapp()
    sleep_ms(1000)
    if mPlayerRadio == 0 then
    runApp(ld_path_edit..' runapp -index:'..ld_index_combo..' -packagename:'..ld_app_edit)
    elseif mPlayerRadio == 1 then
    runApp(ld_path_edit..' runapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
    else
    end
    -- print(ld_path_edit..' runapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
    end

    -- 앱플레이어 앱종료 함수
    function ld_killapp()
    --print(ld_path_edit)
    if mPlayerRadio == 0 then
    runApp(ld_path_edit..' killapp -index:'..ld_index_combo..' -packagename:'..ld_app_edit)
    elseif mPlayerRadio == 1 then
    runApp(ld_path_edit..' killapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
    else
    end
    -- print(ld_path_edit..' killapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
    end

    --ld_launch_btn_id = GUIAddButton(x - 5, y + 8, 90, -1, '앱플 시작', 'ld_launch')
    --ld_quit_btn_id = GUIAddButton(x + 85, y + 8, 90, -1, '앱플 종료', 'ld_quit')
    --ld_reboot_btn_id = GUIAddButton(x + 175, y + 8, 90, -1, '앱플 재시작', 'ld_reboot')
    ld_launchex_btn_id = GUIAddButton(x - 5, y + 8, 90, -1, '앱플+앱재실행', 'ld_launchex')
    ld_runapp_btn_id = GUIAddButton(x + 90, y + 8, 90, -1, '앱재실행', 'ld_runapp')
    --ld_runapp_btn_id = GUIAddButton(x - 5, y + 34, 90, -1, '앱실행', 'ld_runapp')
    --ld_killapp_btn_id = GUIAddButton(x + 85, y + 34, 90, -1, '앱종료', 'ld_killapp')


    --[[# 앱플레이어 자동실행 옵션 그룹
    function 초기설정으로 옮기기()
    if ld_autorun_check == 1 then
    --ld_launchex()
    end
    end
    ]]--

    x, y, w, h = 5, 220, 230, 55
    GUIAddGroup(x, y, w, h, '재실행 설정')
    --ld_autorun_check_id = GUIAddCheck(x + 0, y + 8, -1, -1, '앱플+앱', 'mPlayerReset', 'ld_autorun_check')
    --GUIAddEdit(x + 70, y + 8, 40, -1, '120', nil, 'mPlayerResetTime')
    --GUIAddText(x + 100, y + 8, -1, -1, '분마다 재실행하기')
    ld_autorun_check_id = GUIAddCheck(x + 0, y + 8, -1, -1, '2분간 멈춰있을 경우 앱플+앱 재실행', 'mPlayerReset', 'ld_autorun_check')
    --GUIAddEdit(x + 70, y + 8, 40, -1, '120', nil, 'mPlayerResetTime')
    --GUIAddText(x + 100, y + 8, -1, -1, '분마다 재실행하기')

    --ld_autoapp_check_id = GUIAddCheck(x + 0, y + 30, -1, -1, '앱', 'mPlayerReset', 'ld_autoapp_check')
    --GUIAddEdit(x + 35, y + 30, 40, -1, '120', nil, 'mAppResetTime')
    --GUIAddText(x + 65, y +30, -1, -1, '분마다 재실행하기')
    ld_autoapp_check_id = GUIAddCheck(x + 0, y + 30, -1, -1, '2분간 멈춰있을 경우 앱 재실행', 'mPlayerReset', 'ld_autoapp_check')
    --GUIAddEdit(x + 35, y + 30, 40, -1, '120', nil, 'mAppResetTime')
    --GUIAddText(x + 65, y +30, -1, -1, '분마다 재실행하기')

    function mPlayerReset()
    --print(ld_autorun_check)
    if ld_autorun_check == 1 then
    GUIItemEnable(ld_autorun_check_id, true)
    GUIItemEnable(ld_autoapp_check_id, false)
    EnableImage(true, '멈춤체크')
    elseif ld_autoapp_check == 1 then
    GUIItemEnable(ld_autorun_check_id, false)
    GUIItemEnable(ld_autoapp_check_id, true)
    EnableImage(true, '멈춤체크')
    else
    GUIItemEnable(ld_autorun_check_id, true)
    GUIItemEnable(ld_autoapp_check_id, true)
    EnableImage(false, '멈춤체크')
    end

    end


    function sleep_ms(ms)
    local start_sleep = os.clock()
    local ms = ms / 1000
    while os.clock() - start_sleep <= ms do
    end
    end



    ----
    GUIShow()
    GUIItemEnable(get_equip1, false)
    GUIItemEnable(get_equip2, false)
    GUIItemEnable(get_equip3, false)
    GUIItemEnable(ld_app_edit_id, false)
    CompareMode(arg)
    mPlayerReset()
    mPlayerPath()
    SelectMacroFunc()

List of Articles
분류 제목 글쓴이 최근변경 추천
자유 2024년 12월 1일부터 운영에 대한 공지 피카부 2024.12.04 0/0
자유 운영 방해 목적의 매크로 관련 글 제재 피카부 2019.09.03 0/0
자유 본메 메크로 능력자 모십니다 4 은비수 2024.11.10 0/0
질문 바람 매크로문의 5 고더리니 2024.11.18 0/0
질문 이미지맥스 상단에 메뉴 2개 이상 어떻게 하는지 아시는분 2 헬퍼좀 2024.11.07 0/0
질문 이미지맥스 정보 공유 하는데 없나요? alstn9 2024.11.07 0/0
자유 바람의나라 오픈하면 제작하시는분 있을까요? alstn9 2024.11.06 0/0
질문 오딘 매크로 지금 되는거 있나요? alstn9 2024.11.05 0/0
질문 혹시 바람클래식 매크로 제작하시는분 있으신가요 오딘리세장 2024.11.05 0/0
질문 파이썬 오딘 매크로 혹시 막혔나요? 1 글로부 2024.11.05 1/0
질문 현재 pc바람의나라 본서버 돌아가는자료있을까요?? 2 궁갤 2024.11.06 0/0
자유 메랜 크롬macro 남던2 따모 레이스 개미굴 죽숲(1,2,3,... 2 Macromr 2024.11.29 0/0
질문 포트폴리오 고빈 2024.11.02 0/0
자유 [AI 인식] 로나월드 거짓말탐지기(거탐) 해제 판매합니다. 제로리 2024.11.01 1/0
질문 여자들 많은곳 구다은 2024.11.01 0/0
자유 와우 내부전쟁 자동 스킬 KefShop 2024.10.31 0/0
질문 한군데 발견했습니다. 신슈정 2024.10.31 0/0
질문 이미지맥스 정보 공유 하는데 없나요? 2 테즈22 2024.11.13 0/0
자유 메랜 크롬macro 남던2 따모 레이스 개미굴 죽숲(1,2,3,... 1 Macromr 2024.10.29 0/0
질문 몰리는중 하연지 2024.10.29 0/0
자유 메랜 매크로 오우호야 2024.10.28 0/0
자유 메랜 크롬macro 남던2 따모 레이스 개미굴 죽숲(1,2,3,... 1 Macromr 2024.10.28 0/0
Board Pagination Prev 1 2345678910 ... 523 Next
/ 523

전체 최신 인기글

전체 주간 인기글