지존오토

[2] 도우미 기초? 기초? 준비?

  • 등록일 : 2009-07-31
  • 조회수 : 131641

도우미 기초에 대한 설명입니다.
저도 프리미엄을 사서 제대로 한번 써보지 않았지만..;
열린자료실에서 이것저것 보다보니 아.. 이렇구나 라는 생각이 들더군요..
전부터 약간의 매크로 사용과 프로그램을 공부한 사람이라면 쉬울꺼 같습니다.
프로그램상으로는 제가 말하는것과 전혀 다르겠지만 이렇게 생각하시는게 쉬울꺼라는 생각에 근거없는 내용이라는 가정하에 써봅니다.
우선 이해해야 할부분이 전체적으로 반복사용이라는겁니다.
큰틀은 반복으로 되어 있구요 그 안은 만약에라는 if문으로 되어 있습니다.
알고리즘을 보면 쉽겠네요.
처음 도우미를 켰을때의 알고리즘입니다.

시작
  ↓
0.만약에  -> 실행할 내용
(조건)   참
  ↓  거짓
1.만약에  -> 실행할 내용
(조건)   참
  ↓  거짓
 ....여러개의 만약에
  ↓
 시작으로 가서 무한 반복

조금 이해가 가시려나.. 예를 들어볼께요..
게임으로 하면 쉽겠죠..;; 어떤 게임을 해요 그게임의 룰은 빨간색이면 1을 누르면 되고 파란색이면 2를 흰색이면 3을 치는 게임이라고 할께요..; 이런게임 없습니다..;;;
암튼..
화면의 색이 바뀌는 부분이 조건이 되겠죠..
도우미의 프로그램상 만약에라는 부분 세개를 이용해야 하지요.
만약에 화면의 색바뀌는 부분이 빨간색(조건)이면 실행할 문장에 1을 눌렀다 뗀다(실행할 문장)
예라면 1이 눌리겠지만 아니오라면 다음 만약에로 이동하겠지요..
다음 만약에는 조건이 파란색이되겠군요 색이 바뀌는 부분이 파란색(조건)이면 2를 눌러라(예일때 실행)  
아니오라면 다음 만약에 흰색이면(조건) 3을 눌러라(실행)
아니오라면 다음 만약에를 실행 하나 더이상 조건이 없기 때문에 공란 조건이 없기 때문에 반복으로 처음부터 다시 시작 이렇게 되는 거죠..
알고리즘으로 보면 이렇게 되는겁니다.


시작
  ↓
0.만약에 체크부분이 빨간색이면  -> 1을 눌러라
(조건)                                     참
  ↓  거짓
1.만약에 체크부분이 파란색이면  -> 2를 눌러라
(조건)                                     참
  ↓  거짓
1.만약에 체크부분이 흰색이면  -> 3를 눌러라
(조건)                                  참
  ↓  거짓
  ↓
 시작으로 가서 무한 반복

조금 이해가 되시나요?
이런식의 알고리즘을 생각해두셔야 도우미를 사용하실수 있는거죠;
메크로 한다 하시는 분들이 프리미엄을 사시겠지만.
가장 처음 해야 할것은 알고리즘입니다.. 흰색종이에 자신이 프로그램할 알고리즘을 까만볼펜으로 적어두고 하시면 아주 쉽게 프로그램을 작성할수 있지요.
지금 회사라 이렇게 밖에 글을 못쓰겠군요..
다음 글부터는 정식으로 도우미에 적용하여 쓰는 법과 손쉽게 프로그램을 설정하는 방법을 알려주도록 할께요.
조건이 늘어나겠죠 변수 시간 픽셀..
암튼 집에 들어가서 동영상으로 뵐수 있기를 기대하며..

코멘트

    • 지존오토
    • 2009-07-31 13:34:05

    좋은 글 감사드립니다.
    전체적인 흐름에 대해 잘 지적해주신 듯 합니다.
    첨언을 하자면, 일반적인 프로그램의 알고리즘의 경우에는 시작부터 끝까지 순차적으로 실행이 됩니다만, 게임도우미는 병렬로 실행된다는 것이 큰 차이입니다. 이 부분을 이해하시지 못해 굉장히 헷갈려 하시는 분들이 많으십니다.
    윗글에서 빨,파,백색을 인식하도록 해 두었다면, 도우미는 3가지 색상을 동시에 인식을 하기 때문에, 빨강일때의 어떤 동작을 하는 중에 파랑/백색이 함께 인식이 되기 때문에, 인식에 동작단계를 여러단계를 넣는 경우, 뒤죽박죽이 되어 버릴 수가 있습니다.(빨강 1단계 동작 다음단계로 진행되지 못하고, 파랑 1단계로 동작이 넘어 가버린다든가 하는 문제)
    이런 뒤죽박죽이 될 수 있는 부분을 사용자가 의도하는 순서대로 동작을 하도록 만들기 위해 사용하는 것이 바로 변수입니다.(변수는 다른 용도도 많이 있습니다) 변수를 사용해서 한개가 인식되어 동작중일때는 다른 것은 인식이 되어, 현재 인식이 된 것이 완전히 실행이 끝날때까지 실행이 안되도록 막을 수가 있는 것입니다. 이 부분은, 자료실에 올려져 있는 다른 분들의 도우미 파일을 보시면 확인 하실 수가 있을 것입니다.

    • 서상덕
    • 2009-07-31 14:07:18

    조건을 우선으로 동작이 실행된다는 말씀인거 같네요..;; 흔히 말하는 인터럽트가 걸려 있다는 말인가요? 조건이 변경되면 동작중에 다른동작을 우선시 하여 원하는 동작이 안나온다는 말씀같은데 참고할께요..^^; 안그래도 다음글 작성시에 변수를 이야기 하려 했는데 조언 감사드립니다

    • 2026-09-23 13:24:56

    1

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:57

    1),".('abcd

    • 2026-09-23 13:24:57

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1')

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1'

    • 2026-09-23 13:24:58

    1"

    • 2026-09-23 13:24:58

    1)

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:58

    1

    • 2026-09-23 13:24:59

    1

    • 2026-09-23 13:24:59

    98766