aboutsummaryrefslogtreecommitdiff
path: root/src/dungeongen.cpp
Commit message (Collapse)AuthorAge
* Fix undefined evaluation order when constructing random vectorskwolekr2016-05-27
| | | | | | | | | | | | | | MSVC and GCC evaluate parameters in right-to-left order, whereas Clang evaluates in left-to-right order, and of course, an optimization could leave the order of evaluation completely indeterminate. This commit fixes all instances of the error by explicitly assigning the results of expressions that use PseudoRandom::next() or range() to their respective vector components. The right-to-left evaluation behavior is preserved since Clang is much less commonly used to compile Minetest than GCC and MSVC combined, and would therefore cause the least harm.
* Dungeongen: Update disabled torch placement codekinokoio2016-04-03
|
* Mapgen: Various fixes and improvementsparamat2016-01-11
| | | | | | | | | | | | | Lua_api.txt: Document 'minetest.registered_biomes' Minimal: Remove 'mapgen_air' alias Cavegen: Add fallback node for 'mapgen_ice' Dungeongen: Add fallback node for 'mapgen_river_water_source' Mgv5: Remove unnecessary '#include util/directiontables.h' Add missing 'this->'s in makeChunk() Mgv6: Edit empty line formatting Remove leading spaces in makeChunk() Add missing spaces after 'for' and 'if' Mgv7: Edit empty line formatting
* Dungeongen: Fix rarely triggered segfaultparamat2015-12-01
| | | | | | | A segfault exposed a missing 'vm->m_area.contains()' check in makeCorridor that allowed the calculation of vm index for a node outside the vm area. The huge and invalid index number caused getContent to fail
* Dungeongen: Also preserve river water nodesparamat2015-11-29
| | | | | | For future river mapgens Dungeons will not generate in river water, to avoid dungeons filling and blocking river channels
* Dungeongen: Remove floating framesparamat2015-08-29
| | | | | | | | Preserves the rare unbroken protruding dungeons Fix random range for first room roomplace Fix checked volume for first room 'fits' bool and check for 'untouchable' flag instead of 'inside' Remove 'enable floating dungeons' setting
* Dungeon generation: Fix code style issues in dungeongen.cppparamat2015-08-01
|
* Move globals from main.cpp to more sane locationsCraig Robbins2015-04-01
| | | | | | | | | | | | Move debug streams to log.cpp|h Move GUI-related globals to clientlauncher Move g_settings and g_settings_path to settings.cpp|h Move g_menuclouds to clouds.cpp|h Move g_profiler to profiler.cpp|h
* Dungeongen: Optionally set ignore to be untouchable to disable floating dungeonsparamat2015-03-07
|
* MgV5/6/7: Generate dungeons above water levelparamat2015-01-01
| | | | | | Use/add stone_surface_max_y to speed-optimise/guide dungeon generation MgV7: Don't let mountain terrain chop dungeons at mapchunk borders Make mountain terrain update stone_surface_max_y for caves in mountains
* Add flags and lacunarity as new noise parameterskwolekr2014-12-07
| | | | | | | Add 'absolute value' option to noise map functions Extend persistence modulation to 3D noise Extend 'eased' option to noise2d_perlin* functions Some noise.cpp formatting fixups
* Rewrite generate notification mechanismkwolekr2014-12-06
| | | | | | | Add support for notify-on-decoration Clean up mapgen constructors Clean up mapgen.cpp code style somewhat Remove trailing whitespace from some files
* 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.
* Add map feature generation notify Lua APIkwolekr2013-12-14
|
* Dungeongen: Create dungeon gen tuneables; add desert temples for Mapgen V6kwolekr2013-12-07
|
* Standardized method of getting node info in dungeon mapgen.0gb.us2013-09-06
|
* Re-add dungeons in new dungeongen.cppkwolekr2013-03-10