mirror of
https://github.com/sebastiandine/Card-Collection-Manager-3.git
synced 2026-08-29 01:08:49 +00:00
8b7d45fdac
* yugioh adjustments * test coverage
38 lines
893 B
C++
38 lines
893 B
C++
#pragma once
|
|
|
|
// YuGiOhCard - Yu-Gi-Oh card model with print-level metadata.
|
|
|
|
#include "ccm/domain/Enums.hpp"
|
|
#include "ccm/domain/Set.hpp"
|
|
|
|
#include <nlohmann/json.hpp>
|
|
|
|
#include <cstdint>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
namespace ccm {
|
|
|
|
struct YuGiOhCard {
|
|
std::uint32_t id{0};
|
|
std::uint8_t amount{1};
|
|
std::string name;
|
|
Set set;
|
|
std::string setNo;
|
|
std::string rarity;
|
|
std::string note;
|
|
std::vector<std::string> images;
|
|
Language language{Language::English};
|
|
Condition condition{Condition::NearMint};
|
|
bool firstEdition{false};
|
|
bool signed_{false};
|
|
bool altered{false};
|
|
|
|
friend bool operator==(const YuGiOhCard&, const YuGiOhCard&) = default;
|
|
};
|
|
|
|
void to_json(nlohmann::json& j, const YuGiOhCard& c);
|
|
void from_json(const nlohmann::json& j, YuGiOhCard& c);
|
|
|
|
} // namespace ccm
|