diff --git a/src/universe/party.cpp b/src/universe/party.cpp index 063905a8..ba85429b 100644 --- a/src/universe/party.cpp +++ b/src/universe/party.cpp @@ -958,11 +958,9 @@ void cParty::readFrom(const cTagFile& file, bool preview) { } alchemy.reset(); - std::deque alch; // deque instead of vector to avoid the bitwise specialization - page["ALCHEMY"].extract(alch); - alch.resize(alchemy.size()); - for(size_t i = 0; i < alchemy.size(); i++) { - alchemy[i] = alch[i]; + size_t alch; + while(page["ALCHEMY"] >> alch) { + alchemy[alch] = true; } for(size_t n = 0; n < page["TOWNSAVE"].size(); n++) {