aboutsummaryrefslogtreecommitdiff
path: root/src/openvic-simulation/economy/GoodInstance.cpp
blob: 937706dcdecb6383e935d120e1292e0efc19a0c3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "GoodInstance.hpp"

using namespace OpenVic;

GoodInstance::GoodInstance(GoodDefinition const& new_good_definition)
  : HasIdentifierAndColour { new_good_definition }, good_definition { new_good_definition },
   price { new_good_definition.get_base_price() }, available { new_good_definition.is_available_from_start() } {}

bool GoodInstanceManager::setup_good_instances(GoodDefinitionManager const& good_definition_manager) {
   good_instances.reset();
   good_instances.reserve(good_definition_manager.get_good_definition_count());

   bool ret = true;

   for (GoodDefinition const& good : good_definition_manager.get_good_definitions()) {
      ret &= good_instances.add_item({ good });
   }

   return ret;
}