mirror of
https://github.com/quizhizhe/LiteLoaderBDS-1.16.40.git
synced 2025-06-05 03:43:40 +00:00
202 lines
9.2 KiB
C++
202 lines
9.2 KiB
C++
// This Header is auto generated by BDSLiteLoader Toolchain
|
|
#pragma once
|
|
#define AUTO_GENERATED
|
|
#include "../Global.h"
|
|
|
|
#define BEFORE_EXTRA
|
|
// Add include headers & pre-declares
|
|
class Player;
|
|
class Objective;
|
|
struct PlayerScore;
|
|
|
|
struct ScoreInfo {
|
|
Objective* mObjective;
|
|
bool mValid;
|
|
int mValue;
|
|
|
|
Objective* getObjective() {
|
|
return mObjective;
|
|
}
|
|
int getCount() {
|
|
return mValue;
|
|
}
|
|
};
|
|
#undef BEFORE_EXTRA
|
|
|
|
class Scoreboard {
|
|
|
|
#define AFTER_EXTRA
|
|
// Add new members to class
|
|
#define ENABLE_VIRTUAL_FAKESYMBOL_SCOREBOARD
|
|
public:
|
|
|
|
LIAPI static Objective* newObjective(const std::string& objname, const std::string& displayName);
|
|
//LIAPI static bool setDisplayObjective(const std::string& objname, const std::string& slot, int sort);
|
|
//LIAPI static Objective* clearDisplayObjective(const std::string& slot);
|
|
//LIAPI static Objective* getDisplayObjective(const std::string& slot);
|
|
LIAPI static bool removeFromObjective(const std::string& objname, const std::string& id);
|
|
LIAPI static bool removeFromObjective(const std::string& objname, Player* player);
|
|
|
|
LIAPI static struct ScoreboardId& getOrCreateScoreboardId(std::string const& id);
|
|
|
|
/**
|
|
* Get the score of the id in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param id ScoreboardId name(string)
|
|
* @return int The score
|
|
* @throws std::invalid_argument if the objective is not found
|
|
* std::runtime_error if cannot get or create id/cannot get scores
|
|
* @note If there is not a ScoreboardId named `id`, it will create a new one
|
|
*/
|
|
LIAPI static int getScore(const std::string& objname, const std::string& id);
|
|
/**
|
|
* Get the score of the id in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param id ScoreboardId name(string)
|
|
* @param[out] score The score
|
|
* @return bool Success or not
|
|
* @note If there is not a ScoreboardId named `id`, it will create a new one
|
|
*/
|
|
LIAPI static bool getScore(const std::string& objname, const std::string& id, int& score);
|
|
LIAPI static std::optional<int> setScore(const std::string& objname, const std::string& id, int score);
|
|
LIAPI static std::optional<int> addScore(const std::string& objname, const std::string& id, int score);
|
|
LIAPI static std::optional<int> reduceScore(const std::string& objname, const std::string& id, int score);
|
|
|
|
/**
|
|
* Get the score of the player in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param player The player
|
|
* @return int The score
|
|
* @throws std::invalid_argument if the objective is not found
|
|
* std::runtime_error if cannot get or create id/cannot get scores
|
|
*/
|
|
LIAPI static int getScore(const std::string& objname, Player* player);
|
|
LIAPI static int getScore(Player* player, const std::string& objname);
|
|
/**
|
|
* Get the score of the player in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param player The player
|
|
* @param[out] score The score
|
|
* @return bool Success or not
|
|
*/
|
|
LIAPI static bool getScore(const std::string& objname, Player* player, int& score);
|
|
/**
|
|
* Set the score of the player in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param player The player
|
|
* @param value The score value to set
|
|
* @return bool Success or not
|
|
*/
|
|
LIAPI static bool setScore(const std::string& objname, Player* player, int value);
|
|
LIAPI static bool setScore(Player* player, const std::string& objname, int value);
|
|
/**
|
|
* Add the score of the player in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param player The player
|
|
* @param value The score value to add
|
|
* @return bool Success or not
|
|
*/
|
|
LIAPI static bool addScore(const std::string& objname, Player* player, int value);
|
|
LIAPI static bool addScore(Player* player, const std::string& objname, int value);
|
|
/**
|
|
* Reduce the score of the player in the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param player The player
|
|
* @param value The score value to reduce
|
|
* @return bool Success or not
|
|
*/
|
|
LIAPI static bool reduceScore(const std::string& objname, Player* player, int value);
|
|
LIAPI static bool reduceScore(Player* player, const std::string& objname, int value);
|
|
/**
|
|
* Delete the score of the player from the specified objective.
|
|
*
|
|
* @param objname Objective name
|
|
* @param player The player
|
|
* @return bool Success or not
|
|
*/
|
|
LIAPI static bool deleteScore(const std::string& objname, Player* player);
|
|
LIAPI static bool deleteScore(Player* player, const std::string& objname);
|
|
|
|
LIAPI static bool scoreboardIdIsValid(ScoreboardId* id);
|
|
#undef AFTER_EXTRA
|
|
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_SCOREBOARD
|
|
public:
|
|
class Scoreboard& operator=(class Scoreboard const &) = delete;
|
|
Scoreboard(class Scoreboard const &) = delete;
|
|
Scoreboard() = delete;
|
|
#endif
|
|
|
|
public:
|
|
/*0*/ virtual ~Scoreboard();
|
|
/*1*/ virtual class DisplayObjective const * setDisplayObjective(std::string const &, class Objective const &, enum ObjectiveSortOrder);
|
|
/*2*/ virtual class Objective * clearDisplayObjective(std::string const &);
|
|
/*3*/ virtual void __unk_vfn_3();
|
|
/*4*/ virtual void __unk_vfn_4();
|
|
/*5*/ virtual void __unk_vfn_5();
|
|
/*6*/ virtual void __unk_vfn_6();
|
|
/*7*/ virtual void onObjectiveRemoved(class Objective &);
|
|
/*8*/ virtual void __unk_vfn_8();
|
|
/*9*/ virtual void __unk_vfn_9();
|
|
/*10*/ virtual void __unk_vfn_10();
|
|
/*11*/ virtual void __unk_vfn_11();
|
|
/*12*/ virtual void __unk_vfn_12();
|
|
/*13*/ virtual void __unk_vfn_13();
|
|
/*14*/ virtual void __unk_vfn_14();
|
|
/*15*/ virtual bool isClientSide() const;
|
|
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_SCOREBOARD
|
|
MCVAPI struct ScoreboardId const & createScoreboardId(class Actor const &);
|
|
MCVAPI struct ScoreboardId const & createScoreboardId(std::string const &);
|
|
MCVAPI struct ScoreboardId const & createScoreboardId(class Player const &);
|
|
MCVAPI void onObjectiveAdded(class Objective const &);
|
|
MCVAPI void onPlayerIdentityUpdated(struct PlayerScoreboardId const &);
|
|
MCVAPI void onPlayerJoined(class Player const &);
|
|
MCVAPI void onPlayerScoreRemoved(struct ScoreboardId const &, class Objective const &);
|
|
MCVAPI void onScoreChanged(struct ScoreboardId const &, class Objective const &);
|
|
MCVAPI void setPacketSender(class PacketSender *);
|
|
MCVAPI void tick();
|
|
MCVAPI void writeToLevelStorage();
|
|
#endif
|
|
MCAPI Scoreboard(class CommandSoftEnumRegistry);
|
|
MCAPI class Objective * addObjective(std::string const &, std::string const &, class ObjectiveCriteria const &);
|
|
MCAPI int applyPlayerOperation(bool &, std::vector<struct ScoreboardId> &, struct ScoreboardId const &, class Objective &, std::vector<struct ScoreboardId> &, class Objective &, enum CommandOperator);
|
|
MCAPI class ObjectiveCriteria * getCriteria(std::string const &) const;
|
|
MCAPI std::vector<struct PlayerScore> getDisplayInfoFiltered(std::string const &) const;
|
|
MCAPI class DisplayObjective const * getDisplayObjective(std::string const &) const;
|
|
MCAPI std::vector<std::string> getDisplayObjectiveSlotNames() const;
|
|
MCAPI std::vector<struct ScoreInfo> getIdScores(struct ScoreboardId const &) const;
|
|
MCAPI class Objective * getObjective(std::string const &) const;
|
|
MCAPI std::vector<std::string> getObjectiveNames() const;
|
|
MCAPI std::vector<class Objective const *> getObjectives() const;
|
|
MCAPI struct ScoreboardId const & getScoreboardId(class Actor const &) const;
|
|
MCAPI struct ScoreboardId const & getScoreboardId(std::string const &) const;
|
|
MCAPI class ScoreboardIdentityRef * getScoreboardIdentityRef(struct ScoreboardId const &);
|
|
MCAPI std::vector<class ScoreboardIdentityRef> getScoreboardIdentityRefs() const;
|
|
MCAPI std::vector<struct ScoreboardId> getTrackedIds() const;
|
|
MCAPI bool hasIdentityFor(struct ScoreboardId const &) const;
|
|
MCAPI int modifyPlayerScore(bool &, struct ScoreboardId const &, class Objective &, int, enum PlayerScoreSetFunction);
|
|
MCAPI class ScoreboardIdentityRef const & registerScoreboardIdentity(struct ScoreboardId const &, struct PlayerScoreboardId const &);
|
|
MCAPI class ScoreboardIdentityRef const & registerScoreboardIdentity(struct ScoreboardId const &, struct ActorUniqueID const &);
|
|
MCAPI class ScoreboardIdentityRef const & registerScoreboardIdentity(struct ScoreboardId const &, std::string const &);
|
|
MCAPI class ScoreboardIdentityRef const & registerScoreboardIdentity(class CompoundTag const &);
|
|
MCAPI bool removeObjective(class Objective *);
|
|
MCAPI void resetPlayerScore(struct ScoreboardId const &, class Objective &);
|
|
MCAPI void resetPlayerScore(struct ScoreboardId const &);
|
|
MCAPI static std::string const DEFAULT_CRITERIA;
|
|
MCAPI static std::string const DISPLAY_SLOT_BELOWNAME;
|
|
MCAPI static std::string const DISPLAY_SLOT_LIST;
|
|
MCAPI static std::string const DISPLAY_SLOT_SIDEBAR;
|
|
MCAPI static char const * OBJECTIVES_ENUM;
|
|
|
|
//private:
|
|
MCAPI void _initCriterias();
|
|
|
|
private:
|
|
|
|
}; |