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; }
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; }