LeviLamina
Loading...
Searching...
No Matches
ScriptScoreboard.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/script_core/lifetime_registry/scripting/StrongTypedObjectHandle.h"
7#include "mc/deps/script_core/lifetime_registry/scripting/WeakHandleFromThis.h"
8#include "mc/deps/script_core/lifetime_registry/scripting/WeakLifetimeScope.h"
9#include "mc/world/scores/ScoreboardId.h"
10
11// auto generated forward declare list
12// clang-format off
14class Level;
15class Objective;
16class Scoreboard;
18namespace ScriptModuleMinecraft { class ScriptActor; }
19namespace ScriptModuleMinecraft { class ScriptScoreboardIdentity; }
20namespace ScriptModuleMinecraft { class ScriptScoreboardListener; }
21namespace ScriptModuleMinecraft { class ScriptScoreboardObjective; }
22namespace Scripting { struct ClassBinding; }
23// clang-format on
24
25namespace ScriptModuleMinecraft {
26
27class ScriptScoreboard : public ::Scripting::WeakHandleFromThis<::ScriptModuleMinecraft::ScriptScoreboard> {
28public:
29 // ScriptScoreboard inner types define
30 using Key = ::Scoreboard const*;
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<8, 16, ::Scripting::WeakLifetimeScope> mScope;
36 ::ll::TypedStorage<8, 8, ::gsl::not_null<::Scoreboard*>> mScoreboard;
37 ::ll::TypedStorage<8, 8, ::gsl::not_null<::Level*>> mLevel;
38 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ScriptModuleMinecraft::ScriptScoreboardListener>> mScoreboardListener;
39 ::ll::TypedStorage<
40 8,
41 64,
42 ::std::unordered_map<
43 ::std::string,
45 mObjectives;
46 ::ll::TypedStorage<
47 8,
48 64,
49 ::std::unordered_map<
52 mIdentities;
53 // NOLINTEND
54
55public:
56 // virtual functions
57 // NOLINTBEGIN
58 virtual ~ScriptScoreboard() = default;
59 // NOLINTEND
60
61public:
62 // member functions
63 // NOLINTBEGIN
64 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptScoreboardObjective>
65 _getOrCreateScoreboardObjective(::Objective const& objective);
66
67 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptScoreboardIdentity>
68 getOrCreateScoreboardIdentity(::IdentityDefinition const& identity);
69
70 MCAPI ::ScoreboardIdentityRef* getOrCreateScoreboardIdentityRef(
71 ::std::variant<
74 ::std::string> const& participant
75 );
76
77 MCAPI ::ScoreboardIdentityRef* tryGetScoreboardParticipantIdentityRef(
78 ::std::variant<
81 ::std::string> const& participant
82 ) const;
83
84 MCAPI ::std::optional<::ScoreboardId> tryGetScoreboardParticipantScoreboardId(
85 ::std::variant<
88 ::std::string> const& participant
89 ) const;
90 // NOLINTEND
91
92public:
93 // static functions
94 // NOLINTBEGIN
95 MCAPI static ::Scripting::ClassBinding bind();
96 // NOLINTEND
97};
98
99} // namespace ScriptModuleMinecraft
Definition IdentityDefinition.h:10
Definition Level.h:254
Definition Objective.h:17
Definition ScoreboardIdentityRef.h:17
Definition Scoreboard.h:33
Definition ScriptActor.h:64
Definition ScriptScoreboardIdentity.h:17
Definition ScriptScoreboardListener.h:18
Definition ScriptScoreboardObjective.h:22
Definition ScriptScoreboard.h:27
Definition StrongTypedObjectHandle.h:8
Definition WeakHandleFromThis.h:8
Definition ScoreboardId.h:11
Definition ClassBinding.h:10