diff options
Diffstat (limited to 'Minecraft.World/ServersideAttributeMap.h')
| -rw-r--r-- | Minecraft.World/ServersideAttributeMap.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/Minecraft.World/ServersideAttributeMap.h b/Minecraft.World/ServersideAttributeMap.h new file mode 100644 index 00000000..b404eb9e --- /dev/null +++ b/Minecraft.World/ServersideAttributeMap.h @@ -0,0 +1,24 @@ +#pragma once + +#include "BaseAttributeMap.h" + +class ServersideAttributeMap : public BaseAttributeMap +{ +private: + unordered_set<AttributeInstance *> dirtyAttributes; + +protected: + // 4J: Remove legacy name + //unordered_map<eATTRIBUTE_ID, AttributeInstance *> attributesByLegacy; + +public: + + // 4J-JEV: Changed from ModifiableAttributeInstance to AttributeInstance as they are not 'covariant' on PS4. + virtual AttributeInstance *getInstance(Attribute *attribute); + virtual AttributeInstance *getInstance(eATTRIBUTE_ID id); + + virtual AttributeInstance *registerAttribute(Attribute *attribute); + virtual void onAttributeModified(ModifiableAttributeInstance *attributeInstance); + virtual unordered_set<AttributeInstance *> *getDirtyAttributes(); + virtual unordered_set<AttributeInstance *> *getSyncableAttributes(); +};
\ No newline at end of file |
