summaryrefslogtreecommitdiff
path: root/src/script/lua_api/l_vmanip.cpp
Commit message (Collapse)AuthorAge
* scriptapi: Some small optimizations to value pushing (#9669)sfan52020-04-14
|
* Fix some reference counters (memleak) (#8981)SmallJoker2019-09-24
| | | | | Fix some reference counters (memleak) Map::dispatchEvent: Allocation safety using references
* LuaVoxelManip: Throw warning or error instead of silently doing nothing (#7567)HybridDog2018-08-02
| | | | Error on missing parameter. Warning when using a method on the incorrect type of LuaVoxelManip.
* Modernize lua read (part 2 & 3): C++ templating assurance (#7410)Loïc Blot2018-06-30
| | | | | | | | | * Modernize lua read (part 2 & 3): C++ templating assurance Implement the boolean reader Implement the string reader Also remove unused & unimplemented script_error_handler Add a reader with default value
* Node definition manager refactor (#7016)Dániel Juhász2018-02-10
| | | | | | | | | * Rename IWritableNodeDefManager to NodeDefManager * Make INodeDefManager functions const * Use "const *NodeDefManager" instead of "*INodeDefManager" * Remove unused INodeDefManager class * Merge NodeDefManager and CNodeDefManager * Document NodeDefManager
* Move files to subdirectories (#6599)Vitaliy2017-11-08
| | | | * Move files around
* Code modernization: subfolders (#6283)Loïc Blot2017-08-19
| | | | | | | | | | | | | * 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
* 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
* 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
* Light update for map blocksDániel Juhász2017-04-20
| | | | | | | | | This is not really different from the light update of a voxel manipulator. This update does not assume that the lighting was correct before, therefore it is useful for correction. Also expose this function to the Lua API for light correction, and allow voxel manipulators not to update the light.
* Replace luaL_reg with luaL_Reg as recent LuaJIT dropped the Lua 5.0 compat ↵Loïc Blot2017-04-08
| | | | | (#5541) We are bundling Lua5.1 which has same macro
* Light calculation: New bulk node lighting codeDániel Juhász2017-03-11
| | | | | | | | | | | This commit introduces a new bulk node lighting algorithm to minimize lighting bugs during l-system tree generation, schematic placement and non-mapgen-object lua voxelmanip light calculation. If the block above the changed area is not loaded, it gets loaded to avoid lighting bugs. Light is updated as soon as write_to_map is called on a voxel manipulator, therefore update_map does nothing.
* Lua voxelmanip: Add optional buffer param for 'get param2 data'paramat2016-10-31
| | | | Update lua_api.txt.
* Add MapSettingsManager and new mapgen setting script API functionskwolekr2016-07-03
| | | | | | | | | | | | | | | This commit refactors the majority of the Mapgen settings system. - MapgenParams is now owned by MapSettingsManager, itself a part of ServerMap, instead of the EmergeManager. - New Script API functions added: core.get_mapgen_setting core.get_mapgen_setting_noiseparams, core.set_mapgen_setting, and core.set_mapgen_setting_noiseparams. - minetest.get/set_mapgen_params are deprecated by the above new functions. - It is now possible to view and modify any arbitrary mapgen setting from a mod, rather than the base MapgenParams structure. - MapgenSpecificParams has been removed.
* Mapgen: Add propagate_shadow bool to calcLightingparamat2015-12-07
| | | | | | | | | | To terminate unwanted shadows from floatlands or realms above Also add to LuaVoxelManip calc_lighting for use in mapgen mods Remove the 2 argument calcLighting, mapgens now use the 5 argument form to specify the volumes for propagateSunlight and spreadLight In mgsinglenode replace calcLighting with setLighting and clean-up use of tabs and spaces
* SAPI: Mark all Lua API functions requiring envlockkwolekr2015-10-25
|
* Add optional buffer param for bulk data array writes in Luakwolekr2015-05-17
|
* Switch to check_v3s16 in l_mapgen.cpp and l_vmanip.cpp for type safetykwolekr2015-04-17
|
* Shorten ManualMapVoxelManipulator to MMVManipkwolekr2015-01-05
|
* Optionally specify propagateSunlight area in calcLightingkwolekr2015-01-05
| | | | This fixes the Mapgen V5 calcLighting segfault
* Exclude vertical mapblock borders when setting lightkwolekr2015-01-04
|
* LuaVoxelManip: Error when given out-of-bounds areakwolekr2015-01-04
|
* Lighting: Fix nearly all issueskwolekr2015-01-04
| | | | | | | | | | | The cause of a single light source seemingly being lit without spread was due to its creation in the +Y mapblock boundary layer during map generation, which was ignored as the overtop. This overtop explicitly needs to be omitted during sunlight propagation, however. To accomplish this, Mapgen::calcLighting() was split into separate functions taking separate parameters. Additionally, do not diminish light too early during spread. This fixes the output inconsistency between Map::updateLighting and Mapgen::calcLighting.
* LuaVoxelManip: Remove blank allocatorkwolekr2014-12-29
|
* LuaVoxelManip: Add option to allocate blank datakwolekr2014-12-27
|
* Add LuaVoxelManip methods: get_node_at() and set_node_at()kwolekr2014-09-01
|
* Update Mapgen VoxelManipulator on buffer invalidationkwolekr2014-09-01
|
* Fix issue 1527Craig Robbins2014-07-29
| | | | https://github.com/minetest/minetest/issues/1527
* Huge overhaul of the entire MapgenParams systemkwolekr2014-02-03
| | | | | | MapgenParams is no longer a polymorphic class, eliminating the need for messy and bug-prone reallocations. Separation between the common and mapgen-specific parameters is now strongly defined. Mapgen parameters objects are now properly encapsulated within the proper subsystems.
* LuaVoxelManip: Add get_param2_data and set_param2_datakwolekr2014-01-19
|
* LuaVoxelManip: Add area parameters back to calc_lighting and set_lighting, ↵kwolekr2013-11-30
| | | | made optional this time; also fixed a slight bug with night values being ignored
* LuaVoxelManip: Add get_light_data() and set_light_data()kwolekr2013-11-30
|
* LuaVoxelManip: Update parameter index of set_lighting()kwolekr2013-11-21
|
* Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenuKahrl2013-08-14
|
* LuaVoxelManip: Allow liquid updates in non-mapgen VoxelManip objectskwolekr2013-07-06
|
* LuaVoxelManip: Fix minor bug with set_lighting, remove coordinate params for ↵kwolekr2013-06-29
| | | | light and liquid updates
* Apply various fixes to several thingskwolekr2013-06-27
|
* LuaVoxelManip: Separate VoxelManip data get/set from emerging/blitting data ↵kwolekr2013-06-27
| | | | back to map
* Add minetest.get_mapgen_object to APIkwolekr2013-06-27
|
* Add LuaVoxelManipkwolekr2013-06-27