DyXel/Multirole

Suport for new HostInfo::sizes field

Closed this issue · 0 comments

To match the network changes that are going to be int in the next version (40) handling for this new struct field (https://github.com/edo9300/edopro/blob/23b465b5bc4ba3098d58e190df0bc8787944cb45/gframe/network.h#L24-L29) will have to be added.
The field matches in design the DeckLimits struct used in multirole

struct DeckLimits
{
struct Boundary
{
std::size_t min, max;
}main{40U, 60U}, extra{0U, 15U}, side{0U, 15U}; // NOLINT
};
with the difference being that the fields are uint16_t and a value of 0 for the max means that there is no upper bound.
Alongside that, also those values will have to be exposed in the json roomlist, so that they're exposed to the clients (https://github.com/edo9300/edopro/blob/deck-size-network-packets/gframe/server_lobby.cpp#L250-L255).
With this change the 2 extra rule flags EXTRA_RULE_DECK_LIMIT_20 and EXTRA_RULE_DOUBLE_DECK will become unused and can be repurposed and/or removed entirely.