DarkflameServer/dDatabase/CDClientDatabase/CDClientTables/CDRailActivatorComponent.h

30 lines
880 B
C
Raw Normal View History

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