NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    스크립트 서브 스크립트로 메소드 또는 함수 만드는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 엔지엠 에디터에는 메소드 또는 함수와 같은 기능들이 몇가지 포함되어 있습니다. 일반적으로 [ 서브 스크립트 ]와 [ 스크립트 실행 ]이 있습니다. 이외에도 특정 주기 또는 특정 이벤트가 발생했을 때 서브 스크립트를 실행할 수 있습니다. 액션 이름은 스크립트지만, 매인 스크립트가 호출해서 재사용할 수 있는 함수와 같은 기능입니다. 아래와 같이 에디터를 실행하고, 새로운 스크립트를 하나 추가하세요.

    aIdzK2H.png

     

     

    이 스크립트는 반환 값(True, False)이 있는 서브 스크립트입니다. 아래와 같이 그림판에 오랜지색 점을 추가하고, 판단하는 스크립트를 하나 만듭니다.

    1MOEEGI.gif

     

     

    서브 스크립트 액션은 조건 카테고리에 있습니다. 서브 스크립트에서 선택한 스크립트는 True, False를 매인 스크립트에 넘겨줄 수 있습니다. 함수 상자를 선택하고, 아래 그림과 같이 [ 결과 반환 ] 액션을 2개 추가 해줍니다. 첫번째 결과 반환의 속성을 True로 변경하세요. 두번째 결과 반환의 속성은 False입니다.

    EHKTwgr.png

     

     

    이제 위에서 캡쳐한 오랜지색 이미지를 찾으면 True, 못찾으면 False로 반환하도록 설정해야 합니다. 아래 그림을 참고해서 찾음, 못찾음 아이디와 종료 아이디를 설정하세요.

    vkKqc72.png

     

     

    [ 이미지 매치 ] 액션에서 다름 속성에 못찾음을 선택하세요. 오랜지색 점을 찾으면 결과 반환 찾음이 실행되고, 그 아래 액션 이동을 만나서 종료로 루틴이 이동됩니다. 그리고, 스크립트가 완료됩니다. 만약, 오랜지색 점을 못찾으면 방금 설정한 위치로 이동되고, 스크립트가 완료됩니다.

    P4t4b7J.png

     

     

    함수 역할을 하는 서브 스크립트를 만들었습니다. 이 스크립트는 오랜지색 점 찾기로 저장해줍니다. 이제 이 함수를 호출해서 사용할 매인 스크립트를 하나 만들어볼께요. 새로운 스크립트에 조건에 있는 서브 스크립트 액션을 추가하세요. 그리고, 스크립트 이름에 방금 저장한 오렌지색 점 찾기를 선택하세요.

    JSy5HER.png

     

     

    서브 스크립트에서 오랜지색 점을 찾으면 매인 스크립트가 어떻게 반응할지 결정해야 합니다. 여기에서는 오랜지색 이미지를 찾으면 그림판을 클릭하도록 하겠습니다. 물론, 오랜지색 점을 못 찾으면 클릭하지 않겠죠? 매인 스크립트도 아래와 같이 구성하세요.

    Fx7KoWP.png

     

     

    서브 스크립트 속성에서 다름에 종료 액션을 설정 해주세요.

    szHaGeg.png

     

     

    설명이 다소 복잡해 보이는 부분이 있지만, 이미지 서치나 이미지 매치처럼 조건 액션들과 크게 다르지 않습니다. 다만, 서브 스크립트라는 함수를 직접 만들어야 하고, 조건을 잘 구성해야 정확하게 동작하는 스크립트를 만들 수 있습니다. 완성된 스크립트를 실행하면 아래와 같이 동작하게 됩니다. 서브 스크립트에서 그림판의 오랜지색 점을 찾은 후 True를 반환했습니다. 그렇기 때문에 옆에 점을 하나 찍어주게 됩니다.

    JsORCNU.gif

     

     

    오랜지색 점이 없으면 아무런 동작도 하지 않습니다.

    ehRBmTV.gif

     

     

    사용법이 그렇게 어려운건 아니지만, 처음 접하면 어려울 수 있습니다. 프로그래밍도 스크립트 형식으로 한줄씩 코딩하다가 클래스, 메소드, 펑션, 인터페이스, 캡슐화와 같은 것들이 등장하면 개념을 이해하기 어려워 합니다. 처음 개발을 접할 때도 이와 같은 시행착오와 학습이 병행되고 충분히 이해할 때까지 테스트해야 합니다. 물론, 코딩처럼 복잡하지도 않고 코딩 언어를 배우지 않아도 되는 이점은 있지만~ 자유도는 그만큼 떨어지는건 어쩔 수 없죠^^; 그래서 엔지엠은 자유를 선사하기 위해 커스텀, 디자이너, 프레임워크까지 제공하고 있습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.