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:1219
void updateChat(f32 dtime)
Definition game.cpp:2483
void toggleFast()
Definition game.cpp:1659
bool wasKeyReleased(GameKeyType k)
Definition game_internal.h:240
InputHandler * input
Definition game_internal.h:290
bool isTouchShootlineUsed() const
Definition game.cpp:1962
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:2788
void handleClientEvent_CloudParams(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2455
void handleClientEvent_HudAdd(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2241
void pauseAnimation()
Definition game.cpp:2123
void processPlayerInteraction(f32 dtime, bool show_hud)
Definition game.cpp:2625
void run()
Definition game.cpp:477
IntervalLimiter profiler_interval
Definition game_internal.h:347
void decreaseViewRange()
Definition game.cpp:1864
void handleClientEvent_ShowCSMFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2216
void handleClientEvent_PlayerDamage(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2163
void handleClientEvent_UpdateCamera(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2466
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:1093
Hud * hud
Definition game_internal.h:321
bool m_cache_enable_noclip
Definition game_internal.h:360
void updateProfilerGraphs(ProfilerGraph *graph)
Definition game.cpp:3553
bool isKeyDown(GameKeyType k)
Definition game_internal.h:228
void updateCameraOffset()
Definition game.cpp:2569
bool m_invert_mouse
Definition game_internal.h:368
bool createServer(const std::string &map_dir, const SubgameSpec &gamespec, u16 port)
Definition game.cpp:731
bool wasKeyPressed(GameKeyType k)
Definition game_internal.h:236
bool connectToServer(const GameStartData &start_data, bool *connect_ok, bool *aborted)
Definition game.cpp:945
MapDrawControl * draw_control
Definition game_internal.h:317
ChatBackend * chat_backend
Definition game_internal.h:309
void toggleUpdateCamera()
Definition game.cpp:1831
void processClientEvents(CameraOrientation *cam)
Definition game.cpp:2473
void toggleCinematic()
Definition game.cpp:1695
GameRunData runData
Definition game_internal.h:328
void updateStats(RunStats *stats, const FpsControl &draw_times, f32 dtime)
Definition game.cpp:1286
bool shouldShowTouchControls()
Definition game.cpp:914
Minimap * mapper
Definition game_internal.h:322
void updateSound(f32 dtime)
Definition game.cpp:2602
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:2346
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:2003
void toggleNoClip()
Definition game.cpp:1679
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:2436
void handleClientEvent_DeathscreenLegacy(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2197
void handleClientEvent_OverrideDayNightRatio(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2447
void increaseViewRange()
Definition game.cpp:1842
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:3224
void updateCameraOrientation(CameraOrientation *cam, float dtime)
Definition game.cpp:1968
bool checkConnection()
Definition game.cpp:1201
void updatePlayerControl(const CameraOrientation &cam)
Definition game.cpp:2012
void handleClientEvent_ShowFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2202
irr_ptr< GUIChatConsole > gui_chat_console
Definition game_internal.h:316
f32 getSensitivityScaleFactor() const
Definition game.cpp:1952
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:1401
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:2951
void toggleAutoforward()
Definition game.cpp:1730
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:2416
void togglePitchMove()
Definition game.cpp:1646
GameFormSpec m_game_formspec
Definition game_internal.h:323
float dynamic_info_send_timer
Definition game_internal.h:296
void readSettings()
Definition game.cpp:3685
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:3354
bool initGui()
Definition game.cpp:925
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:1741
std::unordered_map< u32, u32 > m_hud_server_to_client
Definition game_internal.h:326
void processItemSelection(u16 *new_playeritem)
Definition game.cpp:1514
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:814
void handlePointingAtNothing(const ItemStack &playerItem)
Definition game.cpp:2886
void copyServerClientCache()
Definition game.cpp:794
bool m_is_paused
Definition game_internal.h:380
void handleClientEvent_PlayerForceMove(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2191
void processQueues()
Definition game.cpp:1213
void handlePointingAtNode(const PointedThing &pointed, const ItemStack &selected_item, const ItemStack &hand_item, f32 dtime)
Definition game.cpp:2895
NodeDefManager * nodedef_manager
Definition game_internal.h:303
void handleClientEvent_HudRemove(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2274
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:3171
void updateInteractTimers(f32 dtime)
Definition game.cpp:1187
void toggleFreeMoveAlt()
Definition game.cpp:1630
void toggleDebug()
Definition game.cpp:1784
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:1247
static void settingChangedCallback(const std::string &setting_name, void *data)
Definition game.cpp:3680
bool init(const std::string &map_dir, const std::string &address, u16 port, const SubgameSpec &gamespec)
Definition game.cpp:670
void showOverlayMessage(const char *msg, float dtime, int percent, float *indef_pos=nullptr)
Definition game.cpp:3674
void handleClientEvent_HudChange(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2287
static const ClientEventHandler clientEventHandler[CLIENTEVENT_MAX]
Definition game_internal.h:2135
void updatePauseState()
Definition game.cpp:2064
void handleClientEvent_None(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2158
void handleClientEvent_SetMoon(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2427
void toggleBlockBounds()
Definition game.cpp:1706
void checkZoomEnabled()
Definition game.cpp:1901
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:706
void updateClouds(float dtime)
Definition game.cpp:3525
Client * getClient()
Definition game_internal.h:109
void toggleFullViewRange()
Definition game.cpp:1886
void step(f32 dtime)
Definition game.cpp:2079
void updateCameraMode()
Definition game.cpp:2553
void resumeAnimation()
Definition game.cpp:2128
void handleClientEvent_ShowPauseMenuFormSpec(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2225
Camera * camera
Definition game_internal.h:318
Game()
Definition game.cpp:376
void handleClientEvent_HandleParticleEvent(ClientEvent *event, CameraOrientation *cam)
Definition game.cpp:2234
volatile std::sig_atomic_t * kill
Definition game_internal.h:339
void toggleFog()
Definition game.cpp:1770
bool m_touch_simulate_aux1
Definition game_internal.h:382
void dropSelectedItem(bool single_item=false)
Definition game.cpp:1566
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:3563
void processUserInput(f32 dtime)
Definition game.cpp:1341
void updateCamera(f32 dtime)
Definition game.cpp:2524
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:602
Client * client
Definition game_internal.h:292
f32 m_cache_joystick_frustum_sensitivity
Definition game_internal.h:363
void toggleFreeMove()
Definition game.cpp:1614
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:1576
bool m_enable_hotbar_mouse_wheel
Definition game_internal.h:369
void updateCameraDirection(CameraOrientation *cam, float dtime)
Definition game.cpp:1908
void drawScene(ProfilerGraph *graph, RunStats *stats)
Definition game.cpp:3590
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