본문 바로가기
코스웨어/15년 스마트컨트롤러

20151119 윤재희 #6. 게임 작성(맵핑, 박스 밀기)

by 알 수 없는 사용자 2015. 11. 19.
728x90
반응형

==================================Outline====================================

게임 만들기(push push)

    - 맵핑 기법 

----------------------------------------------------------------------------

 

게임 만들기(push push)

 

맵핑 기법

 

 

어제 조퇴를 해서 배우지 못한 부분을 업무일지를 보고 보충하자.

 

맵핑 기법을 사용하여 지도를 만들어 보자. 2차원 배열을 만든 후 각 좌표를 for문으로 사용하여 검사한다. 특정 조건이 맞으면 그 자리를 원하는 그림으로 채워주면 된다.

 

‘ ’, ‘#’ 그리고 ‘.‘이 존재한다. 공백은 길, #은 배경, .은 캐릭터의 목적지가 된다.

 

On_Paint함수로 이동하여 for문을 활용하여 배열에 넣어놓은대로 그림을 그려준다.


움직이는 캐릭터의 위치를 표시해 주어야 하기 때문에 기호는 ‘@’을 사용하고 키를 움직이면 캐릭터가 지도에서 움직이도록 코딩해준다. 또한 길에서만 움직여야 하기 때문에 길일때만 캐릭터의 좌표가 이동하도록 코딩한다.

 

작할 때 캐릭터를 표시해 주어야 하기 때문에 On_Create함수에서 시작점의 좌표에 ‘@’를 넣어준다.

 

ucMap[iyPos][ixPos] = '@'

 



 

경계 검사


캐릭터가 움직일 수 있는 경우와 움직일 수 없는 경우의 수를 만들어보자.

 

캐릭터는 가는 방향의 길이 비었을 때, 앞에 ‘.’이 있을 때, 앞에 박스가 있고 그 다음이 ‘.’이나 길일 때 움직일 수 있다. 오른쪽으로 움직이는 키만 살펴보면 다음과 같다.

 

이제 박스를 밀어주자.

 

반짝이는 것을 없애주자. 필요한 부분만 다시 그려주면 된다.




나는 디자이너가 아니었다!!!!!!!!


main.c


resource1.h


smart.h





 

 

 

 

 

 

 

 

 

728x90