c语言飞机大战四个函数 c语言小程序飞机大战( 三 )


while(1)
{ if( _kbhit() )
{
char x=_getch();
switch (x)
{
case 'w' :
{
if( j == 13)
{
SetPos(12, j);
cout" ";
j = 11;
SetPos(12, j);
cout"";
SetPos(51, 13);
cout"";
SetPos(47, 11);
cout"简单的敌人:";
SetPos(51, 13);
cout"简单敌人有着较慢的移动速度 。";
}
break;
}
case 's' :
{
if( j == 11 )
{
SetPos(12, j);
cout" ";
j = 13;
SetPos(12, j);
cout"";
SetPos(51, 13);
cout"";
SetPos(47, 11);
cout"冷酷的敌人:";
SetPos(51, 13);
cout"冷酷的敌人移动速度较快 。";
}
break;
}
case 'k' :
{
if (j == 8) return 1;
else return 2;
}
}
}
}
}
/*
DWORD WINAPI MusicFun(LPVOID lpParamte)
{
//DWORD OBJ;
sndPlaySound(TEXT("bgm.wav"), SND_FILENAME|SND_ASYNC);
return 0;
}
*/
/*================== the Game Class ==================*/
class Game
{
public:
COORD position[10];
COORD bullet[10];
Frame enemy[8];
int score;
int rank;
int rankf;
string title;
int flag_rank;
Game ();
//初始化所有
void initPlane();
void initBullet();
void initEnemy();
//初始化其中一个
//void initThisBullet( COORD );
//void initThisEnemy( Frame );
void planeMove(char);
void bulletMove();
void enemyMove();
//填充所有
void drawPlane();
void drawPlaneToNull();
void drawBullet();
void drawBulletToNull();
void drawEnemy();
void drawEnemyToNull();
//填充其中一个
void drawThisBulletToNull( COORD );
void drawThisEnemyToNull( Frame );
void Pause();
void Playing();
void judgePlane();
void judgeEnemy();
void Shoot();
void GameOver();
void printScore();
};
Game::Game()
{
initPlane();
initBullet();
initEnemy();
score = 0;
rank = 25;
rankf = 0;
flag_rank = 0;
}
void Game::initPlane()
{
COORD centren={39, 22};
position[0].X=position[5].X=position[7].X=position[9].X=centren.X;
position[1].X=centren.X-2;
position[2].X=position[6].X=centren.X-1;
position[3].X=position[8].X=centren.X+1;
position[4].X=centren.X+2;
for(int i=0; i=4; i++)
position[i].Y=centren.Y;
for(int i=6; i=8; i++)
position[i].Y=centren.Y+1;
position[5].Y=centren.Y-1;
position[9].Y=centren.Y-2;
}
void Game::drawPlane()
{
for(int i=0; i9; i++)
{
SetPos(position[i]);
if(i!=5)
cout"O";
else if(i==5)
cout"|";
}
}
void Game::drawPlaneToNull()
{
for(int i=0; i9; i++)
{
SetPos(position[i]);
cout" ";
}
}
void Game::initBullet()
{
for(int i=0; i10; i++)
bullet[i].Y = 30;
}
void Game::drawBullet()
{
for(int i=0; i10; i++)
{
if( bullet[i].Y != 30)
{
SetPos(bullet[i]);
cout"^";
}
}
}
void Game::drawBulletToNull()
{
for(int i=0; i10; i++)
if( bullet[i].Y != 30 )
{
COORD pos={bullet[i].X, bullet[i].Y+1};
SetPos(pos);
cout" ";
}
}
void Game::initEnemy()
{
COORD a={1, 1};
COORD b={45, 15};
for(int i=0; i8; i++)
{
enemy[i].position[0] = random(a, b);
enemy[i].position[1].X = enemy[i].position[0].X + 3;
enemy[i].position[1].Y = enemy[i].position[0].Y + 2;
}
}
void Game::drawEnemy()

推荐阅读