#pragma once #include namespace mtb { class GunTalentGrow { public: a8::reflect::Class* GetClass() const; int id() const { return id_; }; int talent_id() const { return talent_id_; }; int talent_lv() const { return talent_lv_; }; int addtype() const { return addtype_; }; const std::string addattr() const { return addattr_; }; bool has_id() const { return __flags__.test(0);}; bool has_talent_id() const { return __flags__.test(1);}; bool has_talent_lv() const { return __flags__.test(2);}; bool has_addtype() const { return __flags__.test(3);}; bool has_addattr() const { return __flags__.test(4);}; protected: int id_ = 0; int talent_id_ = 0; int talent_lv_ = 0; int addtype_ = 0; std::string addattr_; public: std::bitset<5> __flags__; }; };