1. C++ 구현 (1)
• C 스타일의 SDL 함수를 좀더 편하게 사용하기 위해 이미지를 클래스로 구현
2. Lua 에서 사용 할 이미지를 콘솔에서 생성
• 콘솔에서 생성 후 스크립트에서는 파라미터로 index 를 넘겨 주는 형태로 사용 .
3. C++ 과 Lua 연동 될 함수 작성
• ‘Image’ Class 중에 lua 에서 사용 될 부분 을 cLua::addFunction() 를 사용하여 등록
시킴
4. 스크립트 작성
• 게임 흐름 관리• 별 생성하기 , 떨어지기• 충돌처리하기 ( 별 - 바구니 , 별 - 바닥 )• 점수 판 ->C++ 함수로 구현• 바구니 좌우 이동• 플레이어 목숨 관리
게임 흐름 관리
• 스크립트부분의 게임흐름이 끝날 때까지 콘솔은 계속 기다리고 있어야 한다 .
게임 흐름 (intro.lua)
• 타이틀을 깜박이면서 클릭하면 게임 플레이를 시작한다 .
게임 흐름 (play.lua)
• 별을 놓쳐서 플레이어의 생명 (Life) 가 0 보다 작거나 같 으면 게임오버가 된다 .
게임 흐름 (gameover.lua)
• 플레이 동안의 점수를 보여주면서 클릭을 하면 프로그램을 종료시킨다 .
참고 (main.lua)
• 상수를 선언해서 아이디 (id, c 에선 배열 index) 에 네이밍함 .• 필요한 정보들은 미리 지정함 .
별 생성하기
• 일정 시간이 되면 , x 축을 랜덤 (20~280) 으로 별이 떨어진다 .
별 떨어지기
• 현재 점수가 커짐에 따라 지연 (delay) 이 줄어듬 .• 살아있는 별에 한에서 바닥에 떨어진다 .• 떨어진 별이 있다면 , 플레이어 생명이 줄어진다 .
충돌처리하기
• 보이는 별에 한에서 플레이어와 충돌처리한다 .• 충돌했다면 , 점수가 올라간다 .( 바닥과의 충돌은 별이 떨어지는 부분에서 구현됨 .)
바구니 좌우 이동
• 콘솔로부터 마우스 위치 값을 받아와 그 위치에 플레이어를 위치시킨다 .
윈도우 크기윈도우 크기 : 300x400: 300x400
별 이 위에서 아래방향으로별 이 위에서 아래방향으로떨어진다떨어진다 ..
★★★★
★★ ★★
★★★★
★★★★
플레이어는 바구니를 통해 플레이어는 바구니를 통해 별을 담는다별을 담는다 ..
33 개 이상 놓치면 게임이개 이상 놓치면 게임이끝난다끝난다 ..
컨트롤은 마우스로 한다컨트롤은 마우스로 한다 ..
GAME OVERGAME OVER