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<8, 24, ::PermissionsHandler> mPermissions;
30 ::ll::TypedStorage<4, 1440, ::std::array<::Abilities, 6>> mLayers;
35 LayeredAbilities(LayeredAbilities
const&);
40 MCAPI LayeredAbilities();
42 MCAPI
void _handlePlayerPermissionsChange(::PlayerPermissionLevel from, ::PlayerPermissionLevel to);
45 MCAPI
void forEachAbility(
46 ::std::function<
void(
::Ability const&,
char const*)>
const& callback,
47 ::Ability::Options requiredOptions
51 MCAPI
void forEachAbility(
52 ::std::function<
void(
::Ability const&, ::AbilitiesIndex)>
const& callback,
53 ::Ability::Options requiredOptions
56 MCAPI
bool getBool(::AbilitiesIndex val)
const;
61 MCAPI
void onSwitchToCustom();
64 MCAPI ::LayeredAbilities& operator=(::LayeredAbilities
const& rhs);
66 MCAPI
void setPlayerPermissions(::PlayerPermissionLevel permissions);
68 MCAPI ~LayeredAbilities();
75 MCAPI static ::std::optional<::std::string> getDiff(::LayeredAbilities
const& lhs, ::LayeredAbilities
const& rhs);
82 MCAPI static ::std::string
const& DIFF_LAYER_AT();