20class LayeredAbilities {
22 LLNDAPI
Ability& getAbility(::AbilitiesIndex val);
23 LLNDAPI
Ability& getAbility(::AbilitiesLayer layer, ::AbilitiesIndex val);
24 LLAPI
bool setAbility(::AbilitiesIndex val,
float value);
25 LLAPI
bool setAbility(::AbilitiesIndex val,
bool value);
31 ::ll::TypedStorage<8, 24, ::PermissionsHandler> mPermissions;
32 ::ll::TypedStorage<4, 1440, ::std::array<::Abilities, 6>> mLayers;
37 LayeredAbilities(LayeredAbilities
const&);
42 MCAPI LayeredAbilities();
48 MCAPI
void forEachAbility(
49 ::std::function<
void(
::Ability const&,
char const*)>
const& callback,
50 ::Ability::Options requiredOptions
53 MCAPI
void forEachAbility(
54 ::std::function<
void(
::Ability const&, ::AbilitiesIndex)>
const& callback,
55 ::Ability::Options requiredOptions
59 MCFOLD
void forEachLayer(::std::function<
void(::AbilitiesLayer,
::Abilities&)>
const& callback);
62 MCFOLD
void forEachLayer(::std::function<
void(::AbilitiesLayer,
::Abilities const&)>
const& callback)
const;
64 MCAPI ::Ability
const& getAbility(::AbilitiesIndex val)
const;
66 MCAPI
bool getBool(::AbilitiesIndex val)
const;
72 MCAPI ::LayeredAbilities& operator=(::LayeredAbilities
const& rhs);
74 MCAPI
void setPlayerPermissions(::PlayerPermissionLevel permissions);
77 MCAPI ~LayeredAbilities();
85 MCAPI static ::std::optional<::std::string> getDiff(::LayeredAbilities
const& lhs, ::LayeredAbilities
const& rhs);
93 MCAPI static ::std::string
const& DIFF_LAYER_AT();