#pragma once #include "CDTable.h" struct CDRailActivatorComponent { int32_t id; std::u16string startAnimation; std::u16string loopAnimation; std::u16string stopAnimation; std::u16string startSound; std::u16string loopSound; std::u16string stopSound; std::pair startEffectID; std::pair loopEffectID; std::pair stopEffectID; std::string preconditions; bool playerCollision; bool cameraLocked; bool damageImmune; bool noAggro; bool showNameBillboard; }; class CDRailActivatorComponentTable : public CDTable> { public: void LoadValuesFromDatabase(); [[nodiscard]] CDRailActivatorComponent GetEntryByID(int32_t id) const; private: static std::pair EffectPairFromString(std::string& str); };