diff --git a/include/Server/Components/CustomModels/custommodels.hpp b/include/Server/Components/CustomModels/custommodels.hpp index 46ac1f8..ee29288 100644 --- a/include/Server/Components/CustomModels/custommodels.hpp +++ b/include/Server/Components/CustomModels/custommodels.hpp @@ -50,4 +50,6 @@ struct ICustomModelsComponent : public IComponent virtual StringView getModelNameFromChecksum(uint32_t checksum) const = 0; virtual bool isValidCustomModel(int32_t modelId) const = 0; virtual bool getCustomModelPath(int32_t modelId, StringView& dffPath, StringView& txdPath) const = 0; + virtual bool setModelDownloadAtConnect(bool toggle) = 0; + virtual bool startDownloadForPlayer(IPlayer& player) = 0; }; diff --git a/include/Server/Components/Vehicles/vehicles.hpp b/include/Server/Components/Vehicles/vehicles.hpp index 799b7a3..f4b7704 100644 --- a/include/Server/Components/Vehicles/vehicles.hpp +++ b/include/Server/Components/Vehicles/vehicles.hpp @@ -399,6 +399,12 @@ struct IVehicle : public IExtensible, public IEntity /// Get last driver's pool id virtual int getLastDriverPoolID() const = 0; + + // Sets the new hidden state for the vehicle. + virtual void toggleHide(bool value) = 0; + + // Gets the current hidden state of the vehicle. + virtual bool isHidden() const = 0; }; /// A vehicle event handler diff --git a/include/player.hpp b/include/player.hpp index dcfa2f6..70cc888 100644 --- a/include/player.hpp +++ b/include/player.hpp @@ -476,6 +476,7 @@ struct PlayerSpectateData bool spectating; int spectateID; ESpectateType type; + bool leftSpectating; }; struct IPlayerPool; @@ -937,8 +938,8 @@ struct IPlayer : public IExtensible, public IEntity /// Get player's collision status (ghost mode) virtual bool isGhostModeEnabled() const = 0; - /// Get default objects removed (basically just how many times removeDefaultObject is called) - virtual int getDefaultObjectsRemoved() const = 0; + /// Get default objects removed array size (basically just how many times removeDefaultObject is called) + virtual int getDefaultObjectsRemovedCount() const = 0; /// Get if player is kicked or not (about to be disconnected) virtual bool getKickStatus() const = 0; @@ -963,6 +964,11 @@ struct IPlayer : public IExtensible, public IEntity /// Check if player is using omp or not virtual bool isUsingOmp() const = 0; + + /// Check if player is leaving spectator mode + virtual bool isLeavingSpectatorMode() const = 0; + + virtual bool isDefaultObjectRemoved(unsigned model, Vector3 pos, float radius) const = 0; }; /// Player spawn event handlers