summaryrefslogtreecommitdiffstats
path: root/src/BlockArea.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Prepare ChunkData for BlockState storage (#5105)Tiger Wang2021-03-051-5/+5
| | | | | | | | | | | | | | | | | | | | | | | * Rename ChunkData Creatable test * Add missing Y-check in RedstoneWireHandler * Remove ChunkDef.h dependency in Scoreboard * Prepare ChunkData for BlockState storage + Split chunk block, meta, block & sky light storage + Load the height map from disk - Reduce duplicated code in ChunkData - Remove saving MCSBiomes, there aren't any - Remove the allocation pool, ref #4315, #3864 * fixed build * fixed test * fixed the debug compile Co-authored-by: 12xx12 <44411062+12xx12@users.noreply.github.com>
* BlockHandler initialisation is a constant expression (#4891)Tiger Wang2020-09-201-23/+8
| | | | | | | | | | | | | * BlockHandler initialisation is a constant expression If we can't make it all namespaces, this is the next best I guess. + Tag handlers constexpr, const as needed + Inherit constructors * Privatise handler functions * More constexpr Co-authored-by: Alexander Harkness <me@bearbin.net>
* Enable C++17 in buildPeter Bell2020-05-091-6/+6
|
* Manage block entity lifetime with unique_ptr (#4080)peterbell102020-04-031-90/+43
|
* Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)Mattes D2020-04-031-0/+2
| | | | | | | | | The BlockID.h file was removed from Globals.h and renamed to BlockType.h (main change) The BlockInfo.h file was removed from Globals.h (main change) The ENUM_BLOCK_ID and ENUM_ITEM_ID enum names were replaced with ENUM_BLOCK_TYPE and ENUM_ITEM_TYPE (cosmetics) The various enums, such as eDimension, eDamageType and eExplosionSource were moved from BlockType.h to Defines.h, together with the helper functions for converting between them and strings (StringToDimension et al.) (minor) Many inline functions were moved from headers to their respective cpp files, so that BlockType.h could be included only into the cpp file, rather than the header. That broke our tests a bit, since they pick bits and pieces out of the main code and provide stubs for the rest; they had to be re-stubbed and re-verified. eMonsterType values are no longer tied to E_ITEM_SPAWN_EGG_META_* values
* Refactored block-to-pickup conversion. (#4417)Mattes D2019-10-161-0/+30
|
* Refactored more of Entities and BlockEntities to use Vector3. (#4403)Mattes D2019-09-291-24/+22
|
* Fixed MSVC warnings (#4400)Mattes D2019-09-271-7/+7
|
* CheckBasicStyle: Check number of empty lines between functions (#4267)peterbell102018-07-261-12/+1
| | | | Add check for number of empty lines between functions and fix the corresponding failures
* fix block area rotation bug (#4243)changyong guo2018-06-251-3/+3
| | | fix mirror method bug in class cBlockArea.
* Deal with covered switches consistently (#4161)peterbell102018-02-051-123/+118
| | | | | | | * Fixes a number of "<function>: not all control paths return a value" warnings on MSVC. * Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults. * Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message()
* cChunk and cChunkData: Use vectors for block get and set functions (#4172)peterbell102018-02-041-4/+4
| | | | | * cChunkData: Change interface to use Vector3i * cChunk: Add Vector3i overloads for bounded block get and set functions.
* cBlockArea: Fix performance regression (#4045)peterbell102017-09-231-2/+16
|
* Replace ItemCallbacks with lambdas (#3993)peterbell102017-09-111-5/+5
|
* cBlockArea: change MakeIndex to return size_tpeterbell102017-09-111-80/+43
|
* cBlockArea: use unique_ptrpeterbell102017-09-111-133/+106
|
* Revert "Replace ItemCallbacks with lambdas (#3948)"LogicParrot2017-09-021-6/+6
| | | | This reverts commit 496c337cdfa593654018c171f6a74c28272265b5.
* Replace ItemCallbacks with lambdas (#3948)peterbell102017-09-011-6/+6
|
* Changed int parameters to vector parameters in cCuboid and simulators (#3874)Lane Kolbly2017-08-171-2/+2
|
* Removed double includes (#3885)Lukas Pioch2017-08-021-1/+0
|
* BlockArea: Added the GetBounds function.Mattes D2017-07-221-0/+12
|
* Fixed check to see if block entity is in merge source.Lane Kolbly2017-07-221-1/+1
|
* Made cBlockArea:cChunkReader AreaBounds inclusive on both sides. (#3842)Lane Kolbly2017-07-101-1/+1
|
* Fix cBlockArea assertion and mis-indexing (#3810)peterbell102017-06-251-2/+2
|
* Fix cBlockArea null derefpeterbell102017-06-241-41/+45
|
* cBlockArea supports block entities. (#3795)Mattes D2017-06-241-297/+858
|
* Fixed bindings for cBlockArea:Read and Write. (#3568)Mattes D2017-02-051-7/+7
| | | The original bindings accepted nil as the World param, causing a crash.
* Fix meta mirror (#3470)Mattes D2016-12-091-3/+3
|
* Fixed type-casting-related warnings.Mattes D2016-08-241-3/+3
|
* Added compile.sh folder check warningsLogicParrot2016-08-041-0/+4
|
* Bulk clearing of whitespaceLogicParrot2016-02-051-38/+38
|
* Added detailed logging to cBlockArea::Read() bad Y coords.Mattes D2016-01-121-4/+12
| | | | Ref.: http://forum.mc-server.org/showthread.php?tid=2307
* Unified the doxy-comment format.Mattes D2015-07-311-6/+6
|
* BlockArea: Fixed a crash with areas higher than chunk height.Mattes D2015-06-301-1/+7
|
* cBlockArea: Added CountSpecificBlocks() API function.Mattes D2015-06-081-0/+59
|
* Made -Weverything an error.tycho2015-05-241-4/+4
|
* Added cBlockArea:CountNonAirBlocks API function.Mattes D2015-04-301-0/+31
|
* Added cBlockArea::msSimpleCompare merge strategy.Mattes D2015-04-291-1/+37
|
* Added cBlockArea:GetNonAirCropRelCoords() API function.Mattes D2015-04-291-0/+67
| | | | Fixes #1915.
* En masse NULL -> nullptr replaceTiger Wang2014-10-231-44/+44
|
* More template keyword fixes.Mattes D2014-08-281-9/+9
|
* Added initializers for class members.Mattes D2014-08-211-1/+3
| | | | As reported by Coverity, these weren't initialized.
* Normalized comments.madmaxoft2014-07-171-2/+2
| | | | | This was mostly done automatically and then visually inspected for obvious errors. All //-style comments should have a 2-space separation from the code, and 1 space after the comment sign.
* Fixed basic whitespace problems.madmaxoft2014-07-171-5/+5
| | | | Indenting by spaces and alignment by spaces, as well as trailing whitespace on non-empty lines.
* Fixed wrong types. (BLOCKTYPE -> NIBBLETYPE)Howaner2014-07-131-1/+1
|
* Nullify deleted pointers.archshift2014-06-191-11/+17
|
* Fixed a crash when creating negative-size blockareas.madmaxoft2014-06-091-0/+8
| | | | Now the server emits a warning instead and continues execution.
* cBlockArea reading hotfix.madmaxoft2014-06-021-63/+109
| | | | | This should fix the crashes introduced with chunksparsing. Not the most performant solution, but at least it should work. Ref.: #1056
* Added comments, reformatted code.madmaxoft2014-05-291-1/+1
|
* Implemented style changesTycho2014-05-241-1/+1
|
* Merge branch 'master' into chunksparsing/structsTycho2014-05-241-14/+11
|\
| * Fixed a warning and a complaint about a never-read variable.archshift2014-05-111-14/+11
| |
* | Fixed stylistic issuesTycho2014-05-211-4/+4
| |
* | Renamed cChunkBuffer to cChunkDataTycho2014-05-211-2/+2
| |
* | Fixed minor style issuesTycho2014-05-211-1/+1
| |
* | Merge branch 'master' into chunksparsing/structsTycho2014-05-101-7/+7
|\| | | | | | | | | Conflicts: src/Chunk.h
| * Fixed MSVC 64-bit build warnings.Mattes D2014-05-091-5/+5
| |
| * Fixed a flipped condition in cBlockArea::Merge().madmaxoft2014-05-051-2/+2
| |
* | Merge branch 'master' into chunksparsing/structsTycho2014-05-031-2/+2
|\| | | | | | | | | Conflicts: src/Chunk.cpp
| * Fixed warnings in cBlockArea.madmaxoft2014-05-011-2/+2
| |
* | Merge branch 'master' into chunksparsing/structsTycho2014-05-011-167/+226
|\|
| * Disabled MSVC warnings about constant bool expressions.madmaxoft2014-04-281-2/+19
| |
| * Removed static from combinators.Tycho2014-04-281-7/+7
| | | | | | | | THis allows us to use the functions in template params at the cost of polluting the global namespace.
| * Fixed unbraced ifsTycho2014-04-281-10/+40
| |
| * Removed inlines from combinatorsTycho2014-04-281-7/+7
| | | | | | | | gcc requires external linkage for functions provided to template parameters
| * Template MagicTycho2014-04-281-168/+175
| | | | | | | | | | | | Removed need to allocate a fake meta block by using templates to provide a version of the code that does not use metas. Also changed the function to a template argument to make sure that the compilier is able to inline it.
| * Worked around const pointerTycho2014-04-271-2/+3
| |
| * Initialised MetaArrays in BlockAreaTycho2014-04-271-2/+6
| | | | | | | | Fixes CID 43621
* | Fixed bad commentTycho2014-04-271-1/+1
| |
* | Implemented Chunk Sparsing with segmentsTycho2014-04-261-97/+69
|/
* Fixed a few MSVC type warnings.Mattes D2014-04-031-1/+1
|
* Merged branch 'msDifference'.madmaxoft2014-04-011-0/+34
|\
| * Added new merge strategy "msDifference"STRWarrior2014-03-311-0/+34
| |
* | cBlockArea: Added the msMask merge strategy.madmaxoft2014-04-011-0/+30
|/
* Implemented the msSpongePrint merge strategy.madmaxoft2014-03-281-4/+34
| | | | Similar to msImprint, but allows prefabs to carve out air pockets, too. The sponge block is used as the NOP block.
* BlockArea: Create() can take the size as Vector3i, too.madmaxoft2014-03-251-0/+9
|
* BlockArea: Switched internal coords to Vector3i.madmaxoft2014-03-251-175/+149
|
* Renamed cBlockArea Offset to WEOffset.madmaxoft2014-03-121-2/+2
| | | | Even in getters / setters.
* Renamed m_Offset to m_WEOffsetSTRWarrior2014-03-111-3/+3
|
* Using ```const Vector3i &```STRWarrior2014-03-111-1/+1
|
* This allows a blockarea to have an Offset.STRWarrior2014-03-101-0/+19
|
* Added useful parameter overloads to cBlockArea Lua API.madmaxoft2014-02-241-0/+95
|
* Fixed crash in cBlockArea rotation.madmaxoft2014-02-241-6/+6
| | | | Fixes #720.
* Moved Schematic file methods to seperate classTycho2014-01-201-158/+1
|
* Seperated BlockArea From WorldTycho2014-01-201-5/+4
| | | | If anyone can come up with a better name for the interface I'll change it, It contians to methods which do compleatly unrelated things
* Fixed a few MSVC warnings.madmaxoft2014-01-071-3/+3
|
* fixed warnings in BlockArea.cppTycho Bickerstaff2013-12-311-0/+2
|
* cBlockArea: Fixed writing full-height areas.madmaxoft2013-12-261-2/+2
|
* Fixed block area height check.madmaxoft2013-12-251-2/+2
| | | | The block area couldn't be read up to chunk height.
* Fixed a typo in cBlockArea merging code.madmaxoft2013-12-201-2/+1
|
* cBlockArea: origin is initialized in the constructor and the loader.madmaxoft2013-12-171-0/+6
|
* Moved source to srcAlexander Harkness2013-11-241-0/+2124