void GameController::readData(std::istream& input) { BlockPairQueue nextBlocks; GridType myNewGrid; GridType opponentNewGrid; for (int i = 0; i < QUEUE_LENGTH; i++) { int colorA; int colorB; input >> colorA >> colorB; input.ignore(); nextBlocks.push_back(std::make_pair(Block(colorA), Block(colorB))); } for (int i = 0; i < GRID_HEIGHT; i++) { std::string row; input >> row; input.ignore(); myNewGrid.push_back(row); } for (int i = 0; i < GRID_HEIGHT; i++) { std::string row; input >> row; input.ignore(); opponentNewGrid.push_back(row); } nextBlocks_ = nextBlocks; currentGrid_.reset(myNewGrid); opponentGrid_.reset(opponentNewGrid); }