//
// Created by Dan Crosby on 12/19/21.
//

#include "TileModifierHelpers.hpp"

namespace shardok::fb {

auto ToTileModifierProto(const TileModifier& tileModifier) -> TileModifierProto {
    TileModifierProto tileModifierProto = {};

    if (tileModifier.bridge().present()) {
        tileModifierProto.mutable_bridge()->mutable_integrity()->set_value(
                tileModifier.bridge().integrity());
    }
    if (tileModifier.castle().present()) {
        tileModifierProto.mutable_castle()->mutable_integrity()->set_value(
                tileModifier.castle().integrity());
    }
    if (tileModifier.ice().present()) {
        tileModifierProto.mutable_ice()->mutable_integrity()->set_value(
                tileModifier.ice().integrity());
    }
    if (tileModifier.snow().present()) {
        tileModifierProto.mutable_snow()->mutable_integrity()->set_value(
                tileModifier.snow().integrity());
    }
    if (tileModifier.fire().present()) { tileModifierProto.mutable_fire(); }

    return tileModifierProto;
}

}  // namespace shardok::fb
