⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 recordlist.cpp

📁 小蜜蜂射击游戏,画面精彩,声音也不错
💻 CPP
字号:
// Recordlist.cpp: implementation of the Recordlist class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "bee.h"
#include "Recordlist.h"
#include <fstream.h>
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

Recordlist::Recordlist()
{
InitRecord();
ReadRecord();
}

Recordlist::~Recordlist()
{

}

int Recordlist::FindPos(int score)
{
	int pos;
	for(pos=0;pos<10;pos++)
	{
		if(m_recordlist[pos].score<score)
			return pos;
	}
}

BOOL Recordlist::AddRecord(const char * name,int score)
{
	int pos=9,i;
	if(score>m_lowscore) {
		pos=FindPos(score);
		for(i=9;i>pos;i--)
			m_recordlist[i]=m_recordlist[i-1];
		strcpy(m_recordlist[pos].name,name);
		m_recordlist[pos].score=score;
		m_highscore=m_recordlist[0].score;    //取得最高最低分
		m_lowscore=m_recordlist[9].score;
	}
	return true;

}

BOOL Recordlist::ReadRecord()
{
	int i;
    ifstream scorerecord;
	ofstream ftemp;
//	char stemp[100];
//	int a=0,b=0;
//	ftemp.open("record.dat",ios::out|ios::binary);
//	ftemp.write((unsigned char*)&a,sizeof(a));
//	ftemp.write((unsigned char*)&b,sizeof(b));
//	ftemp.close;
   	scorerecord.open("record.dat",ios::in|ios::binary);
	if(scorerecord.fail()==0){
		if(!scorerecord.eof()){
		scorerecord.read((unsigned char*)&m_highscore,sizeof(m_highscore));
		scorerecord.read((unsigned char*)&m_lowscore,sizeof(m_lowscore));
        //AfxMessageBox("i am here");
		}
		i=0;
		while(!scorerecord.eof()){
			scorerecord.read((unsigned char*)&(m_recordlist[i].name),30);
			scorerecord.read((unsigned char*)&(m_recordlist[i].score),sizeof(m_lowscore));
			i++;
		}
	}
	scorerecord.close();
	return true;
}

void Recordlist::InitRecord()
{
	int i;
	m_highscore=0,m_lowscore=0;
	for(i=0;i<10;i++){
		strcpy(m_recordlist[i].name,"player");
		m_recordlist[i].score=0;
	}
}

BOOL Recordlist::WriteRecord()
{
	int i;
    ifstream ftemp;
	ofstream scorerecord;
//	char stemp[100];
//	int a=0,b=0;
//	ftemp.open("record.dat",ios::out|ios::binary);
//	ftemp.write((unsigned char*)&a,sizeof(a));
//	ftemp.write((unsigned char*)&b,sizeof(b));
//	ftemp.close;
   	scorerecord.open("record.dat",ios::out|ios::binary);
	if(scorerecord.fail()==0){
		scorerecord.write((unsigned char*)&m_highscore,sizeof(m_highscore));
		scorerecord.write((unsigned char*)&m_lowscore,sizeof(m_lowscore));

		for(i=0;i<9;i++){
			scorerecord.write((unsigned char*)&(m_recordlist[i].name),30);
			scorerecord.write((unsigned char*)&(m_recordlist[i].score),sizeof(m_lowscore));
		}
	}
	scorerecord.close();
	return true;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -