S-Macro 가이드 : Loop Start(반복) 실행 활용
S-Macro Loop Start(반복) 실행 가이드
똑같은 작업을 지치지 않고 반복하는 스마트 노예 활용법
🎯 학습 목표
수십 번 반복해야 하는 노가다 작업(스크롤 내리기, 페이지 넘기기 등)을 [Loop] 기능을 통해 자동화합니다.
💡 팁: 루프는 반드시 시작점
수십 번 반복해야 하는 노가다 작업(스크롤 내리기, 페이지 넘기기 등)을 [Loop] 기능을 통해 자동화합니다.
💡 팁: 루프는 반드시 시작점
[LoopStart]과 끝점[LoopEnd]이 한 쌍으로 존재해야 합니다.
STEP 1
루프의 기본 원리와 구조
루프는 시작과 끝 사이에 있는 모든 작업들을 정해진 횟수만큼 반복해서 실행합니다.
▶ [LoopStart] (여기가 시작! 반복 횟수를 물고 들어감)
│ └─ 실행할 작업 A (예: 마우스 휠 굴리기)
│ └─ 실행할 작업 B (예: 이미지 찾기)
■ [LoopEnd] (끝점 도착! 횟수가 남았다면 다시 위로 점프!)
│ └─ 실행할 작업 A (예: 마우스 휠 굴리기)
│ └─ 실행할 작업 B (예: 이미지 찾기)
■ [LoopEnd] (끝점 도착! 횟수가 남았다면 다시 위로 점프!)
📌 횟수 무제한 팁: 반복 횟수 칸을 비우거나 '0'으로 두면 기본적으로 1회만 작동하므로, 많은 반복이 필요할 땐 9999 처럼 충분한 숫자를 적어주세요.
STEP 2
실전 응용: 무한 반복 탈출하기 (GoTo 활용)
횟수를 100번 잡아두었더라도, 원하는 목적(이미지 발견 등)을 달성하면 즉시 루프를 빠져나와야 매크로가 효율적입니다.
// 지도검색예제 분석: 맛집 찾을 때까지 무한 스크롤
1. ▶ [LoopStart] (반복: 20회)
2. └─ [Scroll] 지능형 스크롤
3. └─ [Image_Click] 맛집_아이콘.png
4. ▶ [IfStart] (만약 이미지를 찾았다면)
5. └─ [GoTo] 탈출성공 지점으로 즉시 탈출!
6. ■ [IfEnd]
7. ■ [LoopEnd]
8. └─ [Label] 탈출성공 (루프를 무사히 빠져나와 도착하는 곳)
1. ▶ [LoopStart] (반복: 20회)
2. └─ [Scroll] 지능형 스크롤
3. └─ [Image_Click] 맛집_아이콘.png
4. ▶ [IfStart] (만약 이미지를 찾았다면)
5. └─ [GoTo] 탈출성공 지점으로 즉시 탈출!
6. ■ [IfEnd]
7. ■ [LoopEnd]
8. └─ [Label] 탈출성공 (루프를 무사히 빠져나와 도착하는 곳)
💡 왜 GoTo를 쓰나요?
[LoopEnd]까지 가지 않고도 특정 상황에서 매크로의 흐름을 억지로 꺾어 밖으로 던져버리기 위함입니다. 루프 밖의 [Label]로 던져주면 남은 반복 횟수는 무효가 됩니다.
[LoopEnd]까지 가지 않고도 특정 상황에서 매크로의 흐름을 억지로 꺾어 밖으로 던져버리기 위함입니다. 루프 밖의 [Label]로 던져주면 남은 반복 횟수는 무효가 됩니다.
STEP 3
설정 방법 및 주의사항
- 액션 선택 메뉴에서 [Loop Start]를 선택합니다.
- 우측 반복 횟수 칸에 숫자를 입력합니다. (예: 5)
- [작업 추가]를 누르면
[LoopStart]와[LoopEnd]가 세트로 리스트에 들어갑니다. - 반복하고 싶은 액션들을 두 줄 사이에 넣으세요. 만약 순서가 틀렸다면 Up/Down 버튼으로 조정하세요.
⚠️ 주의: [Loop End]만 따로 삭제하면 매크로가 어디서 끝날지 몰라 무한루프에 빠지거나 오류가 날 수 있습니다. 반드시 쌍을 유지하세요!
🏁 원본 소스 및 예제 분석 요약
수께서 주신 지도검색예제.smp는 루프의 아주 모범적인 사례입니다.
- 지능형 스크롤: 루프 내부의 Scroll 액션이 화면을 조금씩 내려 새로운 요소를 찾게 합니다.
- 중첩 구조: 루프 안에 [If Start]를 넣어 매 반복마다 성공 여부를 체크합니다.
- 동적 제어: 고정된 횟수 반복이 아닌, [GoTo]와 [Label]을 조합해 "찾으면 끝낸다"는 논리적인 설계를 보여줍니다.
댓글
댓글 쓰기