Minetest  5.4.0
Player Class Referenceabstract

#include <player.h>

+ Inheritance diagram for Player:
+ Collaboration diagram for Player:

Public Member Functions

 Player (const char *name, IItemDefManager *idef)
 
virtual ~Player ()=0
 
 DISABLE_CLASS_COPY (Player)
 
virtual void move (f32 dtime, Environment *env, f32 pos_max_d)
 
virtual void move (f32 dtime, Environment *env, f32 pos_max_d, std::vector< CollisionInfo > *collision_info)
 
const v3fgetSpeed () const
 
void setSpeed (const v3f &speed)
 
const char * getName () const
 
u32 getFreeHudID ()
 
const PlayerControlgetPlayerControl ()
 
PlayerSettingsgetPlayerSettings ()
 
ItemStackgetWieldedItem (ItemStack *selected, ItemStack *hand) const
 
void setWieldIndex (u16 index)
 
u16 getWieldIndex () const
 
void setFov (const PlayerFovSpec &spec)
 
const PlayerFovSpecgetFov () const
 
HudElementgetHud (u32 id)
 
u32 addHud (HudElement *hud)
 
HudElementremoveHud (u32 id)
 
void clearHud ()
 

Static Public Member Functions

static void settingsChangedCallback (const std::string &name, void *data)
 

Public Attributes

v3f eye_offset_first
 
v3f eye_offset_third
 
Inventory inventory
 
f32 movement_acceleration_default
 
f32 movement_acceleration_air
 
f32 movement_acceleration_fast
 
f32 movement_speed_walk
 
f32 movement_speed_crouch
 
f32 movement_speed_fast
 
f32 movement_speed_climb
 
f32 movement_speed_jump
 
f32 movement_liquid_fluidity
 
f32 movement_liquid_fluidity_smooth
 
f32 movement_liquid_sink
 
f32 movement_gravity
 
v2s32 local_animations [4]
 
float local_animation_speed
 
std::string inventory_formspec
 
std::string formspec_prepend
 
PlayerControl control
 
u32 keyPressed = 0
 
u32 hud_flags
 
s32 hud_hotbar_itemcount
 

Protected Attributes

char m_name [PLAYERNAME_SIZE]
 
v3f m_speed
 
u16 m_wield_index = 0
 
PlayerFovSpec m_fov_override_spec = { 0.0f, false, 0.0f }
 
std::vector< HudElement * > hud
 

Private Attributes

std::mutex m_mutex
 
PlayerSettings m_player_settings
 

Constructor & Destructor Documentation

◆ Player()

◆ ~Player()

Player::~Player ( )
pure virtual

References clearHud(), Settings::deregisterChangedCallback(), g_settings, m_player_settings, PlayerSettings::setting_names, and settingsChangedCallback().

+ Here is the call graph for this function:

Member Function Documentation

◆ addHud()

u32 Player::addHud ( HudElement hud)

References getFreeHudID(), hud, and m_mutex.

Referenced by Game::handleClientEvent_HudAdd(), Server::hudAdd(), and LuaLocalPlayer::l_hud_add().

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

◆ clearHud()

void Player::clearHud ( )

References hud, and m_mutex.

Referenced by ~Player(), and ServerEnvironment::loadPlayer().

+ Here is the caller graph for this function:

◆ DISABLE_CLASS_COPY()

Player::DISABLE_CLASS_COPY ( Player  )

◆ getFov()

const PlayerFovSpec& Player::getFov ( ) const
inline

References m_fov_override_spec.

Referenced by Game::checkZoomEnabled(), ObjectRef::l_get_fov(), Camera::notifyFovChange(), and Server::SendPlayerFov().

+ Here is the caller graph for this function:

◆ getFreeHudID()

u32 Player::getFreeHudID ( )
inline

References hud.

Referenced by addHud().

+ Here is the caller graph for this function:

◆ getHud()

HudElement * Player::getHud ( u32  id)

References hud, and m_mutex.

Referenced by Hud::drawLuaElements(), Game::handleClientEvent_HudChange(), Hud::hasElementOfType(), LuaLocalPlayer::l_hud_change(), ObjectRef::l_hud_change(), LuaLocalPlayer::l_hud_get(), and ObjectRef::l_hud_get().

+ Here is the caller graph for this function:

◆ getName()

const char* Player::getName ( ) const
inline

References m_name.

Referenced by ServerEnvironment::addPlayer(), Server::checkInteractDistance(), PlayerSAO::checkMovementCheat(), InvRef::createPlayer(), Server::DeleteClient(), Server::DiePlayer(), Server::emergePlayer(), PlayerSAO::getClientInitializationData(), PlayerSAO::getDescription(), Client::getInventory(), PlayerSAO::getInventoryLocation(), Client::getPlayerName(), Server::getPlayerName(), Server::getStatusString(), Server::handleCommand_ChatMessage(), Server::handleCommand_ClientReady(), Server::handleCommand_Damage(), Server::handleCommand_Interact(), Server::handleCommand_InventoryAction(), Server::handleCommand_InventoryFields(), Server::handleCommand_NodeMetaFields(), Server::handleCommand_PlayerItem(), Server::handleCommand_PlayerPos(), Server::handleCommand_Respawn(), GenericCAO::initialize(), LuaLocalPlayer::l_get_name(), ObjectRef::l_get_player_name(), ObjectRef::l_set_formspec_prepend(), ObjectRef::l_set_inventory_formspec(), PlayerDatabaseFiles::listPlayers(), ServerEnvironment::loadPlayer(), Database_Dummy::loadPlayer(), PlayerDatabaseFiles::loadPlayer(), PlayerDatabaseLevelDB::loadPlayer(), PlayerDatabaseSQLite3::loadPlayer(), Server::playSound(), PlayerDatabaseFiles::removePlayer(), Server::reportPrivsModified(), Server::RespawnPlayer(), Database_Dummy::savePlayer(), PlayerDatabaseFiles::savePlayer(), PlayerDatabaseLevelDB::savePlayer(), PlayerDatabaseSQLite3::savePlayer(), ServerEnvironment::savePlayer(), Server::SendPlayerPrivileges(), Server::StageTwoClientInit(), Client::step(), Server::UpdateCrafting(), and ClientInterface::UpdatePlayerList().

+ Here is the caller graph for this function:

◆ getPlayerControl()

const PlayerControl& Player::getPlayerControl ( )
inline

References control.

Referenced by LuaLocalPlayer::l_get_control(), ObjectRef::l_get_player_control(), GenericCAO::step(), and Camera::update().

+ Here is the caller graph for this function:

◆ getPlayerSettings()

PlayerSettings& Player::getPlayerSettings ( )
inline

References m_player_settings.

Referenced by LocalPlayer::applyControl(), LocalPlayer::handleAutojump(), LocalPlayer::move(), LocalPlayer::old_move(), and Game::updatePlayerControl().

+ Here is the caller graph for this function:

◆ getSpeed()

const v3f& Player::getSpeed ( ) const
inline

References m_speed.

Referenced by LocalPlayer::applyControl(), RemoteClient::GetNextBlocks(), LuaLocalPlayer::l_get_velocity(), ObjectRef::l_get_velocity(), LocalPlayer::move(), LocalPlayer::old_move(), Client::sendPlayerPos(), ClientEnvironment::step(), Camera::update(), and writePlayerPos().

+ Here is the caller graph for this function:

◆ getWieldedItem()

ItemStack & Player::getWieldedItem ( ItemStack selected,
ItemStack hand 
) const

References InventoryList::getItem(), Inventory::getList(), inventory, m_wield_index, and ItemStack::name.

Referenced by Server::checkInteractDistance(), PlayerSAO::getWieldedItem(), Server::handleCommand_Interact(), LuaLocalPlayer::l_get_wielded_item(), Game::processPlayerInteraction(), Game::updateCamera(), and Game::updateFrame().

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

◆ getWieldIndex()

u16 Player::getWieldIndex ( ) const
inline

References m_wield_index.

Referenced by PlayerSAO::getWieldIndex(), Client::interact(), LuaLocalPlayer::l_get_wield_index(), Game::processItemSelection(), PlayerSAO::setWieldedItem(), and Game::updateFrame().

+ Here is the caller graph for this function:

◆ move() [1/2]

virtual void Player::move ( f32  dtime,
Environment env,
f32  pos_max_d 
)
inlinevirtual

Reimplemented in LocalPlayer.

◆ move() [2/2]

virtual void Player::move ( f32  dtime,
Environment env,
f32  pos_max_d,
std::vector< CollisionInfo > *  collision_info 
)
inlinevirtual

Reimplemented in LocalPlayer.

◆ removeHud()

HudElement * Player::removeHud ( u32  id)

References hud, and m_mutex.

Referenced by Game::handleClientEvent_HudRemove(), Server::hudRemove(), and LuaLocalPlayer::l_hud_remove().

+ Here is the caller graph for this function:

◆ setFov()

void Player::setFov ( const PlayerFovSpec spec)
inline

References m_fov_override_spec.

Referenced by Client::handleCommand_Fov(), and ObjectRef::l_set_fov().

+ Here is the caller graph for this function:

◆ setSpeed()

void Player::setSpeed ( const v3f speed)
inline

References m_speed.

Referenced by LocalPlayer::applyControl(), LocalPlayer::move(), LocalPlayer::old_move(), Server::process_PlayerPos(), ClientEnvironment::step(), and PlayerSAO::step().

+ Here is the caller graph for this function:

◆ settingsChangedCallback()

void Player::settingsChangedCallback ( const std::string &  name,
void *  data 
)
static

Referenced by Player(), and ~Player().

+ Here is the caller graph for this function:

◆ setWieldIndex()

void Player::setWieldIndex ( u16  index)

References Inventory::getList(), InventoryList::getSize(), inventory, m_wield_index, and MYMIN.

Referenced by Server::handleCommand_Interact(), Server::handleCommand_PlayerItem(), and Client::setPlayerItem().

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

Member Data Documentation

◆ control

◆ eye_offset_first

◆ eye_offset_third

◆ formspec_prepend

◆ hud

std::vector<HudElement *> Player::hud
protected

◆ hud_flags

◆ hud_hotbar_itemcount

◆ inventory

◆ inventory_formspec

◆ keyPressed

◆ local_animation_speed

◆ local_animations

◆ m_fov_override_spec

PlayerFovSpec Player::m_fov_override_spec = { 0.0f, false, 0.0f }
protected

Referenced by getFov(), and setFov().

◆ m_mutex

std::mutex Player::m_mutex
private

Referenced by addHud(), clearHud(), getHud(), and removeHud().

◆ m_name

char Player::m_name[PLAYERNAME_SIZE]
protected

◆ m_player_settings

PlayerSettings Player::m_player_settings
private

Referenced by Player(), ~Player(), and getPlayerSettings().

◆ m_speed

◆ m_wield_index

u16 Player::m_wield_index = 0
protected

◆ movement_acceleration_air

◆ movement_acceleration_default

◆ movement_acceleration_fast

◆ movement_gravity

◆ movement_liquid_fluidity

◆ movement_liquid_fluidity_smooth

◆ movement_liquid_sink

◆ movement_speed_climb

◆ movement_speed_crouch

◆ movement_speed_fast

◆ movement_speed_jump

◆ movement_speed_walk


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