summaryrefslogtreecommitdiff
path: root/src/script
Commit message (Collapse)AuthorAge
* Optimize headers (part 2) (#6272)Loïc Blot2017-08-18
| | | | | | | | | | | | | | * 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
* C++ modernize: Pragma once (#6264)Loïc Blot2017-08-17
| | | | * Migrate cpp headers to pragma once
* l_server, clientenvironment, clientiface: code modernizationLoic Blot2017-08-17
| | | | | * use range-based for loops * use refs on some exceptions & one setter
* Cleanup various headers to reduce compilation times (#6255)Loïc Blot2017-08-16
| | | | * Cleanup various headers to reduce compilation times
* Sort box corners correctlyThomas--S2017-08-04
|
* Add LuaEntity on_death callback (#6177)Loïc Blot2017-07-27
| | | | | | Add LuaEntity on_death callback This fixes #5474
* Clouds API: change speed from 'y' to 'z', ColorSpecs in Lua docs (#6164)Ben Deutsch2017-07-24
|
* [CSM] Add flavour limits controlled by server (#5930)Loïc Blot2017-07-18
| | | | | | | | | | | | | | | | | | | | * [CSM] Add flavour limits controlled by server Server send flavour limits to client permitting to disable or limit some Lua calls * Add limits for reading nodedefs and itemdefs * flavour: Add lookup node limits * Merge get_node_or_nil into get_node. Sending fake node doesn't make sense in CSM, just return nil if node is not available for any reason * Add node range customization when noderange flavour is enabled (default 8 nodes) * Limit nodes range & disable chat message sending by default * Bump protocol version
* Chat protocol rewrite (#5117)Loïc Blot2017-07-16
| | | | | | | | | | | | | * New TOCLIENT_CHAT_MESSAGE packet * Rename old packet to TOCLIENT_CHAT_MESSAGE_OLD for compat * Handle TOCLIENT_CHAT_MESSAGE new structure client side * Client chat queue should use a specific object * SendChatMessage: use the right packet depending on protocol version (not complete yet) * Add chatmessage(type) objects and handle them client side (partially) * Use ChatMessage instead of std::wstring server side * Update with timestamp support
* Revert "CSM: Revert "[CSM] Add send_chat_message and run_server_chatcommand""Loic Blot2017-07-15
| | | | This reverts commit bdac12761cd92960c3df83c932aa610f2322215f.
* CSM: Revert "[CSM] Add send_chat_message and run_server_chatcommand"rubenwardy2017-07-15
| | | | | Original PR: #5747. This reverts commit 39f4a2f607d44738d60db84eba4b30e3d7450204.
* Remove remaining modstore code (#6120)Elijah Duffy2017-07-14
|
* Add 'plantlike_rooted' drawtypenumber Zero2017-07-11
| | | | | | | Useful for underwater plants. Node consists of a base cube plus a plantlike extension that can pass through liquid nodes above without creating air bubbles or interfering with liquid flow. Uses paramtype2 'leveled', param2 defines height of plantlike extension.
* Expose getPointedThing to LuaDániel Juhász2017-07-07
| | | | | | This commit introduces Raycast, a Lua user object, which can be used to perform a raycast on the map. The ray is continuable, so one can also get hidden nodes (for example to see trough glass).
* Main Menu: Allow copying directories from non-Minetest locations (#6095)Elijah Duffy2017-07-04
| | | | | Allow `core.copy_dir` (main menu API) to copy directories from a non-Minetest location. The check to disallow copying to non-Minetest locations is retained.
* Create a filesystem abstraction layer for CSM and only allow accessing files ↵red-0012017-06-30
| | | | | | | | | | | | | | | | | | that are scanned into it. (#5965) * Load client-side mods into memory before executing them. This removes the remaining filesystem access that client-sided mods had and it will hopefully make then more secure. * Lua Virtual filesystem: don't load the files into memory just scan the filenames into memory. * Fix the issues with backtrace * fix most of the issues * fix code style. * add a comment
* Isolate irrlicht references and use a singleton (#6041)Loïc Blot2017-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add Device3D class which will contain IrrlichtDevice interface move getSupportedVideoDrivers to Device3D Add Device3D singleton & use it in various places Rename Device3D to Rendering engine & add helper functions to various device pointers More singleton work RenderingEngine owns draw_load_screen move draw functions to RenderingEngine Reduce IrrlichtDevice exposure and guienvironment RenderingEngine: Expose get_timer_time() to remove device from guiEngine Make irrlichtdevice & scene manager less exposed * Code style fixes * Move porting::getVideoDriverName, getVideoDriverFriendlyName, getDisplayDensity, getDisplaySize to RenderingEngine Fix XORG_USED macro -> RenderingEngine + create_engine_device from RenderingEngine constructor directly * enum paralax => enum parallax
* Fix CSM crash caused by move to C++11. (#6027)red-0012017-06-22
|
* Automatic item and node colorization (#5640)Dániel Juhász2017-06-20
| | | | | | | | | | | | | | | | | * Automatic item and node colorization Now nodes with a palette yield colored item stacks, and colored items place colored nodes by default. The client predicts the colorization. * Backwards compatibility * Use nil * Style fixes * Fix code style * Document changes
* Fix 2 warnings reported by GCCLoic Blot2017-06-20
| | | | | * ClientEnvironment::m_irr is not used anymore since a recent cleanup * l_vmanip constructor ordering
* C++11 cleanup on constructors (#6000)Vincent Glize2017-06-19
| | | | * C++11 cleanup on constructors dir script
* find_nodes_in_area: Extend maximal count to U32_MAX (#5277)SmallJoker2017-06-19
| | | | | | | Extend documentation, limit area volume Remove u16 count limitation * Prevent integer overflow, replace minp/maxp with pos1/pos2
* Client::makeScreenshot: remove device paramLoic Blot2017-06-19
| | | | We already have the device param as class member
* Sound: Add pitch option (#5960)Rui2017-06-11
| | | | * Sound: Add pitch option
* Improve the path select GUI (#5852)red-0012017-06-11
| | | | | | | | | | | - Allow lua to chose whatever directories or files can be selected - Fix selecting directories - Rename dialog to `guiPathSelectMenu` from `guiFileSelectMenu` - Rename lua function for opening the menu from `show_file_open_dialog` to `show_path_select_dialog` - Remove duplicate code and fix code style. Related changes - fix `clang-format` whitelist. - Regenerate minetest.conf.example
* Remove threads.h and replace its definitions with their C++11 equivalents ↵ShadowNinja2017-06-11
| | | | | | (#5957) This also changes threadProc's signature, since C++11 supports arbitrary thread function signatures.
* C++11 patchset 6: forbid object copy using assigment/copy function deleters ↵Loïc Blot2017-06-10
| | | | | | | (#5945) C++11 implement function deleting, it's generally used to prevent some object copy In script API use this function removal on ScriptApiBase instead of ScriptApiClient/Server/MainMenu, this affect all ScriptApis Move DISABLE_CLASS_COPY with constructor, the deleted function permit to replace function in its original place
* Order es_DrawType exactly like enum NodeDrawType in nodedef.h (#5946)Thomas--S2017-06-10
| | | This will help to avoid some strange bugs.
* CSM: Fix documentation error for register_on_*_chat_messages (#5917)DS2017-06-09
|
* [CSM] Add function to get player privileges (#5933)red-0012017-06-07
| | | | | | * [CSM] Add function to get player privileges + move related help functions to common * Added @Zeno- const
* Use C++11 mutexes only (remove compat code) (#5922)Loïc Blot2017-06-06
| | | | * Fix event LINT & remove default constructor/destructors * remove compat code & modernize autolock header
* Main Menu: Add get_clientmodpath API (#5912)Elijah Duffy2017-06-06
| | | Add `core.get_clientmodpath` to main menu API (also possible in async calls).
* C++11 patchset 2: remove util/cpp11.h and util/cpp11_container.h (#5821)Loïc Blot2017-06-04
|
* Minetest for C++11 (CMakeLists + Travis)Loic Blot2017-06-04
| | | | | | | | | | | * Move GCC to GCC 6 & GCC 7 * Move Clang to Clang 3.6 & Clang 4.0 * LINT moves from Clang 3.9 to Clang 4.0 * Move XCode 7.3 to 8.0 * Use more travis tricks to install compilers instead of adding complexity to our build script * Clang format fixes on checked files (compat Cpp11 instead of Cpp03) * Mingw GCC update from 4.8.4 to 5.3 (Ubuntu Xenial) * Drop mingw cmake generated files and add them to gitignore
* Enhance ABM performance a little bit by removing two std::set copy (#5815)Loïc Blot2017-05-25
| | | | | | | | | | * Enhance ABM performance a little bit by removing two std::set copy * ActiveBlockModifier::getTriggerContents now returns a const ref * ActiveBlockModifier::getRequiredNeighbors now returns a const ref * ActiveBlockModifier::getRequiredNeighbors is now purely virtual * Little code style fix
* Fix wrong return value in get_sky Lua call since ↵Loic Blot2017-05-23
| | | | | | ad9fcf859ec2347325830e09504ae96968b51ea8 Fix #5803
* LINT fix & check all files with clang-formatLoic Blot2017-05-22
| | | | Seems the diff mode doesn't work well, PR are detected as working whereas in master it's shown it's problematic (and really problematic). Use same check everywhere
* [CSM] Add send_chat_message and run_server_chatcommand API functions (#5747)Pierre-Adrien Langrognet2017-05-21
| | | | | | | | | | | | * [CSM] Add send_chat_message and run_server_chatcommand API functions * Add client-side chat message rate limiting * Limit out chat queue size * [CSM] Add minetest.clear_out_chat_queue API function and .clear_chat_queue chatcommand * Last fixes/cleanups before merge
* Fix LINT broken by dfa0c15ce045705f05487d623dc7beca6c945b4bLoic Blot2017-05-21
|
* [CSM] Add function to get the definition of items (#5732)bigfoot5472017-05-21
| | | | | Add node def and item def documentation. Please be ready for merge!
* [CSM] Correct the log destination of print() (#5784)SmallJoker2017-05-20
|
* Fix CSM crash (#5779)red-0012017-05-20
| | | Caused by dc5bc6c and them made worse by 5ebf8f9
* When minimap is disabled in configuration, really disable it (#5771)Loïc Blot2017-05-19
| | | | * When minimap is disabled in configuration, really disable it
* Fix a warning pointed by GCC 7.1Loic Blot2017-05-18
| | | | lua_tonumber overflow in snprintf (12 bytes and only 10 can be written)
* Private nodemeta (#5702)sfan52017-05-10
| | | | * Private node metadata that isn't sent to the client
* read_schematic_replacements: ensure fields are strings (#5726)Loïc Blot2017-05-08
| | | | | | | | * read_schematic_replacements: ensure fields are strings add a type check before reading strings on read_schematic_replacements deserializer * throw LuaError instead of asserting the whole client
* Player attrs: permits to remove an attribute by setting value to nil (#5716)Loïc Blot2017-05-07
| | | | | | | | | | * Player attrs: permits to remove an attribute by setting value to nil When doing player:set_attribute("attr", nil) remove attribute Also remove a useless check on C++ API part (already done by checkplayer) Fix #5709
* LINT fix since d0678948165768472fc940c03e78cba787f49ea5Loic Blot2017-05-07
|
* Replace occurrence of luaL_reg in l_camera.cppT0ny22017-05-07
| | | | | Related to commit 41c5483. Replace an occurrence of luaL_reg in src/script/lua_api/l_camera.cpp (added by commit de028fc).
* Clean up numeric.h and split FacePositionCache from itShadowNinja2017-05-06
| | | | | I also optiized FacePositionCache a bit: I removed a map lookup and vector copy from both branches of getFacePosition.