9#include <AnimatedMeshSceneNode.h>
86using PausedNodesList = std::vector<std::pair<irr_ptr<scene::AnimatedMeshSceneNode>,
float>>;
117 bool init(
const std::string &map_dir,
const std::string &address,
130 bool *connect_ok,
bool *aborted);
150 void openConsole(
float scale,
const wchar_t *line=NULL);
175 void step(f32 dtime);
197 const core::line3d<f32> &shootline,
bool liquids_pointable,
198 const std::optional<Pointabilities> &pointabilities,
199 bool look_for_object,
const v3s16 &camera_offset);
204 const ItemStack &hand_item,
const v3f &player_position,
bool show_debug);
215 float *indef_pos =
nullptr);
220 if (
sky->getFogDistance() < 0 ||
client->checkPrivilege(
"debug"))
246 void handleAndroidChatInput();
339 volatile std::sig_atomic_t *
kill;
385 bool m_android_chat_open;
Definition log_internal.h:141
Definition clientobject.h:27
Definition event_manager.h:12
Definition guiChatConsole.h:16
Definition game_internal.h:93
void updateDebugState()
Definition game.cpp:1231
void updateChat(f32 dtime)
Definition game.cpp:2495
void toggleFast()
Definition game.cpp:1671
bool wasKeyReleased(GameKeyType k)
Definition game_internal.h:240
InputHandler * input
Definition game_internal.h:290
bool isTouchShootlineUsed() const
Definition game.cpp:1974
f32 m_repeat_place_time
Definition game_internal.h:364
PointedThing updatePointedThing(const core::line3d< f32 > &shootline, bool liquids_pointable, const std::optional< Pointabilities > &pointabilities, bool look_for_object, const v3s16 &camera_offset)
Definition game.cpp:2800
void handleClientEvent_CloudParams(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2467
void handleClientEvent_HudAdd(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2253
void pauseAnimation()
Definition game.cpp:2135
void processPlayerInteraction(f32 dtime, bool show_hud)
Definition game.cpp:2637
void run()
Definition game.cpp:477
IntervalLimiter profiler_interval
Definition game_internal.h:347
void decreaseViewRange()
Definition game.cpp:1876
void handleClientEvent_ShowCSMFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2228
void handleClientEvent_PlayerDamage(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2175
void handleClientEvent_UpdateCamera(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2478
bool m_game_focused
Definition game_internal.h:374
int crack_animation_length
Definition game_internal.h:112
bool getServerContent(bool *aborted)
Definition game.cpp:1105
Hud * hud
Definition game_internal.h:321
bool m_cache_enable_noclip
Definition game_internal.h:360
void updateProfilerGraphs(ProfilerGraph *graph)
Definition game.cpp:3565
bool isKeyDown(GameKeyType k)
Definition game_internal.h:228
void updateCameraOffset()
Definition game.cpp:2581
bool m_invert_mouse
Definition game_internal.h:368
bool createServer(const std::string &map_dir, const SubgameSpec &gamespec, u16 port)
Definition game.cpp:743
bool wasKeyPressed(GameKeyType k)
Definition game_internal.h:236
bool connectToServer(const GameStartData &start_data, bool *connect_ok, bool *aborted)
Definition game.cpp:957
MapDrawControl * draw_control
Definition game_internal.h:317
ChatBackend * chat_backend
Definition game_internal.h:309
void toggleUpdateCamera()
Definition game.cpp:1843
void processClientEvents(CameraOrientation *cam)
Definition game.cpp:2485
void toggleCinematic()
Definition game.cpp:1707
GameRunData runData
Definition game_internal.h:328
void updateStats(RunStats *stats, const FpsControl &draw_times, f32 dtime)
Definition game.cpp:1298
bool shouldShowTouchControls()
Definition game.cpp:926
Minimap * mapper
Definition game_internal.h:322
void updateSound(f32 dtime)
Definition game.cpp:2614
IWritableTextureSource * texture_src
Definition game_internal.h:298
IrrlichtDevice * device
Definition game_internal.h:335
Flags m_flags
Definition game_internal.h:329
bool simple_singleplayer_mode
Definition game_internal.h:344
bool m_first_loop_after_window_activation
Definition game_internal.h:372
void handleClientEvent_SetSky(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2358
EventManager * eventmgr
Definition game_internal.h:312
irr_ptr< Clouds > clouds
Definition game_internal.h:319
bool getTogglableKeyState(GameKeyType key, bool toggling_enabled, bool prev_key_state)
Definition game.cpp:2015
void toggleNoClip()
Definition game.cpp:1691
bool m_cache_enable_free_move
Definition game_internal.h:361
bool m_does_lost_focus_pause_game
Definition game_internal.h:376
void handleClientEvent_SetStars(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2448
void handleClientEvent_DeathscreenLegacy(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2209
void handleClientEvent_OverrideDayNightRatio(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2459
void increaseViewRange()
Definition game.cpp:1854
IWritableShaderSource * shader_src
Definition game_internal.h:299
void handleDigging(const PointedThing &pointed, const v3s16 &nodepos, const ItemStack &selected_item, const ItemStack &hand_item, f32 dtime)
Definition game.cpp:3236
void updateCameraOrientation(CameraOrientation *cam, float dtime)
Definition game.cpp:1980
bool checkConnection()
Definition game.cpp:1213
void updatePlayerControl(const CameraOrientation &cam)
Definition game.cpp:2024
void handleClientEvent_ShowFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2214
irr_ptr< GUIChatConsole > gui_chat_console
Definition game_internal.h:316
f32 getSensitivityScaleFactor() const
Definition game.cpp:1964
bool startup(volatile std::sig_atomic_t *kill, InputHandler *input, RenderingEngine *rendering_engine, const GameStartData &game_params, std::string &error_message, bool *reconnect, ChatBackend *chat_backend)
Definition game.cpp:422
void processKeyInput()
Definition game.cpp:1413
bool nodePlacement(const ItemDefinition &selected_def, const ItemStack &selected_item, const v3s16 &nodepos, const v3s16 &neighborpos, const PointedThing &pointed, const NodeMetadata *meta)
Definition game.cpp:2963
void toggleAutoforward()
Definition game.cpp:1742
PausedNodesList paused_animated_nodes
Definition game_internal.h:342
f32 m_cache_cam_smoothing
Definition game_internal.h:366
void handleClientEvent_SetSun(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2428
void togglePitchMove()
Definition game.cpp:1658
GameFormSpec m_game_formspec
Definition game_internal.h:323
float dynamic_info_send_timer
Definition game_internal.h:296
void readSettings()
Definition game.cpp:3697
std::unique_ptr< SoundMaker > soundmaker
Definition game_internal.h:307
CaptureLogOutput m_chat_log_buf
Definition game_internal.h:310
bool m_cache_enable_joysticks
Definition game_internal.h:358
void updateFrame(ProfilerGraph *graph, RunStats *stats, f32 dtime, const CameraOrientation &cam)
Definition game.cpp:3366
bool initGui()
Definition game.cpp:937
f32 m_repeat_dig_time
Definition game_internal.h:365
ClientDynamicInfo client_display_info
Definition game_internal.h:295
irr_ptr< Sky > sky
Definition game_internal.h:320
QuicktuneShortcutter * quicktune
Definition game_internal.h:313
bool fogEnabled()
Definition game_internal.h:217
video::IVideoDriver * driver
Definition game_internal.h:337
void toggleMinimap(bool shift_pressed)
Definition game.cpp:1753
std::unordered_map< u32, u32 > m_hud_server_to_client
Definition game_internal.h:326
void processItemSelection(u16 *new_playeritem)
Definition game.cpp:1526
RenderingEngine * m_rendering_engine
Definition game_internal.h:336
bool m_invert_hotbar_mouse_wheel
Definition game_internal.h:370
bool createClient(const GameStartData &start_data)
Definition game.cpp:826
void handlePointingAtNothing(const ItemStack &playerItem)
Definition game.cpp:2898
void copyServerClientCache()
Definition game.cpp:806
bool m_is_paused
Definition game_internal.h:380
void handleClientEvent_PlayerForceMove(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2203
void processQueues()
Definition game.cpp:1225
void handlePointingAtNode(const PointedThing &pointed, const ItemStack &selected_item, const ItemStack &hand_item, f32 dtime)
Definition game.cpp:2907
NodeDefManager * nodedef_manager
Definition game_internal.h:303
void handleClientEvent_HudRemove(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2286
bool wasKeyDown(GameKeyType k)
Definition game_internal.h:232
std::string * error_message
Definition game_internal.h:340
bool m_cache_enable_fog
Definition game_internal.h:359
void handlePointingAtObject(const PointedThing &pointed, const ItemStack &playeritem, const ItemStack &hand_item, const v3f &player_position, bool show_debug)
Definition game.cpp:3183
void updateInteractTimers(f32 dtime)
Definition game.cpp:1199
void toggleFreeMoveAlt()
Definition game.cpp:1642
void toggleDebug()
Definition game.cpp:1796
std::unique_ptr< ISoundManager > sound_manager
Definition game_internal.h:306
void updateProfilers(const RunStats &stats, const FpsControl &draw_times, f32 dtime)
Definition game.cpp:1259
static void settingChangedCallback(const std::string &setting_name, void *data)
Definition game.cpp:3692
bool init(const std::string &map_dir, const std::string &address, u16 port, const SubgameSpec &gamespec)
Definition game.cpp:682
void showOverlayMessage(const char *msg, float dtime, int percent, float *indef_pos=nullptr)
Definition game.cpp:3686
void handleClientEvent_HudChange(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2299
static const ClientEventHandler clientEventHandler[CLIENTEVENT_MAX]
Definition game_internal.h:2147
void updatePauseState()
Definition game.cpp:2076
void handleClientEvent_None(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2170
void handleClientEvent_SetMoon(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2439
void toggleBlockBounds()
Definition game.cpp:1718
void checkZoomEnabled()
Definition game.cpp:1913
bool m_camera_offset_changed
Definition game_internal.h:373
bool m_cache_toggle_sneak_key
Definition game_internal.h:356
IWritableItemDefManager * itemdef_manager
Definition game_internal.h:302
bool m_cache_toggle_aux1_key
Definition game_internal.h:357
bool initSound()
Definition game.cpp:718
void updateClouds(float dtime)
Definition game.cpp:3537
Client * getClient()
Definition game_internal.h:109
void toggleFullViewRange()
Definition game.cpp:1898
void step(f32 dtime)
Definition game.cpp:2091
void updateCameraMode()
Definition game.cpp:2565
void resumeAnimation()
Definition game.cpp:2140
void handleClientEvent_ShowPauseMenuFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2237
Camera * camera
Definition game_internal.h:318
Game()
Definition game.cpp:376
void handleClientEvent_HandleParticleEvent(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2246
volatile std::sig_atomic_t * kill
Definition game_internal.h:339
void toggleFog()
Definition game.cpp:1782
bool m_touch_simulate_aux1
Definition game_internal.h:382
void dropSelectedItem(bool single_item=false)
Definition game.cpp:1578
f32 m_cache_mouse_sensitivity
Definition game_internal.h:362
bool m_cache_doubletap_jump
Definition game_internal.h:355
~Game()
Definition game.cpp:396
float m_shutdown_progress
Definition game_internal.h:388
void updateShadows()
Definition game.cpp:3575
void processUserInput(f32 dtime)
Definition game.cpp:1353
void updateCamera(f32 dtime)
Definition game.cpp:2536
scene::ISceneManager * smgr
Definition game_internal.h:338
std::unique_ptr< GameUI > m_game_ui
Definition game_internal.h:315
void shutdown()
Definition game.cpp:614
Client * client
Definition game_internal.h:292
f32 m_cache_joystick_frustum_sensitivity
Definition game_internal.h:363
void toggleFreeMove()
Definition game.cpp:1626
std::unique_ptr< ItemVisualsManager > m_item_visuals_manager
Definition game_internal.h:304
bool * reconnect_requested
Definition game_internal.h:341
void openConsole(float scale, const wchar_t *line=NULL)
Definition game.cpp:1588
bool m_enable_hotbar_mouse_wheel
Definition game_internal.h:369
void updateCameraDirection(CameraOrientation *cam, float dtime)
Definition game.cpp:1920
void drawScene(ProfilerGraph *graph, RunStats *stats)
Definition game.cpp:3602
Definition texturesource.h:120
This class is for getting the actual properties of nodes from their content ID.
Definition nodedef.h:509
Definition profilergraph.h:19
Definition quicktune_shortcutter.h:10
Definition renderingengine.h:64
Definition sound_maker.h:35
@ CLIENTEVENT_MAX
Definition clientevent.h:40
static const float object_hit_delay
Definition game_internal.h:38
std::vector< std::pair< irr_ptr< scene::AnimatedMeshSceneNode >, float > > PausedNodesList
Definition game_internal.h:86
static const u16 bbox_debug_flag
Definition game_internal.h:40
core::vector3d< s16 > v3s16
Definition irr_v3d.h:13
core::vector3df v3f
Definition irr_v3d.h:11
Definition activeobjectmgr.cpp:11
Definition activeobjectmgr.cpp:11
Definition clientdynamicinfo.h:12
Definition game_internal.h:82
void(Game::* handler)(ClientEvent *, CameraOrientation *)
Definition game_internal.h:83
Definition clientevent.h:69
Definition renderingengine.h:40
Definition game_internal.h:48
ClientActiveObject * selected_object
Definition game_internal.h:64
bool btn_down_for_dig
Definition game_internal.h:54
bool digging_blocked
Definition game_internal.h:56
PointedThing pointed_old
Definition game_internal.h:51
u16 new_playeritem
Definition game_internal.h:50
v3f update_draw_list_last_cam_dir
Definition game_internal.h:76
bool dig_instantly
Definition game_internal.h:55
bool punching
Definition game_internal.h:53
float repeat_place_timer
Definition game_internal.h:61
float jump_timer_down
Definition game_internal.h:67
float damage_flash
Definition game_internal.h:70
float nodig_delay_timer
Definition game_internal.h:58
float jump_timer_down_before
Definition game_internal.h:68
float object_hit_delay_timer
Definition game_internal.h:62
float update_draw_list_timer
Definition game_internal.h:71
float jump_timer_up
Definition game_internal.h:66
f32 fog_range
Definition game_internal.h:74
float touch_blocks_timer
Definition game_internal.h:72
float dig_time
Definition game_internal.h:59
u16 dig_index
Definition game_internal.h:49
bool digging
Definition game_internal.h:52
float time_of_day_smooth
Definition game_internal.h:78
float dig_time_complete
Definition game_internal.h:60
float time_from_last_punch
Definition game_internal.h:63
bool reset_jump_timer
Definition game_internal.h:57
Definition gameparams.h:30
Definition game_internal.h:250
bool disable_camera_update
Definition game_internal.h:251
int debug_state
0 = no debug text active, see toggleDebug() for the rest
Definition game_internal.h:253
Definition inventory.h:21
Definition clientmap.h:14
An active object or node which is selected by a ray on the map.
Definition pointedthing.h:22