WinAPI

똥피하기, 악어이빨

로만주 2023. 6. 30. 09:23

▶ 똥피하기

윈도우 화면에서 순차적으로 충돌체가 랜덤한 화면 밖 랜덤한 위치에서 생성되어야 한다.

ㄴ 초기 충돌체 인스턴스를 만들고 STL vector에 push_back 함.

ㄴ x위치값은 random 함수를 이용해 0 ~ 윈도우 창 사이즈 사이 값으로 초기화한다.

ㄴ y위치값은 random함수로 음수값으로 구하고 충돌체 높이만큼 뺀 값으로 초기화한다.

시간이 지날수록 새로 생성되는 충돌체의 속도가 빨라져야 한다.

ㄴ 충돌체의 구조체 멤버변수에 매 업데이트 마다 y 위치값에 더해지는 y벡터를 선언.

ㄴ 충돌체를 새로 생성할 때마다 y벡터의 크기를 크게 한다.

시간이 지날 수록 충돌체 갯수가 늘어나야 한다.

ㄴ 충돌체 top의 크기가 윈도우 창보다 커질 경우 위치값을 새로 지정.

ㄴ 일정 주기 마다 새로운 충돌체를 벡터에 push_back 함.

화면에 생존시간이 출력 되어야 한다.

ㄴ sprintf 함수를 이용해 time 값을 문자열버퍼에 입력.

ㄴ TextOut 함수를 이용해 좌상단 위치에 time 값을 출력.

플레이어는 좌우로 움직일 수 있어야 한다.

ㄴ 키매니저를 통해 좌우 버튼을 통해 플레이어 RECT의 left, right 값을 동일한 크기로 업데이트 함.

 

▶ 악어이빨

총 8개의 사각 충돌체가 존재.

ㄴ 위치값을 초기화한 RECT 자료형을 배열에 입력.

클릭 시 충돌체는 색이 변경 되어야 한다.

ㄴ 조건문을 통해 마우스 좌클릭 이벤트를 확인

ㄴ 반복문을 통해 마우스 포인터와 RECT 범위를 체크.

ㄴ HBRUSH 자료형을 통해 RECT 값을 채움.

재시작이 가능.

ㄴ 게임이 종료 되는 시점이 되는 time을 저장하고 time과 정해진 크기의 값만큼 차이가 날 경우 세팅을 다시 함.

게임을 종료하는 충돌체의 위치는 시작할 때 마다 변경되어야 한다.

ㄴ random 함수를 이용해 게임을 종료하게 하는 충돌체 배열의 인덱스 번호를 지정.

'WinAPI' 카테고리의 다른 글

루프렌더, 삼각함수  (0) 2023.07.03
STL map  (0) 2023.06.30
포신 자동회전 및 발사  (0) 2023.06.30
프레임 이미지  (0) 2023.06.30
미니맵  (0) 2023.06.30