2017-05-18 17:56:50 +00:00
|
|
|
#ifndef OPENMW_FACTIONAPI_HPP
|
|
|
|
#define OPENMW_FACTIONAPI_HPP
|
|
|
|
|
|
|
|
#define FACTIONAPI \
|
2017-07-07 06:25:48 +00:00
|
|
|
{"InitializeFactionChanges", FactionFunctions::InitializeFactionChanges},\
|
2017-05-18 17:56:50 +00:00
|
|
|
\
|
2017-07-07 06:25:48 +00:00
|
|
|
{"GetFactionChangesSize", FactionFunctions::GetFactionChangesSize},\
|
|
|
|
{"GetFactionChangesAction", FactionFunctions::GetFactionChangesAction},\
|
2017-05-18 17:56:50 +00:00
|
|
|
\
|
2017-07-07 06:25:48 +00:00
|
|
|
{"GetFactionId", FactionFunctions::GetFactionId},\
|
|
|
|
{"GetFactionRank", FactionFunctions::GetFactionRank},\
|
|
|
|
{"GetFactionExpelledState", FactionFunctions::GetFactionExpelledState},\
|
2017-07-13 10:36:00 +00:00
|
|
|
{"GetFactionReputation", FactionFunctions::GetFactionReputation},\
|
2017-05-18 17:56:50 +00:00
|
|
|
\
|
2017-07-07 06:25:48 +00:00
|
|
|
{"SetFactionChangesAction", FactionFunctions::SetFactionChangesAction},\
|
2017-07-13 10:36:00 +00:00
|
|
|
{"SetFactionId", FactionFunctions::SetFactionId},\
|
|
|
|
{"SetFactionRank", FactionFunctions::SetFactionRank},\
|
|
|
|
{"SetFactionExpulsionState", FactionFunctions::SetFactionExpulsionState},\
|
|
|
|
{"SetFactionReputation", FactionFunctions::SetFactionReputation},\
|
|
|
|
\
|
2017-07-07 06:25:48 +00:00
|
|
|
{"AddFaction", FactionFunctions::AddFaction},\
|
|
|
|
\
|
|
|
|
{"SendFactionChanges", FactionFunctions::SendFactionChanges}
|
2017-05-18 17:56:50 +00:00
|
|
|
|
|
|
|
class FactionFunctions
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
|
2017-07-07 06:25:48 +00:00
|
|
|
static void InitializeFactionChanges(unsigned short pid) noexcept;
|
|
|
|
|
2017-05-18 17:56:50 +00:00
|
|
|
static unsigned int GetFactionChangesSize(unsigned short pid) noexcept;
|
2017-07-05 04:05:52 +00:00
|
|
|
static unsigned char GetFactionChangesAction(unsigned short pid) noexcept;
|
2017-05-18 17:56:50 +00:00
|
|
|
|
|
|
|
static const char *GetFactionId(unsigned short pid, unsigned int i) noexcept;
|
|
|
|
static int GetFactionRank(unsigned short pid, unsigned int i) noexcept;
|
2017-05-18 18:51:24 +00:00
|
|
|
static bool GetFactionExpelledState(unsigned short pid, unsigned int i) noexcept;
|
2017-07-13 10:36:00 +00:00
|
|
|
static int GetFactionReputation(unsigned short pid, unsigned int i) noexcept;
|
2017-05-18 17:56:50 +00:00
|
|
|
|
2017-07-07 06:25:48 +00:00
|
|
|
static void SetFactionChangesAction(unsigned short pid, unsigned char action) noexcept;
|
2017-07-13 10:36:00 +00:00
|
|
|
static void SetFactionId(const char* factionId) noexcept;
|
|
|
|
static void SetFactionRank(unsigned int rank) noexcept;
|
|
|
|
static void SetFactionExpulsionState(bool isExpelled) noexcept;
|
|
|
|
static void SetFactionReputation(int reputation) noexcept;
|
|
|
|
|
|
|
|
static void AddFaction(unsigned short pid) noexcept;
|
2017-07-07 06:25:48 +00:00
|
|
|
|
|
|
|
static void SendFactionChanges(unsigned short pid, bool toOthers = false) noexcept;
|
2017-05-18 17:56:50 +00:00
|
|
|
private:
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif //OPENMW_FACTIONAPI_HPP
|