diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-05-03 17:33:13 +0300 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-05-03 17:33:13 +0300 |
commit | 821d5bb4cc3a9047187955ab897ea28f9b9aa957 (patch) | |
tree | f61d8447b1a78a489ad4b756aa895cd36741ff9b /src | |
parent | 1c08b6c99a88065b30baaba87677f6a334421df6 (diff) | |
download | minetest-821d5bb4cc3a9047187955ab897ea28f9b9aa957.tar.gz minetest-821d5bb4cc3a9047187955ab897ea28f9b9aa957.tar.bz2 minetest-821d5bb4cc3a9047187955ab897ea28f9b9aa957.zip |
Hopefully fixed the bug of huge mineral deposits rarely in seafloor sand
Diffstat (limited to 'src')
-rw-r--r-- | src/map.cpp | 6 | ||||
-rw-r--r-- | src/mapnode.h | 8 |
2 files changed, 8 insertions, 6 deletions
diff --git a/src/map.cpp b/src/map.cpp index ddf8d863e..02614e1ae 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -2823,7 +2823,8 @@ void makeChunk(ChunkMakeData *data) u32 i = data->vmanip.m_area.index(v3s16(p2d.X, surface_y, p2d.Y)); MapNode *n = &data->vmanip.m_data[i]; if(n->d == CONTENT_GRASS) - n->d = CONTENT_MUD; + *n = MapNode(CONTENT_MUD); + //n->d = CONTENT_MUD; } /* @@ -2840,7 +2841,8 @@ void makeChunk(ChunkMakeData *data) break; MapNode &n = data->vmanip.m_data[i]; - n.d = CONTENT_MUD; + n = MapNode(CONTENT_MUD); + //n.d = CONTENT_MUD; mudcount++; data->vmanip.m_area.add_y(em, i, 1); diff --git a/src/mapnode.h b/src/mapnode.h index ef1ec8ae3..d456cf883 100644 --- a/src/mapnode.h +++ b/src/mapnode.h @@ -513,7 +513,7 @@ struct MapNode // Select the brightest of [light source, propagated light] u8 lightday = 0; u8 lightnight = 0; - if(light_propagates()) + if(content_features(d).param_type == CPT_LIGHT) { lightday = param & 0x0f; lightnight = (param>>4)&0x0f; @@ -534,7 +534,7 @@ struct MapNode { // Select the brightest of [light source, propagated light] u8 light = 0; - if(light_propagates()) + if(content_features(d).param_type == CPT_LIGHT) { if(bank == LIGHTBANK_DAY) light = param & 0x0f; @@ -576,8 +576,8 @@ struct MapNode void setLight(enum LightBank bank, u8 a_light) { - // If not transparent, can't set light - if(light_propagates() == false) + // If node doesn't contain light data, ignore this + if(content_features(d).param_type != CPT_LIGHT) return; if(bank == LIGHTBANK_DAY) { |