summaryrefslogtreecommitdiffstats
path: root/src/BlockArea.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-09-20BlockHandler initialisation is a constant expression (#4891)Tiger Wang1-2/+0
* 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>
2020-04-03Manage block entity lifetime with unique_ptr (#4080)peterbell101-11/+2
2020-04-03Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)Mattes D1-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
2019-10-16Refactored block-to-pickup conversion. (#4417)Mattes D1-0/+7
2019-09-29Refactored more of Entities and BlockEntities to use Vector3. (#4403)Mattes D1-0/+9
2018-07-19cBlockArea: Write all present data types by default (#4252)peterbell101-2/+18
cBlockArea::Write now defaults to use GetDataTypes() instead of assuming all data types are present. Fixes cuberite/WorldEdit#130
2017-09-11Replace ItemCallbacks with lambdas (#3993)peterbell101-4/+5
2017-09-11cBlockArea: change MakeIndex to return size_tpeterbell101-39/+7
2017-09-11cBlockArea: use unique_ptrpeterbell101-11/+54
2017-09-02Revert "Replace ItemCallbacks with lambdas (#3948)"LogicParrot1-6/+5
This reverts commit 496c337cdfa593654018c171f6a74c28272265b5.
2017-09-01Replace ItemCallbacks with lambdas (#3948)peterbell101-5/+6
2017-08-03Remove double includes part 2 (#3890)peterbell101-1/+0
2017-07-22BlockArea: Added the GetBounds function.Mattes D1-2/+6
2017-06-24cBlockArea supports block entities. (#3795)Mattes D1-30/+111
2017-02-05Fixed bindings for cBlockArea:Read and Write. (#3568)Mattes D1-5/+5
The original bindings accepted nil as the World param, causing a crash.
2016-02-05Bulk clearing of whitespaceLogicParrot1-64/+64
2015-06-08cBlockArea: Added CountSpecificBlocks() API function.Mattes D1-0/+9
2015-05-24Made -Weverything an error.tycho1-1/+1
2015-04-30Added cBlockArea:CountNonAirBlocks API function.Mattes D1-1/+5
2015-04-29Added cBlockArea::msSimpleCompare merge strategy.Mattes D1-0/+17
2015-04-29Added cBlockArea:GetNonAirCropRelCoords() API function.Mattes D1-0/+5
Fixes #1915.
2014-10-23En masse NULL -> nullptr replaceTiger Wang1-70/+74
2014-10-20En masse NULL -> nullptr replaceTiger Wang1-4/+4
2014-10-12convert old style casts to fix warningsSteven Riehl1-70/+66
2014-08-28More template keyword fixes.Mattes D1-1/+1
2014-07-17Fixed basic whitespace problems.madmaxoft1-2/+2
Indenting by spaces and alignment by spaces, as well as trailing whitespace on non-empty lines.
2014-05-21Renamed cChunkBuffer to cChunkDataTycho1-1/+1
2014-05-21Fixed minor style issuesTycho1-2/+2
2014-05-18Fixed issue with types not being defined for an unused parameterTycho1-0/+1
2014-05-01Fixed warning in cBlockArea.madmaxoft1-1/+1
2014-04-28Template MagicTycho1-1/+4
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.
2014-04-26Implemented Chunk Sparsing with segmentsTycho1-4/+1
2014-04-01cBlockArea: Added the msMask merge strategy.madmaxoft1-0/+9
2014-03-31Added new merge strategy "msDifference"STRWarrior1-0/+1
2014-03-28Implemented the msSpongePrint merge strategy.madmaxoft1-2/+11
Similar to msImprint, but allows prefabs to carve out air pockets, too. The sponge block is used as the NOP block.
2014-03-25BlockArea: Create() can take the size as Vector3i, too.madmaxoft1-2/+8
2014-03-25BlockArea: Switched internal coords to Vector3i.madmaxoft1-17/+19
2014-03-11Unified Vector classesandrew1-1/+1
2014-03-11Using ```const Vector3i &```STRWarrior1-2/+2
2014-03-12Renamed cBlockArea Offset to WEOffset.madmaxoft1-4/+5
Even in getters / setters.
2014-03-11Renamed m_Offset to m_WEOffsetSTRWarrior1-2/+3
2014-03-10This allows a blockarea to have an Offset.STRWarrior1-0/+5
2014-02-24Added useful parameter overloads to cBlockArea Lua API.madmaxoft1-0/+38
2014-02-23Fixed bindings for cBlockArea:Get(Rel)BlockTypeMeta().madmaxoft1-0/+6
They no longer require the ghost output params.
2014-02-23Added cBlockArea::GetVolume, exported to Lua API.madmaxoft1-27/+30
2014-02-20Fixed bindings for cBlockArea:Get(Rel)BlockTypeMeta().madmaxoft1-0/+6
They no longer require the ghost output params.
2014-01-20Moved Schematic file methods to seperate classTycho1-17/+1
2014-01-20Seperated BlockArea From WorldTycho1-6/+3
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
2013-11-24Moved source to srcAlexander Harkness1-0/+0
2013-07-29Changed everyting to Unix line endings.Alexander Harkness1-310/+310
2013-03-26cBlockArea: Fixed type / meta copypasta errors in mirroring and rotation codemadmaxoft@gmail.com1-6/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1318 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-25BlockArea: Implemented mirroring without meta manipulationmadmaxoft@gmail.com1-0/+30
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1316 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-03-19The subgenerators use cChunkDesc instead of raw arrays. cChunkDesc is based on cBlockArea. Initial version of Lakes generator.madmaxoft@gmail.com1-1/+20
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1286 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-13Implemented the cBlockArea:RelLine() API function.madmaxoft@gmail.com1-0/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1211 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-13Added HOOK_WEATHER_CHANGING.madmaxoft@gmail.com1-0/+6
http://www.mc-server.org/support/index.php?do=details&task_id=299 git-svn-id: http://mc-server.googlecode.com/svn/trunk@1210 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-11More API functions in cBlockArea: Create(), Fill(), FillRelArea()madmaxoft@gmail.com1-3/+21
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1208 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-10Added cBlockArea:Merge() API function to merge two block areas using different strategies.madmaxoft@gmail.com1-4/+30
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1207 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-09Added cBlockArea:Expand() API function (untested)madmaxoft@gmail.com1-0/+7
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1203 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-08cChunkDesc can now read and write cBlockAreas.madmaxoft@gmail.com1-1/+5
A simple example is provided in the Debuggers plugin. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1201 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-07Added cBlockArea:CopyTo() and :CopyFrom(), so now block areas can be duplicated easily.madmaxoft@gmail.com1-0/+6
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1199 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-07cBlockArea can now be saved as a .schematic file.madmaxoft@gmail.com1-0/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1198 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-06cBlockArea can now be loaded from a .schematic file.madmaxoft@gmail.com1-1/+10
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1195 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-02-06Added a new API call to cBlockArea: Crop().madmaxoft@gmail.com1-0/+9
Also fixed cBlockArea:MakeIndex(), the indexing was wrong. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1194 0a769ca7-a7f5-676a-18bf-c427514a06d6
2013-01-04cBlockArea now has a GetBlockTypeMeta() and GetRelBlockTypeMeta() methodsmadmaxoft@gmail.com1-0/+3
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1118 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-14Floody fluid sim: reads params from world.ini; water and lava react together into cobblestone / stone / obsidianmadmaxoft@gmail.com1-0/+4
git-svn-id: http://mc-server.googlecode.com/svn/trunk@965 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-14BlockArea: Added const-ness to non-modifying functions, so that a const cBlockArea & can be used.madmaxoft@gmail.com1-11/+11
git-svn-id: http://mc-server.googlecode.com/svn/trunk@960 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-10-06BlockArea writing support (BlockTypes with BlockMeta only)madmaxoft@gmail.com1-10/+23
git-svn-id: http://mc-server.googlecode.com/svn/trunk@933 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-09BlockArea name change revertedlapayo94@gmail.com1-0/+0
fixed VS2008 building git-svn-id: http://mc-server.googlecode.com/svn/trunk@649 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-08Squirrel Pluginslapayo94@gmail.com1-0/+0
I worked a little bit on the squirrel Bindings They work now on linux and windows :) (OSX is untested, but should work also) but they are very limited at the moment. (Only made OnChat working) I also fixed some small bugs. git-svn-id: http://mc-server.googlecode.com/svn/trunk@648 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-02Leaves decay properly - if they are not connected to a logmadmaxoft@gmail.com1-0/+9
git-svn-id: http://mc-server.googlecode.com/svn/trunk@644 0a769ca7-a7f5-676a-18bf-c427514a06d6
2012-07-02cBlockArea object added (with only minimal testing so far)madmaxoft@gmail.com1-0/+138
git-svn-id: http://mc-server.googlecode.com/svn/trunk@641 0a769ca7-a7f5-676a-18bf-c427514a06d6