2011-09-18 2 views
2

2d 게임에서 작업 중이고 플레이어를 화살표 키로 움직이게 할 수 있습니다.썸 스틱 대신 화살표 키로 플레이어 이동

내가 왼쪽 엄지 스틱으로 플레이어의 이동을 관리했습니다 (X 박스 360 컨트롤러)

GamePadState gamePadState = GamePad.GetState(PlayerIndex.One); 
hero.position.X += gamePadState.ThumbSticks.Left.X * 20; 

그러나 나는 화살표 키를 이동하는 방법을 알아낼 수 없습니다.

나에게 도움이 될만한 사람이 있습니까? :)

답변

1

키보드를 처리하려면 KeyboardState를 반환하는 Keyboard.GetState()을 사용할 수 있습니다. 키보드 상태가되면 KeyboardState.IsKeyDown()으로 전화하여 관심있는 키가 눌 렸는지 확인할 수 있습니다. 키를 누르면 x 및 y 좌표가 그에 따라 조정됩니다.

엄지 스틱은 아날로그 입력이므로 스틱이 왼쪽, 오른쪽, 위 또는 아래로 얼마나 멀리 이동했는지 나타내는 값 범위를 얻을 수 있으므로 플레이어가 "속도"를 일부 제어 할 수 있습니다. 키보드가 디지털이므로 누를 수도 있고 그렇지 않을 경우 문자가 움직이거나 움직이지 않을 수도 있습니다. 이 느낌을 키보드에서 비슷하게 만들 수있는 트릭이 있지만 먼저 캐릭터를 움직이게 한 다음 필요하다면 그 부분을 탐구 할 수 있습니다.

XNA와 함께 제공되는 Platform Starter Kit도 살펴 봐야합니다.이 코드는 입력 장치를 다루는 방법에 대한 몇 가지 아이디어를 제공합니다.

+0

감사합니다. 정말 감사! :) – inFever

관련 문제