mirror of
https://github.com/Relintai/entity_spell_system.git
synced 2025-02-22 17:18:12 +01:00
88 lines
2.2 KiB
C++
88 lines
2.2 KiB
C++
#ifndef ITEM_ENUMS_H
|
|
#define ITEM_ENUMS_H
|
|
|
|
#include "core/object.h"
|
|
|
|
class ItemEnums : public Object {
|
|
GDCLASS(ItemEnums, Object);
|
|
|
|
public:
|
|
static const String BINDING_STRING_RARITY;
|
|
static const String BINDING_STRING_ITEM_TYPE;
|
|
static const String BINDING_STRING_ITEM_SUB_TYPE;
|
|
static const String BINDING_STRING_ITEM_SUB_SUB_TYPE;
|
|
|
|
enum ItemRarity {
|
|
ITEM_RARITY_NONE = 0,
|
|
ITEM_RARITY_COMMON = 1 << 0,
|
|
ITEM_RARITY_UNCOMMON = 1 << 1,
|
|
ITEM_RARITY_SUPERIOR = 1 << 2,
|
|
ITEM_RARITY_HEROIC = 1 << 3,
|
|
ITEM_RARITY_MYTHIC = 1 << 4,
|
|
ITEM_RARITY_ARTIFACT = 1 << 5,
|
|
ITEM_RARITY_CLASS_NECK = 1 << 6,
|
|
};
|
|
|
|
enum ItemSubtype {
|
|
ITEM_SUB_TYPE_NONE,
|
|
ITEM_SUB_TYPE_SWORD,
|
|
ITEM_SUB_TYPE_BOW,
|
|
ITEM_SUB_TYPE_AXE
|
|
};
|
|
|
|
enum ItemSubSubtype {
|
|
ITEM_SUB_SUB_TYPE_NONE,
|
|
ITEM_SUB_SUB_TYPE_TWO_HAND,
|
|
ITEM_SUB_SUB_TYPE_ONE_HAND,
|
|
ITEM_SUB_SUB_TYPE_LEFT_HAND,
|
|
ITEM_SUB_SUB_TYPE_RIGHT_HAND
|
|
};
|
|
|
|
enum ItemType {
|
|
ITEM_TYPE_NONE,
|
|
ITEM_TYPE_WEAPON,
|
|
ITEM_TYPE_CRAFT,
|
|
ITEM_TYPE_CURRENCY,
|
|
ITEM_TYPE_ITEM
|
|
};
|
|
|
|
|
|
ItemEnums() {}
|
|
|
|
protected:
|
|
static void _bind_methods() {
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_NONE);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_COMMON);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_UNCOMMON);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_SUPERIOR);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_HEROIC);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_MYTHIC);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_ARTIFACT);
|
|
BIND_ENUM_CONSTANT(ITEM_RARITY_CLASS_NECK);
|
|
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_TYPE_NONE);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_TYPE_SWORD);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_TYPE_BOW);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_TYPE_AXE);
|
|
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_SUB_TYPE_NONE);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_SUB_TYPE_TWO_HAND);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_SUB_TYPE_ONE_HAND);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_SUB_TYPE_LEFT_HAND);
|
|
BIND_ENUM_CONSTANT(ITEM_SUB_SUB_TYPE_RIGHT_HAND);
|
|
|
|
BIND_ENUM_CONSTANT(ITEM_TYPE_NONE);
|
|
BIND_ENUM_CONSTANT(ITEM_TYPE_WEAPON);
|
|
BIND_ENUM_CONSTANT(ITEM_TYPE_CRAFT);
|
|
BIND_ENUM_CONSTANT(ITEM_TYPE_CURRENCY);
|
|
BIND_ENUM_CONSTANT(ITEM_TYPE_ITEM);
|
|
}
|
|
};
|
|
|
|
VARIANT_ENUM_CAST(ItemEnums::ItemRarity);
|
|
VARIANT_ENUM_CAST(ItemEnums::ItemSubtype);
|
|
VARIANT_ENUM_CAST(ItemEnums::ItemSubSubtype);
|
|
VARIANT_ENUM_CAST(ItemEnums::ItemType);
|
|
|
|
#endif
|