LeviLamina
Loading...
Searching...
No Matches
ScriptLocatorBar.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Subscription.h"
7#include "mc/deps/ecs/WeakEntityRef.h"
8#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
9#include "mc/deps/scripting/runtime/Result.h"
10#include "mc/world/WaypointGroup.h"
11#include "mc/world/actor/player/ServerLocatorBar.h"
12
13// auto generated forward declare list
14// clang-format off
15namespace ScriptModuleMinecraft { class ScriptRGB; }
16namespace ScriptModuleMinecraft { class ScriptWaypoint; }
17namespace ScriptModuleMinecraft { struct ScriptDimensionLocation; }
18namespace ScriptModuleMinecraft { struct ScriptInvalidWaypointError; }
19namespace ScriptModuleMinecraft { struct ScriptLocatorBarError; }
20namespace ScriptModuleMinecraft { struct ScriptWaypointTextureSelector; }
21namespace Scripting { struct ClassBinding; }
22namespace Scripting { struct EngineError; }
23// clang-format on
24
25namespace ScriptModuleMinecraft {
26
27class ScriptLocatorBar {
28public:
29 // ScriptLocatorBar inner types declare
30 // clang-format off
31 struct WaypointEntry;
32 // clang-format on
33
34 // ScriptLocatorBar inner types define
36 public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<8, 32, ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptWaypoint>>
40 mScriptWaypoint;
41 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnWaypointSetProperty;
42 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnRemove;
43 // NOLINTEND
44
45 public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI ~WaypointEntry();
49 // NOLINTEND
50
51 public:
52 // destructor thunk
53 // NOLINTBEGIN
54 MCAPI void $dtor();
55 // NOLINTEND
56 };
57
58public:
59 // member variables
60 // NOLINTBEGIN
61 ::ll::TypedStorage<8, 24, ::WeakEntityRef> mPlayerRef;
62 ::ll::TypedStorage<8, 16, ::ServerLocatorBar::GroupStrongHandle> mWaypointGroupHandle;
63 ::ll::TypedStorage<1, 1, bool> mHandleInitialized;
64 ::ll::TypedStorage<
65 8,
66 16,
67 ::std::map<::WaypointGroup::WaypointHandle, ::ScriptModuleMinecraft::ScriptLocatorBar::WaypointEntry>>
68 mWaypoints;
69 ::ll::TypedStorage<4, 4, int const> mMaxCount;
70 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnInvalidWaypointRemoved;
71 // NOLINTEND
72
73public:
74 // prevent constructor by default
75 ScriptLocatorBar();
76
77public:
78 // member functions
79 // NOLINTBEGIN
80 MCAPI explicit ScriptLocatorBar(::WeakEntityRef playerRef);
81
82 MCAPI bool
84
85 MCAPI void _initializeGroupHandle();
86
87 MCAPI void _onWaypointPropertyUpdate(
88 ::std::variant<
89 bool,
90 ::std::optional<::ScriptModuleMinecraft::ScriptRGB>,
94 );
95
96 MCAPI void _onWaypointRemoveEvent(::WaypointGroup::WaypointHandle handle);
97
98 MCAPI void _removeInvalidWaypoints(::std::vector<::WaypointGroup::WaypointHandle> const& handles);
99
100 MCAPI ::Scripting::Result<
101 void,
106
107 MCAPI ::std::vector<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptWaypoint>>
108 getAllWaypoints();
109
110 MCAPI ::Scripting::Result<void, ::Scripting::EngineError> removeAllWaypoints();
111
112 MCAPI ::Scripting::Result<void, ::ScriptModuleMinecraft::ScriptLocatorBarError, ::Scripting::EngineError>
114 // NOLINTEND
115
116public:
117 // static functions
118 // NOLINTBEGIN
119 MCAPI static ::Scripting::ClassBinding bind();
120 // NOLINTEND
121
122public:
123 // constructor thunks
124 // NOLINTBEGIN
125 MCAPI void* $ctor(::WeakEntityRef playerRef);
126 // NOLINTEND
127};
128
129} // namespace ScriptModuleMinecraft
Definition ScriptRGB.h:15
Definition ScriptWaypoint.h:25
Definition StrongTypedObjectHandle.h:8
Definition WaypointGroup.h:16
Definition WeakEntityRef.h:14
Definition ScriptDimensionLocation.h:18
Definition ScriptInvalidWaypointError.h:15
Definition ScriptLocatorBarError.h:16
Definition ScriptWaypointTextureSelector.h:16
Definition ClassBinding.h:19
Definition EngineError.h:15