summaryrefslogtreecommitdiffstats
path: root/tests/Generating (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Do not fake a tool when converting to pickups (#5170)Tiger Wang2021-03-281-1/+1
| | | | | * When the cause of destruction was world-induced (CanBeAt check failed) there is no tool. Pass the nullptr directly to ConvertToPickups and let it handle it. * Fixes #4795 - Remove unused a_Digger parameter to ConvertToPickups.
* Remove DoesDropOnUnsuitableTiger Wang2021-03-151-9/+0
| | | | This is only overridden false in Vines and Snow. It is called when a CanBeAt check fails, to determine whether DropBlockAsPickups is called. However, Vines and Snow already drop nothing without the right tool, so this function is superfluous.
* zlib -> libdeflate (#5085)Tiger Wang2021-01-111-1/+1
| | | | | | + Use libdeflate + Use std::byte * Fix passing temporary to string_view + Emulate make_unique_for_overwrite
* Fix Android builds (#4998)Tiger Wang2020-10-151-128/+128
| | | | | Construct paths relative to the Cuberite sources with PROJECT_SOURCE_DIR, instead of wherever the first CMakeLists.txt file happened to be with CMAKE_SOURCE_DIR. In Android's case, the latter was in a folder called android/ but that's not the root of the source tree, so any file path built off that root was wrong. This caused file-specific warnings exclusions to fail to apply.
* Unify block entity pickup conversionTiger Wang2020-09-251-1/+1
| | | | | - Removed normal BlockHandler knowledge of block entities during conversion + Added cBlockEntity::ConvertToPickups that handles it
* BlockHandler initialisation is a constant expression (#4891)Tiger Wang2020-09-201-32/+24
| | | | | | | | | | | | | * 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>
* Adding Generator For Single Piece Structures (#4830)12xx122020-09-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * the beginning of a magnificent work - added basic files and classes without functionality * fixed checkstyle * added imports * moved imports * - Adding SinglePieceStructureGen - Adding a cPrefabChestStructure to generate Chests with contents - Added the options and calls to the ComposableGenerator * moved Globals to .h file * removed the chest thingy from the code (for now) * Update SinglePieceStructureGen.cpp * readded whitespace * renamed to SinglePieceStructuresGen for consistency added new classes to test * fixed small things (mostly style and cleanup) removed loottables * added small changes suggested by madmaxoft * small change to documentation * added check for allowed biomes * check only the biome of the origin position * fixed error on IsBiomeAllowed * added new cubesets * updated structures for with sponging * updated biome names * updated metadata to prevent crashing removed debug output * updated structures with sponging * added sponging to deserterWell to make it disappear in sand * small change in meta * rename DesertTemple -> DesertPyramid * minor style changes Co-authored-by: 12xx12 <12xx12100@gmail.com> Co-authored-by: Alexander Harkness <me@bearbin.net>
* BlockHandler: no dynamic allocation (#4862)Tiger Wang2020-09-171-2/+4
| | | * BlockHandler: no dynamic allocation
* Fixup test block handler stubsTiger Wang2020-08-041-17/+1
|
* Upgrade to C++17 [CMake] (#4717)Tiger Wang2020-05-161-7/+2
| | | * Make our CMake slightly less insane
* Update submodules (#4727)peterbell102020-05-091-1/+1
| | | | | | | | | | | | | Closes #4708 This updates jsoncpp, mbedtls, TCLAP and SQLiteCpp to their latest stable release. A few additional changes were needed: * jsoncpp deprecated Reader, FastWriter and StyledWriter which I've replaced with some helper functions in JsonUtils.cpp * SQLiteCpp changed how it builds with external sqlite libraries, now expecting them to be installed. The simplest path was to remove sqlite from cuberite's submodule and just use SQLiteCpp's internal version.
* Require semi-colon at end of function-like macros (#4719)peterbell102020-05-052-6/+9
|
* Vector3 in Handlers (#4680)Mattes D2020-04-211-4/+5
| | | Refactored all cBlockHandler and cItemHandler descendants to use Vector3.
* More Vector3 in cBlockHandler (#4644)Mattes D2020-04-171-1/+1
| | | | | * cBlockHandler.OnUpdate uses Vector3 params. Also slightly changed how block ticking works.
* Manage block entity lifetime with unique_ptr (#4080)peterbell102020-04-031-2/+2
|
* Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)Mattes D2020-04-033-33/+69
| | | | | | | | | 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-21/+6
|
* Refactored more of Entities and BlockEntities to use Vector3. (#4403)Mattes D2019-09-291-3/+3
|
* ChunkGenerator: Changed to use cChunkCoords.Mattes D2019-09-081-3/+3
|
* Generator: Added repeatability test.Mattes D2019-09-072-24/+114
|
* Added a BasicGeneratorTest.Mattes D2019-09-063-0/+325
|
* Separated chunk generator from world / plugin interfaces.Mattes D2019-09-061-25/+101
| | | | The generator now only takes care of servicing synchronous "GetChunk(X, Y)" and "GetBiomes(X, Y)" requests.
* Improved testing framework. (#4376)Mattes D2019-08-261-2/+3
|
* Add the fmt library (#4065)peterbell102018-01-031-1/+2
| | | | | | | * Replaces AppendVPrintf with fmt::sprintf * fmt::ArgList now used as a type safe alternative to varargs. * Removed SIZE_T_FMT compatibility macros. fmt::sprintf is fully portable and supports %zu. * Adds FLOG functions to log with fmt's native formatting style.
* cChunkInterface GetBlock, GetBlockMeta, GetBlockTypeMeta use vectors (#4050)Bond-0092017-11-201-1/+1
|
* Add cUUID class (#3871)peterbell102017-08-253-0/+26
|
* cBlockHandler: take player by refpeterbell102017-08-011-3/+3
|
* Check for intersection between placed blocks and entities. (#3850)Lane Kolbly2017-07-281-0/+16
| | | | | | | | | | | | | * Check for intersection between placed blocks and entities. + Implemented GetPlacementCollisionBox, to permit custom placement collision boxes for blocks. * Factored block-entity placement checking into another function in cPlayer. - Removed vector min/max functions * Use GetWorld to get the world in DoesPlacingBlocksIntersectEntity. + Added block height checks, allow different cEntity subclasses to decide whether they will prevent block placement.
* BigFlower fixes (#3826)peterbell102017-07-071-1/+1
| | | | | | | * BigFlowers fixes * Correct upper part meta * Documented parameters to DoesIgnoreBuildCollision
* cBlockInfo static initialisation (#3832)peterbell102017-07-031-4/+6
|
* cBlockArea supports block entities. (#3795)Mattes D2017-06-241-0/+26
|
* Removed the LeakFinder for Windows. (#3777)Mattes D2017-06-191-5/+2
|
* Gen: Added a simple PieceGeneratorBFSTree test.Mattes D2017-05-042-0/+103
|
* Gen: Moved tests to a separate folder, unified shared sources.Mattes D2017-05-049-0/+953