Schala battle system 을 이용한 맵을 제작 중인데,
해당 스크립트는 '<Enemy1>' 식의 이벤트 이름을 가지고 있어야 전투가 시작되는 구조로 되어있는데,
처음엔 대화가 가능했다가 선택지에 따라서 전투가 가능해지는 이벤트로 만들고 싶습니다
이벤트 이름만 도중에 변경하는 방법이 있다면 쉽게 이루어질 것 같은데, (장소이동)을 이용해서 구현하면 될 것 같으나
사용되는 맵의 수를 줄이기 위해 제목과 같은 방법이 가능한지 질문 드립니다.
■ 질문전 필독!
- 질문할 내용이 이 게시판이나 강좌에 이미 있는지 확인합니다.
- 하나의 게시물에는 하나의 질문만 합니다.
- 제목은 질문의 핵심 내용으로 작성합니다.
- 질문 내용은 답변자가 쉽게 이해할 수 있도록 최대한 상세하게 작성합니다.
- 스크립트의 전문이 필요할 경우 txt 파일 등으로 첨부해 주시기 바랍니다.
- 답변받은 게시물은 삭제하지 않습니다.
- 답변이 완료된 경우 해당 답변해주신 분들께 감사의 댓글을 달아줍니다.
- 처음 오신 분들은 공지 게시물을 반드시 읽어주세요!
※ 미준수시 사전경고 없이 게시물을 삭제합니다.
attr_reader :event
를 추가해줍니다. 이제 스크립트 명령어로 이벤트 이름을 따오거나 변경할 수 있는데, 만약 ID:002 인 이벤트의 이름을 'Changed'로 바꾸고 싶다면 이벤트에 스크립트 명령어로,
$game_map.events[2].event.name = 'Changed'
처럼 쓰시면 됩니다. 테스트해보니까 되더라고요. 다만 Schala battle system과 잘 맞을지는 모르겠습니다. 만약 안 된다면 그냥 같은 이미지의 전투용 NPC 이벤트를 맵 멀리에 두고 스위치를 이용해 비활성화해놓고, 전투를 하게 됐을 때 원래 NPC를 이벤트 이동으로 멀리 보내버리고 (혹은 끄거나) 전투용 NPC를 그 자리에 넣는 방법을 써도 괜찮을 것 같네요.