19class LayeredAbilities {
21 LLNDAPI
Ability& getAbility(::AbilitiesIndex val);
22 LLNDAPI
Ability& getAbility(::AbilitiesLayer layer, ::AbilitiesIndex val);
23 LLAPI
bool setAbility(::AbilitiesIndex val,
float value);
24 LLAPI
bool setAbility(::AbilitiesIndex val,
bool value);
29 ::ll::TypedStorage<1, 2, ::PermissionsHandler> mPermissions;
30 ::ll::TypedStorage<4, 1440, ::std::array<::Abilities, 6>> mLayers;
36 MCAPI LayeredAbilities();
38 MCAPI
void _handlePlayerPermissionsChange(::PlayerPermissionLevel from, ::PlayerPermissionLevel to);
40 MCAPI_C
void forEachAbility(
41 ::std::function<
void(
::Ability const&,
char const*)>
const& callback,
42 ::Ability::Options requiredOptions
45 MCAPI
void forEachAbility(
46 ::std::function<
void(
::Ability const&, ::AbilitiesIndex)>
const& callback,
47 ::Ability::Options requiredOptions
50 MCAPI ::Ability
const& getAbility(::AbilitiesIndex val)
const;
52 MCAPI
bool getBool(::AbilitiesIndex val)
const;
56 MCAPI_C
void onSwitchToCustom();
62 MCAPI_C static ::std::optional<::std::string> getDiff(::LayeredAbilities
const& lhs, ::LayeredAbilities
const& rhs);
68 MCAPI static ::std::string
const& DIFF_LAYER_AT();