* Alpha-sort cChestEntity
* Chests: use SendUpdateBlockEntity
* Pathfinder: fix out of range Y
* 1.13: correct weather packet ID
* Chests: fix neighbour scanner
+ Add OnAddToWorld and overload to scan neighbours there, instead of in the constructor/OnUse. This fixes hoppers accessing newly loaded double chests and seeing a null m_Neighbour, thus thinking its a single chest.
* Fix typo in cross coords computation.
* Simplify hopper logic.
* Block entities: ASSERT that type is correct
If you match the block type first before calling DoWithBlockEntity, the corresponding block entity must either be empty or correspond to the block type.
* Chunk: fix some forgotten PendingSendBE cleanup
+ Add cleanup in SetAllData, WriteBlockArea
- Remove RemoveBlockEntity (used once), HasBlockEntity (not used)
* Replace MakeIndex with MakeIndexNoCheck
* Remove extraneous MarkDirty in hopper & chests
* 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.
+ DoWith calls now broadcast the block entity and mark the chunk dirty
+ Add block entity change queue to synchronise BE updates with block updates
* Fixed a few incorrect assertions about BE type
- Remove manual overloads
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.
* [FIX] Add correct implementation of seed drops.
> Official percentage of drops has been implemented
* Fix C++ conventions
* Change "Vals" variable to "m_Vals"
* [FIX] Add correct implementation of Carrots, Potatoes, Wheat & Beetroots seed
* Add Fortune support with crops
Add fortune support with Wheat, Carrots, Potatoes & Beetroots seeds
* [FIX] Right-clicking on a grown Beetroot in survival consume 2 bone meals
Fix#4805
* Add documentation for "cWorld::IsFullGrownPlantAt" method
* Fix dispenser that full grown a plant
> Change methods cItemDyeHandler::FertilizePlant & cItemDyeHandler::growPlantsAround to static
* Display particle even if tree doesn't grow
* When right-clicking on a full grown melon / pumpkin seed, no longer produce a melon / pumpkin
Before this commit, when you right-click on a melon or a pumpkin seed, a melon / pumpkin block spawned.
With this commit, it no longer spawns
* [FIX] Do not create melon / pumpkin block when right-clicking with a bone meal
This fix will prevent the creation of a melon / pumpkin block when you right-click with a bone meal on a melon / pumpkin plant
- It just detect if the plant is full grown. if yes, the method "Grow" is not called
- Remove IsFullGrownPlant
Co-authored-by: 12xx12 <12xx12100@gmail.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
* added breaking, spawning, animation
* checkstyle
* added undocumented API symbols
* added changes suggested by @peterbell10
* added natural ore like generation
* fixed spawning two silverfishes
* fixed clang
* fixed clang try 2
* updated comment
unified offset
* final clang fix
* added spawning for more silverfishes if one was damaged
* fixed spawning on one hit kill
* fixed spawning on one hit kill
fixed spawning by potion damage
* fixed clang
* fixed broken build
* fixed broken build
* I should read the error message properly
fixed build now?
* added small changes suggested by @peterbell10
Co-authored-by: 12xx12 <12xx12100@gmail.com>
+ Implemented and standardized all clamped discrete random drops.
+ Changed cItems Add from push_back to emplace_back. Implement fortune for crops.
+ Enabled hoes to be enchanted with efficiency, silk touch and fortune. Made leaves, gravel and crops affected by fortune.
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
* Removed BiomeDef.h
* Removed ChunkDef.h from Globals.h
* Added to CONTRIBUTORS.
* Re-added empty last line to Globals.h
* Included stddef and StringUtils in BiomeDef.h
* Fixed build tools compiling. It compiles, but at what cost?
* Added include to src/Generating/Trees.h
* Include added in ChunkGeneratorThread.h
* Moved rearranged includes in LineBlockTracer.cpp
* Re-arrange headers in ChunkInterface.cpp
* Included ChunkDef.h in Path.h
* Included ChunkDef.h in NBTChunkSerializer.h
* Rearranged included and added required includes to headers.
* Removed unnecessary included in StringUtils.h.
* Implemented fortune for ores, glowstone and sea lanterns (but nothing organic or flint).
* Cleanup printf
* Stopped playing golf, gave the Camels a FirstHump and moved the FortuneDropMult comment. Thanks for the review :).
* Got rid of FortuneDropMult and replaced with Peter's massive optimization/simplification.
* Fixed default lapis max droprate (8 -> 9).
* Clamp max drops for non-redstone ores to 10.
* Comment justifying the clamp.
* 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>