e0889c6c03
Schematics: Fix core.schematic_create()
2015-04-17 18:39:37 -04:00
3576f4fab7
Switch to check_v3s16 in l_mapgen.cpp and l_vmanip.cpp for type safety
2015-04-17 01:03:13 -04:00
821d0025da
Biomes: Remove referenced biomes from Decorations on clear
2015-04-16 23:38:05 -04:00
479f38973e
Schematics: Refactor NodeResolver and add NodeResolveMethod
...
NodeResolver name lists now belong to the NodeResolver object instead of
the associated NodeDefManager. In addition to minimizing unnecessary
abstraction and overhead, this move permits NodeResolvers to look up nodes
that they had previously set pending for resolution. So far, this
functionality has been used in the case of schematics for
serialization/deserialization.
2015-04-16 16:27:05 -04:00
b2a89c04b2
Schematics: Reorganize (de)serialization and add Lua serialization API
2015-04-13 03:10:52 -04:00
0df736173e
Schematics: Prepend mod path to relative schematic filepaths
2015-04-08 00:28:56 -04:00
9527984dbc
Move globals from main.cpp to more sane locations
...
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
2015-04-01 23:04:25 +10:00
337e79c656
ObjDefManager, Mapgen SAPI: Huge refactoring
...
- General code cleanup
- Unified object creation and loading
- Specifying objects in APIs is now orthogonal (i.e. anything can take an ID,
name string, or the raw table definition (and automatically registers if present
2015-03-31 23:27:58 -04:00
ed10005d38
GenElementManager: Pass opaque handles to Lua and rename to ObjDefManager
...
Add core.clear_registered_schematics() and refactor schematics somewhat
2015-03-31 01:11:51 -04:00
d1681872bf
lua_api/l_mapgen: generate_ores/decorations: make p1, p2 optional
2015-03-24 18:07:29 +00:00
732d7b9a7c
Add core.register_schematic() and cache schematics on use
2015-03-23 22:23:38 -04:00
26153bab7d
Revert "Fix issue #2441 : crash on respawn, since a conversion std::list to std::vector on Environment.cpp"
...
This reverts parts of commit 9749d9fee6
, which breaks node resolver
list clearing
2015-03-20 18:41:26 -04:00
b2b6bbf3e8
lua_api/l_mapgen: Fix overlapping areas of minetest.generate_ores/decorations
2015-03-11 03:36:39 +00:00
9749d9fee6
Fix issue #2441 : crash on respawn, since a conversion std::list to std::vector on Environment.cpp
...
* Also change some std::list to std::vector for ClientMap::renderMap
* Remove disabled code in ClientMap::renderMap, disabled since a long time
2015-03-05 15:36:20 +01:00
14f7df980b
Biome API: Re-calculate biome at every surface in a mapchunk column
2015-02-26 03:35:25 +00:00
2d849b0a19
Shorten ManualMapVoxelManipulator to MMVManip
2015-01-05 02:42:27 -05:00
bdcf03ae36
Add minetest.generate_ores() and minetest.generate_decorations()
2015-01-04 22:38:48 -05:00
8eb9cebdd0
Add warning about using deprecated fields in Mapgen API and update docs
2015-01-04 03:24:40 -05:00
9b0d77a549
Replace instances of height_min/height_max with y_min/y_max to remove ambiguity
2014-12-30 01:48:20 -05:00
b589353d89
Decoration: Fix default parameter values
2014-12-30 00:52:40 -05:00
5e2753c712
Expose mapgen parameters on scripting init
...
Add minetest.get_mapgen_params()
Deprecate minetest.register_on_mapgen_init()
2014-12-29 12:59:59 -05:00
863379a4c6
Decoration: Add height_min and height_max parameters
...
Also set default height_min/height_max to -31000 and 31000,
respectively, for ore and biomes
2014-12-28 22:37:27 -05:00
570c2042b1
Biome API: Add shore top and shore filler nodes, underwater node, water top node. Add water top depth and shore height parameters. Remove water dust node
2014-12-28 21:37:43 -05:00
61dfa912f5
Ore: Add Vein ore type
2014-12-28 21:17:12 -05:00
900fa26965
Ore: Add Blob ore type
2014-12-28 03:11:00 -05:00
08d259cf41
Set fallback content if resolving content vector requires everything
2014-12-27 22:20:04 -05:00
b67f37f27e
Redefine NodeResolver interface and replace with callback mechanism
2014-12-27 02:12:21 -05:00
cf8213ea82
Add minetest.clear_registered_decorations() and clear_registered_ores()
2014-12-12 14:08:04 -05:00
dcc48976ce
Move get_schematic and read_schematic to l_mapgen.cpp
2014-12-10 01:49:57 -05:00
cfba55ba0a
Remove get_noiseparams function. read_noiseparams should be used from now on
2014-12-10 00:56:44 -05:00
fb2bc956b1
Noise: Create a deep copy of NoiseParams
2014-12-10 00:37:09 -05:00
d50878d608
Rename and repurpose minetest.set_noiseparam_defaults to set_noiseparams
2014-12-09 23:44:04 -05:00
2fd3d52020
Add flags and lacunarity as new noise parameters
...
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
2014-12-07 21:59:32 -05:00
60feb4ad25
Add minetest.clear_registered_biomes() api
2014-12-06 18:08:23 -05:00
5062b99cb0
Rewrite generate notification mechanism
...
Add support for notify-on-decoration
Clean up mapgen constructors
Clean up mapgen.cpp code style somewhat
Remove trailing whitespace from some files
2014-12-06 13:53:35 -05:00
0a5373d400
Add definable node_stone to biome API, mgv5, mgv7. Reduce and correct depth of mgv7 biomes. l_mapgen.cpp: add '#include mapgen_v5.h' because '#include mapgen_v7' is there. Improve underwater grass hack
2014-12-03 19:45:29 -05:00
8d3a68f343
Fix warnings and other misc. minor changes
2014-11-14 03:07:12 -05:00
7616537bc0
Add Generator Element Management framework
...
Add BiomeManager, OreManager, DecorationManager, and SchematicManager
2014-11-12 23:02:41 -05:00
9e811a92e7
Split up mapgen.cpp
2014-11-01 13:16:23 -04:00
db25f75337
Fix erroneous lua_pop parameter
2014-10-30 16:23:48 -04:00
1cb6ea6346
Refactor decoration-related code
...
Split up ModApiMapgen::l_register_decoration()
Define and make use of CONTAINS() and ARRLEN() macros
2014-10-29 01:56:37 -04:00
bc28ca0636
Prevent invalid memory access under failure conditions
2014-10-28 00:18:53 -04:00
d274cbfce6
Add NodeResolver and clean up node name -> content ID resolution system
2014-10-26 23:55:45 -04:00
6bc4cad0ed
Split settings into seperate source and header files
...
This also cleans up settings a bit
2014-09-21 14:39:35 -04:00
2f170a63c6
Simplify and optimize schematic replacements
2014-09-11 22:25:06 -04:00
c4359ff65c
Use "core" namespace internally
2014-05-08 13:02:04 -04:00
118e2ae865
Fix all warnings reported by clang
2014-04-15 21:34:53 +02:00
28d6326bd4
Update set_mapgen_params and set_gen_notify Lua API to use new flag format
2014-03-08 11:35:04 -05:00
d9d06ad920
Fix g_settings not being included
2014-02-16 08:25:53 +01:00
c163859057
Schematic: Add force_placement parameter to minetest.place_structure API
2014-02-15 19:46:57 -05:00