길 따라가기 실행화면 스냅샷.

GameMaker Studio 1.4로 '게임메이커 프로그래머' 책 보며 예제 5-7장 따라하기.

5장 길을 따라가는 오브젝트 만들기:
기본적인 png 파일들 불러들여 Sprite로 전환한 뒤 Obj로 만들기, Room 맵 구성 완료하고 objMouse1p 키보드로 이동하려는 곳이 빈 공백일 경우(Control-Check Empty 선택, x,y값 -8, 혹은 8로 변경, Relative 체크) 상하좌우 이동(Keyboard-Up, Down, Left, Right 각각 선택 뒤 x,y값 -8, 혹은 8로 변경, Relative 체크), 치즈와 충돌시 치즈를 얻었다란 팝업창 띄우고 스테이지 재시작하게하기(Collision-objCheese선택, main2-Display Message 추가 message: 치즈를 얻었다라고 입력, main1-RestartRoom)까지 처리.

* 패스 만들기: 패스(Path) 아이콘 클릭, 새 Path 생성, 'path1'으로 명명, Select Room Background 클릭 뒤 만들어 둔 룸 선택. Closed 체크 해제하여 열린 패스로 만들고 objMouse2p가 있는 곳에서 치즈가 있는 곳까지 미로를 따라 클릭하여 패스 만들기. 패스의 점을 마우스 우클릭하면 해당 점을 지울 수 있다.

* 패스 적용하기: objMouseCom 편집창에서 Create 이벤트 추가, 액션에 move-Set Path 추가, path에 방금 만든 패스 지정, speed: 5로 설정.
치즈와 충돌시 스테이지 팝업창 뜨게하기(Collision-objCheese선택, main2-Display Message 추가 message: 치즈를 빼앗겼다라고 입력), 스테이지 재시작하게하기(main1-RestartRoom).

16/8/9 화


장애물 피하는 게임 실행 스냅샷.

6장 장애물을 피하는 게임 만들기:
파란 볼을 키보드로 조작하여 빨간 볼을 피해 노란 별을 먹는 게임.

* 장애물인 빨간 볼 벽에 닿을 때마다 튕기며 상하로 이동: objBallRed에 Create 이벤트 추가, Move-Move Fixed 추가(Direction: 윗쪽, Speed: 5), Collision-objBlock 선택, Move-Bounce 추가하여 시작시 윗쪽으로 움직이고 벽에 충돌시 아랫쪽으로 움직이게 처리.

* 파란 볼이 빨간 볼에 닿을 경우 충돌 소리 울리고 시작위치로 되돌리기:
Collision-objBallRed 선택, Move-Jump to Start 추가하여 시작장소로 되돌리고 Main1-Play Sound (sound: soundHit, loop:false)추가하여 소리 울리게 처리.

* 방 만들기 중 배경을 부분적으로 다른 배경을 선택하는 방법을 몰라 헤메다. Backgrounds-tile_gray을 편집창에서 Use as tile set에 체크하고 Tile Width, Height를 각각 64로 지정한 뒤 Room 편집창 중 Tiles탭에서 위에 설정한 tile_gray를 불러온뒤 마우스 클릭으로 배치하면 되는 거였다. 사실 3장에서 나온 거였는데 잊고 헤멨었다.

* 게임을 exe파일로 만들기:
File-Create Application 클릭, 파일형식을 Single runtime executable로 선택하고 저장키를 누르면 바로 실행할 수 있는 exe 파일로 만들어진다.


점수 만들기 실행화면 스냅샷.

7장 점수 만들기:
새는 키보드로 조종, 룸의 외부에 objBlock을 둘러 화면밖으로 못나가게 처리.
새가 귤에 닿으면(Collision-objOrange 이벤트 추가)
점수를 1점 올리고(Score-Set Score: 1, Relative 체크)
귤은 사라지게(Main1-Destroy Instance, Other 체크) 처리,
점수가 5점이 되면(Score-Test Score: value: 5, operation: equal to)
귤을 다 먹었다는 메시지 띄우기(Main2-Display Message: message: Eat All Oranges!).

화면 좌상단에 점수 표시하기(새 오브젝트 생성, 'objScore'로 명명, Draw-Draw 이벤트 추가, Score-Draw Score: x,y:32, caption: Score:).