LeviLamina
Loading...
Searching...
No Matches
LayeredAbilities.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/server/commands/PlayerPermissionLevel.h"
7#include "mc/world/actor/player/Abilities.h"
8#include "mc/world/actor/player/AbilitiesIndex.h"
9#include "mc/world/actor/player/Ability.h"
10#include "mc/world/actor/player/PermissionsHandler.h"
11
12// auto generated forward declare list
13// clang-format off
14class Ability;
15class CompoundTag;
16// clang-format on
17
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<1, 2, ::PermissionsHandler> mPermissions;
23 ::ll::TypedStorage<4, 1440, ::std::array<::Abilities, 6>> mLayers;
24 // NOLINTEND
25
26public:
27 // member functions
28 // NOLINTBEGIN
29 MCAPI LayeredAbilities();
30
31 MCAPI void _handlePlayerPermissionsChange(::PlayerPermissionLevel from, ::PlayerPermissionLevel to);
32
33 MCAPI void forEachAbility(
34 ::std::function<void(::Ability const&, ::AbilitiesIndex)> const& callback,
35 ::Ability::Options requiredOptions
36 ) const;
37
38 MCAPI void forEachAbility(
39 ::std::function<void(::Ability const&, char const*)> const& callback,
40 ::Ability::Options requiredOptions
41 ) const;
42
43 MCAPI bool getBool(::AbilitiesIndex val) const;
44
45 MCAPI bool loadSaveData(::CompoundTag const& parentTag);
46
47 MCAPI void onSwitchToCustom();
48 // NOLINTEND
49
50public:
51 // static functions
52 // NOLINTBEGIN
53 MCAPI static ::std::optional<::std::string> getDiff(::LayeredAbilities const& lhs, ::LayeredAbilities const& rhs);
54 // NOLINTEND
55
56public:
57 // static variables
58 // NOLINTBEGIN
59 MCAPI static ::std::string const& DIFF_LAYER_AT();
60 // NOLINTEND
61
62public:
63 // constructor thunks
64 // NOLINTBEGIN
65 MCAPI void* $ctor();
66 // NOLINTEND
67};
Definition Ability.h:5
Definition CompoundTag.h:22
Definition LayeredAbilities.h:18