Luanti 5.16.0-dev
 
Loading...
Searching...
No Matches
Client Class Reference

#include <client.h>

+ Inheritance diagram for Client:
+ Collaboration diagram for Client:

Public Member Functions

 Client (const char *playername, const std::string &password, MapDrawControl &control, IWritableTextureSource *tsrc, IWritableShaderSource *shsrc, IWritableItemDefManager *itemdef, NodeDefManager *nodedef, ISoundManager *sound, MtEventManager *event, RenderingEngine *rendering_engine, ItemVisualsManager *item_visuals, ELoginRegister allow_login_or_register)
 
 ~Client ()
 
 DISABLE_CLASS_COPY (Client)
 
void Stop ()
 
bool isShutdown ()
 
void connect (const Address &address, const std::string &address_name)
 
void step (float dtime)
 
void handleCommand (NetworkPacket *pkt)
 
void handleCommand_Null (NetworkPacket *pkt)
 
void handleCommand_Deprecated (NetworkPacket *pkt)
 
void handleCommand_Hello (NetworkPacket *pkt)
 
void handleCommand_AuthAccept (NetworkPacket *pkt)
 
void handleCommand_AcceptSudoMode (NetworkPacket *pkt)
 
void handleCommand_DenySudoMode (NetworkPacket *pkt)
 
void handleCommand_AccessDenied (NetworkPacket *pkt)
 
void handleCommand_RemoveNode (NetworkPacket *pkt)
 
void handleCommand_AddNode (NetworkPacket *pkt)
 
void handleCommand_NodemetaChanged (NetworkPacket *pkt)
 
void handleCommand_BlockData (NetworkPacket *pkt)
 
void handleCommand_Inventory (NetworkPacket *pkt)
 
void handleCommand_TimeOfDay (NetworkPacket *pkt)
 
void handleCommand_ChatMessage (NetworkPacket *pkt)
 
void handleCommand_ActiveObjectRemoveAdd (NetworkPacket *pkt)
 
void handleCommand_ActiveObjectMessages (NetworkPacket *pkt)
 
void handleCommand_Movement (NetworkPacket *pkt)
 
void handleCommand_Fov (NetworkPacket *pkt)
 
void handleCommand_HP (NetworkPacket *pkt)
 
void handleCommand_Breath (NetworkPacket *pkt)
 
void handleCommand_MovePlayer (NetworkPacket *pkt)
 
void handleCommand_MovePlayerRel (NetworkPacket *pkt)
 
void handleCommand_DeathScreenLegacy (NetworkPacket *pkt)
 
void handleCommand_AnnounceMedia (NetworkPacket *pkt)
 
void handleCommand_Media (NetworkPacket *pkt)
 
void handleCommand_NodeDef (NetworkPacket *pkt)
 
void handleCommand_ItemDef (NetworkPacket *pkt)
 
void handleCommand_PlaySound (NetworkPacket *pkt)
 
void handleCommand_StopSound (NetworkPacket *pkt)
 
void handleCommand_FadeSound (NetworkPacket *pkt)
 
void handleCommand_Privileges (NetworkPacket *pkt)
 
void handleCommand_InventoryFormSpec (NetworkPacket *pkt)
 
void handleCommand_DetachedInventory (NetworkPacket *pkt)
 
void handleCommand_ShowFormSpec (NetworkPacket *pkt)
 
void handleCommand_SpawnParticle (NetworkPacket *pkt)
 
void handleCommand_SpawnParticleBatch (NetworkPacket *pkt)
 
void handleCommand_AddParticleSpawner (NetworkPacket *pkt)
 
void handleCommand_DeleteParticleSpawner (NetworkPacket *pkt)
 
void handleCommand_HudAdd (NetworkPacket *pkt)
 
void handleCommand_HudRemove (NetworkPacket *pkt)
 
void handleCommand_HudChange (NetworkPacket *pkt)
 
void handleCommand_HudSetFlags (NetworkPacket *pkt)
 
void handleCommand_HudSetParam (NetworkPacket *pkt)
 
void handleCommand_HudSetSky (NetworkPacket *pkt)
 
void handleCommand_HudSetSun (NetworkPacket *pkt)
 
void handleCommand_HudSetMoon (NetworkPacket *pkt)
 
void handleCommand_HudSetStars (NetworkPacket *pkt)
 
void handleCommand_CloudParams (NetworkPacket *pkt)
 
void handleCommand_OverrideDayNightRatio (NetworkPacket *pkt)
 
void handleCommand_LocalPlayerAnimations (NetworkPacket *pkt)
 
void handleCommand_EyeOffset (NetworkPacket *pkt)
 
void handleCommand_UpdatePlayerList (NetworkPacket *pkt)
 
void handleCommand_ModChannelMsg (NetworkPacket *pkt)
 
void handleCommand_ModChannelSignal (NetworkPacket *pkt)
 
void handleCommand_SrpBytesSandB (NetworkPacket *pkt)
 
void handleCommand_FormspecPrepend (NetworkPacket *pkt)
 
void handleCommand_CSMRestrictionFlags (NetworkPacket *pkt)
 
void handleCommand_PlayerSpeed (NetworkPacket *pkt)
 
void handleCommand_MediaPush (NetworkPacket *pkt)
 
void handleCommand_MinimapModes (NetworkPacket *pkt)
 
void handleCommand_SetLighting (NetworkPacket *pkt)
 
void handleCommand_Camera (NetworkPacket *pkt)
 
void ProcessData (NetworkPacket *pkt)
 
void Send (NetworkPacket *pkt)
 
void interact (InteractAction action, const PointedThing &pointed)
 
void sendNodemetaFields (v3s16 p, const std::string &formname, const StringMap &fields)
 
void sendInventoryFields (const std::string &formname, const StringMap &fields)
 
void sendInventoryAction (InventoryAction *a)
 
void sendChatMessage (const std::wstring &message)
 
void clearOutChatQueue ()
 
void sendChangePassword (const std::string &oldpassword, const std::string &newpassword)
 
void sendDamage (u16 damage)
 
void sendRespawnLegacy ()
 
void sendReady ()
 
void sendHaveMedia (const std::vector< u32 > &tokens)
 
void sendUpdateClientInfo (const ClientDynamicInfo &info)
 
ClientEnvironmentgetEnv ()
 
ITextureSourcetsrc ()
 
ISoundManagersound ()
 
const std::vector< ModSpec > & getMods () const override
 
const ModSpecgetModSpec (const std::string &modname) const override
 
void removeNode (v3s16 p)
 
MapNode CSMGetNode (v3s16 p, bool *is_valid_position)
 Helper function for Client Side Modding CSM restrictions are applied there, this should not be used for core engine.
 
int CSMClampRadius (v3s16 pos, int radius)
 
v3s16 CSMClampPos (v3s16 pos)
 
void addNode (v3s16 p, MapNode n, bool remove_metadata=true)
 
void setPlayerControl (PlayerControl &control)
 
bool updateWieldedItem ()
 
InventorygetInventory (const InventoryLocation &loc) override
 
void inventoryAction (InventoryAction *a) override
 
void setPlayerItem (u16 item)
 
const std::set< std::string > & getConnectedPlayerNames ()
 
float getAnimationTime () const
 
int getCrackLevel ()
 
v3s16 getCrackPos ()
 
void setCrack (int level, v3s16 pos)
 
u16 getHP ()
 
bool checkPrivilege (const std::string &priv) const
 
const std::unordered_set< std::string > & getPrivilegeList () const
 
bool getChatMessage (std::wstring &message)
 
void typeChatMessage (const std::wstring &message)
 
u64 getMapSeed () const
 
void addUpdateMeshTask (v3s16 blockpos, bool ack_to_server=false, bool urgent=false)
 
void addUpdateMeshTaskWithEdge (v3s16 blockpos, bool ack_to_server=false, bool urgent=false)
 
void addUpdateMeshTaskForNode (v3s16 nodepos, bool ack_to_server=false, bool urgent=false)
 
bool hasClientEvents () const
 
ClientEventgetClientEvent ()
 
bool accessDenied () const
 
bool reconnectRequested () const
 
void setFatalError (const std::string &reason)
 
void setFatalError (const LuaError &e)
 
const std::string & accessDeniedReason () const
 
bool itemdefReceived () const
 
bool nodedefReceived () const
 
bool mediaReceived () const
 
bool activeObjectsReceived () const
 
u16 getProtoVersion () const
 
float mediaReceiveProgress ()
 
void drawLoadScreen (const std::wstring &text, float dtime, int percent)
 
void afterContentReceived ()
 
void showUpdateProgressTexture (void *args, float progress)
 
float getRTT ()
 
float getCurRate ()
 
bool hasServerReplied () const
 
MinimapgetMinimap ()
 
void setCamera (Camera *camera)
 
CameragetCamera ()
 
scene::ISceneManager * getSceneManager ()
 
bool isClient () override
 
IItemDefManagergetItemDefManager () override
 
const NodeDefManagergetNodeDefManager () override
 
ICraftDefManagergetCraftDefManager () override
 
ITextureSourcegetTextureSource ()
 
virtual IWritableShaderSourcegetShaderSource ()
 
u16 allocateUnknownNodeId (const std::string &name) override
 
virtual ISoundManagergetSoundManager ()
 
MtEventManagergetEventManager ()
 
virtual ParticleManagergetParticleManager ()
 
bool checkLocalPrivilege (const std::string &priv)
 
virtual scene::IAnimatedMesh * getMesh (const std::string &filename, bool cache=false)
 
ModVFSgetModVFS ()
 
ModStorageDatabasegetModStorageDatabase () override
 
ItemVisualsManagergetItemVisualsManager ()
 
void migrateModStorage ()
 
bool loadMedia (const std::string &data, const std::string &filename, bool from_media_push=false)
 
void request_media (const std::vector< std::string > &file_requests)
 
LocalClientState getState ()
 
void makeScreenshot ()
 
void pushToChatQueue (ChatMessage *cec)
 
ClientScriptinggetScript ()
 
bool modsLoaded () const
 
void pushToEventQueue (ClientEvent *event)
 
const Address getServerAddress ()
 
const std::string & getAddressName () const
 
u64 getCSMRestrictionFlags () const
 
bool checkCSMRestrictionFlag (CSMRestrictionFlags flag) const
 
bool joinModChannel (const std::string &channel) override
 
bool leaveModChannel (const std::string &channel) override
 
bool sendModChannelMessage (const std::string &channel, const std::string &message) override
 
ModChannelgetModChannel (const std::string &channel) override
 
const std::string & getFormspecPrepend () const
 
MeshGrid getMeshGrid ()
 
- Public Member Functions inherited from con::PeerHandler
 PeerHandler ()=default
 
virtual ~PeerHandler ()=default
 
- Public Member Functions inherited from InventoryManager
 InventoryManager ()=default
 
virtual ~InventoryManager ()=default
 
virtual void setInventoryModified (const InventoryLocation &loc)
 
- Public Member Functions inherited from IGameDef
virtual IRollbackManagergetRollbackManager ()
 
virtual ModIPCStoregetModIPCStore ()
 
IItemDefManageridef ()
 
const NodeDefManagerndef ()
 
ICraftDefManagercdef ()
 
IRollbackManagerrollback ()
 
virtual const SubgameSpecgetGameSpec () const
 
virtual std::string getWorldPath () const
 
virtual std::string getModDataPath () const
 

Static Public Member Functions

static const std::string & getBuiltinLuaPath ()
 
static const std::string & getClientModsLuaPath ()
 

Public Attributes

bool m_simple_singleplayer_mode
 
bool m_internal_server
 
bool inhibit_inventory_revert = false
 

Private Member Functions

void loadMods ()
 
void peerAdded (con::IPeer *peer) override
 
void deletingPeer (con::IPeer *peer, bool timeout) override
 
void initLocalMapSaving (const Address &address, const std::string &hostname)
 
void ReceiveAll ()
 
void sendPlayerPos ()
 
void deleteAuthData ()
 
void sendInit (const std::string &playerName)
 
void startAuth (AuthMechanism chosen_auth_mechanism)
 
void sendDeletedBlocks (std::vector< v3s16 > &blocks)
 
void sendGotBlocks (const std::vector< v3s16 > &blocks)
 
void sendRemovedSounds (const std::vector< s32 > &soundList)
 
bool canSendChatMessage () const
 

Static Private Member Functions

static AuthMechanism choseAuthMech (const u32 mechs)
 

Private Attributes

float m_packetcounter_timer = 0.0f
 
float m_connection_reinit_timer = 0.1f
 
float m_avg_rtt_timer = 0.0f
 
float m_playerpos_send_timer = 0.0f
 
int m_playerpos_repeat_count = 0
 
IntervalLimiter m_map_timer_and_unload_interval
 
IWritableTextureSourcem_tsrc
 
IWritableShaderSourcem_shsrc
 
IWritableItemDefManagerm_itemdef
 
NodeDefManagerm_nodedef
 
ISoundManagerm_sound
 
MtEventManagerm_event
 
RenderingEnginem_rendering_engine
 
ItemVisualsManagerm_item_visuals_manager
 
std::unique_ptr< MeshUpdateManagerm_mesh_update_manager
 
ClientEnvironment m_env
 
std::unique_ptr< ParticleManagerm_particle_manager
 
std::unique_ptr< con::IConnectionm_con
 
std::string m_address_name
 
ELoginRegister m_allow_login_or_register = ELoginRegister::Any
 
Cameram_camera = nullptr
 
std::unique_ptr< Minimapm_minimap
 
u8 m_server_ser_ver
 
u16 m_proto_ver = 0
 
bool m_update_wielded_item = false
 
std::unique_ptr< Inventorym_inventory_from_server
 
float m_inventory_from_server_age = 0.0f
 
s32 m_mapblock_limit_logged = 0
 
PacketCounter m_packetcounter
 
float m_animation_time = 0.0f
 
int m_crack_level = -1
 
v3s16 m_crack_pos
 
std::queue< std::wstring > m_out_chat_queue
 
u32 m_last_chat_message_sent
 
float m_chat_message_allowance = 5.0f
 
std::queue< ChatMessage * > m_chat_queue
 
u32 m_sudo_auth_methods
 
u64 m_map_seed = 0
 
std::string m_playername
 
std::string m_password
 
std::string m_new_password
 
AuthMechanism m_chosen_auth_mech
 
void * m_auth_data = nullptr
 
bool m_access_denied = false
 
bool m_access_denied_reconnect = false
 
std::string m_access_denied_reason = ""
 
std::queue< ClientEvent * > m_client_event_queue
 
bool m_itemdef_received = false
 
bool m_nodedef_received = false
 
bool m_activeobjects_received = false
 
bool m_mods_loaded = false
 
std::vector< std::string > m_remote_media_servers
 
std::unique_ptr< ClientMediaDownloaderm_media_downloader
 
std::vector< std::pair< u32, std::shared_ptr< SingleMediaDownloader > > > m_pending_media_downloads
 
float m_recommended_send_interval = 0.1f
 
float m_removed_sounds_check_timer = 0.0f
 
std::unordered_map< s32, sound_handle_tm_sounds_server_to_client
 
std::unordered_map< sound_handle_t, s32 > m_sounds_client_to_server
 
std::unordered_map< sound_handle_t, u16 > m_sounds_to_objects
 
std::unordered_set< std::string > m_privileges
 
std::unordered_map< std::string, Inventory * > m_detached_inventories
 
StringMap m_mesh_data
 
LocalClientState m_state
 
std::unique_ptr< MapDatabasem_localdb
 
IntervalLimiter m_localdb_save_interval
 
u16 m_cache_save_interval
 
ClientScriptingm_script = nullptr
 
ModStorageDatabasem_mod_storage_database = nullptr
 
float m_mod_storage_save_timer = 10.0f
 
std::vector< ModSpecm_mods
 
std::unique_ptr< ModVFSm_mod_vfs
 
std::unique_ptr< SSCSMControllerm_sscsm_controller
 
bool m_shutdown = false
 
u64 m_csm_restriction_flags = CSMRestrictionFlags::CSM_RF_NONE
 
u32 m_csm_restriction_noderange = 8
 
std::unique_ptr< ModChannelMgrm_modchannel_mgr
 
MeshGrid m_mesh_grid
 

Constructor & Destructor Documentation

◆ Client()

Client::Client ( const char * playername,
const std::string & password,
MapDrawControl & control,
IWritableTextureSource * tsrc,
IWritableShaderSource * shsrc,
IWritableItemDefManager * itemdef,
NodeDefManager * nodedef,
ISoundManager * sound,
MtEventManager * event,
RenderingEngine * rendering_engine,
ItemVisualsManager * item_visuals,
ELoginRegister allow_login_or_register )

◆ ~Client()

Client::~Client ( )

References Database::endSave(), infostream, and m_localdb.

+ Here is the call graph for this function:

Member Function Documentation

◆ accessDenied()

bool Client::accessDenied ( ) const
inline

References m_access_denied.

◆ accessDeniedReason()

const std::string & Client::accessDeniedReason ( ) const
inline

◆ activeObjectsReceived()

bool Client::activeObjectsReceived ( ) const
inline

◆ addNode()

void Client::addNode ( v3s16 p,
MapNode n,
bool remove_metadata = true )

Referenced by handleCommand_AddNode().

+ Here is the caller graph for this function:

◆ addUpdateMeshTask()

void Client::addUpdateMeshTask ( v3s16 blockpos,
bool ack_to_server = false,
bool urgent = false )

Referenced by getClientEvent().

+ Here is the caller graph for this function:

◆ addUpdateMeshTaskForNode()

void Client::addUpdateMeshTaskForNode ( v3s16 nodepos,
bool ack_to_server = false,
bool urgent = false )

Referenced by getHP().

+ Here is the caller graph for this function:

◆ addUpdateMeshTaskWithEdge()

void Client::addUpdateMeshTaskWithEdge ( v3s16 blockpos,
bool ack_to_server = false,
bool urgent = false )

Referenced by handleCommand_BlockData().

+ Here is the caller graph for this function:

◆ afterContentReceived()

void Client::afterContentReceived ( )

◆ allocateUnknownNodeId()

u16 Client::allocateUnknownNodeId ( const std::string & name)
overridevirtual

Implements IGameDef.

◆ canSendChatMessage()

bool Client::canSendChatMessage ( ) const
private

References NetworkPacket::putRawString(), Send(), InventoryAction::serialize(), and TOSERVER_INVENTORY_ACTION.

+ Here is the call graph for this function:

◆ checkCSMRestrictionFlag()

bool Client::checkCSMRestrictionFlag ( CSMRestrictionFlags flag) const
inline

◆ checkLocalPrivilege()

bool Client::checkLocalPrivilege ( const std::string & priv)
inline

References checkPrivilege().

Referenced by LocalPlayer::applyControl(), LocalPlayer::move(), LocalPlayer::old_move(), ClientEnvironment::step(), GenericCAO::step(), and Camera::update().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checkPrivilege()

bool Client::checkPrivilege ( const std::string & priv) const
inline

References m_privileges.

Referenced by checkLocalPrivilege(), and GUIFormSpecMenu::OnEvent().

+ Here is the caller graph for this function:

◆ choseAuthMech()

AuthMechanism Client::choseAuthMech ( const u32 mechs)
staticprivate

References AUTH_MECHANISM_FIRST_SRP, AUTH_MECHANISM_LEGACY_PASSWORD, AUTH_MECHANISM_NONE, AUTH_MECHANISM_SRP, m_auth_data, and srp_user_delete().

Referenced by handleCommand_Hello().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ clearOutChatQueue()

void Client::clearOutChatQueue ( )

◆ connect()

void Client::connect ( const Address & address,
const std::string & address_name )

◆ CSMClampPos()

v3s16 Client::CSMClampPos ( v3s16 pos)

◆ CSMClampRadius()

int Client::CSMClampRadius ( v3s16 pos,
int radius )

◆ CSMGetNode()

MapNode Client::CSMGetNode ( v3s16 p,
bool * is_valid_position )

Helper function for Client Side Modding CSM restrictions are applied there, this should not be used for core engine.

Parameters
p
is_valid_position
Returns

◆ deleteAuthData()

void Client::deleteAuthData ( )
private

Referenced by handleCommand_AcceptSudoMode(), handleCommand_AuthAccept(), and handleCommand_DenySudoMode().

+ Here is the caller graph for this function:

◆ deletingPeer()

void Client::deletingPeer ( con::IPeer * peer,
bool timeout )
overrideprivatevirtual

Implements con::PeerHandler.

◆ DISABLE_CLASS_COPY()

Client::DISABLE_CLASS_COPY ( Client )

◆ drawLoadScreen()

void Client::drawLoadScreen ( const std::wstring & text,
float dtime,
int percent )

◆ getAddressName()

const std::string & Client::getAddressName ( ) const
inline

References m_address_name.

Referenced by GameFormSpec::showPauseMenu().

+ Here is the caller graph for this function:

◆ getAnimationTime()

float Client::getAnimationTime ( ) const
inline

References m_animation_time.

Referenced by GenericCAO::setNodeLight(), Camera::step(), Camera::update(), and GenericCAO::updateTextureAnim().

+ Here is the caller graph for this function:

◆ getBuiltinLuaPath()

const std::string & Client::getBuiltinLuaPath ( )
static

Referenced by Client(), PauseMenuScripting::checkPathInternal(), and PauseMenuScripting::loadBuiltin().

+ Here is the caller graph for this function:

◆ getCamera()

Camera * Client::getCamera ( )
inline

References m_camera.

Referenced by GameGlobalShaderUniformSetter::onSetUniforms(), GenericCAO::removeFromScene(), OffsetCameraStep::reset(), DrawHUD::run(), DrawWield::run(), MapPostFxStep::run(), OffsetCameraStep::run(), GenericCAO::setAttachment(), ClientMap::updateDrawList(), GenericCAO::updateMeshCulling(), and GenericCAO::updateNametag().

+ Here is the caller graph for this function:

◆ getChatMessage()

bool Client::getChatMessage ( std::wstring & message)

◆ getClientEvent()

ClientEvent * Client::getClientEvent ( )

References addUpdateMeshTask(), ClientEnvironment::getMap(), getNodeBlockPos(), infostream, m_env, m_mesh_update_manager, MAP_BLOCKSIZE, and MeshUpdateManager::updateBlock().

+ Here is the call graph for this function:

◆ getClientModsLuaPath()

const std::string & Client::getClientModsLuaPath ( )
static

◆ getConnectedPlayerNames()

const std::set< std::string > & Client::getConnectedPlayerNames ( )
inline

References ClientEnvironment::getPlayerNames(), and m_env.

Referenced by GUIChatConsole::OnEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getCrackLevel()

int Client::getCrackLevel ( )
Returns
integer ∊ [0, crack_animation_length] or -1 for invalid

References sendInventoryAction().

Referenced by MeshUpdateQueue::addBlock().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getCrackPos()

v3s16 Client::getCrackPos ( )

Referenced by MeshUpdateQueue::addBlock().

+ Here is the caller graph for this function:

◆ getCraftDefManager()

ICraftDefManager * Client::getCraftDefManager ( )
overridevirtual

Implements IGameDef.

References m_client_event_queue.

◆ getCSMRestrictionFlags()

u64 Client::getCSMRestrictionFlags ( ) const
inline

◆ getCurRate()

float Client::getCurRate ( )

◆ getEnv()

ClientEnvironment & Client::getEnv ( )
inline

References m_env.

Referenced by PlayerInventoryFormSource::getForm(), Camera::notifyFovChange(), GameGlobalShaderUniformSetter::onSetUniforms(), ShadowRenderer::renderShadowMap(), MapPostFxStep::run(), GameFormSpec::showNodeFormspec(), GameFormSpec::showPlayerInventory(), Camera::update(), and GameFormSpec::update().

+ Here is the caller graph for this function:

◆ getEventManager()

MtEventManager * Client::getEventManager ( )

Referenced by LocalPlayer::applyControl(), LocalPlayer::move(), LocalPlayer::old_move(), Camera::step(), and ClientEnvironment::step().

+ Here is the caller graph for this function:

◆ getFormspecPrepend()

const std::string & Client::getFormspecPrepend ( ) const

Referenced by GameFormSpec::showCSMFormSpec(), GameFormSpec::showDeathFormspecLegacy(), GameFormSpec::showFormSpec(), GameFormSpec::showNodeFormspec(), GameFormSpec::showPauseMenu(), and GameFormSpec::showPlayerInventory().

+ Here is the caller graph for this function:

◆ getHP()

u16 Client::getHP ( )

References addUpdateMeshTaskForNode().

+ Here is the call graph for this function:

◆ getInventory()

Inventory * Client::getInventory ( const InventoryLocation & loc)
overridevirtual

Reimplemented from InventoryManager.

Referenced by GameFormSpec::showPlayerInventory().

+ Here is the caller graph for this function:

◆ getItemDefManager()

IItemDefManager * Client::getItemDefManager ( )
overridevirtual

Implements IGameDef.

References CHATMESSAGE_TYPE_SYSTEM, fmtgettext(), and pushToChatQueue().

+ Here is the call graph for this function:

◆ getItemVisualsManager()

ItemVisualsManager * Client::getItemVisualsManager ( )
inline

◆ getMapSeed()

u64 Client::getMapSeed ( ) const
inline

References m_map_seed.

◆ getMesh()

scene::IAnimatedMesh * Client::getMesh ( const std::string & filename,
bool cache = false )
virtual

Referenced by GenericCAO::addToScene(), and GUIFormSpecMenu::parseModel().

+ Here is the caller graph for this function:

◆ getMeshGrid()

MeshGrid Client::getMeshGrid ( )
inline

References m_mesh_grid.

Referenced by MeshUpdateQueue::addBlock(), MeshUpdateQueue::fillDataFromMapBlocks(), and ClientMap::updateDrawList().

+ Here is the caller graph for this function:

◆ getMinimap()

Minimap * Client::getMinimap ( )
inline

References m_minimap.

Referenced by MeshUpdateQueue::fillDataFromMapBlocks(), GameGlobalShaderUniformSetter::onSetUniforms(), GenericCAO::removeFromScene(), and GenericCAO::updateMarker().

+ Here is the caller graph for this function:

◆ getModChannel()

ModChannel * Client::getModChannel ( const std::string & channel)
overridevirtual

Implements IGameDef.

References STRING_MAX_LEN, and warningstream.

◆ getMods()

const std::vector< ModSpec > & Client::getMods ( ) const
overridevirtual

Implements IGameDef.

◆ getModSpec()

const ModSpec * Client::getModSpec ( const std::string & modname) const
overridevirtual

Implements IGameDef.

◆ getModStorageDatabase()

ModStorageDatabase * Client::getModStorageDatabase ( )
inlineoverridevirtual

Implements IGameDef.

References m_mod_storage_database.

◆ getModVFS()

ModVFS * Client::getModVFS ( )
inline

References m_mod_vfs.

◆ getNodeDefManager()

const NodeDefManager * Client::getNodeDefManager ( )
overridevirtual

Implements IGameDef.

Referenced by Minimap::Minimap().

+ Here is the caller graph for this function:

◆ getParticleManager()

ParticleManager * Client::getParticleManager ( )
virtual

◆ getPrivilegeList()

const std::unordered_set< std::string > & Client::getPrivilegeList ( ) const
inline

References m_privileges.

◆ getProtoVersion()

u16 Client::getProtoVersion ( ) const
inline

References m_proto_ver.

Referenced by handleCommand_LocalPlayerAnimations(), and hasServerReplied().

+ Here is the caller graph for this function:

◆ getRTT()

float Client::getRTT ( )

◆ getSceneManager()

scene::ISceneManager * Client::getSceneManager ( )

Referenced by ClientEnvironment::addActiveObject(), and GUIFormSpecMenu::parseModel().

+ Here is the caller graph for this function:

◆ getScript()

ClientScripting * Client::getScript ( )
inline

References m_script.

Referenced by GameFormSpec::showCSMFormSpec(), and GameFormSpec::showPlayerInventory().

+ Here is the caller graph for this function:

◆ getServerAddress()

const Address Client::getServerAddress ( )

◆ getShaderSource()

IWritableShaderSource * Client::getShaderSource ( )
virtual

Referenced by Minimap::Minimap(), GenericCAO::addToScene(), ShadowRenderer::createShaders(), and PostProcessingStep::run().

+ Here is the caller graph for this function:

◆ getSoundManager()

ISoundManager * Client::getSoundManager ( )
virtual

Referenced by GameFormSpec::showCSMFormSpec(), GameFormSpec::showDeathFormspecLegacy(), GameFormSpec::showFormSpec(), GameFormSpec::showNodeFormspec(), GameFormSpec::showPauseMenu(), GameFormSpec::showPauseMenuFormSpec(), GameFormSpec::showPlayerInventory(), and sound().

+ Here is the caller graph for this function:

◆ getState()

LocalClientState Client::getState ( )
inline

References m_state.

◆ getTextureSource()

ITextureSource * Client::getTextureSource ( )

Referenced by Minimap::Minimap(), GameFormSpec::handleCallbacks(), and tsrc().

+ Here is the caller graph for this function:

◆ handleCommand()

void Client::handleCommand ( NetworkPacket * pkt)
inline

Referenced by Send().

+ Here is the caller graph for this function:

◆ handleCommand_AcceptSudoMode()

void Client::handleCommand_AcceptSudoMode ( NetworkPacket * pkt)

References AUTH_MECHANISM_FIRST_SRP, AUTH_MECHANISM_NONE, deleteAuthData(), m_chosen_auth_mech, m_new_password, m_password, startAuth(), and verbosestream.

+ Here is the call graph for this function:

◆ handleCommand_AccessDenied()

void Client::handleCommand_AccessDenied ( NetworkPacket * pkt)

◆ handleCommand_ActiveObjectMessages()

void Client::handleCommand_ActiveObjectMessages ( NetworkPacket * pkt)

References canRead(), deSerializeString16(), NetworkPacket::getSize(), NetworkPacket::getString(), m_env, ClientEnvironment::processActiveObjectMessage(), and readU16().

+ Here is the call graph for this function:

◆ handleCommand_ActiveObjectRemoveAdd()

void Client::handleCommand_ActiveObjectRemoveAdd ( NetworkPacket * pkt)

References ClientEnvironment::addActiveObject(), m_activeobjects_received, m_env, NetworkPacket::readLongString(), and ClientEnvironment::removeActiveObject().

+ Here is the call graph for this function:

◆ handleCommand_AddNode()

void Client::handleCommand_AddNode ( NetworkPacket * pkt)

References addNode(), MapNode::deSerialize(), NetworkPacket::getRemainingString(), m_server_ser_ver, p(), MapNode::serializedLength(), and NetworkPacket::skip().

+ Here is the call graph for this function:

◆ handleCommand_AddParticleSpawner()

void Client::handleCommand_AddParticleSpawner ( NetworkPacket * pkt)

References canRead(), CE_ADD_PARTICLESPAWNER, ServerParticleTexture::deSerialize(), ParticleParamTypes::deSerializeParameterValue(), deSerializeString32(), NetworkPacket::getSize(), NetworkPacket::getString(), m_client_event_queue, m_proto_ver, p(), readF32(), readU16(), readU32(), and readU8().

+ Here is the call graph for this function:

◆ handleCommand_AnnounceMedia()

◆ handleCommand_AuthAccept()

void Client::handleCommand_AuthAccept ( NetworkPacket * pkt)

References actionstream, deleteAuthData(), con::IConnection::GetPeerAddress(), infostream, LC_Init, m_address_name, m_con, m_internal_server, m_map_seed, m_recommended_send_interval, m_state, m_sudo_auth_methods, PEER_ID_SERVER, Address::print(), Send(), and TOSERVER_INIT2.

+ Here is the call graph for this function:

◆ handleCommand_BlockData()

◆ handleCommand_Breath()

void Client::handleCommand_Breath ( NetworkPacket * pkt)

References ClientEnvironment::getLocalPlayer(), m_env, and LocalPlayer::setBreath().

+ Here is the call graph for this function:

◆ handleCommand_Camera()

void Client::handleCommand_Camera ( NetworkPacket * pkt)

References Player::allowed_camera_mode, CE_UPDATE_CAMERA, ClientEnvironment::getLocalPlayer(), m_client_event_queue, and m_env.

+ Here is the call graph for this function:

◆ handleCommand_ChatMessage()

void Client::handleCommand_ChatMessage ( NetworkPacket * pkt)

References actionstream, CHATMESSAGE_TYPE_MAX, m_script, ChatMessage::message, modsLoaded(), ScriptApiClient::on_receiving_message(), pushToChatQueue(), ChatMessage::sender, ChatMessage::timestamp, ChatMessage::type, unescape_enriched(), and wide_to_utf8().

+ Here is the call graph for this function:

◆ handleCommand_CloudParams()

void Client::handleCommand_CloudParams ( NetworkPacket * pkt)

References CE_CLOUD_PARAMS, NetworkPacket::hasRemainingBytes(), and m_client_event_queue.

+ Here is the call graph for this function:

◆ handleCommand_CSMRestrictionFlags()

void Client::handleCommand_CSMRestrictionFlags ( NetworkPacket * pkt)

References loadMods(), m_csm_restriction_flags, and m_csm_restriction_noderange.

+ Here is the call graph for this function:

◆ handleCommand_DeathScreenLegacy()

void Client::handleCommand_DeathScreenLegacy ( NetworkPacket * pkt)

◆ handleCommand_DeleteParticleSpawner()

void Client::handleCommand_DeleteParticleSpawner ( NetworkPacket * pkt)

◆ handleCommand_DenySudoMode()

void Client::handleCommand_DenySudoMode ( NetworkPacket * pkt)

References CHATMESSAGE_TYPE_SYSTEM, deleteAuthData(), and pushToChatQueue().

+ Here is the call graph for this function:

◆ handleCommand_Deprecated()

void Client::handleCommand_Deprecated ( NetworkPacket * pkt)

References NetworkPacket::getCommand(), NetworkPacket::getPeerId(), infostream, ToClientCommandHandler::name, and toClientCommandTable.

+ Here is the call graph for this function:

◆ handleCommand_DetachedInventory()

void Client::handleCommand_DetachedInventory ( NetworkPacket * pkt)

References Inventory::deSerialize(), NetworkPacket::getRemainingBytes(), NetworkPacket::getRemainingString(), infostream, m_detached_inventories, m_itemdef, and NetworkPacket::skip().

+ Here is the call graph for this function:

◆ handleCommand_EyeOffset()

void Client::handleCommand_EyeOffset ( NetworkPacket * pkt)

References Player::eye_offset_first, Player::eye_offset_third, Player::eye_offset_third_front, ClientEnvironment::getLocalPlayer(), NetworkPacket::hasRemainingBytes(), and m_env.

+ Here is the call graph for this function:

◆ handleCommand_FadeSound()

void Client::handleCommand_FadeSound ( NetworkPacket * pkt)

References ISoundManager::fadeSound(), m_sound, m_sounds_server_to_client, and step().

+ Here is the call graph for this function:

◆ handleCommand_FormspecPrepend()

void Client::handleCommand_FormspecPrepend ( NetworkPacket * pkt)

References Player::formspec_prepend, ClientEnvironment::getLocalPlayer(), and m_env.

+ Here is the call graph for this function:

◆ handleCommand_Fov()

void Client::handleCommand_Fov ( NetworkPacket * pkt)

References ClientEnvironment::getLocalPlayer(), NetworkPacket::hasRemainingBytes(), m_camera, m_env, Camera::notifyFovChange(), and Player::setFov().

+ Here is the call graph for this function:

◆ handleCommand_Hello()

◆ handleCommand_HP()

void Client::handleCommand_HP ( NetworkPacket * pkt)

References CE_PLAYER_DAMAGE, ClientEnvironment::getLocalPlayer(), NetworkPacket::hasRemainingBytes(), LocalPlayer::hp, m_client_event_queue, m_env, m_script, modsLoaded(), and ScriptApiClient::on_hp_modification().

+ Here is the call graph for this function:

◆ handleCommand_HudAdd()

void Client::handleCommand_HudAdd ( NetworkPacket * pkt)

References CE_HUDADD, dir(), NetworkPacket::hasRemainingBytes(), and m_client_event_queue.

+ Here is the call graph for this function:

◆ handleCommand_HudChange()

◆ handleCommand_HudRemove()

void Client::handleCommand_HudRemove ( NetworkPacket * pkt)

References CE_HUDRM, and m_client_event_queue.

◆ handleCommand_HudSetFlags()

void Client::handleCommand_HudSetFlags ( NetworkPacket * pkt)

References ClientEnvironment::getLocalPlayer(), Minimap::getModeDef(), Minimap::getModeIndex(), HUD_FLAG_MINIMAP_RADAR_VISIBLE, Player::hud_flags, m_env, m_minimap, MINIMAP_TYPE_RADAR, Minimap::nextMode(), and MinimapModeDef::type.

+ Here is the call graph for this function:

◆ handleCommand_HudSetMoon()

◆ handleCommand_HudSetParam()

void Client::handleCommand_HudSetParam ( NetworkPacket * pkt)

References ClientEnvironment::getLocalPlayer(), LocalPlayer::hotbar_image, LocalPlayer::hotbar_selected_image, Player::hud_hotbar_itemcount, HUD_HOTBAR_ITEMCOUNT_MAX, HUD_PARAM_HOTBAR_IMAGE, HUD_PARAM_HOTBAR_ITEMCOUNT, HUD_PARAM_HOTBAR_SELECTED_IMAGE, m_env, and readS32().

+ Here is the call graph for this function:

◆ handleCommand_HudSetSky()

◆ handleCommand_HudSetStars()

void Client::handleCommand_HudSetStars ( NetworkPacket * pkt)

References CE_SET_STARS, StarParams::count, StarParams::day_opacity, SkyboxDefaults::getStarDefaults(), NetworkPacket::hasRemainingBytes(), m_client_event_queue, StarParams::scale, StarParams::star_seed, StarParams::starcolor, and StarParams::visible.

+ Here is the call graph for this function:

◆ handleCommand_HudSetSun()

◆ handleCommand_Inventory()

void Client::handleCommand_Inventory ( NetworkPacket * pkt)

References Inventory::deSerialize(), ClientEnvironment::getLocalPlayer(), NetworkPacket::getSize(), NetworkPacket::getString(), Player::inventory, m_env, m_inventory_from_server, m_inventory_from_server_age, and m_update_wielded_item.

+ Here is the call graph for this function:

◆ handleCommand_InventoryFormSpec()

void Client::handleCommand_InventoryFormSpec ( NetworkPacket * pkt)

References ClientEnvironment::getLocalPlayer(), Player::inventory_formspec, LocalPlayer::inventory_formspec_override, m_env, and NetworkPacket::readLongString().

+ Here is the call graph for this function:

◆ handleCommand_ItemDef()

void Client::handleCommand_ItemDef ( NetworkPacket * pkt)

References decompressZlib(), decompressZstd(), IWritableItemDefManager::deSerialize(), NetworkPacket::getSize(), infostream, MeshUpdateManager::isRunning(), m_itemdef, m_itemdef_received, m_mesh_update_manager, m_proto_ver, NetworkPacket::readLongString(), and sanity_check.

+ Here is the call graph for this function:

◆ handleCommand_LocalPlayerAnimations()

void Client::handleCommand_LocalPlayerAnimations ( NetworkPacket * pkt)

References ClientEnvironment::getLocalPlayer(), getProtoVersion(), LocalPlayer::last_animation, Player::local_animation_speed, Player::local_animations, m_env, and NO_ANIM.

+ Here is the call graph for this function:

◆ handleCommand_Media()

void Client::handleCommand_Media ( NetworkPacket * pkt)

◆ handleCommand_MediaPush()

void Client::handleCommand_MediaPush ( NetworkPacket * pkt)

References clientMediaUpdateCache(), loadMedia(), m_pending_media_downloads, m_proto_ver, m_remote_media_servers, NetworkPacket::readLongString(), hashing::sha1(), string_allowed(), TEXTURENAME_ALLOWED_CHARS, and verbosestream.

+ Here is the call graph for this function:

◆ handleCommand_MinimapModes()

void Client::handleCommand_MinimapModes ( NetworkPacket * pkt)

References Minimap::addMode(), Minimap::clearModes(), m_minimap, and Minimap::setModeIndex().

+ Here is the call graph for this function:

◆ handleCommand_ModChannelMsg()

void Client::handleCommand_ModChannelMsg ( NetworkPacket * pkt)

References ModChannelMgr::channelRegistered(), NetworkPacket::getPeerId(), m_modchannel_mgr, m_script, ScriptApiModChannels::on_modchannel_message(), and verbosestream.

+ Here is the call graph for this function:

◆ handleCommand_ModChannelSignal()

◆ handleCommand_Movement()

◆ handleCommand_MovePlayer()

void Client::handleCommand_MovePlayer ( NetworkPacket * pkt)

References CE_PLAYER_FORCE_MOVE, ClientEnvironment::getLocalPlayer(), infostream, m_client_event_queue, m_env, and LocalPlayer::setPosition().

+ Here is the call graph for this function:

◆ handleCommand_MovePlayerRel()

void Client::handleCommand_MovePlayerRel ( NetworkPacket * pkt)

References LocalPlayer::addPosition(), ClientEnvironment::getLocalPlayer(), and m_env.

+ Here is the call graph for this function:

◆ handleCommand_NodeDef()

void Client::handleCommand_NodeDef ( NetworkPacket * pkt)

References decompressZlib(), decompressZstd(), NodeDefManager::deSerialize(), NetworkPacket::getSize(), infostream, MeshUpdateManager::isRunning(), m_mesh_update_manager, m_nodedef, m_nodedef_received, m_proto_ver, NetworkPacket::readLongString(), and sanity_check.

+ Here is the call graph for this function:

◆ handleCommand_NodemetaChanged()

void Client::handleCommand_NodemetaChanged ( NetworkPacket * pkt)

References NodeMetadataList::begin(), decompressZlib(), NodeMetadataList::deSerialize(), NodeMetadataList::end(), ClientEnvironment::getMap(), NetworkPacket::getSize(), Map::isValidPosition(), m_env, m_itemdef, NetworkPacket::readLongString(), and Map::setNodeMetadata().

+ Here is the call graph for this function:

◆ handleCommand_Null()

void Client::handleCommand_Null ( NetworkPacket * pkt)
inline

◆ handleCommand_OverrideDayNightRatio()

void Client::handleCommand_OverrideDayNightRatio ( NetworkPacket * pkt)

◆ handleCommand_PlayerSpeed()

void Client::handleCommand_PlayerSpeed ( NetworkPacket * pkt)

References LocalPlayer::addVelocity(), ClientEnvironment::getLocalPlayer(), and m_env.

+ Here is the call graph for this function:

◆ handleCommand_PlaySound()

◆ handleCommand_Privileges()

void Client::handleCommand_Privileges ( NetworkPacket * pkt)

References infostream, and m_privileges.

◆ handleCommand_RemoveNode()

void Client::handleCommand_RemoveNode ( NetworkPacket * pkt)

References p(), and removeNode().

+ Here is the call graph for this function:

◆ handleCommand_SetLighting()

◆ handleCommand_ShowFormSpec()

void Client::handleCommand_ShowFormSpec ( NetworkPacket * pkt)

References CE_SHOW_FORMSPEC, m_client_event_queue, and NetworkPacket::readLongString().

+ Here is the call graph for this function:

◆ handleCommand_SpawnParticle()

void Client::handleCommand_SpawnParticle ( NetworkPacket * pkt)

References CE_SPAWN_PARTICLE, NetworkPacket::getSize(), NetworkPacket::getString(), m_client_event_queue, m_proto_ver, and p().

+ Here is the call graph for this function:

◆ handleCommand_SpawnParticleBatch()

void Client::handleCommand_SpawnParticleBatch ( NetworkPacket * pkt)

References canRead(), CE_SPAWN_PARTICLE, decompressZstd(), deSerializeString32(), m_client_event_queue, m_proto_ver, p(), and NetworkPacket::readLongString().

+ Here is the call graph for this function:

◆ handleCommand_SrpBytesSandB()

void Client::handleCommand_SrpBytesSandB ( NetworkPacket * pkt)

References AUTH_MECHANISM_LEGACY_PASSWORD, AUTH_MECHANISM_SRP, errorstream, infostream, m_auth_data, m_chosen_auth_mech, Send(), srp_user_process_challenge(), and TOSERVER_SRP_BYTES_M.

+ Here is the call graph for this function:

◆ handleCommand_StopSound()

void Client::handleCommand_StopSound ( NetworkPacket * pkt)

References m_sound, m_sounds_server_to_client, and ISoundManager::stopSound().

+ Here is the call graph for this function:

◆ handleCommand_TimeOfDay()

void Client::handleCommand_TimeOfDay ( NetworkPacket * pkt)

References NetworkPacket::getSize(), m_env, Environment::setTimeOfDay(), and Environment::setTimeOfDaySpeed().

+ Here is the call graph for this function:

◆ handleCommand_UpdatePlayerList()

void Client::handleCommand_UpdatePlayerList ( NetworkPacket * pkt)

References ClientEnvironment::addPlayerName(), m_env, PLAYER_LIST_ADD, PLAYER_LIST_INIT, PLAYER_LIST_REMOVE, and ClientEnvironment::removePlayerName().

+ Here is the call graph for this function:

◆ hasClientEvents()

bool Client::hasClientEvents ( ) const
inline

References m_client_event_queue.

◆ hasServerReplied()

bool Client::hasServerReplied ( ) const
inline

References getProtoVersion().

+ Here is the call graph for this function:

◆ initLocalMapSaving()

void Client::initLocalMapSaving ( const Address & address,
const std::string & hostname )
private

◆ interact()

void Client::interact ( InteractAction action,
const PointedThing & pointed )

◆ inventoryAction()

void Client::inventoryAction ( InventoryAction * a)
overridevirtual

Reimplemented from InventoryManager.

References m_detached_inventories, and InventoryLocation::name.

◆ isClient()

bool Client::isClient ( )
inlineoverridevirtual

Implements IGameDef.

◆ isShutdown()

bool Client::isShutdown ( )

◆ itemdefReceived()

bool Client::itemdefReceived ( ) const
inline

References m_itemdef_received.

◆ joinModChannel()

bool Client::joinModChannel ( const std::string & channel)
overridevirtual

Implements IGameDef.

◆ leaveModChannel()

bool Client::leaveModChannel ( const std::string & channel)
overridevirtual

Implements IGameDef.

References ModChannelMgr::channelRegistered(), ModChannelMgr::joinChannel(), m_modchannel_mgr, Send(), and TOSERVER_MODCHANNEL_JOIN.

+ Here is the call graph for this function:

◆ loadMedia()

bool Client::loadMedia ( const std::string & data,
const std::string & filename,
bool from_media_push = false )

References Database::beginSave(), Database::endSave(), g_settings, Settings::getFloat(), m_mod_storage_database, and m_mod_storage_save_timer.

Referenced by handleCommand_MediaPush().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ loadMods()

void Client::loadMods ( )
private

References m_mod_storage_database, and ModStorageDatabase::setModEntry().

Referenced by handleCommand_CSMRestrictionFlags().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ makeScreenshot()

void Client::makeScreenshot ( )

Referenced by GUIFormSpecMenu::OnEvent().

+ Here is the caller graph for this function:

◆ mediaReceived()

bool Client::mediaReceived ( ) const
inline

References m_media_downloader.

◆ mediaReceiveProgress()

float Client::mediaReceiveProgress ( )

◆ migrateModStorage()

void Client::migrateModStorage ( )

◆ modsLoaded()

bool Client::modsLoaded ( ) const
inline

References m_mods_loaded.

Referenced by handleCommand_ChatMessage(), handleCommand_HP(), GameFormSpec::showPlayerInventory(), and ClientEnvironment::step().

+ Here is the caller graph for this function:

◆ nodedefReceived()

bool Client::nodedefReceived ( ) const
inline

References m_nodedef_received.

◆ peerAdded()

void Client::peerAdded ( con::IPeer * peer)
overrideprivatevirtual

Implements con::PeerHandler.

◆ ProcessData()

void Client::ProcessData ( NetworkPacket * pkt)

◆ pushToChatQueue()

void Client::pushToChatQueue ( ChatMessage * cec)
inline

References m_chat_queue.

Referenced by getItemDefManager(), handleCommand_ChatMessage(), and handleCommand_DenySudoMode().

+ Here is the caller graph for this function:

◆ pushToEventQueue()

void Client::pushToEventQueue ( ClientEvent * event)

◆ ReceiveAll()

void Client::ReceiveAll ( )
private

◆ reconnectRequested()

bool Client::reconnectRequested ( ) const
inline

◆ removeNode()

void Client::removeNode ( v3s16 p)

Referenced by handleCommand_RemoveNode().

+ Here is the caller graph for this function:

◆ request_media()

void Client::request_media ( const std::vector< std::string > & file_requests)

◆ Send()

void Client::Send ( NetworkPacket * pkt)

References handleCommand().

Referenced by canSendChatMessage(), handleCommand_AuthAccept(), handleCommand_SrpBytesSandB(), leaveModChannel(), sendNodemetaFields(), and sendReady().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sendChangePassword()

void Client::sendChangePassword ( const std::string & oldpassword,
const std::string & newpassword )

Referenced by GUIPasswordChange::processInput().

+ Here is the caller graph for this function:

◆ sendChatMessage()

void Client::sendChatMessage ( const std::wstring & message)

◆ sendDamage()

void Client::sendDamage ( u16 damage)

References ClientEnvironment::getLocalPlayer(), and m_env.

+ Here is the call graph for this function:

◆ sendDeletedBlocks()

void Client::sendDeletedBlocks ( std::vector< v3s16 > & blocks)
private

◆ sendGotBlocks()

void Client::sendGotBlocks ( const std::vector< v3s16 > & blocks)
private

◆ sendHaveMedia()

void Client::sendHaveMedia ( const std::vector< u32 > & tokens)

◆ sendInit()

void Client::sendInit ( const std::string & playerName)
private

◆ sendInventoryAction()

void Client::sendInventoryAction ( InventoryAction * a)

Referenced by getCrackLevel().

+ Here is the caller graph for this function:

◆ sendInventoryFields()

void Client::sendInventoryFields ( const std::string & formname,
const StringMap & fields )

Referenced by TextDestPlayerInventory::gotText().

+ Here is the caller graph for this function:

◆ sendModChannelMessage()

bool Client::sendModChannelMessage ( const std::string & channel,
const std::string & message )
overridevirtual

Implements IGameDef.

◆ sendNodemetaFields()

void Client::sendNodemetaFields ( v3s16 p,
const std::string & formname,
const StringMap & fields )

References Send(), and TOSERVER_REMOVED_SOUNDS.

Referenced by TextDestNodeMetadata::gotText().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sendPlayerPos()

void Client::sendPlayerPos ( )
private

◆ sendReady()

void Client::sendReady ( )

References Send(), and TOSERVER_DAMAGE.

+ Here is the call graph for this function:

◆ sendRemovedSounds()

void Client::sendRemovedSounds ( const std::vector< s32 > & soundList)
private

Referenced by handleCommand_PlaySound().

+ Here is the caller graph for this function:

◆ sendRespawnLegacy()

void Client::sendRespawnLegacy ( )

Referenced by LegacyDeathFormspecHandler::gotText().

+ Here is the caller graph for this function:

◆ sendUpdateClientInfo()

void Client::sendUpdateClientInfo ( const ClientDynamicInfo & info)

◆ setCamera()

void Client::setCamera ( Camera * camera)
inline

References m_camera.

◆ setCrack()

void Client::setCrack ( int level,
v3s16 pos )

◆ setFatalError() [1/2]

void Client::setFatalError ( const LuaError & e)

◆ setFatalError() [2/2]

void Client::setFatalError ( const std::string & reason)
inline

◆ setPlayerControl()

void Client::setPlayerControl ( PlayerControl & control)

References Map::addNodeAndUpdate(), ClientEnvironment::getMap(), m_env, and p().

+ Here is the call graph for this function:

◆ setPlayerItem()

void Client::setPlayerItem ( u16 item)

◆ showUpdateProgressTexture()

void Client::showUpdateProgressTexture ( void * args,
float progress )

◆ sound()

ISoundManager * Client::sound ( )
inline

References getSoundManager().

Referenced by GenericCAO::step().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ startAuth()

void Client::startAuth ( AuthMechanism chosen_auth_mechanism)
private

Referenced by handleCommand_AcceptSudoMode(), and handleCommand_Hello().

+ Here is the caller graph for this function:

◆ step()

void Client::step ( float dtime)

Referenced by handleCommand_FadeSound().

+ Here is the caller graph for this function:

◆ Stop()

void Client::Stop ( )

◆ tsrc()

ITextureSource * Client::tsrc ( )
inline

References getTextureSource().

Referenced by SmokePuffCSO::SmokePuffCSO(), GenericCAO::step(), and GenericCAO::updateTextures().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ typeChatMessage()

void Client::typeChatMessage ( const std::wstring & message)

References ChatMessage::message, and ChatMessage::sender.

Referenced by GUIChatConsole::OnEvent().

+ Here is the caller graph for this function:

◆ updateWieldedItem()

bool Client::updateWieldedItem ( )

Member Data Documentation

◆ inhibit_inventory_revert

bool Client::inhibit_inventory_revert = false

◆ m_access_denied

bool Client::m_access_denied = false
private

◆ m_access_denied_reason

std::string Client::m_access_denied_reason = ""
private

◆ m_access_denied_reconnect

bool Client::m_access_denied_reconnect = false
private

◆ m_activeobjects_received

bool Client::m_activeobjects_received = false
private

◆ m_address_name

std::string Client::m_address_name
private

◆ m_allow_login_or_register

ELoginRegister Client::m_allow_login_or_register = ELoginRegister::Any
private

Referenced by handleCommand_Hello().

◆ m_animation_time

float Client::m_animation_time = 0.0f
private

Referenced by getAnimationTime().

◆ m_auth_data

void* Client::m_auth_data = nullptr
private

◆ m_avg_rtt_timer

float Client::m_avg_rtt_timer = 0.0f
private

◆ m_cache_save_interval

u16 Client::m_cache_save_interval
private

Referenced by Client().

◆ m_camera

Camera* Client::m_camera = nullptr
private

◆ m_chat_message_allowance

float Client::m_chat_message_allowance = 5.0f
private

Referenced by sendChatMessage().

◆ m_chat_queue

std::queue<ChatMessage *> Client::m_chat_queue
private

Referenced by pushToChatQueue().

◆ m_chosen_auth_mech

◆ m_client_event_queue

◆ m_con

std::unique_ptr<con::IConnection> Client::m_con
private

◆ m_connection_reinit_timer

float Client::m_connection_reinit_timer = 0.1f
private

◆ m_crack_level

int Client::m_crack_level = -1
private

◆ m_crack_pos

v3s16 Client::m_crack_pos
private

◆ m_csm_restriction_flags

◆ m_csm_restriction_noderange

u32 Client::m_csm_restriction_noderange = 8
private

◆ m_detached_inventories

std::unordered_map<std::string, Inventory*> Client::m_detached_inventories
private

◆ m_env

◆ m_event

MtEventManager* Client::m_event
private

◆ m_internal_server

bool Client::m_internal_server

◆ m_inventory_from_server

std::unique_ptr<Inventory> Client::m_inventory_from_server
private

Referenced by handleCommand_Inventory().

◆ m_inventory_from_server_age

float Client::m_inventory_from_server_age = 0.0f
private

Referenced by handleCommand_Inventory().

◆ m_item_visuals_manager

ItemVisualsManager* Client::m_item_visuals_manager
private

Referenced by getItemVisualsManager().

◆ m_itemdef

◆ m_itemdef_received

bool Client::m_itemdef_received = false
private

◆ m_last_chat_message_sent

u32 Client::m_last_chat_message_sent
private

Referenced by sendChatMessage().

◆ m_localdb

std::unique_ptr<MapDatabase> Client::m_localdb
private

Referenced by ~Client(), and handleCommand_BlockData().

◆ m_localdb_save_interval

IntervalLimiter Client::m_localdb_save_interval
private

◆ m_map_seed

u64 Client::m_map_seed = 0
private

◆ m_map_timer_and_unload_interval

IntervalLimiter Client::m_map_timer_and_unload_interval
private

◆ m_mapblock_limit_logged

s32 Client::m_mapblock_limit_logged = 0
private

◆ m_media_downloader

std::unique_ptr<ClientMediaDownloader> Client::m_media_downloader
private

◆ m_mesh_data

StringMap Client::m_mesh_data
private

◆ m_mesh_grid

MeshGrid Client::m_mesh_grid
private

Referenced by Client(), and getMeshGrid().

◆ m_mesh_update_manager

◆ m_minimap

std::unique_ptr<Minimap> Client::m_minimap
private

◆ m_mod_storage_database

ModStorageDatabase* Client::m_mod_storage_database = nullptr
private

◆ m_mod_storage_save_timer

float Client::m_mod_storage_save_timer = 10.0f
private

Referenced by loadMedia().

◆ m_mod_vfs

std::unique_ptr<ModVFS> Client::m_mod_vfs
private

Referenced by getModVFS().

◆ m_modchannel_mgr

std::unique_ptr<ModChannelMgr> Client::m_modchannel_mgr
private

◆ m_mods

std::vector<ModSpec> Client::m_mods
private

◆ m_mods_loaded

bool Client::m_mods_loaded = false
private

Referenced by modsLoaded().

◆ m_new_password

std::string Client::m_new_password
private

◆ m_nodedef

NodeDefManager* Client::m_nodedef
private

Referenced by handleCommand_NodeDef().

◆ m_nodedef_received

bool Client::m_nodedef_received = false
private

◆ m_out_chat_queue

std::queue<std::wstring> Client::m_out_chat_queue
private

◆ m_packetcounter

PacketCounter Client::m_packetcounter
private

◆ m_packetcounter_timer

float Client::m_packetcounter_timer = 0.0f
private

◆ m_particle_manager

std::unique_ptr<ParticleManager> Client::m_particle_manager
private

◆ m_password

std::string Client::m_password
private

◆ m_pending_media_downloads

std::vector<std::pair<u32, std::shared_ptr<SingleMediaDownloader> > > Client::m_pending_media_downloads
private

◆ m_playername

std::string Client::m_playername
private

◆ m_playerpos_repeat_count

int Client::m_playerpos_repeat_count = 0
private

◆ m_playerpos_send_timer

float Client::m_playerpos_send_timer = 0.0f
private

◆ m_privileges

std::unordered_set<std::string> Client::m_privileges
private

◆ m_proto_ver

◆ m_recommended_send_interval

float Client::m_recommended_send_interval = 0.1f
private

◆ m_remote_media_servers

std::vector<std::string> Client::m_remote_media_servers
private

◆ m_removed_sounds_check_timer

float Client::m_removed_sounds_check_timer = 0.0f
private

◆ m_rendering_engine

RenderingEngine* Client::m_rendering_engine
private

◆ m_script

◆ m_server_ser_ver

u8 Client::m_server_ser_ver
private

◆ m_shsrc

IWritableShaderSource* Client::m_shsrc
private

◆ m_shutdown

bool Client::m_shutdown = false
private

◆ m_simple_singleplayer_mode

bool Client::m_simple_singleplayer_mode

◆ m_sound

◆ m_sounds_client_to_server

std::unordered_map<sound_handle_t, s32> Client::m_sounds_client_to_server
private

Referenced by handleCommand_PlaySound().

◆ m_sounds_server_to_client

std::unordered_map<s32, sound_handle_t> Client::m_sounds_server_to_client
private

◆ m_sounds_to_objects

std::unordered_map<sound_handle_t, u16> Client::m_sounds_to_objects
private

Referenced by handleCommand_PlaySound().

◆ m_sscsm_controller

std::unique_ptr<SSCSMController> Client::m_sscsm_controller
private

Referenced by Client().

◆ m_state

LocalClientState Client::m_state
private

◆ m_sudo_auth_methods

u32 Client::m_sudo_auth_methods
private

◆ m_tsrc

IWritableTextureSource* Client::m_tsrc
private

◆ m_update_wielded_item

bool Client::m_update_wielded_item = false
private

Referenced by handleCommand_Inventory().


The documentation for this class was generated from the following files: