[네코노벨] 06. 각 객체를 랜덤 좌표에 출력해 보자.
누가 배경좀 그려줘.. ㅡㅜ
네코노벨을 마구마구 건드리다 보면 때때로 '어? 이거 과연 될까?' 하는 식으로
궁금증의 발상이 떠오르고는 한다.
나도 이 글 쓰기 바로 3분전에 떠오른 것이 하나 있는데,
그것이 제목에서 나온 것 처럼
[어떤 개체를 임의의 좌표에 출력시킬 수 있을까]였다.
그러니까 내 말은,
어떤 이름을 가진 개체가 랜덤값으로 여러 자리에 알아서 출력 될 수 있을까 한가 하는 말이다.
.....예를 들자면,
첫 대사를 칠 때 루카 라는 이미지가 x300 y480의 위치에서 출력되었다고 하자.
이제 두번째 대사를 칠 때, 루카는 과연 x300 y480 말고 다른 자리에 출력될 수 있을까?
++
결론적으로 말하면, 가능하다.
아래와 같은 방법으로 말이다.
일반적으로 변수의 값을 화면에 출력할 때 사용하는 중괄호를
x좌표와 y좌표를 지정해 주는 인자 자리에 사용하고 있다.
마찬가지로 y변수에서 지정받은 랜덤값을 {{y}}에 적용시킬 수 있다.
위의 스크립트에 따르면, 매 대사때마다 x변수와 y변수가 정해 지므로,
라벨의 위치 또한 때때로 바뀌게 된다.
__부가__
얼마전에 네코노벨 공식 카페에서 본 글 중에
변수트레거의 기능을 설명해 주는 글을 보았다.
[링크 : http://cafe.naver.com/kernyslab/721]
이 글에 의하면, 변수트레거의 기능은
지정된 변수가 '등장'하면 정해진 특수 스크립트를 불러오는 기능을 한다고.
예를 들어,
네코노벨로 시장의 물건을 사고 파는 게임을 만들었다고 하고,
이제 나는 그 게임 속에서 당근을 팔았다고 하자.
이때 손님은 나에게 돈을 줄 것이고,
그 돈의 값은 내 '지갑'이라는 변수에 합산이 될 것이다.
이 때 네코노벨의 변수 커멘드는 다음과 같이 쓸 수 있겠지.
변수 지갑 += 손님물건산돈
자, 여기서 중요하다.
사실은 '지갑'변수가 발동 되기 전 라인에서 나는
변수트리거 변수 알림창.txt 이라고 하는 스크립트를 적어 두었던 것이다.
이 함정카드(?)는 이제 '지갑'이라는 변수가 발동 될 때마다 나타나게 된다.
알림창.txt에다가는 새로운 창(이미지)를 띄우고,
그 가운데에 라벨을 출력하여 '얼마 돈 받았어요!!'라고 창이 뜨도록 설정 해 두었다.
따라서, 이제는 돈을 받을 때마다 '얼마 돈 받았어요!!'라는 새 창이 뜨겠지.
변수트레거는 이렇게 사용 한다.
자, 그럼 이 변수 트레거를
오늘의 메인 테크닉과 어떻게 연관 지을 수 있을까?
+++겁내응용+++
라벨 이름을 x랜덤 y랜덤으로 해 둔 덕에
임의의 자리에 라벨이 출력 되게 만든 것은 대충 알았다.
그러나 위의 파란 박스대로 하려고 한다면,
변수x와 변수y를 일일히 다 적어주어야 한다는 귀차니즘이 있다(?!)..
이쯤 되면 눈치 챘겠지만,
이 x변수와 y변수를 랜덤으로 값을 지정하는데는
새로운 txt파일과 변수트리거만 있으면 무척 편리해진다.
아래는 변수트리거를 응용한 방법이다.
변수트리거 캐릭명 변수.txt 첫줄
변수 캐릭명 = "루카"
라벨 이름 {{x}} {{y}} 0 0 0 100 {{캐릭명}}
대사 게임 만들지 말까?
대기
변수 캐릭명 = "블랑카"
라벨 이름 {{x}} {{y}} 0 0 0 100 {{캐릭명}}
대사 괜찮아! 열심히 만들어!!
대기
변수 캐릭명 = "루카"
라벨 이름 {{x}} {{y}} 0 0 0 100 {{캐릭명}}
대사 게임 만들지 말까?
대기
변수 캐릭명 = "블랑카"
라벨 이름 {{x}} {{y}} 0 0 0 100 {{캐릭명}}
대사 우하아앙 ㅜㅠ
대기
변수 x = 랜덤(30~500)
변수 y = 랜덤(30~380)
'~'
맨 처음 파란 박스와는 좀 다르게,
캐릭명 변수 선언 줄과 라벨 줄의 자리를 바꾸어 주었다.
왜냐하면, 변수트레거로 인해 x변수와 y변수가 바뀐 후에 라벨이 출력 되어야
변수에 따라 임의의 자리에서 출력 될 것이기 때문이다.
만약 라벨이 캐릭명 변수보다 위에 있다면
아마 두번째 라벨은 첫번째 캐릭명 변수트리거 값에 의해 자리를 찾게 될 것이고,
결국 맨 처음 선언되는 라벨은 무조건 0, 0 자리에서 출력되게 될 것이다.
'~'
'공부 > 네코노벨 사용기' 카테고리의 다른 글
[네코노벨] 어느 대화 - 자기인사 하고 싶어하는 고양이 (0) | 2012.04.09 |
---|---|
[네코노벨] - 클릭으로 승패를 좌우하자. 룰렛! (0) | 2012.03.15 |
[네코노벨] 05. 배경페이드인과 배경페이드아웃의 사용방법의 차이 (0) | 2012.01.03 |
[네코노벨] - 암기력 트레이닝 타이틀 모습과 메뉴 (0) | 2012.01.01 |