1
0
Fork 0
Commit Graph

48 Commits

Author SHA1 Message Date
0ddlyoko 672bb04570
Add correct implementation of crops (#4802)
* [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>
2020-11-06 16:54:01 +00:00
Lukas Pioch 38080c7cac Update DispenserEntity.cpp
Removed unneeded cast
2020-04-25 12:27:39 +01:00
Lukas Pioch 91ab938166 Fixed spawning of mobs from dispenser 2020-04-25 12:27:39 +01:00
Mattes D 9ee47e5999 Using Super. 2020-04-16 20:07:48 +00:00
Mattes D 01b8ed5295
Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)
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
2020-04-03 08:57:01 +02:00
Mat 49dd645aa6
Don't remove items twice (#4524)
* Don't remove items twice
2020-03-22 12:17:04 +02:00
Mattes D 61904af626 Moved growing from cWorld / cChunk to cBlockHandler descendants. 2019-10-28 10:45:43 +01:00
Mattes D 365cbc6e1c
Refactored more of Entities and BlockEntities to use Vector3. (#4403) 2019-09-29 14:59:24 +02:00
peterbell10 950aeffff8
CheckBasicStyle: Check number of empty lines between functions (#4267)
Add check for number of empty lines between functions and fix the corresponding failures
2018-07-26 22:24:36 +01:00
Bond-009 104f9e127b Changed some int parameters to vector parameters (#3937) 2017-09-07 10:25:34 +02:00
Mattes D 0dd1cd750b BlockEntities: Support cloning self. 2017-06-16 14:11:28 +02:00
Lukas Pioch 73a3c4e3be Exported boat
- NBT: Added saving / loading of material
- Added the material in the item handler of the boat
- Drop the correct boat if destroyed
- APIDoc: Added desc and functions
2017-05-24 19:02:18 +02:00
Bond-009 9c9734282d Fireworks can be fired from a dispenser 2017-03-22 11:35:14 +01:00
QUSpilPrgm 33cd7f4e75 - Add a activation flag to droppers and dispensers. Previously droppers and dispensers shot items with every block update.
- Fixes a range check inside cIncrementalRedstoneSimulator::Simulate
2016-06-15 10:33:49 +02:00
QUSpilPrgm 706257f8fb Update Dispensers and let them act more like in Vanilla
- Added code to make bonemeal, potions, minecarts, XP bottles and boats work inside dispensers
- Dispensers are now able to place TNT if the block is transparent but not air
- Added return value that indicates the success of pumpkin, melon, sugarcane and cactus growing functions
- Changed return value of "GrowRipePlant" so that it actually indicates if the block was able to grow
- Fixed "GrowSugarcane" and "GrowCactus" in "GrowRipePlant" so that it only grows them a single block
2016-06-03 15:45:49 +02:00
hallucino 9c85ed5864 Spawn baby mobs 2015-07-16 22:49:55 +02:00
Mattes D cc069ccb2a Changed cEntity::m_UniqueID to UInt32. 2015-03-21 15:18:17 +01:00
Tiger Wang a26541a7c3 En masse NULL -> nullptr replace 2014-10-22 20:12:49 -07:00
Steven Riehl 856764dee8 convert old style casts to fix warnings 2014-10-11 20:39:55 -06:00
Tiger Wang d1814d2d67 Merge remote-tracking branch 'origin/master' into chestcarts
Conflicts:
	src/Entities/Minecart.cpp
2014-09-27 18:40:00 +01:00
Tycho a3f940f47c Removed more unessicary includes 2014-09-26 18:13:19 +01:00
worktycho 411c69b420 Merge pull request #1419 from mc-server/redstoneTests
Added test mocking to IncrementalRedstoneSimulator
2014-09-26 16:04:26 +01:00
Howaner 67fe834499 Fixed dispender direction bug 2014-09-25 18:37:36 +02:00
Tycho 6e7c0e33b5 Added first test to show the object can be created 2014-09-17 18:40:10 +01:00
Tiger Wang 3e74113427 Implemented Chest Minecarts 2014-09-12 23:18:02 +01:00
madmaxoft 220e6f5880 DispenserEntity code cleanup after PR merge. 2014-06-11 19:46:24 +02:00
JoannisO 720ae4f757 - Fixed a lot of alignment 2014-06-05 12:26:27 +02:00
JoannisO 852e162f95 - Removed the code that removed fireworks from a dispenser even thought
they weren't launched.
2014-06-04 12:40:01 +02:00
JoannisO e5b345a9c9 - Fixed variable names in a function. 2014-06-04 12:37:51 +02:00
JoannisO 2c103a713e - Fixed a lot of astethics 2014-06-04 12:35:45 +02:00
JoannisO 7993caa553 - Fixed an issue where there were 2 "DispChunk"-s in the same function.
Resused the initial one.
2014-06-03 19:43:15 +02:00
JoannisO c0716bfcf6 - Fixed a bug where I didn't return anything in the GetShootVector
function. This was however passed as "working" by GCC.
2014-06-03 19:39:56 +02:00
JoannisO 2ecf425c39 - Fixed a bug where I used the FireCharge ITEM instead of the Projectile
ENUM
2014-06-03 18:19:06 +02:00
JoannisO daae75b30b - Cleaned up the code massively
- Stopped using cChunk in the GetShootVector class. Parameter is now the
Metadata of the block
- Stopped using cChunk in the SpawnProjectileFromDispenser method now
using coordinates and finding the chunk by itself.
- Removed the matrix calculations from GetShootVector.
2014-06-03 17:21:38 +02:00
Joannis 545478802b - Added doxy comments and exported to lua
- Manipulation of the ShootVector is not to be done by the function that
wants to spawn a projectile.
2014-06-03 09:26:14 +02:00
JoannisO b436359237 - Changed the name of the ProjectileLookVector method.
Note: I still think the new name is unclear. Any other suggestions are
welcome.
2014-05-31 16:08:15 +02:00
JoannisO ab633c8bd6 - Prefixed all args with "a_"
- Added braces around the cases.
2014-05-29 20:19:36 +02:00
JoannisO 427bddc189 - Removed breaks. I thought it wouldn't compile without them but the
issue was appearantly solved with an earlier commit.
2014-05-28 15:16:45 +02:00
JoannisO 4bc02781af - Fixed an issue where dispensers would only shoot arrows (appearantly
some commits didn't come through)
- Cleaned up the code according to suggestions.
2014-05-28 14:34:33 +02:00
Joannis e5fd782524 - Implemented vertical dispensing for projectiles.
- Fixed some terrible commit issues on my side.
2014-05-28 09:10:09 +02:00
Joannis 1128dc783f - Fixed the ampersands and asterisks to fit the format.
- Fixed the method "SpawnProjectileFromDispenser" to use CamelCasing.
2014-05-27 11:08:06 +02:00
JoannisO 74801f5647 - Added support for more types of projectiles in the Dispenser
- Improved the method of spawning projectiles in the world
- Added another method for spawning the projectiles
2014-05-26 14:47:04 +02:00
JoannisO c9c2a4f479 Added Arrow- and FireCharge-Dispensing to DispenserEntity. 2014-05-26 08:44:16 +02:00
jfhumann f48d43f050 Fixed Flint and Steel, reverted Minecart change, renamed a parameter name 2014-04-19 20:51:52 +02:00
jfhumann 013da806ec Did some static analysis, fixed some bugs and optimized a lot of code 2014-04-18 21:09:44 +02:00
Howaner ccc29c7c6c Add fireball interact 2014-03-14 23:52:51 +01:00
Howaner b37966fd21 Change TNT Fuse to ticks 2014-03-08 12:24:33 +01:00
Alexander Harkness 675b4aa878 Moved source to src 2013-11-24 14:19:41 +00:00