buildings.cpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include <sqlite3.h>
  2. #include <vector>
  3. #include <string>
  4. #include <iostream>
  5. #include "building.h"
  6. #include "json.hpp"
  7. #include <fstream>
  8. using namespace std;
  9. using json = nlohmann::json;
  10. vector<building> load_buildings(){
  11. vector<building> vector_building;
  12. vector_building.push_back(building());
  13. std::ifstream in("buildings.json");
  14. json j = json::parse(in);
  15. int i = 1;
  16. for(auto json_building : j["buildings"]){
  17. building o_building(json_building.at("name"), i);
  18. o_building.set_cost(json_building.at("cost"));
  19. o_building.set_building_time(json_building.at("building_time"));
  20. o_building.set_air_pollution(json_building.at("pollution"));
  21. o_building.set_max_people(json_building.at("max_people"));
  22. o_building.set_electricity_consumption(json_building.at("electricity_consumption"));
  23. o_building.set_water_consumption(json_building.at("water_consumption"));
  24. o_building.set_size(json_building.at("size"));
  25. o_building.set_deterioration_factor(json_building.at("deterioration_factor"));
  26. o_building.set_waste(json_building.at("waste"));
  27. vector_building.push_back(o_building);
  28. ++i;
  29. }
  30. for(unsigned i = 0; i < vector_building.size(); ++i)
  31. cout << vector_building[i].get_type() << endl;
  32. return vector_building;
  33. }