aboutsummaryrefslogtreecommitdiff
path: root/extension/src/openvic2/Province.cpp
diff options
context:
space:
mode:
author George L. Albany <Megacake1234@gmail.com>2023-04-14 18:31:58 +0200
committer GitHub <noreply@github.com>2023-04-14 18:31:58 +0200
commit436b038c1806e326ff6458f1692e9009d3a54346 (patch)
treeb5a33a733398b511eb0aa7781860c8accbadd2a0 /extension/src/openvic2/Province.cpp
parent1f04a7827ae377372cb491ff0257a47d0d4c2967 (diff)
parent7241811bd8c9493b7b6c6480e8d63a5fb7f38e4e (diff)
Merge pull request #84 from OpenVic2Project/terrain-map
Diffstat (limited to 'extension/src/openvic2/Province.cpp')
-rw-r--r--extension/src/openvic2/Province.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/extension/src/openvic2/Province.cpp b/extension/src/openvic2/Province.cpp
new file mode 100644
index 0000000..49f1b0e
--- /dev/null
+++ b/extension/src/openvic2/Province.cpp
@@ -0,0 +1,40 @@
+#include "Map.hpp"
+
+#include <cassert>
+#include <sstream>
+#include <iomanip>
+
+using namespace OpenVic2;
+
+Province::Province(index_t new_index, std::string const& new_identifier, colour_t new_colour) :
+ index(new_index), identifier(new_identifier), colour(new_colour) {
+ assert(index != NULL_INDEX);
+ assert(!identifier.empty());
+ assert(colour != NULL_COLOUR);
+}
+
+std::string Province::colour_to_hex_string(colour_t colour) {
+ std::ostringstream stream;
+ stream << std::hex << std::setfill('0') << std::setw(6) << colour;
+ return stream.str();
+}
+
+Province::index_t Province::get_index() const {
+ return index;
+}
+
+std::string const& Province::get_identifier() const {
+ return identifier;
+}
+
+Province::colour_t Province::get_colour() const {
+ return colour;
+}
+
+Region* Province::get_region() const {
+ return region;
+}
+
+std::string Province::to_string() const {
+ return "(#" + std::to_string(index) + ", " + identifier + ", 0x" + colour_to_hex_string(colour) + ")";
+}