aboutsummaryrefslogtreecommitdiff
path: root/src/client
AgeCommit message (Collapse)Author
2018-08-08Some minor Fastface optimizations. (#7628)lhofhansl
2018-06-17Provide Xorg/net wm process ID (#7445)thoughtjigs
Adding support for _NET_WM_PID as defined in Extended Window Manager Hints Move verbose messaging to setupXorgTopLevelWindow method as Xorg messages should only occur when running in Xorg env. Irrlicht returns the XDisplay as a void* and XWindow as an unsigned long so reinterpret those as the appropriate type. Also fixed a spaces for tab formating issue
2018-05-29Add crossview support (#7361)otdav33
2018-05-29Fix GameUI flag value regression introduced by ↵Loic Blot
a78659ed0529226ad937f5e241ad72ba93702959 Added more strong unittests on that part to prevent future regression
2018-05-28Fix more GCC 8.1 warnings ↵Loïc Blot
  1   master  Fix 3 warnings reported by GCC 8.1 of the following type ```src/client/gameui.cpp:191:43: warning: « void* memset(void*, int, size_t) » effacement d'un objet du type non trivial « struct GameUI::Flags »; use assignment or value-initialization instead [-Wclass-memaccess] memset(&m_flags, 0, sizeof(GameUI::Flags)); ```
2018-04-03Fix last clang-tidy reported problems for performance-type-promotion-in-math-fnLoic Blot
Based on https://travis-ci.org/minetest/minetest/jobs/361810382 output Also fix 2 missing copyright notices
2018-03-30Client eventmanager refactor (#7179)Loïc Blot
* Drop EventManager from GameDef & do some client cleanups * EventManager is only used by Client. Don't expose it on Server & GameDef for nothing * Drop Client::event() in favor of direct calls to getEventManager * Cleanup some event put from new + put to put(new) * MtEvent: add Type(u8) enum * This will enhance event performance & ensure stricter type * Drop MtEvent::checkIs (unused) * clang-tidy reported fixes * Code style * Move event_manager.h to the client directory as it's only used by client Add EventManager unittests + switch to unordered_map as order is not important here Drop a unused function
2018-03-29Sound: fix static initialization order dependency by not having one (#7168)nOOb3167
Ensure singleton is reset
2018-03-24Make sounds stop playing when entering game or mainmenunOOb3167
2018-03-24Cleanup sound manager class (#7158)Loïc Blot
* Cleanup sound manager client * Use some const refs * Use auto on iterators * Drop unused parameters * Move sound_openal.* to client folder * Move sound.cpp + OnDemandSoundFetcher to client/ folder + reorganize includes properly
2018-03-23Fix some gcc 7.3 reported warningsLoic Blot
``` src/client/joystick_controller.h:85:2: warning: duplicate 'virtual' declaration specifier [-Wduplicate-decl-specifier] virtual bool isTriggered(const irr::SEvent::SJoystickEvent &ev) const; /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/ext/new_allocator.h:140:22: warning: destructor called on non-final 'JoystickAxisCmb' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor] destroy(_Up* __p) { __p->~_Up(); } /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/ext/new_allocator.h:140:22: warning: destructor called on non-final 'JoystickButtonCmb' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor] destroy(_Up* __p) { __p->~_Up(); } ```
2018-03-23Global initialization of sound using SoundManagerGlobal (#7063)nOOb3167
* Global initialization of sound using SoundManagerGlobal
2018-03-22Update mesh collector and move it to a separate file (#6904)Vitaliy
* Update MeshCollector * Simplify MeshCollector
2018-03-11Android build fixes for c++11stujones11
2018-03-10Drop texture file list cache (#6660)Vitaliy
2018-02-15Render copyright notice: Fix name spelling (#7042)Vitaliy
2018-02-10Node definition manager refactor (#7016)Dániel Juhász
* Rename IWritableNodeDefManager to NodeDefManager * Make INodeDefManager functions const * Use "const *NodeDefManager" instead of "*INodeDefManager" * Remove unused INodeDefManager class * Merge NodeDefManager and CNodeDefManager * Document NodeDefManager
2018-02-08Switch F3 to use 'enable_fog' settingThomasMonroe314
2018-02-08Include alpha channel reference in MaterialTypeParamstujones11
2018-01-26Fix issues with earlier CSM HUD commit (#6940)red-001
The CSM HUD PR caused some strange behavior including aborts due to parts of it using some slightly hacky code, the event refactor changing how events are processed and a minor oversight.
2018-01-20Game refactor [4/X]: keycache is now owned by InputHandlerLoic Blot
* Make InputHandler own the key cache * Add a helper function InputHandler::cancelPressed to avoid multiple similar calls in game.cpp * Move RandomInputHandler::step definition into cpp file
2018-01-20Game refactor [3/X]: Move keycache to inputhandlerLoic Blot
2018-01-20Game/Input refactor [1/X]: make RealInputHandler handle joystick inputs with ↵Loic Blot
standard input Joystick input is a RealInputHandler only usage, make it intelligent and handle the joystick with keyboard direct. This permits to remove many getters in game which should be owned by RealInputHandler
2018-01-20[CSM] Add basic HUD manipulation. (#6067)red-001
* [CSM] Add basic HUD manipulation. Workaround for on_connect not working right now.
2018-01-13Add confirmation on new player registration (#6849)Muhammad Rifqi Priyo Susanto
* Attempt to add registration confirmation Using SRP auth mechanism, if server sent AUTH_MECHANISM_FIRST_SRP that means the player isn't exist. Also tell player about the server and chosen username. Local game has localhost as IP address of the server. Add RenderingEngine::draw_menu_scene() to draw GUI and clouds background. aborted -> connection_aborted * Rewrite information message text Client::promptConfirmRegister() -> Client::promptConfirmRegistration()
2018-01-05Don't recalculate statustext initial color everytime & review fixesLoic Blot
2018-01-05GameUI refactor (part 7/7): Finish to include profiler things to GameUILoic Blot
Other changes: * Add GameUI clarification comment * Move force_fog_off & disable_camera_update flags from GameUI to Game, it's not UI related * Properly init GameUI::Flags * Move toggleChat toggleHud & toggleProfiler to GameUI * Add gameui.cpp to LINT whitelist
2018-01-05GameUI refactor (part 6/X): Move Game::guitext_profiler & ↵Loic Blot
showStatusTextSimple to GameUI class Other enhancements: * Move showStatusTextSimple to GameUI class & rename to showTranslatedStatusText
2018-01-05GameUI refactor (part 5/X): Move Game::guitext_chat to GameUI classLoic Blot
Other enhancements: * Move update_profiler_gui to Game class * Move updateChat to Game class
2018-01-05GameUI refactor (part 4/X): Move Game::guitext_status, Game::m_statustext, ↵Loic Blot
GameRunData::statustext_time to GameUI class Other enhancements: * Simplify setStatusText to showStatusText, as it shows the label too (preventing almost every setStatusText to call setStatusTextTime(0) * Add unittests
2018-01-05GameUI refactor (part 3/X): Move Game::guitext2, Game::guitext_info, ↵Loic Blot
Game::infotext to GameUI class Other enhancements: * Drop unused GameRunData::time_of_day * Little GameUI::update code path optimizations
2018-01-05GameUI refactor (part 2/X): Move Game::guitext to GameUI + enhancements on ↵Loic Blot
StaticText Other enhancements: * C++ friendlyness for addStaticText() -> move to static StaticText::add()
2018-01-05GameUI refactor (part 1/X): GameUI object creation + GameUIFlags move to GameUILoic Blot
Game class is too huge and has too specialization on various subjects, like UI, formspecs, client, renderer. Start to move UI related things to GameUI object and cleanup them Other improvements: * updateChat: more performance on error messages by remove string copies * Initialize all game class members in definition instead of constructor (with nullptr instead of NULL) * Drop unused Client::show{GameChat,GameHud,Profiler,GameFog} * Add GameUI unittests
2017-11-17Load files from subfolders in texturepacksnumber Zero
Updated and rebased version of a PR by red-001
2017-11-08Move files to subdirectories (#6599)Vitaliy
* Move files around
2017-11-06LINT: Add files to whitelist, fix detected indent errorsparamat
2017-11-04Do not scale texture unless necessary.Lars Hofhansl
This avoids scaling textures to 'texture_min_size' unless it is actually required (because either auto-scaling or bi/trilinear filtering is enabled)
2017-10-31Rewrite rendering engine (#6253)Vitaliy
* Clean draw_*() arguments * Split rendering core * Add anaglyph 3D * Interlaced 3D * Drop obsolete methods
2017-10-30Initial Haiku support (#6568)miqlas
* Iitial Haiku support
2017-10-15Real global textures (#6105)Vitaliy
* Real global textures * Add world-aligned textures * Update minimal to support world-aligned tiles * Update minimal
2017-10-09Travis: Update clang from 4.0 to 5.0 (#6467)Loïc Blot
* Update clang from 4.0 to 5.0
2017-08-30Remove DSTACK support (#6346)Loïc Blot
Debugstacks is not useful, we don't really use it, the DebugStack is not pertinent, gdb and lldb are better if we really want to debug.
2017-08-29Network proto handlers/container fixes (#6334)Loïc Blot
* Fix HP transport + some double <-> float problems TOCLIENT_HP transport u16 hp as a u8, use u16 HP, this prevent HP over 255 to overflow across network * Fix more double/float problem in serverpackethandler & remove implicit struct type for TileAnimationParams * Fix connection unittests container
2017-08-28Clientevent refactor (#6320)Loïc Blot
* Refactor clientevent structure * Move structure outside of client header * Create client events on heap not stack, this remove the ClientEvent object copy * Use clientEventHandler to route events
2017-08-24Network cleanup (#6302)Loïc Blot
* Cleanup network headers * Move peerhandler to a specific header to reduce compilation times * Move socket.cpp/h to network folder * More work * Network code cleanups * Move socket.{cpp,h} to network folder * Move Address object to network/address.{cpp,h} * Move network exceptions to network/networkexceptions.h * Client: use unique_ptr for Connection * Server/ClientIface: use shared_ptr for Connection * Format fixes * Remove socket.cpp socket.h from clang-format whitelist * Also fix NetworkPacket code style & make it under clang-format
2017-08-19Code modernization: subfolders (#6283)Loïc Blot
* Code modernization: subfolders Modernize various code on subfolders client, network, script, threading, unittests, util * empty function * default constructor/destructor * for range-based loops * use emplace_back instead of push_back * C++ STL header style * Make connection.cpp readable in a pointed place + typo
2017-08-18Optimize headers (part 2) (#6272)Loïc Blot
* Optimize headers (part 2) * less debug.h in headers * less remoteplayer.h for everybody * Cleanup (part 2) * camera.h: mesh.h * mapgen.h: mapnode.h * serverenvironment.h: mapblock.h * nodedef.h: shader.h
2017-08-17C++ modernize: Pragma once (#6264)Loïc Blot
* Migrate cpp headers to pragma once
2017-08-16Cleanup various headers to reduce compilation times (#6255)Loïc Blot
* Cleanup various headers to reduce compilation times
2017-08-15Modernize client code (#6250)Loïc Blot
* Various code style fixes * Use range based for loops * Use empty instead of empty objects * Use C++11 default keyword for trivial constructors and destructors * Drop some useless casts * Use emplace_back instead of push_back to improve performance of some vectors push