왕초보
2011.10.05 00:19

라벨 이용하기 (2번째, 응용)

LCS
조회 수 1885 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

저번 강의에 이어서

 

이벤트 2

◆ 변수의 설정 : [0001] = 10

◆ 변수의 설정 : [0002] = 2

◆ 라벨 : return

◆ 조건 분기 : 변수 [0001]이 >= 1 일 경우

    ◆ 변수의 설정 : [0002] *= 2

    ◆ 변수의 설정 : [0001] -= 1

    ◆ 라벨로 이동 : return

    분기 종료

◆ 문장의 표시 : \V[0002]

 

 

\ 이거 원화 표시입니다. W에 작대기 그어져 있는 거요.

 

어쨌든, 위의 "이벤트 2"는 2의 11제곱을 계산하는 이벤트였습니다.

원래는 2의 10제곱을 계산하려는 의도였는데요 어쩌다 보니...

 

맨 처음 줄에 있는 이벤트에서 [0001]에 대입한 값 10을 원하는 값으로 바꾸면 됩니다.

가령 2의 15제곱을 구하려면 10 대신 14를 넣으면 됩니다. 그럼 결과값이 [0002]에 만들어집니다.

 

3의 5제곱을 구하려면?

맨 처음 줄의 [0001]을 4를 넣고

두 번째 줄의 [0002]를 3을 넣고

5번째 줄의 [0002]를 *= 3 을 넣으면 됩니다.

 

7의 13제곱은?

맨 처음 줄의 [0001]을 12를 넣고

두 번째 줄의 [0002]를 7을 넣고

5번째 줄의 [0002]를 *= 7 을 넣으면 됩니다.

 

아시겠지요?

 

위에서 [0001]은, 원하는 수준에서 반복을 멈추는 역할을 합니다.

처음 지정해준 값에서 곱셈 계산을 할 때마다 1씩 빼다가

결국 0이 되어 버리면 반복을 멈추고 계산 결과를 출력하는 방식입니다.

 

 

 

하지만, 라벨은 이렇게가 아니고도 여러 방법으로 사용할 수 있습니다.

타이틀 메뉴 안쓰는 분 ! 중에, 선택지의 표시 이벤트를 이용해 메뉴를 띄우는 분들 있으리라 생각되는데요.

 

간이 메뉴를 생각해봅시다.

커먼 이벤트이고요, 대뜸 조건 분기부터 시작하는 이벤트이겠지요.

 

이벤트 3 : 커먼 이벤트, 병렬 처리

◆ 조건 분기 : 버튼 A 을(를) 눌렀다. --> 조건 분기 창의 4번째 탭에 있습니다.



   ◆ 선택지의 표시 : 자금 확인, 상세 정보, 저장, 종료 --> 취소 시 취소로 별도의 이벤트가 발생하도록 합니다.

   : [자금 확인]의 경우

      ◆ 변수의 조작 : [0003] = 소지금

      ◆ 문장 : 지금 현재 \V[0003] 골드를 보유하고 있습니다.

      ◆

    : [상세 메뉴]의 경우

      ◆ 메뉴 화면의 호출

      ◆

    : [저장]의 경우

      ◆ 저장 화면의 호출

      ◆

    :[종료] 의 경우

      ◆ 문자 : 저장되지 않은 정보는 손실됩니다. --> 취소 시 아니오 가 선택되도록 합니다.

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

      : [예] 의 경우

         ◆ 타이틀 화면으로

         ◆

       : [아니오] 의 경우

         ◆

       : 분기 종료

      ◆

     : Se Canceler --> 취소 버튼 눌렀을 때 선택될 항목입니다.

       ◆

     : 분기 종료

    ◆

  :분기 종료

 

 

지극히 간단한 형태입니다.

A버튼 (키보드상에는 다른 버튼일 겁니다. 아마 X키일 것 같은데...)을 누르면

선택지를 4가지를 띄웁니다. 자금 확인, 상세 메뉴, 저장, 종료

 

자금 확인을 선택하면 변수 [0003]에 소지금을 대입하고, 문장에다가 변수 [0003]를 표시하게 하였습니다.

상세 메뉴를 선택하면 원래의 메뉴 띄웠구요.

저장 을 선택하면 저장 화면 띄웠구요

종료 를 선택하면 진짜로 종료할 건지 물어본 다음 예 선택하면 타이틀 화면으로 돌렸습니다.

 

그런데 실행해보면 뭔가 어색...하다기 보다

자신의 자아 내면에 깊숙히 자리잡고 있던 귀차니즘의 이념이 부글부글 끓어오를 것입니다.

 

종료하려 했다가 마음이 바뀌어서 아니오 선택했는데 대뜸 메뉴가 닫혀 버리지요. ㅡㅡ

다시 메뉴가 뜨게끔 했으면 좋겠는데...

 

자금 확인도 문장 하나로 달랑 표시한 다음 메뉴까지 닫혀 버리니...

문장 하나 띄운 다음 다 보고 나면 다시 메뉴가 떴으면 좋겠는데...

 

그럴 때 라벨을 이용하면 간단.

 

이벤트 4 : 이벤트 3과 동일한 형태

 

◆ 라벨 : menu

◆ 조건 분기 : 버튼 A 을(를) 눌렀다.



   ◆ 선택지의 표시 : 자금 확인, 상세 정보, 저장, 종료

     : [자금 확인]의 경우

       ◆ 문장 : 지금 현재 \V[0003] 골드를 보유하고 있습니다.

       ◆ 라벨로 이동 : menu

       ◆

     : [상세 메뉴]의 경우

       ◆ 메뉴 화면의 호출

       ◆ 라벨로 이동 : menu

       ◆

      : [저장]의 경우

       ◆ 저장 화면의 호출

       ◆ 라벨로 이동 : menu

       ◆

     :[종료] 의 경우

       ◆ 문자 : 저장되지 않은 정보는 손실됩니다.

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

         : [예] 의 경우

           ◆ 타이틀 화면으로

           ◆

         : [아니오] 의 경우

           ◆ 라벨로 이동 : menu

           ◆

         : 분기 종료

       ◆

     : Se Canceler

       ◆

     : 분기 종료

   ◆

:분기 종료

 

이렇게 라벨을 써먹을 수 있다 이겁니다.

 

이 때 주의할 점은 두 가지

 

1. 라벨 이름 틀리지 마세요 !!

라벨을 넣을 때는 아무 이름이나 넣어도 됩니다. 겹치지만 않으면 되요.

문제는 라벨로 이동할 때입니다. 이동하고자 하는 라벨의 이름을 정확히 넣어야 합니다.

토씨하나 틀리면 그걸 다른 라벨로 인식해서 이동이 안됩니다.

 

2. 무한 반복되면 안됩니다.

반드시, 반복이 특정 조건때에는 중단되도록 해야 합니다.

위의, 이벤트 4의 경우, 취소 버튼 (esc 키)를 누르면 메뉴가 닫히도록 되어 있습니다.

 

 

제가 제작중인 간단한 미니게임이 있습니다.

P 라는 제목으로 올렸습니다. 미니게임 수준이지만 라벨 기능 하나만큼은 환상적으로 많이, 확실히 활용하였음을 자부합니다.

암호화 안하고 프로젝트 파일 빼지않고 올렸으니 알아서 이용하시길...

 

라벨 강의 끄읏


List of Articles
분류 제목 조회 수 추천 수
왕초보 왕초보 질문이요. 1 449 0
왕초보 질문.맵타일 1 797 0
왕초보 왕초보 강좌 -1 레이어대해서 2305 1
왕초보 대화하기 1 2182 0
왕초보 라벨 이용하기 (2번째, 응용) 1885 0
왕초보 라벨 이용하기 (1번째) 4 2309 0
왕초보 (왕초보용) 간단한 NPC 제작 2541 0
왕초보 위에 이름뜨는 스크립트 넣어도 액터만 뜨고 NPC는 안뜨시는 분들 보세요~!!!!!!!!!!!!!! 5 4214 0
왕초보 rpg만들기xp 초보용 (쓰는데 1시간걸림 ㅠ) 6 3395 0
왕초보 예, 아니오 만들기 file 2340 0
왕초보 왕초보 질문;;; 3 2262 0
왕초보 왕초보용 액알 19 file 5222 1
왕초보 로드의 왕초보 강좌! 4 3002 0
왕초보 NPC와의 아이템 교환 (다수 아이템) 4 file 3323 1
왕초보 혹시 모르는 사람을 위한 이벤트 영구 삭제 6 file 3771 1
Board Pagination Prev 1 Next
/ 1

Copyright ⓒ Nioting All Rights Reserved. (since 1999)    개인정보
        

Fatal error: Cannot access property sessionController::$lifetime in /web/old/xe/modules/session/session.controller.php on line 45