mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-11-04 03:56:42 +00:00 
			
		
		
		
	Add reading and writing of resetStats variable to PlayerBaseInfo Packet Fix typos in various server script function descriptions
		
			
				
	
	
		
			121 lines
		
	
	
	
		
			3.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			121 lines
		
	
	
	
		
			3.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
#ifndef OPENMW_SETTINGSAPI_HPP
 | 
						|
#define OPENMW_SETTINGSAPI_HPP
 | 
						|
 | 
						|
#include "../Types.hpp"
 | 
						|
 | 
						|
#define SETTINGSAPI \
 | 
						|
    {"SetDifficulty",               SettingFunctions::SetDifficulty},\
 | 
						|
    {"SetEnforcedLogLevel",         SettingFunctions::SetEnforcedLogLevel},\
 | 
						|
    {"SetPhysicsFramerate",         SettingFunctions::SetPhysicsFramerate},\
 | 
						|
    \
 | 
						|
    {"SetConsoleAllowed",           SettingFunctions::SetConsoleAllowed},\
 | 
						|
    {"SetBedRestAllowed",           SettingFunctions::SetBedRestAllowed},\
 | 
						|
    {"SetWildernessRestAllowed",    SettingFunctions::SetWildernessRestAllowed},\
 | 
						|
    {"SetWaitAllowed",              SettingFunctions::SetWaitAllowed},\
 | 
						|
    \
 | 
						|
    {"SendSettings",                SettingFunctions::SendSettings}
 | 
						|
 | 
						|
class SettingFunctions
 | 
						|
{
 | 
						|
public:
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set the difficulty for a player.
 | 
						|
    *
 | 
						|
    * This changes the difficulty for that player in the server memory, but does not by itself
 | 
						|
    * send a packet.
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param difficulty The difficulty.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetDifficulty(unsigned short pid, int difficulty);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set the client log level enforced for a player.
 | 
						|
    *
 | 
						|
    * This changes the enforced log level for that player in the server memory, but does not by itself
 | 
						|
    * send a packet.
 | 
						|
    *
 | 
						|
    * Enforcing a certain log level is necessary to prevent players from learning information from
 | 
						|
    * their console window that they are otherwise unable to obtain, such as the locations of
 | 
						|
    * other players.
 | 
						|
    *
 | 
						|
    * If you do not wish to enforce a log level, simply set enforcedLogLevel to -1
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param enforcedLogLevel The enforced log level.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetEnforcedLogLevel(unsigned short pid, int enforcedLogLevel);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set the physics framerate for a player.
 | 
						|
    *
 | 
						|
    * This changes the physics framerate for that player in the server memory, but does not by itself
 | 
						|
    * send a packet.
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param physicsFramerate The physics framerate.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetPhysicsFramerate(unsigned short pid, double physicsFramerate);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set whether the console is allowed for a player.
 | 
						|
    *
 | 
						|
    * This changes the console permission for that player in the server memory, but does not
 | 
						|
    * by itself send a packet.
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param state The console permission state.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetConsoleAllowed(unsigned short pid, bool state);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set whether resting in beds is allowed for a player.
 | 
						|
    *
 | 
						|
    * This changes the resting permission for that player in the server memory, but does not
 | 
						|
    * by itself send a packet.
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param state The resting permission state.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetBedRestAllowed(unsigned short pid, bool state);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set whether resting in the wilderness is allowed for a player.
 | 
						|
    *
 | 
						|
    * This changes the resting permission for that player in the server memory, but does not
 | 
						|
    * by itself send a packet.
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param state The resting permission state.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetWildernessRestAllowed(unsigned short pid, bool state);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Set whether waiting is allowed for a player.
 | 
						|
    *
 | 
						|
    * This changes the waiting permission for that player in the server memory, but does not
 | 
						|
    * by itself send a packet.
 | 
						|
    *
 | 
						|
    * \param pid The player ID.
 | 
						|
    * \param state The waiting permission state.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SetWaitAllowed(unsigned short pid, bool state);
 | 
						|
 | 
						|
    /**
 | 
						|
    * \brief Send a PlayerSettings packet to the player affected by it.
 | 
						|
    *
 | 
						|
    * \param pid The player ID to send it to.
 | 
						|
    * \return void
 | 
						|
    */
 | 
						|
    static void SendSettings(unsigned short pid) noexcept;
 | 
						|
};
 | 
						|
 | 
						|
#endif //OPENMW_SETTINGSAPI_HPP
 |