Смекни!
smekni.com

Курсовая работа по основам программирования. Игра Паровоз (стр. 2 из 2)

ball3.SetRect(210,190,230,220);

korp.SetRect(0,288,50,300);

kr.SetRect(30,280,40,288);

kr2.SetRect(10,270,25,288);

kol1.SetRect(5,295,15,305);

kol2.SetRect(35,295,45,305);

SetTimer(1,100,NULL);

SetTimer(2,1000,NULL);

InvalidateRect(NULL);

}

BEGIN_MESSAGE_MAP(CMainWnd,CFrameWnd)

ON_COMMAND(IDM_EXIT,OnExit)

ON_COMMAND(IDM_BEGIN,OnBegin)

ON_COMMAND(IDM_RED,OnRed)

ON_COMMAND(IDM_GREEN,OnGreen)

ON_COMMAND(IDM_BLUE,OnBlue)

ON_WM_PAINT()

ON_WM_TIMER()

ON_WM_CHAR()

END_MESSAGE_MAP()

afx_msg void CMainWnd::OnChar( UINT nChar, UINT nRepCnt, UINT nFlags )

{

if(game)

{

switch(nChar)

{

case 234:

{

ns=0;

break;

}

case 231:

{ns=2;

move=1;

break;

}

case 230:

{ns=1;

}

}

InvalidateRect(ball1);

InvalidateRect(ball2);

InvalidateRect(ball3);

}

}

CApp app;

Листинг файла main.h

class CMainWnd: public CFrameWnd /*класс окна*/

{

public:

CRect wnd; /*размер окна*/

CRect kol1,kol2,korp,kr,temp; /*прямоугольники*/

CRect svet,ball1,ball2,ball3;/*прямоугольники*/

CBrush br1[3],br2; /*кисти*/

CBrush sv[4]; /*цвета светофора*/

CRect noga; /*нога светофора*/

CRect balls[5]; /*шарики дыма*/

CRect kr2; //кабина

int numball; //номер дыма

int live[5]; //признак жизни дыма

bool game; /*признак игры или вне игры*/

int color; /*номер цвета паровоза*/

int ns; /*номер увета светофора*/

int move; /*флаг движения паровоза*/

CMainWnd(); /*конструктор главного. окна*/

afx_msg void OnRed(); /*пунуты меню цвета*/

afx_msg void OnGreen();

afx_msg void OnBlue();

afx_msg void OnPaint(); /*ф-ия перерисовки*/

afx_msg void OnTimer( UINT nIDEvent ); /*обраб-чик таймера*/

afx_msg void OnExit();//выход

afx_msg void OnBegin();//перестартовать

afx_msg void OnChar( UINT nChar, UINT nRepCnt, UINT nFlags );

DECLARE_MESSAGE_MAP()//карта сообщений

};

class CApp: public CWinApp

{

public:

BOOL InitInstance();

};

Листинг файла menu1.h

#define IDM_BEGIN 100

#define IDM_RED 101

#define IDM_GREEN 102

#define IDM_BLUE 103

#define IDM_EXIT 104

Листинг файла menu1.rc

#include <afxres.h>

#include "menu1.h"

MAINMENU MENU DISCARDABLE

BEGIN

POPUP "GAME"

BEGIN

POPUP "COLOR"

BEGIN

MENUITEM "RED", IDM_RED

MENUITEM "GREEN", IDM_GREEN

MENUITEM "BLUE", IDM_BLUE

END

MENUITEM SEPARATOR

MENUITEM "START", IDM_BEGIN

MENUITEM "EXIT", IDM_EXIT

END

END