中級教室
2011.02.21 04:59

[RPG2003] 한단계 도약 : 되풀이 처리

閲覧数 2956 推奨数 1 コメント 3
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷 修正 削除
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷 修正 削除

스위치, 변수만 알고 있어도 왠만한 시스템은 다 구현할 수 있습니다.


하지만 시스템이 복잡해질수록 너무 많은 노가다가 들어갑니다.


이런 노가다를 크게 줄일 수 있는 여러가지 기능들이 알만툴에 있습니다.


그것을 다양한 분이 쓸 수 있기를 바라며 강좌를 씁니다 -ㅁ-


 


C++나 RPGXP를 배운 분이라면 while문이나 for문을 알고 있을 것입니다.


아니면 RPGXP에서 loop do라는 문도 있습니다.


이런 것을 반복문이라고 합니다.


일단 이벤트 커맨드에 "되풀이 처리"라는 것이 있습니다.


이것을 이용해서 다음 알고리즘을 만듭시다.


◆반복 처리


   문장의 표시 : 뭐임마 싸우자?


 : 이상 반복


( 이벤트 커맨드에선 되풀이 처리라고 나오지만 실행내용에선 반복 처리로 나옵니다. 신선짱님의


실수인 듯 합니다 )


이러고 테스트 플레이를 실행해서 해당 이벤트를 실행해 봅시다.


뭐임마 싸우자? 가 무한으로 뜰 것입니다.


이것을 "무한 루프'라고 하는데 그건 집어치우고 중요한 것은


반복 처리와 이상 반복의 사이에 끼워져 있는 이벤트들이 연속적으로 실행되고 있다는 사실입니다.


하지만 이 반복은 대부분 언젠가는 중단되야 하겠죠? -_-;;


이벤트 커맨드에서 "되풀이 처리의 중단"이란 커맨드가 있습니다. 이것을 이용해서 다음 알고리즘을


만듭시다.


 


◆반복 처리


   문장의 표시 : 뭐임마 싸우자?


   ◆반복 처리의 중단


 : 이상 반복


( 이벤트 커맨드에선 되풀이 처리 중단이라고 나오지만 실행내용에선 반복 처리로 나옵니다.


신선짱님의 실수인 듯 합니다 )


이렇게 하면 전과는 달리 뭐임마 싸우자?가 1번만 뜨고 더이상은 뜨지 않습니다. 반복이 중단된


것입니다. 다음 알고리즘을 또 만들어 봅시다.


◆반복 처리


   문장의 표시 : 뭐임마


   ◆반복 처리의 중단


   문장의 표시 : 싸우자?


 : 이상 반복


이러면 뭐임마가 뜬다음 싸우자?가 뜨지 않습니다.


"반복처리가 중단" 이후부터 : 이상 반복 까지의 커맨드도 무시한다는 뜻입니다.


이것을 헷갈리지 마시기 바랍니다(저도 쓸때 약간 혼란을 겪었습니다)


되풀이 처리는 일반적으로 두 가지에 쓰입니다(다른 경우에 쓰일 수도 있습니다)


1. 노가다를 줄인다(특히 변수 번호의 변수와 섞어 쓰면 엄청난 효과를 거둘 수 있다)


2. 라벨을 대신한다


일단 노가다를 줄입니다. 주로 이런 이유로 쓰이리라 믿습니다.


만일 1부터 100까지 출력한다면 당신은 이렇게 만들어야 합니다.


◆변수의 조작 : 변수 0001, 가산, 1


◆문장의 표시 : v[1]


◆변수의 조작 : 변수 0001, 가산, 1


◆문장의 표시 : v[1]


◆변수의 조작 : 변수 0001, 가산, 1


◆문장의 표시 : v[1]


...(중략)


◆변수의 조작 : 변수 0001, 가산, 1


◆문장의 표시 : v[1]


고로 당신은


"


◆변수의 조작 : 변수 0001, 가산, 1


◆문장의 표시 : v[1]


"


를 100번이나 써야 한다는 겁니다.


복사 붙여넣기를 하면 되지만 오래 걸리고 내용도 대단히 길어질 뿐 아니라


 도중에 버그가 일어나거나 횟수가 차이나면 수정하기도 어렵습니다 ㅡㅡ;;


이런 비효율적인 알고리즘을 되풀이 처리를 이용하면 효율적으로 만들 수 있습니다.


◆반복 처리


   ◆조건 분기 : 변수 0001이 100보다 크다


      ◆반복 처리의 중단


    : 분기 종료


   ◆변수의 조작 : 변수 0001, 가산, 1


   ◆문장의 표시 : v[1]


 : 이상 반복


진짜 짧아졌죠? 뿐만 아니라 정확성, 효율성은 물론 수정도 쉽게 할 수 있습니다.


좀 더 발전해서 변수 번호의 변수와 병행한다면 진짜 고수분이 될 겁니다.


...


다음으로 라벨을 대신한다니, 이건 무슨 소리인가?


다음은 라벨의 설정으로 만든 "주사위를 다시 굴린다" 시스템입니다.


라벨에 친숙한 분이라면 금방 이해하실 수 있을 겁니다.


 


◆라벨의 설정 : 1번


◆변수의 조작: 0001:아햏, 대입 1~6


◆문장의 표시 : v[1]


◆문장의 표시 : 다시 굴리시겠습니까?


◆선택지의 표시 : 예 / 아니오


◆예의 경우


   ◆지정 라벨의 이동 : 1번


◆아니오의 경우


 : 분기 종료


 


이것을 이렇게 고칠 수 있습니다.


 


◆반복 처리


   ◆변수의 조작: 0001:아햏, 대입 1~6


   ◆문장의 표시 : v[1]


   ◆문장의 표시 : 다시 굴리시겠습니까?


   ◆선택지의 표시 : 예 / 아니오


   ◆예의 경우


   ◆아니오의 경우


      ◆반복 처리의 중단


    : 분기 종료


 : 분기 종료


 


지정 라벨의 처리엔 아무것도 내놓지 않고(그러면 반복한답시고 위에 있는 이벤트부터


다시 시작하니까 라벨의 설정 밑의 이벤트들이 반복 처리 이벤트 안에 있으면 같은


효과가 나는 셈이다.) 지정 라벨의 처리를 안쓸 곳에는 반복 처리의 중단을(돌아가지


않을거니까...) 시킵니다. 그런 원리입니다.


굳이 이렇게 하는 이유는 라벨의 설정 번호에 한계가 있을 수도 있기 때문입니다 -0-;


 


잘 배우셨습니까?
그럼 당신의 실력확인을 위해 문제를 내겠습니다.


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


◆주인공의 동작 지정 : 주인공, 투명도 업


◆대기 : 0,1초


이것을 간단하게 만들어 보십시오


50%라도 이해하셨다면 하실수 있으리라 믿습니다 ㅇㅅㅇ/

?
  • ?
    크리치 2011.02.21 09:55

    "非公開設定の書き込みです。"

  • ?
    Iriaroan。 2011.08.07 19:03

    "非公開設定の書き込みです。"

  • profile
    산신령 2013.01.02 07:11
    이럴땐 전자공학도라는게 참 다행이지요 ㅎㅎ

List of Articles
番号 カテゴリ タイトル 投稿者 日付 閲覧数 推奨数
お知らせ 初心者教室 게임제작강좌 A-Z 색인 (2016.1.24 ver) 2 file 천무 2016.01.12 8251 1
59 中級教室 네코플에서 VXA 선택지 잘리는 버그 해결하는법 file 심심치 2017.06.22 1325 2
58 中級教室 RPG란 무엇인가?가 하는 강의-1편:대쉬 속도와 걷는 속도를 어떻게 바꾸는가?- 3 file RPG란무엇인가? 2016.10.31 2591 0
57 中級教室 쯔꾸르 게임을 네코플레이어에 최적화 시켜보자! # 해상도 편 22 file 양갱님 2016.04.17 36617 10
56 中級教室 반도의 흔한 이벤트 강좌(간략화)-1- 1 RPG란무엇인가? 2015.11.11 965 0
55 中級教室 엽여비의 야매강좌- VXA : 기초강좌-VXA의 이해 3 엽여비소엽 2015.10.09 1079 0
54 中級教室 [상급강좌]VX 폰트 변경하기 1 양쭌 2015.07.12 2032 0
53 中級教室 초보의 게임제작 도전기 #1-1[데이터 베이스 둘러보기] 2 치와도라 2015.05.05 1659 2
52 中級教室 초보의 게임제작 도전기! #0 [RPG 만들기?] 치와도라 2015.05.05 1507 1
51 中級教室 픽쳐 서서히 등장! 픽쳐 서서히 퇴장! 4 치와도라 2015.04.29 1155 2
50 中級教室 VX Ace 픽쳐 메뉴 예제(V1.01) 2 APED 2015.03.18 1298 0
49 中級教室 대쉬몬스터만들기 2 만두카레 2014.08.24 1337 0
48 中級教室 xp 타이틀 화면 바꾸기 8 주섬주섬 2014.07.20 2022 0
47 中級教室 잠와서 실수가 많은 저 게임만들고 싶어요 -1- 데이터베이스-1- 1 시버암 2014.06.14 1296 0
46 中級教室 저 게임만들고 싶어요!! -0- 기초 4 시버암 2014.06.13 1899 0
45 中級教室 RPG XP에서 소를 집적타보자!! -일명 음모XP - (자작 이벤트) 7 BY_RAIN 2014.06.09 1332 0
44 中級教室 이벤트에 지도넣기 (그림의 표시) 5 물판 2014.05.07 2469 1
43 中級教室 맵으로 이동되었을때 자동으로 타이머 실행 3 물판 2014.05.01 1322 1
42 中級教室 10퍼센트 확률로 당첨되기(브금추가) 12 천둥번들 2014.04.30 1507 1
41 中級教室 한글암호 만들기 5 치와도라 2014.04.26 2087 0
40 中級教室 RPG 만들기 VX 한글 도움말 0.8버전 1 Omegaroid 2014.03.29 2758 0
Board Pagination Prev 1 2 3 Next
/ 3