void enemyManager::loadEnemy() { char str[128], temp[150000]; //에너미 데이터 불러오기 sprintf_s(str, "Stage%d_enemy.txt", _stageNum); ifstream loadEnemy(str); int dataOrder = 0; //데이터 순서(개수) tagEnemy enemy; while (!loadEnemy.eof()) { loadEnemy.getline(temp, 100); if (dataOrder % 3 == 0) //0번째 데이터 type { enemy.type = (ENEMYTYPE)atoi(temp); } else if (dataOrder % 3 == 1) //1번째 데이터 x { enemy.x = atoi(temp); } else if (dataOrder % 3 == 2) //2번째 데이터 y { enemy.y = atoi(temp); setEnemy(enemy); } dataOrder++; } }
HRESULT enemyManager::init(int stageNum) { _stageNum = stageNum; loadEnemy(); return S_OK; }
int Map::load(std::string fname) { FileParser infile; maprow *cur_layer = NULL; clearEvents(); clearLayers(); clearQueues(); // @CLASS Map|Description of maps/ if (!infile.open(fname)) return 0; this->filename = fname; while (infile.next()) { if (infile.new_section) { // for sections that are stored in collections, add a new object here if (infile.section == "enemy") enemies.push(Map_Enemy()); else if (infile.section == "enemygroup") enemy_groups.push(Map_Group()); else if (infile.section == "npc") npcs.push(Map_NPC()); else if (infile.section == "event") events.push_back(Event()); } if (infile.section == "header") loadHeader(infile); else if (infile.section == "layer") loadLayer(infile, &cur_layer); else if (infile.section == "enemy") loadEnemy(infile); else if (infile.section == "enemygroup") loadEnemyGroup(infile, &enemy_groups.back()); else if (infile.section == "npc") loadNPC(infile); else if (infile.section == "event") EventManager::loadEvent(infile, &events.back()); } infile.close(); return 0; }