aboutsummaryrefslogtreecommitdiff
path: root/src/client/client.cpp
AgeCommit message (Collapse)Author
2021-09-11Make sure relevant std::stringstreams are set to binarysfan5
2021-09-09Dynamic_Add_Media v2 (#11550)sfan5
2021-08-19Add fwgettext util functionrubenwardy
2021-07-31Mods: Combine mod loading checks and deprection logging (#11503)SmallJoker
This limits the logged deprecation messages to the mods that are loaded Unifies the mod naming convention check for CSM & SSM
2021-07-17CSM: Do not index files within hidden directoriesSmallJoker
CSM would previously scan for files within .git or .svn directories, and also special files such as .gitignore
2021-05-06fix: extractZipFile is not part of Client but more generic.Loic Blot
This solve a crash from mainmenu while extracting the zip
2021-05-03fix: some code tidy about includes & irr namespacesLoic Blot
2021-05-03refacto: remove get_gui_env & draw_load_screen from RenderingEngine singletonLoic Blot
2021-05-03fix: don't use RenderingEngine singleton when it's possibleLoic Blot
2021-05-03refacto: RenderingEngine::get_scene_manager() is now not callable from singletonLoic Blot
This permits to make evidence that we have some bad object passing on various code parts. I fixed majority of them to reduce the scope of passed objects Unfortunately, for some edge cases i should have to expose ISceneManager from client, this should be fixed in the future when our POO will be cleaner client side (we have a mix of rendering and processing in majority of the client objects, it works but it's not clean)
2021-05-03refacto: protect some RenderingEngine::get_scene_managerLoic Blot
* protect it from Camera, Sky, ClientMap object calls * rename Game::sky to Game::m_sky
2021-05-03refacto: hide mesh_cache inside the rendering engineLoic Blot
This permit cleaner access to meshCache and ensure we don't access to it from all the code
2021-05-03refacto: add RenderingEngine::cleanupMeshCacheLoic Blot
This permits to prevent client to own the mesh cache cleanup logic. It's better in RenderingEngine
2021-05-03refacto: rendering engine singleton removal step 1 (filesystem)Loic Blot
Make the RenderingEngine filesystem member non accessible from everywhere This permits also to determine that some lua code has directly a logic to extract zip file. Move this logic inside client, it's not the lua stack role to perform a such complex operation Found also another irrlicht <1.8 compat code to remove
2021-05-03fix: drop old irrlicht <1.8 compat on Client::loadMediaLoic Blot
2021-03-12Avoid unnecessary copies during media/mesh loadingsfan5
2021-03-12Handle mesh load failure without crashingsfan5
2021-02-02Drop wide/narrow conversion functionssfan5
The only valid usecase for these is interfacing with OS APIs that want a locale/OS-specific multibyte encoding. But they weren't used for that anywhere, instead UTF-8 is pretty much assumed when it comes to that. Since these are only a potential source of bugs and do not fulfil their purpose at all, drop them entirely.
2021-01-31Readd Client::sendPlayerPos optimization (was part of 81c7f0a)sfan5
This reverts commit b49dfa92ce3ef37b1b73698906c64191fb47e226.
2021-01-22Remove dead code (#10845)rubenwardy
2020-10-19Decouple entity minimap markers from nametags replacing with show_on_minimap ↵sfan5
property (#10443)
2020-10-05Remove unused functions reported by cppcheck (#10463)SmallJoker
Run unused functions reported by cppcheck This change removes a few (but not all) unused functions. Some unused helper functions were not removed due to their complexity and potential of future use.
2020-10-04Minimap as HUD element with API controlPierre-Yves Rollo
Features: * Define Minimap available modes (surface/radar, scale) from Lua, using player:set_minimap_modes() * New HUD elements for displaying minimap with custom size and placing * New minimap mode for displaying a texture instead of the map
2020-09-16Clean up server-side translations, remove global variable (#10075)rubenwardy
2020-08-15Allow binding dig, place actions to keys; remove LMB/RMB hardcodingANAND
Co-authored-by: Sam Caulfield <sam@samcaulfield.com>
2020-07-07Fix player controls only being applied for the first moveTheTermos
2020-06-13Server pushing media at runtime (#9961)sfan5
2020-05-17Client: Add sum and average to packetcountersfan5
2020-04-25Add server side translations capability (#9733)EvidenceB Kidscode
* Add server side translations capability
2020-04-14Refactor texture overrides and add new features (#9600)Hugues Ross
* Refactor texture overrides, and add new features: - Texture overrides can support multiple targets in one line - Texture override files can have comment lines - Item images/wield images can be overridden * Formatting changes * Address soime feedback - Pass vectors by const reference - Log syntax errors as warnings - Remove 'C' prefix from TextureOverrideSource * Simplify override target checks with an inline helper function * make linter happy * Apply feedback suggestions Co-Authored-By: rubenwardy <rw@rubenwardy.com> * Remove remaining != 0 checks * Update copyright notice Co-authored-by: sfan5 <sfan5@live.de> Co-authored-by: rubenwardy <rw@rubenwardy.com>
2020-04-11A few initialization cleanupssfan5
2020-04-08Overall improvements to log messages (#9598)sfan5
Hide some unnecessarily verbose ones behind --trace or disable them entirely. Remove duplicate ones. Improve their contents in some places.
2020-04-06Allow relative directories for `screenshot_path`, tweak default path (#9122)Hugo Locurcio
This will likely be more intuitive for users and should play better with sandboxed distributions such as Flatpak. In addition, the screenshot directory will now be created if it doesn't exist already.
2020-02-16Basic model shading (#9374)Danila Shutov
2020-02-01Improve core.sound_play with ephemeral sounds and player exclusionsfan5
2020-01-11Map download: Escape ':' to '_' (#9235)Montandalar
This is necessary under Windows systems, and direct IPv6 connections. Windows universally disallows ':' from occuring in filenames. Other disallowed characters on Windows: \ / * ? " < > | are not relevant to hostnames, IPv4 or IPv6 addresses. Anyone who has got an existing server map saved on Linux with ':' in the world save will want to keep that save.
2019-11-25Improve client-side packet receivingsfan5
2019-11-11Fix clang-tidy and lint travis checkssfan5
2019-11-11[CSM] Expose more env functionssfan5
2019-11-11Refactor CSM restriction code a bitsfan5
This also fixes find_node_near restrictions being ineffective.
2019-11-09Be lenient with extra slashes for CSM pathssfan5
2019-11-09Corrections to client_lua_api.txtsfan5
2019-11-09Load client mods into memory before execution.sfan5
Preperation for server-sent CSM which will eventually need this.
2019-10-08Revert Client::sendPlayerPos optimization (part of 81c7f0a) (#9025)ANAND
Comment out the if statement that prevents sending TOSERVER_PLAYERPOS if the player is dead.
2019-09-14client.cpp: Fix code-style in Client::sendPlayerPosANAND
2019-09-14Send ActiveObjects once right after Init2ANAND
2019-09-14Formspecs: Introduce formspec_version to modsSmallJoker
2019-09-14Load CSM environment after the restrictions are knownSmallJoker
Safety-guards for CSM callbacks to abort on a bad implementation Only run callbacks when the mods are loaded (and with it: builtin) Duplication checks inside constructors
2019-08-24Inventory: Send dirty lists where appropriate (#8742)SmallJoker
This change reduces the amount of sent data towards clients. Inventory lists that are already known to the player are skipped, saving quite some data over time. Raises protocol version to 38 to ensure correct backwards-compatible code.
2019-08-21Revert "Don't send position update packet if player is dead"sfan5
This reverts commit fb6f1fdcbe3ee2321cc33eb00f2c6da86744d00a.