2013-03-08 6 views
0

WPF C#에서 할 미니 게임 프로젝트가 있습니다.WPF MiniGame Project - 동시에 두 개의 주요 이벤트 사용

게임은 총격 사건과 거의 대부분의 게임이 완료되었습니다.

문제는 내가 위아래로 이동하기 위해 KeyDown 이벤트를 사용 중이며 스페이스 키로 시작해야한다는 것입니다.

위아래로 움직이기 위해 시도 할 때까지 모든 것이 잘 작동하고 샷을 시도합니다. 나는 KeyUp에 화재 사건을 넣으려고했으나 함께 움직이고 총을 쏘았을 때 여전히 그 일을하지 않았다.

아이디어가 있으면 알려주세요.

BTW, 나는 게임을 만들기위한 WPF dosnt를 알고 있지만 WPF로 끝내야합니다.

감사합니다.

+0

당신은 key_down 이벤트 코드를 게시 할 수 있습니까? 그렇지 않으면 무슨 일이 일어나는지 말하기가 어렵습니다. > 위 또는 아래로 움직이려고 시도 할 때까지 모든 것이 잘 작동하고 샷을 시도합니다. (Key == Key.Up) moveUp() else if (Key == Key.Down) moveDown() else if (Key == Key.Space) Fire() 이것은 당신이 위의 일을 할 수 있어야합니다. 그 밖의 많은 코드를 말하는 것은 불가능합니다. –

+0

나는 그럴만하고, 그렇지 않다면 여전히 작동하지 않습니다. – user2148492

답변

0

KeyDown 이벤트에서 IsMovingUp, IsFiring 등과 같은 부울을 true로 설정하고 이벤트를 처리 된 것으로 표시하십시오. KeyUp 이벤트에서 해당 부울을 false로 설정하십시오.

메인 게임 루프에서 부울을 확인하고 그에 따라 행동 할 수 있습니다.

+0

너무 좋지는 않지만 플레이어는 매 클릭마다 매끄럽게 움직일 수 없습니다. 내가 한 일은 3 개의 부울 값을 설정하고 타이머를 균등하게 밀리 초로 실행하는 다른 방법을 설정하는 것입니다. 어떤 아이디어? – user2148492

-1

위아래로 각각의 방법 및이 방법으로 스레드 에 메인 프로그램을 넣어 촬영 :

경우 (촬영 == 32) 32 = ASCII 코드 공간 & 변수

촬영 와서 쏴 최대뿐만 아니라 최대 & 아래로 그래서 명령이 실행되고 혼합되지 않습니다 인자 :