LeviLamina
Loading...
Searching...
No Matches
MobEvents.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/BasicTimer.h"
7#include "mc/deps/core/utility/pub_sub/Subscription.h"
8#include "mc/world/level/MobEvent.h"
9#include "mc/world/level/MobEventsIndex.h"
10
11// auto generated forward declare list
12// clang-format off
13class CompoundTag;
15class LevelStorage;
16// clang-format on
17
18class MobEvents {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 216, ::std::array<::MobEvent, 3>> mMobEvents;
23 ::ll::TypedStorage<8, 80, ::BasicTimer> mSaveTimer;
24 ::ll::TypedStorage<8, 8, ::LevelStorage&> mLevelStorage;
25 ::ll::TypedStorage<1, 1, bool> mEventsEnabled;
26 ::ll::TypedStorage<1, 1, bool> mNeedsToSave;
27 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnSaveSubscription;
28 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnLevelStorageManagerStartLeaveGameSubscription;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 MobEvents& operator=(MobEvents const&);
34 MobEvents(MobEvents const&);
35 MobEvents();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ~MobEvents() = default;
41 // NOLINTEND
42
43public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI explicit MobEvents(::LevelStorage& levelStorage);
47
48 MCAPI void _onSaveEvent(::LevelStorage&);
49
50 MCAPI ::MobEventsIndex getIndexFromName(::std::string const& name) const;
51
52 MCAPI void
53 initializeWithLevelStorageManagerConnector(::ILevelStorageManagerConnector& levelStorageManagerConnector);
54
55 MCAPI void readFromLevelStorage();
56
57 MCAPI ::std::unique_ptr<::CompoundTag> serialize() const;
58
59 MCAPI void writeToLevelStorage();
60 // NOLINTEND
61
62public:
63 // static variables
64 // NOLINTBEGIN
65 MCAPI static ::std::string const& EVENTS_ENABLED_STRING();
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor(::LevelStorage& levelStorage);
72 // NOLINTEND
73
74public:
75 // vftables
76 // NOLINTBEGIN
77 MCNAPI static void** $vftable();
78 // NOLINTEND
79};
Definition CompoundTag.h:23
Definition ILevelStorageManagerConnector.h:13
Definition LevelStorage.h:25
static MCAPI void ** $vftable()