글 작성자: Doublsb

어, 우선. 애니메이션은 포기했다. 감각이 없었기 때문 (...)

어차피 State는 참조할 수 있게 되어 있으므로 에셋을 활용해서 유저가 만들 수 있을 것이다. 그렇고말고.

 

오늘은 별 건 아니고, 프리팹 작업을 했다.

 

에셋을 사용하고 싶다면, 유저는 DialogAsset이라는 프리팹을 씬에 넣기만 하면 된다.

그 후, Character 프리팹을 DialogAsset/Characters 하위에 추가한다.

 

다음으로는 Character 스크립트를 수정하기만 하면 끝이다. ^O^

 

그리고 문제가 있어 조금 수정한 게 있다.

 


#1 Character 참조의 불편함

 

Character 프리팹은 DialogAsset/Characters 하위에 들어가는데,

이를 참조하기 위해서는 스크립트에서 Character 자료형을 선언해 참조한 다음, Show에서 할당해주어야 한다.

 

오우, 불편하고 바보같은 짓임에 틀림없다. 그래서 이렇게 바꾸었다.

 

_find_character라는 메서드가 추가됐다. 이건 Characters 하위에 있는 아이들 중 해당하는 이름의 Character를 가지고 오는 메서드이다.

이에 따라 DialogData의 필드에도 Character string을 추가했다.

이제 DialogData는 온전히 '한 구문'을 실행할 수 있는 데이터 클래스가 되었다.

 

테스트 스크립트도 이제 효율적인 방식으로 Dialog Data를 전달할 수 있게 되었다. 잘됐군, 잘됐어.


#2 Emotion의 기본값

 

여태까지 Emotion은 기본값이 없었다. 그러면 Show에서 emote 명령어를 수행하지 않을 경우 Image에 매핑해뒀던 스프라이트 상태를 그대로 유지한다는 소리인데.

 

유저가 Image까지 건드리도록 하는 것은 굳이? 라는 생각이 들었다.

그래서 Emotion의 기본값으로 Normal을 추가하고, 삭제할 수 없게 만들었다.

 

 

Show의 최초 실행 시, Emotion은 Normal로 시작되도록 했다.

 


내일은 정말로 영어공부를 하겠군. 사용 설명서를 작성하고, 에셋 스토어에 업로드를 해야 한다.

 

해당 커밋 보러가기

반응형