// This Header is auto generated by BDSLiteLoader Toolchain #pragma once #define AUTO_GENERATED #include "../Global.h" #include "AttributeInstanceDelegate.hpp" #define BEFORE_EXTRA class BaseAttributeMap; class Attribute; #undef BEFORE_EXTRA class AttributeInstance { public: BaseAttributeMap *mAttributeMap; const Attribute *mAttribute; std::vector mModifierList; std::vector mTemporalBuffs; std::vector mListeners; std::shared_ptr mDelegate; union{ float mDefaultValues[3]; struct { float mDefaultMinValue; float mDefaultMaxValue; float mDefaultValue; } __s1; } _anon_0; union{ float mCurrentValues[3]; struct { float mCurrentMinValue; float mCurrentMaxValue; float mCurrentValue; } __s1; } _anon_1; #define AFTER_EXTRA public: inline float getMinValue()const{ // return dAccess(this, 124); return _anon_1.__s1.mCurrentMinValue; }; inline float getMaxValue()const{ // return dAccess(this, 128); return _anon_1.__s1.mCurrentMaxValue; }; inline float getCurrentValue()const{ // return dAccess(this, 132); return _anon_1.__s1.mCurrentValue; }; //maybe error inline void setCurrentValue(float value){ //dAccess((void*)this)= value; this->_anon_1.__s1.mCurrentValue = value; //AttributeInstance::resetToMaxValue Line11~Line28 // if (this + 3) // { // auto p_mDirtyAttributes = dAccess *>(this, 65); // ScoreInfo* value = dAccess(p_mDirtyAttributes, 8); // if ( dAccess(p_mDirtyAttributes, 16) == value ) // { // //std::vector::_Emplace_reallocate(p_mDirtyAttributes, value, &v5); // p_mDirtyAttributes->emplace_back(value); // } // else // { // *v4 = v5; // *(v3 + 8) += 16i64; // } // } }; inline float getDefaultValue(int a)const{ // return dAccess(this, 120); return _anon_0.__s1.mDefaultValue; }; #undef AFTER_EXTRA #ifndef DISABLE_CONSTRUCTOR_PREVENTION_ATTRIBUTEINSTANCE public: class AttributeInstance& operator=(class AttributeInstance const &) = delete; AttributeInstance(class AttributeInstance const &) = delete; AttributeInstance() = delete; #endif public: /*0*/ virtual ~AttributeInstance(); /*1*/ virtual void tick(); #ifdef ENABLE_VIRTUAL_FAKESYMBOL_ATTRIBUTEINSTANCE #endif MCAPI void addBuff(class AttributeBuff const &); MCAPI void addModifier(class std::shared_ptr); MCAPI void addModifier(class AttributeModifier const &); MCAPI std::vector getModifiers(int) const; MCAPI std::vector getModifiers() const; MCAPI bool hasModifier(class std::shared_ptr) const; MCAPI bool hasModifier(class AttributeModifier const &) const; MCAPI void removeModifier(class std::shared_ptr); MCAPI void removeModifier(class AttributeModifier const &); MCAPI void resetToDefaultValue(); MCAPI void resetToMaxValue(); MCAPI void resetToMinValue(); MCAPI void setDefaultValue(float, int); MCAPI void setDelegate(class std::shared_ptr); MCAPI void setMaxValue(float); MCAPI void setRange(float, float, float); //private: MCAPI float _calculateValue(); MCAPI float _calculateValue(class AttributeBuff const &); MCAPI float _sanitizeValue(float); MCAPI void _setDirty(); private: };