37 ::ll::TypedStorage<8, 8, ::CommandSoftEnumRegistry> mRegistry;
38 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::DisplayObjective>> mDisplayObjectives;
39 ::ll::TypedStorage<8, 256, ::IdentityDictionary> mIdentityDict;
40 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ScoreboardId, ::ScoreboardIdentityRef>> mIdentityRefs;
41 ::ll::TypedStorage<1, 1, bool> mShouldUpdateUI;
42 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::std::unique_ptr<::Objective>>> mObjectives;
43 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::Bedrock::NonOwnerPointer<::Objective>>>
44 mObjectivesHashLookup;
45 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::std::unique_ptr<::ObjectiveCriteria>>> mCriteria;
46 ::ll::TypedStorage<8, 96, ::ScoreboardEventCoordinator> mScoreboardEventCoordinator;
47 ::ll::TypedStorage<8, 72, ::PlayerScoreboardEventListener> mPlayerListener;
61 virtual ::DisplayObjective
const* setDisplayObjective(
62 ::std::string
const& displaySlotName,
64 ::ObjectiveSortOrder
const order
68 virtual ::Objective* clearDisplayObjective(::std::string
const& displaySlotName);
71 virtual ::ScoreboardId
const& createScoreboardId(
::Player const& player);
74 virtual ::ScoreboardId
const& createScoreboardId(
::Actor const& entity);
77 virtual ::ScoreboardId
const& createScoreboardId(::std::string
const& fakePlayer);
80 virtual void onObjectiveAdded(
::Objective const& objective);
83 virtual void onObjectiveRemoved(
::Objective& objective);
92 virtual void onPlayerJoined(
::Player const& player);
104 virtual void writeToLevelStorage();
107 virtual bool isClientSide()
const;
116 addObjective(::std::string
const& name, ::std::string
const& displayName,
::ObjectiveCriteria const& criteria);
118 MCAPI
int applyPlayerOperation(
119 ::ScoreboardOperationResult& result,
120 ::std::vector<::ScoreboardId>& sourceErrorIds,
123 ::std::vector<::ScoreboardId>& selector,
125 ::CommandOperator opCode
128 MCAPI
bool clearScoreboardIdentity(
::ScoreboardId const& scoreboardId);
130 MCAPI ::ObjectiveCriteria
const&
131 createObjectiveCriteria(::std::string
const& name,
bool readOnly, ::ObjectiveRenderType renderType);
133 MCAPI ::ObjectiveCriteria* getCriteria(::std::string
const& criteriaName)
const;
135 MCAPI ::std::vector<::PlayerScore> getDisplayInfoFiltered(::std::string
const& displaySlot)
const;
137 MCAPI ::DisplayObjective
const* getDisplayObjective(::std::string
const& displaySlotName)
const;
139 MCAPI ::std::vector<::std::string> getDisplayObjectiveSlotNames()
const;
141 MCAPI ::std::vector<::ScoreInfo> getIdScores(
::ScoreboardId const&
id)
const;
143 MCAPI ::Objective* getObjective(::std::string
const& name)
const;
145 MCAPI ::std::vector<::std::string> getObjectiveNames()
const;
147 MCAPI ::std::vector<::Objective const*> getObjectives()
const;
149 MCAPI ::ScoreboardId
const& getScoreboardId(
::Actor const& entity)
const;
151 MCAPI ::ScoreboardId
const& getScoreboardId(::std::string
const& name)
const;
153 MCAPI ::ScoreboardId
const& getScoreboardId(
::Player const& player)
const;
155 MCAPI ::ScoreboardIdentityRef* getScoreboardIdentityRef(
::ScoreboardId const& scoreboardId);
157 MCAPI ::std::vector<::ScoreboardIdentityRef> getScoreboardIdentityRefs()
const;
159 MCAPI ::std::vector<::ScoreboardId> getTrackedIds()
const;
161 MCAPI
int modifyPlayerScore(
162 ::ScoreboardOperationResult& result,
166 ::PlayerScoreSetFunction action
169 MCAPI ::ScoreboardIdentityRef
const& registerScoreboardIdentity(
::CompoundTag const& loadedData);
171 MCAPI ::ScoreboardIdentityRef
const&
172 registerScoreboardIdentity(
::ScoreboardId const& scoreboardId, ::std::string
const& name);
174 MCAPI ::ScoreboardIdentityRef
const&
177 MCAPI
bool removeObjective(
::Objective* objective);
183 MCAPI ::std::optional<::ScoreInfo> tryGetIdScore(
::ScoreboardId const&
id, uint64
const& objectiveHash)
const;
189 MCAPI static ::std::string
const& DEFAULT_CRITERIA();
191 MCAPI static ::std::string
const& DISPLAY_SLOT_BELOWNAME();
193 MCAPI static ::std::string
const& DISPLAY_SLOT_LIST();
195 MCAPI static ::std::string
const& DISPLAY_SLOT_SIDEBAR();
197 MCAPI
static char const*& OBJECTIVES_ENUM();
215 MCAPI ::DisplayObjective
const* $setDisplayObjective(
216 ::std::string
const& displaySlotName,
218 ::ObjectiveSortOrder
const order
221 MCAPI ::Objective* $clearDisplayObjective(::std::string
const& displaySlotName);
223 MCFOLD ::ScoreboardId
const& $createScoreboardId(
::Player const& player);
225 MCFOLD ::ScoreboardId
const& $createScoreboardId(
::Actor const& entity);
227 MCFOLD ::ScoreboardId
const& $createScoreboardId(::std::string
const& fakePlayer);
229 MCAPI
void $onObjectiveAdded(
::Objective const& objective);
231 MCAPI
void $onObjectiveRemoved(
::Objective& objective);
237 MCFOLD
void $onPlayerJoined(
::Player const& player);
245 MCFOLD
void $writeToLevelStorage();
247 MCFOLD
bool $isClientSide()
const;