-
4. 별(star)을 구성 & 아래로 이동 & 충돌체크 만들기C,C++로 만드는 간단한 프로젝트/별 피하기 게임 만들기 2020. 12. 26. 22:29
별에 대한 정보를 다음과 같이 구성한다.
별은 여러 개로 정의하므로 배열로 선언한다.
그리고 구조체 변수 LiveFlag는 1과 0의 값을 갖는데, 1이면 별이 생성됨을 의미한다.
1인 경우에만 별을 아래로 이동시키면서 렌더를 한다.
만약 별이 맨 아래로 이동한 경우에는 LiveFlag를 0으로 설정을 하고 렌더를 하지 않는다.
별들의 정보를 초기화하는 부분을 작성해보자.
이는 InitObject함수에서 한다.
별을 렌더하는 함수를 만들어 보자. 함수의 이름은 DrawStar라고 하자.
이 함수는 Draw함수에서 호출되면 된다.
아래는 Draw함수로 DrawStar함수를 호출한다.
그리고 별이 움직이는 함수를 만들어 보자.
별들은 움직임이 아래로만 움직인다.
함수의 이름은 StarAction이라 한다.
그리고 별을 생성하는 함수를 만들어 보자.
이 함수의 이름은 CreateStar라고 하고, 역할은 아래와 같다.
별을 생성할 조건이 되면, 별을 하나 만드는 역할을 한다.
별이 떨어질 위치를 저장하고 LiveFlag의 값을 1로 설정하면 된다.
그리고 마지막으로, 별을 떨어트리는 부분을 구성하면 된다.
별은 10퍼센트의 확률로 하나 생성해서 떨어트리도록 한다.
이는 메인함수에서 구성한다.
그리고 실행해보자.
그리고 마지막으로 별과 플레이어의 충돌체크를 하지 않았다.
이에 대한 충돌처리는 CheckCollision함수에서 한다.
CheckCollision함수의 호출은 플레이어의 움직임과 별들의 움직임이 끝난 직후에 호출한다.
메인함수 내에서 호출하면 된다.
실행해보자.
최종 소스 파일
'C,C++로 만드는 간단한 프로젝트 > 별 피하기 게임 만들기' 카테고리의 다른 글
3. 플레이어를 움직이고 맵 밖으로 이동을 막기 (0) 2020.12.26 2. 플레이어 구성 & 플레이어를 렌더하기 (0) 2020.12.26 1. 콘솔화면 구성 & 그리는 함수 만들기 (0) 2020.12.26