/* speciesgen Copyright (C) 2022-2023 prisixia This file is part of speciesgen. speciesgen is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. speciesgen is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with speciesgen. If not, see . */ #include "starpounds/weightstage.h" namespace Starpounds { //---------------------------------------------------------------------- // WeightStageSub //---------------------------------------------------------------------- WeightStageSub::WeightStageSub(std::string name, std::string friendlyName, std::string descriptionChest, const Types::Chests typeChest) : m_name(std::move(name)), m_friendlyName(std::move(friendlyName)), m_descriptionChest(std::move(descriptionChest)), m_typeChest(typeChest) {} WeightStageSub::WeightStageSub(std::string name) : m_name(std::move(name)), m_typeChest(Types::Chests::Chest) {} WeightStageSub::WeightStageSub(const Types::Subs type, std::string descriptionChest) : m_name(Types::AsString(type)), m_friendlyName(Types::AsFriendly(type)), m_descriptionChest(std::move(descriptionChest)), m_typeChest(Types::AsChest(type)) {} std::string WeightStageSub::GetName() const { return m_name; } std::string WeightStageSub::GetFriendlyName() const { return m_friendlyName; } std::string WeightStageSub::GetChestDescription() const { return m_descriptionChest; } Types::Chests WeightStageSub::GetChestType() const { return m_typeChest; } void WeightStageSub::SetName(const std::string &name) { m_name = name; } void WeightStageSub::SetFriendlyName(const std::string &friendlyName) { m_friendlyName = friendlyName; } void WeightStageSub::SetChestDescription(const std::string &descriptionChest) { m_descriptionChest = descriptionChest; } void WeightStageSub::SetChestType(const Types::Chests typeChest) { m_typeChest = typeChest; } //---------------------------------------------------------------------- // WeightStage //---------------------------------------------------------------------- WeightStage::WeightStage(const std::string &name, const std::string &friendlyName, const std::string &descriptionChest, const Types::Chests typeChest, std::string descriptionLeg, const Types::Legs typeLeg, const bool frames, const bool id, std::vector subs) : WeightStageSub(name, friendlyName, descriptionChest, typeChest), m_descriptionLeg(std::move(descriptionLeg)), m_typeLeg(typeLeg), m_frames(frames), m_id(id), m_subs(std::move(subs)) {} WeightStage::WeightStage(const std::string &name, const bool frames, const bool id, std::vector subs) : WeightStageSub(name), m_typeLeg(Types::Legs::Legs), m_frames(frames), m_id(id), m_subs(std::move(subs)) {} std::string WeightStage::GetLegDescription() const { return m_descriptionLeg; } Types::Legs WeightStage::GetLegType() const { return m_typeLeg; } bool WeightStage::HasFrames() const { return m_frames; } bool WeightStage::HasID() const { return m_id; } std::vector WeightStage::GetSubs() const { return m_subs; } void WeightStage::SetLegDescription(const std::string &descriptionLeg) { m_descriptionLeg = descriptionLeg; } void WeightStage::SetLegType(const Types::Legs typeLeg) { m_typeLeg = typeLeg; } void WeightStage::SetFrames(const bool frames) { m_frames = frames; } void WeightStage::SetID(const bool id) { m_id = id; } void WeightStage::SetSubs(const std::vector &subs) { m_subs = subs; } } // namespace Starpounds