#pragma once #include #include #include #include #include "CommandFormats.hh" #include "QuestScript.hh" class WordSelectTable { public: explicit WordSelectTable(const JSON& json); WordSelectMessage translate( const WordSelectMessage& msg, QuestScriptVersion from_version, QuestScriptVersion to_version) const; private: struct Token { uint16_t dc_value; uint16_t pc_value; uint16_t gc_value; uint16_t ep3_value; uint16_t bb_value; uint16_t value_for_version(QuestScriptVersion version) const; }; std::vector dc_index; std::vector pc_index; std::vector gc_index; std::vector ep3_index; std::vector bb_index; std::vector tokens; };