11 C++课程设计_太空战机

g_GameMain.DeleteSprite( pTarSprite, true ); } }

17、当我方战机的HP值小于0是,游戏结束。增加IsGameLost方法。

bool CGameMain::IsGameLost() {

return ( m_pMyFighter ? m_pMyFighter->IsDead() : false ); }

18、在GameMainLoop中的switch语句中的case2中调用

if( !IsGameLost() ) {

GameRun( fDeltaTime ); }

19、在CBullet中添加IsMyBullet 的处理函数。

bool CBullet::IsMyBullet() {

m_iType = GetType(); if (m_iType == 0) {

return true; }

return false; }

实验六 读写游戏记录

【实验内容】

1、读取游戏最高分记录; 2、写入游戏最高分记录;

【实验思路】

用流方式读写文件。

【实验指导】

1、在CGameMain中添加表示最高分数的私有成员变量m_iMaxScore,并在构造函数中

初始化为0。

2、在CGameMain类的GameInit方法中读取游戏记录。

fstream ScoreFile(\ if( ScoreFile.is_open() ) {

ScoreFile >> m_iMaxScore; ScoreFile.close(); }

//更新最大积分

g_MaxScoreText->SetTextValue( m_iMaxScore );

20

上海锐格软件有限公司

注意需要包含头文件,并声明命名空间:

#include %using namespace std;

3、在CGameMain类的GameEnd方法中写入记录。

if( m_iMaxScore < GetControlSprite()->GetScore() ) {

m_iMaxScore=GetControlSprite()->GetScore(); // 写文件

fstream ScoreFile(\if( ScoreFile.is_open() ) {

ScoreFile << m_iMaxScore; ScoreFile.close(); } }

SetGameState(0);

4、至此,本游戏全部结束。

21

联系客服:779662525#qq.com(#替换为@)