cocos2d-x / XCode によるスマートフォンのアプリ開発(c++)
// モンスターデータCSV読込関数 bool SSBattleManager::readAllMonstersCSV() { ifstream ifs(SS_CSV_MONSTER); // 入力ストリーム string csvLine; // csv1行 if(!ifs) return false; // 読込エラー int number=1; // モンスター識別番号(画像ファイル名と連携) // 1行ごとに順次読込 while ( getline(ifs, csvLine) ) { istringstream csvStream(csvLine); string csvCol; // 1項目(列の項目) int cntCol=1; // 項目番号 ParamCreature tmpParam; tmpParam.number = number; number++; // 1項目ごとに分解して構造体に追加 while ( getline(csvStream, csvCol, ',') ) { switch(cntCol){ case 1: tmpParam.name = csvCol; break; case 2: tmpParam.hp = atoi(csvCol.c_str()); break; case 3: tmpParam.mp = atoi(csvCol.c_str()); break; case 4: tmpParam.atk = atoi(csvCol.c_str()); break; case 5: tmpParam.def = atoi(csvCol.c_str()); break; : // 中略 default: break; } ++cntCol; } m_AllMonsters.push_back(tmpParam); // 列の終端で1行分をvectorに追加 } return true; }
No comments:
Post a Comment