65 Commits

Author SHA1 Message Date
Auke Kok
7fa4045b59 Allow per-tiles culling.
Backface culling is enabled by default for all tiles, as this
is how the lua parser initializes each tiledef. We revert to
always using the value from the tiledef since it is always
read and serialized.

Mods that wish to enable culling for e.g. mesh nodes, now can
specify the following to enable backface culling:

    tiles = {{ name = "tex.png", backface_culling = true }},

Note the double '{' and use of 'name' key here! In the same
fashion, backface_culling can be disabled for any node now.

I've tested this against the new door models and this properly
allows me to disable culling per node. I've also tested this
against my crops mod which uses mesh nodes where culling needs
to be disabled, and tested also with plantlike drawtype nodes
where we want this to continue to be disabled.

No default setting has changed. The defaults are just migrated
from nodedef.cpp to c_content.cpp.
2016-01-20 00:36:48 +00:00
RealBadAngel
40ce082cfb Show infotext with description for item entities 2016-01-18 17:21:41 +00:00
paramat
ce609f9e68 Liquids: Flow into and destroy 'floodable' nodes
Add new node property 'floodable', default false
Define "air" as floodable = true in C++ and lua
2016-01-07 05:57:19 +00:00
Sapier
d0ee99205c Revert "Add support for using arbitrary meshes as items"
This reverts commit 91bafceee6606fab79db1bde4cba01b84fed65c7.

Reverted due to missinterpretation of agreement, obvious dislike and me not interested in doing fights for feature I don't actually need
2015-12-29 19:53:38 +01:00
Sapier
1c1294812b Add support for using arbitrary meshes as items 2015-12-29 16:27:06 +01:00
Sapier
f658114ea2 Fix lua object:get_properties() being broken 2015-12-21 00:27:13 +01:00
est31
4b3d41827e Fix missing pop
Previous commit

70ea5d552e283bd5bce3278cbf3819bd87ba2602 "Add support for limiting rotation of automatic face movement dir entitys"

by sapier has broken minetest's feature to open worlds. This was due to a
missing stack pop operation.

Thanks to @oleastre for reporting this bug and suggesting the fix.
2015-12-20 03:36:47 +01:00
Sapier
0321486090 Add support for limiting rotation of automatic face movement dir entitys 2015-12-19 17:00:36 +01:00
BlockMen
8b2e696093 Add option to give every object a nametag
or change the nametag text of players
2015-12-15 23:32:19 +01:00
BlockMen
7477ba044c Add support for audio feedback if placing node failed 2015-11-07 13:23:38 +01:00
BlockMen
0e8e40eaa9 Add option to disable backface culling for models
- Disabled by default (except players)
- Fixes #2984
2015-10-25 12:06:08 +01:00
ShadowNinja
4b6c6fc976 Use warningstream for deprecated field messages and refactor log_deprecated 2015-10-15 01:14:38 -04:00
RealBadAngel
b82d4913a2 Fix tiling issues for PLANTLIKE and FIRELIKE with FSAA 2015-08-05 22:52:32 +02:00
RealBadAngel
dd9ca2e7ed Fix relief mapping issues 2015-07-16 15:36:48 +02:00
kwolekr
f7071ad42f Fix code style from recent commits and add misc. optimizations 2015-07-02 23:14:30 -04:00
TeTpaAka
4573eef202 Add some missing getter functions to the lua API
ObjectRef:
get_properties
get_armor_groups
get_animation
get_attach
get_bone_position

Players:
get_physics_override
hud_get_hotbar_itemcount
hud_get_hotbar_image
hud_get_hotbar_selected_image
get_sky
get_day_night_ratio
get_local_animation
get_eye_offset

Global:
minetest.get_gen_notify
minetest.get_noiseparams
2015-05-28 16:46:35 +02:00
kwolekr
5292177986 SAPI: Accept either ARGB8 table or ColorString to specify colors 2015-05-16 20:15:03 -04:00
kwolekr
144d1ce2a0 Add 'persistence' alias for Lua noiseparams and validate more vector parameters 2015-04-19 21:42:40 -04:00
ShadowNinja
0e52779292 Don't use luaL_checkstring to read node names, it's only for arguments
This caused confusing error messages like "argument #4 to set_node is not a string."
2015-03-07 20:04:01 -05:00
kwolekr
0dbb71c92b Remove freezemelt (the remainder of proller nonsense) 2015-01-04 03:30:10 -05:00
kwolekr
d27d023219 Move get_schematic and read_schematic to l_mapgen.cpp 2014-12-10 01:49:57 -05:00
kwolekr
0f4d8ddf95 Remove get_noiseparams function. read_noiseparams should be used from now on 2014-12-10 00:56:44 -05:00
kwolekr
22b22968a1 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
kwolekr
4ac2fcc936 Schematics: Fix minetest.place_schematic() when defined by a Lua table 2014-12-06 18:39:05 -05:00
Ciaran Gultnieks
879bf6a6be Don't corrupt stepheight when setting other properties 2014-11-26 20:02:48 +01:00
SmallJoker
d3141906d2 Add option 'eased' to NoiseParams
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
2014-11-13 23:06:38 +10:00
kwolekr
bb5f0e46bd Add Generator Element Management framework
Add BiomeManager, OreManager, DecorationManager, and SchematicManager
2014-11-12 23:02:41 -05:00
kwolekr
08068ac0c6 Split up mapgen.cpp 2014-11-01 13:16:23 -04:00
RealBadAngel
983201a10b Custom collision boxes node property. 2014-10-19 20:48:21 +02:00
RealBadAngel
1c09928344 Add meshnode drawtype. 2014-10-18 16:42:23 +02:00
ShadowNinja
9718e20bfa Use "core" namespace internally 2014-05-08 13:02:04 -04:00
ShadowNinja
ce942de6ed Remove lua_State parameter from LuaError::LuaError 2014-03-15 16:28:59 -04:00
ShadowNinja
56e1aa4833 Revert "Make sure we get a stacktrace for as many lua errors as possible"
This reverts commit 362ef5f6ced862daa4733034810d0b07e2ad5d89.

Stack tracebacks couldn't be generated in LuaError::LuaError anyway and this
caused a second, empty traceback in most cases.  In cases where there wasn't
annother traceback the stack had already unwound and the traceback was empty.
2014-03-15 16:01:06 -04:00
Sfan5
056e6fdec8 Make sure we get a stacktrace for as many lua errors as possible 2014-03-15 14:51:00 +01:00
kwolekr
cd27d27083 Update set_mapgen_params and set_gen_notify Lua API to use new flag format 2014-03-08 11:35:04 -05:00
kwolekr
d48f851863 Add minetest.set_noiseparam_defaults() Lua API 2014-02-15 19:13:14 -05:00
kwolekr
8719f0f357 Define strlcpy on platforms that do not have it 2014-02-09 13:57:29 -05:00
kwolekr
64b8216144 Add capability to read table flag fields from Lua API 2014-02-09 12:44:31 -05:00
kwolekr
2a896ffbf7 Make flag strings clear specified flag with 'no' prefix
Remove flagmask field from set_mapgen_params table
Add small bits of needed documentation
2014-02-08 17:50:59 -05:00
kwolekr
444e863ec9 Schematic: Read slice probability table from schematic descriptors 2014-01-19 02:44:45 -05:00
ShadowNinja
b634e04a40 Add maximum recursion depth to read_json_value 2014-01-11 14:08:02 -05:00
ShadowNinja
3b98b3d78d Rename get_json_value to read_json_value 2014-01-11 13:52:26 -05:00
ShadowNinja
1dd2fa6296 Fix InventoryList reading order
Lua does not guarantee that the indexes of a table will be in numerical order.
2013-12-30 14:00:05 -05:00
ShadowNinja
e2b44bca93 Don't throw a error when writing JSON fails 2013-12-18 18:18:43 -05:00
ShadowNinja
c24cde1d75 Add 'minetest.write_json' 2013-12-18 16:46:53 -05:00
ShadowNinja
4a8e393a79 Handle LuaErrors in Lua -> C++ calls on LuaJIT 2013-12-18 16:35:55 -05:00
RealBadAngel
c18af13697 Shaders rework. 2013-12-03 18:55:25 +01:00
ShadowNinja
2741a7e6e0 Optimize table creation 2013-11-30 13:05:13 -05:00
MetaDucky
d37b6b8f43 fixed array limit check when reading Lua specialtiles table 2013-11-16 15:31:17 +01:00
ShadowNinja
5cb34cf9dd Pass a errfunc to lua_pcall to get a traceback 2013-11-15 14:13:31 -05:00