초급강의실
2016.04.05 11:27

Input 객체의 키코드 확장

조회 수 512 추천 수 0 댓글 6
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

 

Input.isPressed(keyName) 함수 또는 Input.isTriggered(keyName) 함수로 해당 키가 눌려있는지 확인을 해야 할 때 
 
해당 키코드가 없다면 키코드를 확장해야만 합니다. 
 
결론부터 말하자면, 이것은 굉장히 간단합니다
 
RPG Maker MV 에서는 Input 객체의 소스 코드가 공개되어있기 때문입니다.
 
다음과 같이, Input.keyMapper 라는 JSON 타입의 변수에 keyCode(키코드)와 keyName(키의 이름)을 설정해주면 됩니다.
 
키의 이름은 원하는 이름을 지정할 수 있지만, 키코드는 표준 키코드를 지정해줘야 합니다.
 
표준 키코드는 이 링크를 참고하시기 바랍니다.
 
1
Input.keyMapper[keyCode] = 'keyName';
cs
 
예제에서는 T 키를 눌렀을 때 메시지 박스를 띄워보도록 하겠습니다.
 
키코드 API 를 참고해보면 T 키의 keyCode 가 84 라는 것을 알 수 있습니다.
 
6.PNG

 

그러면 아래과 같이 키코드를 설정해줄 수 있습니다.
 
1
Input.keyMapper[84= 'T';
cs

 

이렇게 설정한 것을, 플러그인이나 스크립트로 만들어 실행을 해주면 정상적으로 처리가 됩니다. 

 
이제, 아래와 같은 스크립트를 병렬 이벤트로 실행시켜보면,
 
1
2
3
if(Input.isPressed('T')) {
 alert("T 를 눌렀습니다");
}
cs
 
아래와 같이 T 키를 눌렀을 때 메시지 박스가 뜨게 됩니다.
 
7.PNG

 

?
  • ?
    A구몽 2016.04.14 10:14
    RPGmakerVX ace 에서 키코드 확장은 어떻게되는지 알려주실 수 있나요?
  • profile
    러닝은빛 2016.04.14 19:06
    https://msdn.microsoft.com/en-us/library/windows/desktop/ms646293(v=vs.85).aspx

    윈도우에서 제공하는 위 링크와 같은 키보드 API 함수를 Win32API 로 바인딩하여 Input 객체를 확장해야 합니다. 프로그래밍이 필요한 부분이므로 직접 작성할 계획이 아니시라면 전체키 스크립트를 찾아보시기 바랍니다.
  • ?
    A구몽 2016.04.15 17:30
    네... 뭔가 어렵군요.
  • ?
    A구몽 2016.04.15 17:45
    루비자체에서 지원하는 라이브러리 메소드는 없나요?
    키의 입력 상태로 진릿값을 반환해준다거나...
  • profile
    러닝은빛 2016.04.16 20:56
    루비는 윈도우에 의존성이 있는 것이 아니기 때문에 키보드 함수 같은 것은 없습니다. 라이브러리 쪽은 있을 수 있겠으나, 알만툴에 포함되어있는 루비는 개발사에서 수정한 거라 라이브러리를 사용할 수 없게 해놨습니다. 루비에는 좋은 라이브러리가 많지만 사용할 수 없기 때문에 전체키 스크립트 같은게 만들어진 것입니다.
  • ?
    A구몽 2016.04.17 13:16
    아... 이런...
    답변 감사합니다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수 추천 수
공지 초급강의실 게임제작강좌 A-Z 색인 (2016.1.24 ver) 1 file 천무 2016.01.12 2613 1
178 초급강의실 누구나 쉽게 따라할 수 있는 액션/슈팅 이벤트 만들기! file 이제리아 2017.01.26 307 0
177 중급강의실 RPG란 무엇인가?가 하는 강의-1편:대쉬 속도와 걷는 속도를 어떻게 바꾸는가?- 3 file RPG란무엇인가? 2016.10.31 640 0
176 중급강의실 쯔꾸르 게임을 네코플레이어에 최적화 시켜보자! # 해상도 편 16 file 양갱님 2016.04.17 12255 8
175 초급강의실 게임의 퀼리티를 높이자! 3편-맵배치 2 ifeve 2016.04.08 2377 2
» 초급강의실 Input 객체의 키코드 확장 6 file 러닝은빛 2016.04.05 512 0
173 초급강의실 초보가쓰는 초보용 Rpg게임 만들기 (xp) 6 Marine 2016.03.13 4536 0
172 초급강의실 [동영상] 게임을만들자 (8편) - 맵에 포그, 광원적용 - 2 file 천무 2016.02.27 1273 0
171 초급강의실 [동영상] 게임을만들자 (7편) - 열쇠로 여는 문 만들기 - 3 file 천무 2016.02.23 2420 0
170 초급강의실 MV에서 이벤트로만 액션RPG를 만들기 file 델군 2016.02.19 1652 0
169 초급강의실 [동영상] 게임을만들자 (6편) - 맵배치 초보강좌 - 2 file 천무 2016.02.17 2135 0
168 고급강의실 [MV플러그인] Armor Scaling 강의 1 file 백난화백 2016.02.13 2933 2
167 고급강의실 [MV플러그인] Action Sequence 강의 5 file 백난화백 2016.02.12 3196 1
166 초급강의실 [동영상] 게임을만들자 (5편) - 퀘스트 만들기 - 3 file 천무 2016.02.11 2736 1
165 초급강의실 [동영상] 게임을만들자 (4편) - 마을과 상점을 만들자- file 천무 2016.02.10 668 0
164 초급강의실 [동영상] 게임을만들자 (3편) - 필드에 보이는 몹 만들기- 1 file 천무 2016.02.10 1432 1
163 고급강의실 [동영상] 스크립트 나도좀 잘해보자 -1- 1 file 천무 2016.02.04 1190 1
162 초급강의실 (ACE 기준)초보분들에게 유용한 10가지-1- 1 RPG란무엇인가? 2016.02.02 2091 0
161 초급강의실 게임의 퀼리티를 높이자! 2편-진행불가 7 file ifeve 2016.01.25 12704 0
160 초급강의실 [동영상] RPG Maker MV 튜토리얼 강좌 22화 랜덤 확률 변수 3 file 작긔 2016.01.22 2212 1
159 초급강의실 [동영상] RPG Maker MV 튜토리얼 강좌 21화 변수 7 file 작긔 2016.01.19 6495 2
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)