블로그 이미지
이태원에서 사는 다섯식구의 무직 가장. 흰둥에미

카테고리

분류 전체보기 (184)
Itaewon (2)
ryu's?? (1)
20121210이전 (20)
20130827이전 (147)
soo'study (13)
Total34,023
Today5
Yesterday5

소코반

- 맵 그리기 힘듦...

  함수들 분석으로 끝낼꺼임.

  void DrawScreen(HDC hdc);

  - 맵의 문자에 따라 DrawBitmap함수를 이용해 해당 좌표에 그림을 찍어주는 함수.

  BOOL TestEnd();

  - 게임이 클리어 되었는지 각 타일들을 체크하는 함수

  void Move(int dir);

  - dir(키보드 키값임)에 따라, 주인공의 이동.

  void InitStage();

  - 맵에 따라 화면을 초기화 

  void DrawBitmap(HDC hdc, int x, int y, HBITMAP hBit);

  - x, y로 주어진 좌표에 hBit로 전달되는 비트맵을 출력하는 함수.

  개작

  - 취소 및 재실행

    MoveInfo (이전 좌표와 팩과 같이 움직였는지를 저장하는 구조체)

    위 MoveInfo구조체를 Undo할수 있는 횟수만큼의 배열로 가지고 저장.

  - 캐릭터 회전

    캐릭터 비트맵을 네가지(상,하,좌,우)로 만들어 이동한 방향에 따라 표시해줌.

  - 사운드 출력

    PlaySound라는 함수를 이용해 출력.


Testris

- 구현해 보자.

  정확히는 따라쳐 보자.

  주석도 없고, 설명 읽기도 귀찮아서, GetAround함수만 한참 쳐다보다 끝났다.

  Shape배열은 각 모양(9개)의 회전(4가지)을 표현.

  GetAround 함수는 대충 계산한 함수이더라.

  로직

  - 블럭이 한칸 내려오면, 멈춰야 하는가 확인(블럭이나, 바닥에 닿아서)

    멈추면, 없애야 할 줄이 있는가 확인 후, 줄을 없앰.

    새로운 블럭의 출현 (이때 GetAround함수로 주위가 비어있는지 확인후, 비어있지 않으면 게임 종료)

    다시 반복


짝맞추기

- 각 타일들을 좌표를 이용해 구할지, 아니면 각 타일들을 윈도우로 만들어 클릭 메시지를 처리할지가 변수

신고

'20130827이전 > WinAPI' 카테고리의 다른 글

11장. 윈도우  (1) 2013.01.15
10장. MFC 소개  (0) 2013.01.15
9장. API 실습  (0) 2013.01.15
8장. 대화상자  (0) 2013.01.15
7장. 컨트롤  (0) 2013.01.14
6장. 그래픽  (0) 2013.01.14
Posted by 흰둥에미

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

티스토리 툴바