mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-15 20:49:56 +00:00
68 lines
3.3 KiB
C++
68 lines
3.3 KiB
C++
//
|
|
// Created by koncord on 30.08.16.
|
|
//
|
|
|
|
#ifndef OPENMW_ITEMAPI_HPP
|
|
#define OPENMW_ITEMAPI_HPP
|
|
|
|
#define ITEMAPI \
|
|
{"InitializeInventoryChanges", ItemFunctions::InitializeInventoryChanges},\
|
|
\
|
|
{"GetEquipmentSize", ItemFunctions::GetEquipmentSize},\
|
|
{"GetInventoryChangesSize", ItemFunctions::GetInventoryChangesSize},\
|
|
\
|
|
{"EquipItem", ItemFunctions::EquipItem},\
|
|
{"UnequipItem", ItemFunctions::UnequipItem},\
|
|
\
|
|
{"AddItem", ItemFunctions::AddItem},\
|
|
{"RemoveItem", ItemFunctions::RemoveItem},\
|
|
\
|
|
{"HasItemEquipped", ItemFunctions::HasItemEquipped},\
|
|
\
|
|
{"GetEquipmentItemRefId", ItemFunctions::GetEquipmentItemRefId},\
|
|
{"GetEquipmentItemCount", ItemFunctions::GetEquipmentItemCount},\
|
|
{"GetEquipmentItemCharge", ItemFunctions::GetEquipmentItemCharge},\
|
|
{"GetEquipmentItemEnchantmentCharge", ItemFunctions::GetEquipmentItemEnchantmentCharge},\
|
|
\
|
|
{"GetInventoryItemRefId", ItemFunctions::GetInventoryItemRefId},\
|
|
{"GetInventoryItemCount", ItemFunctions::GetInventoryItemCount},\
|
|
{"GetInventoryItemCharge", ItemFunctions::GetInventoryItemCharge},\
|
|
{"GetInventoryItemEnchantmentCharge", ItemFunctions::GetInventoryItemEnchantmentCharge},\
|
|
\
|
|
{"SendEquipment", ItemFunctions::SendEquipment},\
|
|
{"SendInventoryChanges", ItemFunctions::SendInventoryChanges}
|
|
|
|
class ItemFunctions
|
|
{
|
|
public:
|
|
|
|
static void InitializeInventoryChanges(unsigned short pid) noexcept;
|
|
|
|
static int GetEquipmentSize() noexcept;
|
|
static unsigned int GetInventoryChangesSize(unsigned short pid) noexcept;
|
|
|
|
static void EquipItem(unsigned short pid, unsigned short slot, const char* refId, unsigned int count, int charge, int enchantmentCharge = -1) noexcept;
|
|
static void UnequipItem(unsigned short pid, unsigned short slot) noexcept;
|
|
|
|
static void AddItem(unsigned short pid, const char* refId, unsigned int count, int charge, int enchantmentCharge = -1) noexcept;
|
|
static void RemoveItem(unsigned short pid, const char* refId, unsigned short count) noexcept;
|
|
|
|
static bool HasItemEquipped(unsigned short pid, const char* refId);
|
|
|
|
static const char *GetEquipmentItemRefId(unsigned short pid, unsigned short slot) noexcept;
|
|
static int GetEquipmentItemCount(unsigned short pid, unsigned short slot) noexcept;
|
|
static int GetEquipmentItemCharge(unsigned short pid, unsigned short slot) noexcept;
|
|
static int GetEquipmentItemEnchantmentCharge(unsigned short pid, unsigned short slot) noexcept;
|
|
|
|
static const char *GetInventoryItemRefId(unsigned short pid, unsigned int i) noexcept;
|
|
static int GetInventoryItemCount(unsigned short pid, unsigned int i) noexcept;
|
|
static int GetInventoryItemCharge(unsigned short pid, unsigned int i) noexcept;
|
|
static int GetInventoryItemEnchantmentCharge(unsigned short pid, unsigned int i) noexcept;
|
|
|
|
static void SendEquipment(unsigned short pid) noexcept;
|
|
static void SendInventoryChanges(unsigned short pid, bool toOthers = false) noexcept;
|
|
private:
|
|
|
|
};
|
|
|
|
#endif //OPENMW_ITEMAPI_HPP
|