#include #include "WarehouseT.h" #include "BuildingT.h" using namespace std; string BuildingTypeTToString(BuildingTypeT t) { switch(t) { case BuildingTypeT::FARM: return "Farm"; case BuildingTypeT::LUMBERJACK: return "Lumberjack Camp"; case BuildingTypeT::MINE: return "Mine"; case BuildingTypeT::SAWMILL: return "Sawmill"; case BuildingTypeT::MINT: return "Mint"; case BuildingTypeT::KITCHEN: return "Kitchen"; case BuildingTypeT::FACTORY: return "Factory"; } return "Unknown"; } ostream & operator << (ostream & s, BuildingTypeT t) { s << BuildingTypeTToString(t); return s; } BuildingT::BuildingT(WarehouseT , BuildingTypeT t): myType(t) { cout << "Base class buliding a " << t << endl; } bool BuildingT::CanBuild(WarehouseT , BuildingTypeT t){ cout << "Base class checking to see if we can build a " << t << endl; return true; } void BuildingT::CanProduce(WarehouseT ){ cout << "Base class checking to see if we can produce" << endl; } void BuildingT::Produce(WarehouseT ){ cout << "Base class producing" << endl; timesUsed++; }