Пример #1
0
bool Data_DollParam_Each::Load(LPTSTR fileName){
	CsvReader reader;
	// ファイルを開く
	if(!reader.Open(fileName)){
		return false;
	}
	// 名前を読み込む
	reader.Read();
	reader.GetValue(0, typeName, DOLL_TYPENAME_BYTES);
	// 空行を読む
	reader.Read();
	// パラメータの上昇率を読み込む
	for(int n=0; n<DOLL_PARAM_MAX; n++){
		// 一行読む
		reader.Read();
		// 係数3つを取得する
		// 見やすさのために0番目の要素は能力値名を使用。
		LvToP[n].a = reader.GetFloatValue(1);
		LvToP[n].b = reader.GetFloatValue(2);
		LvToP[n].c = reader.GetFloatValue(3);
	}
	// 空行を読む
	reader.Read();
	// レベルアップボーナスを読み込む
	for(int n=0; n<DOLL_LEVEL_MAX; n++){
		// 一行読む
		reader.Read();
		// 各パラメータを取得する
		for(int m=0; m<DOLL_PARAM_MAX; m++){
			LvBonus[n].growth[m] = reader.GetIntValue(m+1, 0);
		}
		LvBonus[n].skillID = reader.GetIntValue(DOLL_PARAM_MAX+1, 0);
	}
	return true;
}
Пример #2
0
bool Data_EnemyDraw::LoadDataFromCsv(){
	// リストの解放
	drawList.Release();
	// Csvを読み込むクラス
	CsvReader				reader;
	// ファイル名を保持する
	TCHAR					fileName[MAX_PATH];
	// グループの内容を一時的に保持する変数
	Data_EnemyDraw_Data		tmpDraw;

	strcpy_s(fileName, MAX_PATH-1, CSVFILE_ENEMYDRAW);
	if(reader.Open(fileName)){
		// ダミー行
		reader.NextLine();
		// csvファイルを読み込んでグループに格納する
		for(int n=0; n<MAX_ENEMYDRAWFILE; n++){
			tmpDraw = DATA_ENEMYDRAW_DATA();
			// レファレンス用IDを取得する
			if(reader.Read() == CSV_READ_NOERROR){
				if(reader.GetIntValue(1, 0) == 0){
					continue;
				}
				tmpDraw.refID = (WORD)reader.GetIntValue(1, 0);
				// 画像サイズを取得
				tmpDraw.iWidth = reader.GetIntValue(2, 1);
				tmpDraw.iHeight = reader.GetIntValue(3, 1);
				// 描画基準位置を取得
				tmpDraw.cx = reader.GetFloatValue(4, 0);
				tmpDraw.cy = reader.GetFloatValue(5, 0);
				// 拡大倍率を取得
				tmpDraw.baseExRate = reader.GetFloatValue(6, 1.0);

				// 取得したグループをデータベースにセットする
				drawList.AddData(tmpDraw);
			}
		}
	}else{
		return false;
	}

	// 画像ハンドルの結びつけは毎回手動で行う必要がある
	DATA_ENEMYDRAW_DATA*		pData;
	for(int n=0; n<drawList.GetSize(); n++){
		pData = drawList.GetPointerByIndex(n);
		for(int i=0; i<DOLL_ATTR_NUM; i++){
			pData->hImg[i] = GetImgHandleByRefID(pData->refID, i);
		}
	}

	return true;
}