diff --git a/entities/vessel_entity.cpp b/entities/vessel_entity.cpp new file mode 100644 index 0000000..7b0dada --- /dev/null +++ b/entities/vessel_entity.cpp @@ -0,0 +1,24 @@ +#include "vessel_entity.h" + + +unsigned long long vessel_entity::__global_id = 0; + +vessel_entity::vessel_entity(const dpoint_entity &harbor, unsigned int capacity) : _harbor(harbor), _capacity(capacity) { + this->_id = ++vessel_entity::__global_id; +} + +unsigned long long vessel_entity::id() { + return this->_id; +} + +const dpoint_entity vessel_entity::harbor() { + return this->_harbor; +} + +unsigned int vessel_entity::capacity() { + return this->_capacity; +} + +const QVector vessel_entity::cargo() { + return this->_cargo; +} diff --git a/entities/vessel_entity.h b/entities/vessel_entity.h new file mode 100644 index 0000000..2d02c54 --- /dev/null +++ b/entities/vessel_entity.h @@ -0,0 +1,29 @@ +#ifndef VESSEL_ENTITY_H +#define VESSEL_ENTITY_H + +#include "cargo_entity.h" +#include "dpoint_entity.h" + + + +class vessel_entity +{ +private: + static unsigned long long __global_id; + + unsigned long long _id; + dpoint_entity _harbor; + unsigned int _capacity; + QVector _cargo; + +public: + vessel_entity() = default; + vessel_entity(const dpoint_entity &harbor, unsigned int capacity); + + unsigned long long id(); + const dpoint_entity harbor(); + unsigned int capacity(); + const QVector cargo(); +}; + +#endif // VESSEL_ENTITY_H diff --git a/sea_transport.pro b/sea_transport.pro index 72c7504..7140f68 100644 --- a/sea_transport.pro +++ b/sea_transport.pro @@ -15,6 +15,7 @@ SOURCES += \ entities/cargo_entity.cpp \ entities/dpoint_entity.cpp \ entities/storage_entity.cpp \ + entities/vessel_entity.cpp \ main.cpp \ storageeditdialog.cpp \ usereditdialog.cpp \ @@ -27,6 +28,7 @@ HEADERS += \ entities/cargo_entity.h \ entities/dpoint_entity.h \ entities/storage_entity.h \ + entities/vessel_entity.h \ storageeditdialog.h \ usereditdialog.h \ vesseleditdialog.h