aboutsummaryrefslogtreecommitdiff
path: root/src/filesys.cpp
Commit message (Collapse)AuthorAge
* Windows: Fix some warnings.Diego Martinez2015-07-09
|
* Add mod securityShadowNinja2015-05-16
| | | | Due to compatibility concerns, this is temporarily disabled.
* Tests: Modularize unit testingkwolekr2015-04-26
| | | | | | Split unit tests into separate files under src/unittest/ Give better unittest diagnostics Clean up some code
* Schematics: Prepend mod path to relative schematic filepathskwolekr2015-04-08
|
* Fix fs::GetRecursiveSubPaths trying to get directory lists for filesShadowNinja2014-12-24
|
* Rewrite fs:GetDirListing(file) by kahrlSmallJoker2014-12-10
|
* Ignore .name directories and filesSmallJoker2014-12-10
| | | | Signed-off-by: Craig Robbins <kde.psych@gmail.com>
* Remove temporary file at safeWriteToFile()selat2014-08-16
|
* Add support for Android 2.3+sapier2014-06-29
| | | | | | | | | | | | | There have been plenty of ppl involved in creating this version. I don't wanna mention names as I'm sure I'd forget someone so I just tell where help has been done: - The partial android versions done by various ppl - Testing on different android devices - reviewing code (especially the in core changes) - testing controls - reviewing texts A big thank you to everyone helping this to be completed!
* Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenuKahrl2013-08-14
|
* Dont write directly to files but rather write and copy a tmp filePilzAdam2013-08-13
|
* Fix various memory access problems detected by valgrindKahrl2013-08-07
|
* Replace C++ mainmenu by formspec powered onesapier2013-07-02
|
* Update Copyright YearsSfan52013-02-24
|
* Change Minetest-c55 to MinetestPilzAdam2013-02-24
|
* Switch the license to be LGPLv2/later, with small parts still remaining as ↵Perttu Ahola2012-06-05
| | | | GPLv2/later, by agreement of major contributors
* Add #include <unistd.h> to filesys.cppPerttu Ahola2012-04-06
|
* Better file/directory removal platform code and utilitiesPerttu Ahola2012-03-26
|
* Small fix to fs::GetDirListing when trying to list an inexistent directoryPerttu Ahola2012-03-25
|
* Fix filesys.cpp debug output to go into debug.txtPerttu Ahola2012-03-23
|
* Fix CreateAllDirs() (failed for relative fully non-existing path)Perttu Ahola2012-03-11
|
* Check symlinks with stat() to know if they are directories or notPerttu Ahola2011-12-04
|
* Add support for unix filesystems which yield DT_UNKNOWN in dirent->d_type, ↵Perttu Ahola2011-12-04
| | | | falling back on stat().
* Fix map delete on windows (concatenate paths correctly with / or \ depending ↵Perttu Ahola2011-10-16
| | | | on OS)
* Fix bug in posix file/directory removal wrapper, as pointed out by kahrlPerttu Ahola2011-09-06
|
* Windows.h -> windows.h for cross-mingw buildPerttu Ahola2011-08-14
|
* New map directory structure that avoids map size being limited by filesystemCiaran Gultnieks2011-05-18
|
* should work nowPerttu Ahola2011-01-26
|
* Little fixesPerttu Ahola2011-01-26
|
* Map deletion buttonPerttu Ahola2011-01-26
|
* removed boost support from filesys.cpp; default to posixPerttu Ahola2011-01-07
|
* license stuffPerttu Ahola2010-11-29
| | | | | --HG-- rename : src/licensecomment.txt => licensecomment.txt
* Initial filesPerttu Ahola2010-11-27
> inexistent_top_provides_sunlight; else if(v.getNodeRefUnsafe(p_overtop).getContent() == CONTENT_IGNORE) overtop_has_sunlight = inexistent_top_provides_sunlight; // Otherwise refer to it's light value else overtop_has_sunlight = (v.getNodeRefUnsafe(p_overtop).getLight( LIGHTBANK_DAY, ndef) == LIGHT_SUN); // Copy overtop's sunlight all over the place u8 incoming_light = overtop_has_sunlight ? LIGHT_SUN : 0; for(s32 y=max_y; y>=min_y; y--) { v3s16 p(x,y,z); MapNode &n = v.getNodeRefUnsafe(p); if(incoming_light == 0){ // Do nothing } else if(incoming_light == LIGHT_SUN && ndef->get(n).sunlight_propagates){ // Do nothing } else if(ndef->get(n).sunlight_propagates == false){ incoming_light = 0; } else { incoming_light = diminish_light(incoming_light); } u8 old_light = n.getLight(LIGHTBANK_DAY, ndef); if(incoming_light > old_light) n.setLight(LIGHTBANK_DAY, incoming_light, ndef); if(diminish_light(incoming_light) != 0) light_sources.insert(p); } // Check validity of sunlight at top of block below if it // hasn't already been proven invalid if(bottom_sunlight_valid) { bool sunlight_should_continue_down = (incoming_light == LIGHT_SUN); v3s16 p_overbottom(x, min_y-1, z); if(!v.exists(p_overbottom) || v.getNodeRefUnsafe(p_overbottom ).getContent() == CONTENT_IGNORE){ // Is not known, cannot compare } else { bool overbottom_has_sunlight = (v.getNodeRefUnsafe(p_overbottom ).getLight(LIGHTBANK_DAY, ndef) == LIGHT_SUN); if(sunlight_should_continue_down != overbottom_has_sunlight){ bottom_sunlight_valid = false; } } } } return SunlightPropagateResult(bottom_sunlight_valid); } } // namespace voxalgo