Minetest  5.4.0
Game Class Reference
+ Collaboration diagram for Game:

Classes

struct  Flags
 

Public Member Functions

 Game ()
 
 ~Game ()
 
bool startup (bool *kill, InputHandler *input, const GameStartData &game_params, std::string &error_message, bool *reconnect, ChatBackend *chat_backend)
 
void run ()
 
void shutdown ()
 

Protected Member Functions

void extendedResourceCleanup ()
 
bool init (const std::string &map_dir, const std::string &address, u16 port, const SubgameSpec &gamespec)
 
bool initSound ()
 
bool createSingleplayerServer (const std::string &map_dir, const SubgameSpec &gamespec, u16 port)
 
bool createClient (const GameStartData &start_data)
 
bool initGui ()
 
bool connectToServer (const GameStartData &start_data, bool *connect_ok, bool *aborted)
 
bool getServerContent (bool *aborted)
 
void updateInteractTimers (f32 dtime)
 
bool checkConnection ()
 
bool handleCallbacks ()
 
void processQueues ()
 
void updateProfilers (const RunStats &stats, const FpsControl &draw_times, f32 dtime)
 
void updateStats (RunStats *stats, const FpsControl &draw_times, f32 dtime)
 
void updateProfilerGraphs (ProfilerGraph *graph)
 
void processUserInput (f32 dtime)
 
void processKeyInput ()
 
void processItemSelection (u16 *new_playeritem)
 
void dropSelectedItem (bool single_item=false)
 
void openInventory ()
 
void openConsole (float scale, const wchar_t *line=NULL)
 
void toggleFreeMove ()
 
void toggleFreeMoveAlt ()
 
void togglePitchMove ()
 
void toggleFast ()
 
void toggleNoClip ()
 
void toggleCinematic ()
 
void toggleAutoforward ()
 
void toggleMinimap (bool shift_pressed)
 
void toggleFog ()
 
void toggleDebug ()
 
void toggleUpdateCamera ()
 
void increaseViewRange ()
 
void decreaseViewRange ()
 
void toggleFullViewRange ()
 
void checkZoomEnabled ()
 
void updateCameraDirection (CameraOrientation *cam, float dtime)
 
void updateCameraOrientation (CameraOrientation *cam, float dtime)
 
void updatePlayerControl (const CameraOrientation &cam)
 
void step (f32 *dtime)
 
void processClientEvents (CameraOrientation *cam)
 
void updateCamera (u32 busy_time, f32 dtime)
 
void updateSound (f32 dtime)
 
void processPlayerInteraction (f32 dtime, bool show_hud, bool show_debug)
 
PointedThing updatePointedThing (const core::line3d< f32 > &shootline, bool liquids_pointable, bool look_for_object, const v3s16 &camera_offset)
 
void handlePointingAtNothing (const ItemStack &playerItem)
 
void handlePointingAtNode (const PointedThing &pointed, const ItemStack &selected_item, const ItemStack &hand_item, f32 dtime)
 
void handlePointingAtObject (const PointedThing &pointed, const ItemStack &playeritem, const v3f &player_position, bool show_debug)
 
void handleDigging (const PointedThing &pointed, const v3s16 &nodepos, const ItemStack &selected_item, const ItemStack &hand_item, f32 dtime)
 
void updateFrame (ProfilerGraph *graph, RunStats *stats, f32 dtime, const CameraOrientation &cam)
 
void limitFps (FpsControl *fps_timings, f32 *dtime)
 
void showOverlayMessage (const char *msg, float dtime, int percent, bool draw_clouds=true)
 
void readSettings ()
 
bool isKeyDown (GameKeyType k)
 
bool wasKeyDown (GameKeyType k)
 
bool wasKeyPressed (GameKeyType k)
 
bool wasKeyReleased (GameKeyType k)
 

Static Protected Member Functions

static void settingChangedCallback (const std::string &setting_name, void *data)
 

Private Member Functions

void showDeathFormspec ()
 
void showPauseMenu ()
 
void handleClientEvent_None (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_PlayerDamage (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_PlayerForceMove (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_Deathscreen (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_ShowFormSpec (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_ShowLocalFormSpec (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_HandleParticleEvent (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_HudAdd (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_HudRemove (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_HudChange (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_SetSky (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_SetSun (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_SetMoon (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_SetStars (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_OverrideDayNigthRatio (ClientEvent *event, CameraOrientation *cam)
 
void handleClientEvent_CloudParams (ClientEvent *event, CameraOrientation *cam)
 
void updateChat (f32 dtime, const v2u32 &screensize)
 
bool nodePlacement (const ItemDefinition &selected_def, const ItemStack &selected_item, const v3s16 &nodepos, const v3s16 &neighbourpos, const PointedThing &pointed, const NodeMetadata *meta)
 

Private Attributes

InputHandlerinput = nullptr
 
Clientclient = nullptr
 
Serverserver = nullptr
 
IWritableTextureSourcetexture_src = nullptr
 
IWritableShaderSourceshader_src = nullptr
 
IWritableItemDefManageritemdef_manager = nullptr
 
NodeDefManagernodedef_manager = nullptr
 
GameOnDemandSoundFetcher soundfetcher
 
ISoundManagersound = nullptr
 
bool sound_is_dummy = false
 
SoundMakersoundmaker = nullptr
 
ChatBackendchat_backend = nullptr
 
LogOutputBuffer m_chat_log_buf
 
EventManagereventmgr = nullptr
 
QuicktuneShortcutterquicktune = nullptr
 
bool registration_confirmation_shown = false
 
std::unique_ptr< GameUIm_game_ui
 
GUIChatConsolegui_chat_console = nullptr
 
MapDrawControldraw_control = nullptr
 
Cameracamera = nullptr
 
Cloudsclouds = nullptr
 
Skysky = nullptr
 
Hudhud = nullptr
 
Minimapmapper = nullptr
 
GameRunData runData
 
Flags m_flags
 
IrrlichtDevice * device
 
video::IVideoDriver * driver
 
scene::ISceneManager * smgr
 
bool * kill
 
std::string * error_message
 
bool * reconnect_requested
 
scene::ISceneNode * skybox
 
bool simple_singleplayer_mode
 
int crack_animation_length
 
IntervalLimiter profiler_interval
 
bool m_cache_doubletap_jump
 
bool m_cache_enable_clouds
 
bool m_cache_enable_joysticks
 
bool m_cache_enable_particles
 
bool m_cache_enable_fog
 
bool m_cache_enable_noclip
 
bool m_cache_enable_free_move
 
f32 m_cache_mouse_sensitivity
 
f32 m_cache_joystick_frustum_sensitivity
 
f32 m_repeat_place_time
 
f32 m_cache_cam_smoothing
 
f32 m_cache_fog_start
 
bool m_invert_mouse = false
 
bool m_first_loop_after_window_activation = false
 
bool m_camera_offset_changed = false
 
bool m_does_lost_focus_pause_game = false
 
int m_reset_HW_buffer_counter = 0
 

Static Private Attributes

static const ClientEventHandler clientEventHandler [CLIENTEVENT_MAX]
 

Constructor & Destructor Documentation

◆ Game()

Game::Game ( )

References g_settings, readSettings(), Settings::registerChangedCallback(), and settingChangedCallback().

+ Here is the call graph for this function:

◆ ~Game()

Game::~Game ( )

References camera, client, Settings::deregisterChangedCallback(), draw_control, eventmgr, extendedResourceCleanup(), g_settings, hud, itemdef_manager, nodedef_manager, quicktune, server, settingChangedCallback(), shader_src, sound, sound_is_dummy, soundmaker, and texture_src.

+ Here is the call graph for this function:

Member Function Documentation

◆ checkConnection()

bool Game::checkConnection ( )
inlineprotected

References error_message, errorstream, and reconnect_requested.

Referenced by getServerContent(), and run().

+ Here is the caller graph for this function:

◆ checkZoomEnabled()

void Game::checkZoomEnabled ( )
protected

References PlayerFovSpec::fov, Player::getFov(), LocalPlayer::getZoomFOV(), and m_game_ui.

Referenced by processKeyInput().

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

◆ connectToServer()

bool Game::connectToServer ( const GameStartData start_data,
bool *  connect_ok,
bool *  aborted 
)
protected

◆ createClient()

bool Game::createClient ( const GameStartData start_data)
protected

References IWritableShaderSource::addShaderConstantSetterFactory(), camera, clouds, connectToServer(), crack_animation_length, device, draw_control, driver, error_message, errorstream, GameRunData::fog_range, Game::Flags::force_fog_off, g_touchscreengui, g_version_hash, getServerContent(), IWritableTextureSource::getTexture(), guienv, TouchScreenGUI::hide(), hud, LocalPlayer::hurt_tilt_strength, LocalPlayer::hurt_tilt_timer, TouchScreenGUI::init(), initGui(), Player::inventory, m_cache_enable_clouds, m_flags, mapper, N_, PROJECT_NAME_C, runData, shader_src, showOverlayMessage(), sky, skybox, smgr, Camera::successfullyCreated(), texture_src, and utf8_to_wide().

Referenced by startup().

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

◆ createSingleplayerServer()

bool Game::createSingleplayerServer ( const std::string &  map_dir,
const SubgameSpec gamespec,
u16  port 
)
protected

References error_message, errorstream, g_settings, Settings::get(), Settings::getBool(), infostream, Address::isIPv6(), N_, Address::Resolve(), Address::serializeString(), Server, Address::setAddress(), showOverlayMessage(), simple_singleplayer_mode, and BaseException::what().

Referenced by init().

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

◆ decreaseViewRange()

void Game::decreaseViewRange ( )
protected

References g_settings, Settings::getS16(), itos(), m_game_ui, Settings::set(), and wgettext().

Referenced by processKeyInput().

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

◆ dropSelectedItem()

void Game::dropSelectedItem ( bool  single_item = false)
protected

References IDropAction::count, MoveAction::from_i, MoveAction::from_inv, MoveAction::from_list, and InventoryLocation::setCurrentPlayer().

Referenced by processKeyInput().

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

◆ extendedResourceCleanup()

void Game::extendedResourceCleanup ( )
protected

References clearTextureNameCache(), driver, RenderingEngine::get_mesh_cache(), and infostream.

Referenced by ~Game().

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

◆ getServerContent()

bool Game::getServerContent ( bool *  aborted)
protected

References InputHandler::cancelPressed(), checkConnection(), InputHandler::clear(), RenderingEngine::draw_load_screen(), error_message, errorstream, g_settings, RenderingEngine::get_timer_time(), Settings::getBool(), guienv, infostream, input, FpsControl::last_time, LC_Init, limitFps(), RenderingEngine::run(), texture_src, USE_CURL, utf8_to_wide(), and wgettext().

Referenced by createClient().

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

◆ handleCallbacks()

bool Game::handleCallbacks ( )
inlineprotected

References MainGameCallback::changepassword_requested, MainGameCallback::changevolume_requested, MainGameCallback::disconnect_requested, g_gamecallback, g_menumgr, guienv, guiroot, input, InputHandler::keycache, MainGameCallback::keyconfig_changed, MainGameCallback::keyconfig_requested, KeyCache::populate(), and texture_src.

Referenced by run().

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

◆ handleClientEvent_CloudParams()

void Game::handleClientEvent_CloudParams ( ClientEvent event,
CameraOrientation cam 
)
private

References ClientEvent::cloud_params, clouds, Clouds::setColorAmbient(), Clouds::setColorBright(), Clouds::setDensity(), Clouds::setHeight(), Clouds::setSpeed(), and Clouds::setThickness().

+ Here is the call graph for this function:

◆ handleClientEvent_Deathscreen()

void Game::handleClientEvent_Deathscreen ( ClientEvent event,
CameraOrientation cam 
)
private

References GameRunData::damage_flash, LocalPlayer::hurt_tilt_strength, LocalPlayer::hurt_tilt_timer, runData, and showDeathFormspec().

+ Here is the call graph for this function:

◆ handleClientEvent_HandleParticleEvent()

void Game::handleClientEvent_HandleParticleEvent ( ClientEvent event,
CameraOrientation cam 
)
private

◆ handleClientEvent_HudAdd()

void Game::handleClientEvent_HudAdd ( ClientEvent event,
CameraOrientation cam 
)
private

References Player::addHud(), HudElement::align, HudElement::dir, ClientEvent::hudadd, HudElement::item, HudElement::name, HudElement::number, HudElement::offset, HudElement::pos, HudElement::scale, HudElement::size, HudElement::text, HudElement::text2, HudElement::type, HudElement::world_pos, and HudElement::z_index.

+ Here is the call graph for this function:

◆ handleClientEvent_HudChange()

◆ handleClientEvent_HudRemove()

void Game::handleClientEvent_HudRemove ( ClientEvent event,
CameraOrientation cam 
)
private

References ClientEvent::hudrm, and Player::removeHud().

+ Here is the call graph for this function:

◆ handleClientEvent_None()

void Game::handleClientEvent_None ( ClientEvent event,
CameraOrientation cam 
)
private

References FATAL_ERROR.

◆ handleClientEvent_OverrideDayNigthRatio()

void Game::handleClientEvent_OverrideDayNigthRatio ( ClientEvent event,
CameraOrientation cam 
)
private

◆ handleClientEvent_PlayerDamage()

◆ handleClientEvent_PlayerForceMove()

void Game::handleClientEvent_PlayerForceMove ( ClientEvent event,
CameraOrientation cam 
)
private

◆ handleClientEvent_SetMoon()

void Game::handleClientEvent_SetMoon ( ClientEvent event,
CameraOrientation cam 
)
private

References ClientEvent::moon_params, MoonParams::scale, Sky::setMoonScale(), Sky::setMoonTexture(), Sky::setMoonVisible(), sky, MoonParams::texture, texture_src, MoonParams::tonemap, and MoonParams::visible.

+ Here is the call graph for this function:

◆ handleClientEvent_SetSky()

◆ handleClientEvent_SetStars()

void Game::handleClientEvent_SetStars ( ClientEvent event,
CameraOrientation cam 
)
private

References StarParams::count, StarParams::scale, Sky::setStarColor(), Sky::setStarCount(), Sky::setStarScale(), Sky::setStarsVisible(), sky, ClientEvent::star_params, StarParams::starcolor, and StarParams::visible.

+ Here is the call graph for this function:

◆ handleClientEvent_SetSun()

void Game::handleClientEvent_SetSun ( ClientEvent event,
CameraOrientation cam 
)
private

References SunParams::scale, Sky::setSunriseTexture(), Sky::setSunriseVisible(), Sky::setSunScale(), Sky::setSunTexture(), Sky::setSunVisible(), sky, ClientEvent::sun_params, SunParams::sunrise, SunParams::sunrise_visible, SunParams::texture, texture_src, SunParams::tonemap, and SunParams::visible.

+ Here is the call graph for this function:

◆ handleClientEvent_ShowFormSpec()

void Game::handleClientEvent_ShowFormSpec ( ClientEvent event,
CameraOrientation cam 
)
private

References GUIFormSpecMenu::create(), input, InputHandler::joystick, m_game_ui, ClientEvent::show_formspec, and sound.

+ Here is the call graph for this function:

◆ handleClientEvent_ShowLocalFormSpec()

void Game::handleClientEvent_ShowLocalFormSpec ( ClientEvent event,
CameraOrientation cam 
)
private

References GUIFormSpecMenu::create(), input, InputHandler::joystick, m_game_ui, ClientEvent::show_formspec, and sound.

+ Here is the call graph for this function:

◆ handleDigging()

void Game::handleDigging ( const PointedThing pointed,
const v3s16 nodepos,
const ItemStack selected_item,
const ItemStack hand_item,
f32  dtime 
)
protected

◆ handlePointingAtNode()

void Game::handlePointingAtNode ( const PointedThing pointed,
const ItemStack selected_item,
const ItemStack hand_item,
f32  dtime 
)
protected

◆ handlePointingAtNothing()

void Game::handlePointingAtNothing ( const ItemStack playerItem)
protected

References infostream, INTERACT_ACTIVATE, POINTEDTHING_NOTHING, and PointedThing::type.

Referenced by processPlayerInteraction().

+ Here is the caller graph for this function:

◆ handlePointingAtObject()

void Game::handlePointingAtObject ( const PointedThing pointed,
const ItemStack playeritem,
const v3f player_position,
bool  show_debug 
)
protected

References ClientActiveObject::debugInfoText(), KeyType::DIG, dir(), ClientActiveObject::directReportPunch(), ClientActiveObject::getPosition(), infostream, ClientActiveObject::infoText(), INTERACT_PLACE, INTERACT_START_DIGGING, isKeyDown(), m_game_ui, object_hit_delay, GameRunData::object_hit_delay_timer, KeyType::PLACE, GameRunData::punching, runData, GameRunData::selected_object, GameRunData::time_from_last_punch, unescape_translate(), utf8_to_wide(), wasKeyDown(), and wasKeyPressed().

Referenced by processPlayerInteraction().

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

◆ increaseViewRange()

void Game::increaseViewRange ( )
protected

References g_settings, Settings::getS16(), itos(), m_game_ui, Settings::set(), and wgettext().

Referenced by processKeyInput().

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

◆ init()

bool Game::init ( const std::string &  map_dir,
const std::string &  address,
u16  port,
const SubgameSpec gamespec 
)
protected

References createItemDefManager(), createNodeDefManager(), createShaderSource(), createSingleplayerServer(), createTextureSource(), eventmgr, initSound(), itemdef_manager, N_, nodedef_manager, quicktune, shader_src, showOverlayMessage(), and texture_src.

Referenced by startup().

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

◆ initGui()

bool Game::initGui ( )
protected

References ChatBackend::applySettings(), chat_backend, ChatBackend::clearRecentChat(), g_menumgr, g_touchscreengui, gui_chat_console, guienv, m_game_ui, and TouchScreenGUI::show().

Referenced by createClient().

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

◆ initSound()

bool Game::initSound ( )
protected

References createOpenALSoundManager(), dummySoundManager, eventmgr, g_settings, g_sound_manager_singleton, Settings::getBool(), infostream, nodedef_manager, SoundMaker::registerReceiver(), sound, sound_is_dummy, soundfetcher, and soundmaker.

Referenced by init().

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

◆ isKeyDown()

bool Game::isKeyDown ( GameKeyType  k)
inlineprotected

References input, and InputHandler::isKeyDown().

Referenced by handlePointingAtNode(), handlePointingAtObject(), nodePlacement(), processKeyInput(), processPlayerInteraction(), and updatePlayerControl().

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

◆ limitFps()

void Game::limitFps ( FpsControl fps_timings,
f32 *  dtime 
)
inlineprotected

References FpsControl::busy_time, device, g_menumgr, g_settings, Settings::getFloat(), FpsControl::last_time, MainMenuManager::pausesGame(), and FpsControl::sleep_time.

Referenced by connectToServer(), getServerContent(), and run().

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

◆ nodePlacement()

◆ openConsole()

void Game::openConsole ( float  scale,
const wchar_t *  line = NULL 
)
protected

References gui_chat_console, GUIChatConsole::isOpenInhibited(), GUIChatConsole::openConsole(), GUIChatConsole::replaceAndAddToHistory(), GUIChatConsole::setCloseOnEnter(), and porting::showInputDialog().

Referenced by processKeyInput().

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

◆ openInventory()

void Game::openInventory ( )
protected

References GUIFormSpecMenu::create(), LocalPlayer::getCAO(), PlayerInventoryFormSource::getForm(), Client::getInventory(), infostream, input, InputHandler::joystick, PlayerInventoryFormSource::m_client, m_game_ui, InventoryLocation::setCurrentPlayer(), and sound.

Referenced by processKeyInput().

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

◆ processClientEvents()

void Game::processClientEvents ( CameraOrientation cam)
protected

References CLIENTEVENT_MAX, clientEventHandler, FATAL_ERROR_IF, and ClientEventHandler::handler.

Referenced by run().

+ Here is the caller graph for this function:

◆ processItemSelection()

void Game::processItemSelection ( u16 *  new_playeritem)
protected

References dir(), InputHandler::getMouseWheel(), Player::getWieldIndex(), KeyType::HOTBAR_NEXT, KeyType::HOTBAR_PREV, Player::hud_hotbar_itemcount, input, MYMIN, PLAYER_INVENTORY_SIZE, KeyType::SLOT_1, and wasKeyDown().

Referenced by processUserInput().

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

◆ processKeyInput()

void Game::processKeyInput ( )
protected

References KeyType::AUTOFORWARD, KeyType::BACKWARD, InputHandler::cancelPressed(), KeyType::CHAT, checkZoomEnabled(), KeyType::CINEMATIC, KeyType::CMD, KeyType::CMD_LOCAL, KeyType::CONSOLE, QuicktuneShortcutter::dec(), KeyType::DEC_VOLUME, KeyType::DECREASE_VIEWING_RANGE, decreaseViewRange(), KeyType::DROP, dropSelectedItem(), KeyType::FASTMOVE, KeyType::FREEMOVE, g_settings, Settings::getBool(), Settings::getFloat(), QuicktuneShortcutter::getMessage(), gui_chat_console, QuicktuneShortcutter::hasMessage(), QuicktuneShortcutter::inc(), KeyType::INC_VOLUME, KeyType::INCREASE_VIEWING_RANGE, increaseViewRange(), input, KeyType::INVENTORY, isKeyDown(), GUIChatConsole::isOpenInhibited(), KeyType::JUMP, GameRunData::jump_timer, m_game_ui, KeyType::MINIMAP, KeyType::MUTE, myround(), QuicktuneShortcutter::next(), KeyType::NOCLIP, openConsole(), openInventory(), KeyType::PITCHMOVE, QuicktuneShortcutter::prev(), quicktune, KeyType::QUICKTUNE_DEC, KeyType::QUICKTUNE_INC, KeyType::QUICKTUNE_NEXT, KeyType::QUICKTUNE_PREV, rangelim, KeyType::RANGESELECT, GameRunData::reset_jump_timer, runData, KeyType::SCREENSHOT, Settings::setBool(), Settings::setFloat(), showPauseMenu(), KeyType::SNEAK, KeyType::TOGGLE_CHAT, KeyType::TOGGLE_DEBUG, KeyType::TOGGLE_FOG, KeyType::TOGGLE_HUD, KeyType::TOGGLE_PROFILER, KeyType::TOGGLE_UPDATE_CAMERA, toggleAutoforward(), toggleCinematic(), toggleDebug(), toggleFast(), toggleFog(), toggleFreeMove(), toggleFreeMoveAlt(), toggleFullViewRange(), toggleMinimap(), toggleNoClip(), togglePitchMove(), toggleUpdateCamera(), utf8_to_wide(), wasKeyDown(), wgettext(), and KeyType::ZOOM.

Referenced by processUserInput().

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

◆ processPlayerInteraction()

void Game::processPlayerInteraction ( f32  dtime,
bool  show_hud,
bool  show_debug 
)
protected

References BS, GameRunData::btn_down_for_dig, camera, CAMERA_MODE_FIRST, CAMERA_MODE_THIRD, CAMERA_MODE_THIRD_FRONT, InputHandler::clearWasKeyPressed(), JoystickController::clearWasKeyPressed(), InputHandler::clearWasKeyReleased(), JoystickController::clearWasKeyReleased(), KeyType::DIG, GameRunData::dig_instantly, GameRunData::dig_time, GameRunData::digging, GameRunData::digging_blocked, PointedThing::dump(), g_settings, g_touchscreengui, Settings::getBool(), Camera::getCameraMode(), ItemStack::getDefinition(), Camera::getDirection(), Camera::getHeadPosition(), Camera::getOffset(), Camera::getPosition(), LocalPlayer::getPosition(), TouchScreenGUI::getShootline(), getToolRange(), Player::getWieldedItem(), handlePointingAtNode(), handlePointingAtNothing(), handlePointingAtObject(), hud, infostream, input, INTERACT_STOP_DIGGING, INTERACT_USE, intToFloat(), isKeyDown(), itemdef_manager, InputHandler::joystick, ItemDefinition::liquids_pointable, SoundMaker::m_player_leftpunch_sound, SimpleSoundSpec::name, PointedThing::node_undersurface, GameRunData::nodig_delay_timer, KeyType::PLACE, GameRunData::pointed_old, POINTEDTHING_NODE, POINTEDTHING_OBJECT, GameRunData::punching, GameRunData::repeat_place_timer, runData, Camera::setDigging(), soundmaker, PointedThing::type, updatePointedThing(), Hud::updateSelectionMesh(), ItemDefinition::usable, wasKeyDown(), wasKeyPressed(), and wasKeyReleased().

Referenced by run().

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

◆ processQueues()

void Game::processQueues ( )
protected

References itemdef_manager, IWritableShaderSource::processQueue(), IWritableTextureSource::processQueue(), IWritableItemDefManager::processQueue(), shader_src, and texture_src.

Referenced by run().

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

◆ processUserInput()

void Game::processUserInput ( f32  dtime)
protected

References InputHandler::clear(), GUIChatConsole::closeConsoleAtOnce(), device, g_touchscreengui, gui_chat_console, guienv, TouchScreenGUI::hide(), input, isMenuActive(), GUIChatConsole::isOpen(), GameRunData::jump_timer, m_cache_doubletap_jump, m_game_ui, GameRunData::new_playeritem, processItemSelection(), processKeyInput(), runData, InputHandler::step(), and TouchScreenGUI::step().

Referenced by run().

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

◆ readSettings()

void Game::readSettings ( )
protected

References g_settings, Settings::getBool(), Settings::getFloat(), m_cache_cam_smoothing, m_cache_doubletap_jump, m_cache_enable_clouds, m_cache_enable_fog, m_cache_enable_free_move, m_cache_enable_joysticks, m_cache_enable_noclip, m_cache_enable_particles, m_cache_fog_start, m_cache_joystick_frustum_sensitivity, m_cache_mouse_sensitivity, m_does_lost_focus_pause_game, m_repeat_place_time, and rangelim.

Referenced by Game().

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

◆ run()

◆ settingChangedCallback()

void Game::settingChangedCallback ( const std::string &  setting_name,
void *  data 
)
staticprotected

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

+ Here is the caller graph for this function:

◆ showDeathFormspec()

void Game::showDeathFormspec ( )
private

References GUIFormSpecMenu::create(), input, InputHandler::joystick, m_game_ui, SIZE_TAG, and sound.

Referenced by handleClientEvent_Deathscreen().

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

◆ showOverlayMessage()

void Game::showOverlayMessage ( const char *  msg,
float  dtime,
int  percent,
bool  draw_clouds = true 
)
protected

References RenderingEngine::draw_load_screen(), guienv, texture_src, and wgettext().

Referenced by connectToServer(), createClient(), createSingleplayerServer(), init(), and shutdown().

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

◆ showPauseMenu()

void Game::showPauseMenu ( )
private

References GUIFormSpecMenu::create(), g_settings, Settings::get(), GET_KEY_NAME, Settings::getBool(), Address::getPort(), input, InputHandler::joystick, m_game_ui, porting::mt_snprintf(), PROJECT_NAME_C, simple_singleplayer_mode, SIZE_TAG, sound, str_formspec_escape(), strgettext(), and VERSION_STRING.

Referenced by processKeyInput(), and run().

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

◆ shutdown()

void Game::shutdown ( )

References ChatBackend::addMessage(), chat_backend, LogOutputBuffer::clear(), clouds, MainMenuManager::deletingMenu(), driver, RenderingEngine::finalize(), g_menumgr, g_settings, g_touchscreengui, Settings::get(), gui_chat_console, TouchScreenGUI::hide(), m_chat_log_buf, m_game_ui, MainMenuManager::m_stack, MainMenuManager::menuCount(), N_, IWritableShaderSource::processQueue(), IWritableTextureSource::processQueue(), shader_src, showOverlayMessage(), sky, sleep_ms, and texture_src.

Referenced by the_game().

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

◆ startup()

bool Game::startup ( bool *  kill,
InputHandler input,
const GameStartData game_params,
std::string &  error_message,
bool *  reconnect,
ChatBackend chat_backend 
)

◆ step()

void Game::step ( f32 *  dtime)
inlineprotected

References g_menumgr, MainMenuManager::pausesGame(), and simple_singleplayer_mode.

Referenced by run().

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

◆ toggleAutoforward()

void Game::toggleAutoforward ( )
protected

References bool_to_cstr(), g_settings, Settings::getBool(), m_game_ui, and Settings::set().

Referenced by processKeyInput().

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

◆ toggleCinematic()

void Game::toggleCinematic ( )
protected

References bool_to_cstr(), g_settings, Settings::getBool(), m_game_ui, and Settings::set().

Referenced by processKeyInput().

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

◆ toggleDebug()

void Game::toggleDebug ( )
protected

References draw_control, m_game_ui, and MapDrawControl::show_wireframe.

Referenced by processKeyInput().

+ Here is the caller graph for this function:

◆ toggleFast()

void Game::toggleFast ( )
protected

References bool_to_cstr(), g_settings, Settings::getBool(), m_game_ui, and Settings::set().

Referenced by processKeyInput().

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

◆ toggleFog()

void Game::toggleFog ( )
protected

References g_settings, Settings::getBool(), m_game_ui, and Settings::setBool().

Referenced by processKeyInput().

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

◆ toggleFreeMove()

void Game::toggleFreeMove ( )
protected

References bool_to_cstr(), g_settings, Settings::getBool(), m_game_ui, and Settings::set().

Referenced by processKeyInput(), and toggleFreeMoveAlt().

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

◆ toggleFreeMoveAlt()

void Game::toggleFreeMoveAlt ( )
protected

References GameRunData::jump_timer, m_cache_doubletap_jump, GameRunData::reset_jump_timer, runData, and toggleFreeMove().

Referenced by processKeyInput().

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

◆ toggleFullViewRange()

void Game::toggleFullViewRange ( )
protected

References draw_control, m_game_ui, and MapDrawControl::range_all.

Referenced by processKeyInput().

+ Here is the caller graph for this function:

◆ toggleMinimap()

void Game::toggleMinimap ( bool  shift_pressed)
protected

References g_settings, Settings::getBool(), Minimap::getModeDef(), Minimap::getModeIndex(), Hud::hasElementOfType(), hud, HUD_ELEM_MINIMAP, HUD_FLAG_MINIMAP_RADAR_VISIBLE, HUD_FLAG_MINIMAP_VISIBLE, MinimapModeDef::label, m_game_ui, mapper, MINIMAP_TYPE_OFF, MINIMAP_TYPE_RADAR, Minimap::nextMode(), Minimap::toggleMinimapShape(), MinimapModeDef::type, and utf8_to_wide().

Referenced by processKeyInput().

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

◆ toggleNoClip()

void Game::toggleNoClip ( )
protected

References bool_to_cstr(), g_settings, Settings::getBool(), m_game_ui, and Settings::set().

Referenced by processKeyInput().

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

◆ togglePitchMove()

void Game::togglePitchMove ( )
protected

References bool_to_cstr(), g_settings, Settings::getBool(), m_game_ui, and Settings::set().

Referenced by processKeyInput().

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

◆ toggleUpdateCamera()

void Game::toggleUpdateCamera ( )
protected

References Game::Flags::disable_camera_update, m_flags, and m_game_ui.

Referenced by processKeyInput().

+ Here is the caller graph for this function:

◆ updateCamera()

void Game::updateCamera ( u32  busy_time,
f32  dtime 
)
protected

References camera, KeyType::CAMERA_MODE, CAMERA_MODE_FIRST, clouds, Game::Flags::disable_camera_update, ToolCapabilities::full_punch_interval, Camera::getCameraMode(), LocalPlayer::getCAO(), Camera::getDirection(), Camera::getFovMax(), Camera::getOffset(), Camera::getPosition(), ItemStack::getToolCapabilities(), Player::getWieldedItem(), itemdef_manager, m_camera_offset_changed, m_flags, MYMIN, runData, GenericCAO::setChildrenVisible(), Camera::step(), GameRunData::time_from_last_punch, Camera::toggleCameraMode(), Camera::update(), Clouds::updateCameraOffset(), GenericCAO::updateMeshCulling(), and wasKeyDown().

Referenced by run().

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

◆ updateCameraDirection()

void Game::updateCameraDirection ( CameraOrientation cam,
float  dtime 
)
protected

References device, driver, input, isMenuActive(), InputHandler::isRandom(), m_first_loop_after_window_activation, InputHandler::setMousePos(), and updateCameraOrientation().

Referenced by run().

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

◆ updateCameraOrientation()

void Game::updateCameraOrientation ( CameraOrientation cam,
float  dtime 
)
protected

References camera, CAMERA_MODE_THIRD_FRONT, CameraOrientation::camera_pitch, CameraOrientation::camera_yaw, driver, g_touchscreengui, JoystickController::getAxisWithoutDead(), Camera::getCameraMode(), InputHandler::getMousePos(), TouchScreenGUI::getPitch(), TouchScreenGUI::getYawChange(), input, JA_FRUSTUM_HORIZONTAL, JA_FRUSTUM_VERTICAL, InputHandler::joystick, m_cache_enable_joysticks, m_cache_joystick_frustum_sensitivity, m_cache_mouse_sensitivity, m_invert_mouse, rangelim, and InputHandler::setMousePos().

Referenced by updateCameraDirection().

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

◆ updateChat()

void Game::updateChat ( f32  dtime,
const v2u32 screensize 
)
private

References ChatBackend::addMessage(), ChatBackend::addUnparsedMessage(), chat_backend, LogOutputBuffer::empty(), LogOutputBuffer::get(), ChatBuffer::getLineCount(), ChatBackend::getRecentBuffer(), ChatBackend::getRecentChat(), m_chat_log_buf, m_game_ui, ChatBackend::step(), and utf8_to_wide().

Referenced by updateFrame().

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

◆ updateFrame()

void Game::updateFrame ( ProfilerGraph graph,
RunStats stats,
f32  dtime,
const CameraOrientation cam 
)
protected

References Profiler::avg(), BS, camera, CAMERA_MODE_FIRST, CAMERA_MODE_THIRD_FRONT, clouds, GameRunData::damage_flash, decode_light_f(), ProfilerGraph::draw(), draw_control, RenderingEngine::draw_scene(), RunStats::drawtime, driver, floatToInt(), GameRunData::fog_range, g_fontengine, g_profiler, g_settings, Sky::getBgColor(), Settings::getBool(), Sky::getBrightness(), Camera::getCameraMode(), Camera::getCameraNode(), Sky::getCloudColor(), Sky::getCloudsVisible(), Clouds::getColor(), Camera::getDirection(), FontEngine::getFont(), Camera::getOffset(), LocalPlayer::getPitch(), LocalPlayer::getPosition(), Sky::getSkyColor(), Metadata::getString(), Player::getWieldedItem(), Player::getWieldIndex(), LocalPlayer::getYaw(), Profiler::graphAdd(), gui_chat_console, guiroot, HUD_FLAG_CROSSHAIR_VISIBLE, HUD_FLAG_WIELDITEM_VISIBLE, Player::hud_flags, LocalPlayer::hurt_tilt_strength, LocalPlayer::hurt_tilt_timer, infostream, Clouds::isCameraInsideCloud(), isMenuActive(), m_cache_enable_fog, m_cache_enable_free_move, m_cache_enable_noclip, m_cache_fog_start, m_camera_offset_changed, m_game_ui, m_reset_HW_buffer_counter, mapper, MYMIN, GameRunData::new_playeritem, InventoryLocation::NODEMETA, Sky::overrideColors(), GameRunData::pointed_old, MapDrawControl::range_all, runData, Minimap::setAngle(), Sky::setInClouds(), Minimap::setPos(), sky, Clouds::step(), TimeTaker::stop(), GameRunData::time_of_day_smooth, Clouds::update(), Sky::update(), GameRunData::update_draw_list_last_cam_dir, GameRunData::update_draw_list_timer, updateChat(), MapDrawControl::wanted_range, and Camera::wield().

Referenced by run().

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

◆ updateInteractTimers()

void Game::updateInteractTimers ( f32  dtime)
inlineprotected

References GameRunData::nodig_delay_timer, GameRunData::object_hit_delay_timer, runData, and GameRunData::time_from_last_punch.

Referenced by run().

+ Here is the caller graph for this function:

◆ updatePlayerControl()

void Game::updatePlayerControl ( const CameraOrientation cam)
protected

References PlayerControl::aux1, KeyType::BACKWARD, CameraOrientation::camera_pitch, CameraOrientation::camera_yaw, PlayerSettings::continuous_forward, KeyType::DIG, KeyType::FORWARD, LocalPlayer::getAutojump(), JoystickController::getAxisWithoutDead(), Player::getPlayerSettings(), input, LocalPlayer::isDead(), isKeyDown(), InputHandler::isKeyDown(), JA_FORWARD_MOVE, JA_SIDEWARD_MOVE, InputHandler::joystick, KeyType::JUMP, PlayerControl::jump, Player::keyPressed, KeyType::LEFT, KeyType::PLACE, KeyType::RIGHT, KeyType::SNEAK, KeyType::SPECIAL1, PlayerControl::up, and KeyType::ZOOM.

Referenced by run().

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

◆ updatePointedThing()

PointedThing Game::updatePointedThing ( const core::line3d< f32 > &  shootline,
bool  liquids_pointable,
bool  look_for_object,
const v3s16 camera_offset 
)
protected

Returns the object or node the player is pointing at. Also updates the selected thing in the Hud.

Parameters
[in]shootlinethe shootline, starting from the camera position. This also gives the maximal distance of the search.
[in]liquids_pointableif false, liquids are ignored
[in]look_for_objectif false, objects are ignored
[in]camera_offsetoffset of the camera
[out]selected_objectthe selected object or NULL if not found

References BS, Environment::continueRaycast(), dir(), ClientActiveObject::doShowSelectionBox(), final_color_blend(), floatToInt(), g_6dirs, g_settings, Settings::getBool(), ClientEnvironment::getClientMap(), getInteriorLight(), MapNode::getNeighbors(), Map::getNode(), Map::getNodeDefManager(), ClientActiveObject::getPosition(), ClientActiveObject::getSelectionBox(), Hud::getSelectionBoxes(), MapNode::getSelectionBoxes(), Hud::getSelectionPos(), porting::getTimeMs(), hud, PointedThing::intersection_normal, intToFloat(), PointedThing::node_undersurface, PointedThing::object_id, p(), POINTEDTHING_NODE, POINTEDTHING_OBJECT, Hud::pointing_at_object, runData, GameRunData::selected_object, Hud::setSelectedFaceNormal(), Hud::setSelectionMeshColor(), Hud::setSelectionPos(), and PointedThing::type.

Referenced by processPlayerInteraction().

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

◆ updateProfilerGraphs()

void Game::updateProfilerGraphs ( ProfilerGraph graph)
inlineprotected

References g_profiler, Profiler::graphGet(), and ProfilerGraph::put().

Referenced by run().

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

◆ updateProfilers()

void Game::updateProfilers ( const RunStats stats,
const FpsControl draw_times,
f32  dtime 
)
protected

References FpsControl::busy_time, Profiler::clear(), RunStats::drawtime, g_profiler, g_settings, Settings::getFloat(), Profiler::graphAdd(), infostream, m_game_ui, Profiler::print(), profiler_interval, FpsControl::sleep_time, and IntervalLimiter::step().

Referenced by run().

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

◆ updateSound()

void Game::updateSound ( f32  dtime)
protected

References BS, camera, g_settings, NodeDefManager::get(), Settings::getBool(), Camera::getCameraNode(), Camera::getDirection(), Settings::getFloat(), LocalPlayer::getFootstepNodePos(), Map::getNode(), Camera::getOffset(), intToFloat(), SoundMaker::m_player_step_sound, SoundMaker::makes_footstep_sound, LocalPlayer::makes_footstep_sound, nodedef_manager, rangelim, Settings::setFloat(), ISoundManager::setListenerGain(), sound, ContentFeatures::sound_footstep, soundmaker, SoundMaker::step(), and ISoundManager::updateListener().

Referenced by run().

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

◆ updateStats()

void Game::updateStats ( RunStats stats,
const FpsControl draw_times,
f32  dtime 
)
protected

References Jitter::avg, FpsControl::busy_time, RunStats::busy_time_jitter, Jitter::counter, RunStats::dtime_jitter, Jitter::max, Jitter::max_fraction, Jitter::max_sample, Jitter::min, and Jitter::min_sample.

Referenced by run().

+ Here is the caller graph for this function:

◆ wasKeyDown()

bool Game::wasKeyDown ( GameKeyType  k)
inlineprotected

References input, and InputHandler::wasKeyDown().

Referenced by handlePointingAtObject(), processItemSelection(), processKeyInput(), processPlayerInteraction(), and updateCamera().

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

◆ wasKeyPressed()

bool Game::wasKeyPressed ( GameKeyType  k)
inlineprotected

References input, and InputHandler::wasKeyPressed().

Referenced by handlePointingAtNode(), handlePointingAtObject(), and processPlayerInteraction().

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

◆ wasKeyReleased()

bool Game::wasKeyReleased ( GameKeyType  k)
inlineprotected

References input, and InputHandler::wasKeyReleased().

Referenced by processPlayerInteraction().

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

Member Data Documentation

◆ camera

◆ chat_backend

ChatBackend* Game::chat_backend = nullptr
private

Referenced by initGui(), shutdown(), startup(), and updateChat().

◆ client

Client* Game::client = nullptr
private

Referenced by ~Game().

◆ clientEventHandler

const ClientEventHandler Game::clientEventHandler
staticprivate
Initial value:
= {
}
void handleClientEvent_CloudParams(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2825
void handleClientEvent_OverrideDayNigthRatio(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2817
void handleClientEvent_HudAdd(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2602
void handleClientEvent_PlayerDamage(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2517
void handleClientEvent_SetSky(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2733
void handleClientEvent_SetStars(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2808
void handleClientEvent_ShowFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2560
void handleClientEvent_SetSun(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2788
void handleClientEvent_PlayerForceMove(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2538
void handleClientEvent_HudRemove(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2651
void handleClientEvent_HudChange(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2658
void handleClientEvent_None(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2512
void handleClientEvent_SetMoon(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2799
void handleClientEvent_HandleParticleEvent(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2595
void handleClientEvent_ShowLocalFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2583
void handleClientEvent_Deathscreen(ClientEvent *event, CameraOrientation *cam)
Definition: game.cpp:2544

Referenced by processClientEvents().

◆ clouds

Clouds* Game::clouds = nullptr
private

◆ crack_animation_length

int Game::crack_animation_length
private

Referenced by createClient(), and handleDigging().

◆ device

IrrlichtDevice* Game::device
private

◆ draw_control

MapDrawControl* Game::draw_control = nullptr
private

◆ driver

◆ error_message

std::string* Game::error_message
private

◆ eventmgr

EventManager* Game::eventmgr = nullptr
private

◆ gui_chat_console

GUIChatConsole* Game::gui_chat_console = nullptr
private

◆ hud

◆ input

◆ itemdef_manager

◆ kill

bool* Game::kill
private

Referenced by run(), and startup().

◆ m_cache_cam_smoothing

f32 Game::m_cache_cam_smoothing
private

Referenced by readSettings(), and run().

◆ m_cache_doubletap_jump

bool Game::m_cache_doubletap_jump
private

◆ m_cache_enable_clouds

bool Game::m_cache_enable_clouds
private

Referenced by createClient(), and readSettings().

◆ m_cache_enable_fog

bool Game::m_cache_enable_fog
private

Referenced by readSettings(), and updateFrame().

◆ m_cache_enable_free_move

bool Game::m_cache_enable_free_move
private

Referenced by readSettings(), and updateFrame().

◆ m_cache_enable_joysticks

bool Game::m_cache_enable_joysticks
private

◆ m_cache_enable_noclip

bool Game::m_cache_enable_noclip
private

Referenced by readSettings(), and updateFrame().

◆ m_cache_enable_particles

bool Game::m_cache_enable_particles
private

Referenced by handleDigging(), and readSettings().

◆ m_cache_fog_start

f32 Game::m_cache_fog_start
private

Referenced by readSettings(), and updateFrame().

◆ m_cache_joystick_frustum_sensitivity

f32 Game::m_cache_joystick_frustum_sensitivity
private

◆ m_cache_mouse_sensitivity

f32 Game::m_cache_mouse_sensitivity
private

◆ m_camera_offset_changed

bool Game::m_camera_offset_changed = false
private

Referenced by updateCamera(), and updateFrame().

◆ m_chat_log_buf

LogOutputBuffer Game::m_chat_log_buf
private

Referenced by shutdown(), and updateChat().

◆ m_does_lost_focus_pause_game

bool Game::m_does_lost_focus_pause_game = false
private

Referenced by readSettings(), and run().

◆ m_first_loop_after_window_activation

bool Game::m_first_loop_after_window_activation = false
private

Referenced by startup(), and updateCameraDirection().

◆ m_flags

Flags Game::m_flags
private

◆ m_game_ui

◆ m_invert_mouse

bool Game::m_invert_mouse = false
private

Referenced by startup(), and updateCameraOrientation().

◆ m_repeat_place_time

f32 Game::m_repeat_place_time
private

◆ m_reset_HW_buffer_counter

int Game::m_reset_HW_buffer_counter = 0
private

Referenced by updateFrame().

◆ mapper

Minimap* Game::mapper = nullptr
private

◆ nodedef_manager

◆ profiler_interval

IntervalLimiter Game::profiler_interval
private

Referenced by updateProfilers().

◆ quicktune

QuicktuneShortcutter* Game::quicktune = nullptr
private

Referenced by ~Game(), init(), and processKeyInput().

◆ reconnect_requested

bool* Game::reconnect_requested
private

◆ registration_confirmation_shown

bool Game::registration_confirmation_shown = false
private

Referenced by connectToServer().

◆ runData

◆ server

Server* Game::server = nullptr
private

Referenced by ~Game().

◆ shader_src

IWritableShaderSource* Game::shader_src = nullptr
private

◆ simple_singleplayer_mode

bool Game::simple_singleplayer_mode
private

◆ sky

◆ skybox

scene::ISceneNode* Game::skybox
private

◆ smgr

scene::ISceneManager* Game::smgr
private

Referenced by createClient(), and startup().

◆ sound

◆ sound_is_dummy

bool Game::sound_is_dummy = false
private

Referenced by ~Game(), and initSound().

◆ soundfetcher

GameOnDemandSoundFetcher Game::soundfetcher
private

Referenced by initSound().

◆ soundmaker

◆ texture_src


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