1
0
Commit Graph

648 Commits

Author SHA1 Message Date
Alexander Harkness
6309c6a97f
improve rain simulation (#4017)
* Uses vanilla logic to decide which blocks rain falls through.
 * Rain falls infinitely above the world, and stops at y=0.
 * Entities will now be extinguished if they are under rain-blocking
blocks, and fire will now be extinguished by rain similarly.
 * Create IsWeatherWetAtXYZ to identify wetness at a particular location. 
 * Use new code for enderman rain detection.
 * Fixes issue #916
 * Disable warnings for global constructors in the fire simulator.
2017-12-26 21:25:57 +00:00
peterbell10
ef091fe24b cBlockRail: Fix assertion failure (#4075) 2017-11-21 21:54:21 +00:00
Bond-009
5badb9bcca cChunkInterface GetBlock, GetBlockMeta, GetBlockTypeMeta use vectors (#4050) 2017-11-20 11:13:11 +00:00
peterbell10
15fd4ef829 Only allow snow to be placed where valid. Fixes #2920. 2017-09-21 13:01:00 +01:00
peterbell10
ab4f0df5b9 Only allow rails to be placed where valid.
Fixes #3507.
2017-09-21 13:01:00 +01:00
Lane Kolbly
30c8470a52 Changed BroadcastSoundEffect, SendSoundEffect, and CastThunderbolt parameters to vectors (#3959)
* Made BroadcastSoundEffect take vector parameters.

* Added docs for new vectored methods

* Removed old code

* Fixed lua warnings

* Made old BroadcastSoundEffect not an override.

* m_Block to m_BlockPos, used Vector3d constructor where prettier.

* a_Block to a_BlockPos

* Changed thunderbolt a_Block to a_BlockPos
2017-09-19 15:12:54 +01:00
Bond-009
491e91dc88 Leaves now drop with the correct meta when broken by a pickaxe with silk touch (#4034) 2017-09-19 09:44:21 +01:00
Lukas Pioch
c5f590d460 Removed UTF-8 BOM (#4033) 2017-09-19 10:34:08 +02:00
peterbell10
e225b7f826 Replace ItemCallbacks with lambdas (#3993) 2017-09-11 23:20:49 +02:00
LogicParrot
49c443896d Revert "Replace ItemCallbacks with lambdas (#3948)"
This reverts commit 496c337cdf.
2017-09-02 08:50:23 +01:00
peterbell10
496c337cdf Replace ItemCallbacks with lambdas (#3948) 2017-09-01 13:04:50 +02:00
Bond-009
00d077de1b Drop enderchest when broken by a silk touck pick (#3986) 2017-08-31 17:50:07 +02:00
Lane Kolbly
87c89a1727 Bed piston fix (#3956)
* Threaded world interface into ConvertBlockToPickups

* Changed how cBlockPiston::PushBlocks sets the old block to air, so that the block exists for the DropBlock call.

* Removed unused a_Digger argument.

* Removed incorrect comment

* This time actually removed a_Digger references.
2017-08-25 10:56:01 +01:00
mathiascode
02775e52c4 Minor changes (#3909) 2017-08-24 11:19:40 +02:00
Bond-009
ce87b73127 Fixed build for older clang versions (#3935) 2017-08-21 10:40:05 +01:00
Pablo Beltrán
b18f6637b6 Fully implemented leashes (#3798) 2017-08-21 10:46:41 +02:00
Lane Kolbly
7bdbfad1bb Changed int parameters to vector parameters in cCuboid and simulators (#3874) 2017-08-17 15:48:38 +02:00
Lukas Pioch
743a50014a Replaced includes with forward declarations 2017-08-13 12:31:10 +01:00
Lukas Pioch
07f25253a2 Removed unneeded includes (#3902) 2017-08-06 20:57:44 +01:00
peterbell10
759618b035 Remove double includes part 2 (#3890) 2017-08-03 15:34:19 +02:00
Lukas Pioch
0397535fa7 Removed unused forward declarations (#3888) 2017-08-03 15:10:29 +02:00
Lukas Pioch
4691bc5a29 Removed double includes (#3885) 2017-08-02 19:57:20 +01:00
peterbell10
0d0323608d cBlockHandler: take player by ref 2017-08-01 08:21:20 +02:00
peterbell10
8eb5672920 cWorld::SendBlockTo take player by ref 2017-08-01 08:21:20 +02:00
Lane Kolbly
5402b214b3 Check for intersection between placed blocks and entities. (#3850)
* 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.
2017-07-28 17:59:21 +01:00
Bond-009
f9b56dd859 Break the cactus block when it grows next to a block. (#3851) 2017-07-18 15:14:52 +02:00
Lane Kolbly
93e1690253 Made cBlockHandler OnPlacedByPlayer call OnPlaced, made BlockRailHandler use NeighborChanged instead of OnNeighborChanged. 2017-07-18 15:12:55 +02:00
peterbell10
60dfaa0967 Allocate redstone component handlers upfront 2017-07-17 21:40:43 +02:00
Lane Kolbly
793acd267f Changing pickup lifetime and combining semantics, making these adjustable in the lua api. (#3843) 2017-07-12 12:13:27 +02:00
peterbell10
bbf5bec817 BigFlower fixes (#3826)
* BigFlowers fixes

* Correct upper part meta
* Documented parameters to DoesIgnoreBuildCollision
2017-07-07 16:37:53 +02:00
Lukas Pioch
885d828712 Added bed entity (#3823)
* Added bed entity

* Export cBedEntity to lua
* Set color of bed through item damage value
* Added bed entity to APIDoc
* NBT: Added loading and saving
* Crafting recipes for the colored beds
2017-07-07 09:31:45 +02:00
peterbell10
d838ef7ba4 cBlockInfo static initialisation (#3832) 2017-07-03 18:34:27 +02:00
Bond_009
070cb0d21f You can't use beds when there are hostile mobs nearby 2017-07-02 17:10:57 +02:00
Bond-009
8484d05d65 Pressure plates can be placed on fences and hoppers (#3796) 2017-06-22 21:11:46 +02:00
Bond-009
0e1649a0f1 Fix shears (and vines)
* Shears now lose durability when breaking any block
* Leaves don't drop 2 leaves anymore when broken by shears
* Removed the chance to drop saplings or apples when leaves are broken by shears
* Vines can't be attached to ender chests, pistons and redstone repeaters
2017-06-21 08:09:03 +02:00
peterbell10
9201c7be7a Generated tall flowers have flower type meta in both blocks 2017-06-19 20:18:44 +02:00
dbhicks
8d5f01530d Double tall grass drops seeds when broken by water (#3763) 2017-06-14 14:23:33 +02:00
peterbell10
360d8eade0 FastRandom rewrite (#3754) 2017-06-13 21:35:30 +02:00
Lukas Pioch
7922e6addb Fixes problems with windows:
- Changed cPlayer:OpenWindow to accept a ref, tolua adds a nil check
- Close open lua window in destructor, to avoid dangling pointers
2017-06-05 15:14:23 +02:00
Lukas Pioch
e35ac1bfb9 Clang 5.0 fixes
- Added override keyword
- Removed inherited member variables
2017-05-21 12:19:06 +02:00
Mattes D
ed1b78bcb6 BlockHandlers: vertical alignment. 2017-05-09 11:13:44 +02:00
Mattes D
473a4ae226 BlockCrops: Fixed RipeMeta off-by-one error properly.
Ref.: #3691
2017-05-09 11:11:06 +02:00
dbhicks
dffbf0b510 Adjusted RipeMeta for off by one error (#3691) 2017-05-06 02:41:01 +01:00
Lukas Pioch
36dea62662 Replace double grass and large fern with placed block 2017-04-06 11:14:27 +02:00
Bond-009
ef85c2e686 Deadbushes drop sticks 2017-03-19 21:57:41 +01:00
Mattes D
7c17f77c84 BlockCrops: Fixed comments and reformatted control flow. (#3576) 2017-02-25 10:54:44 +01:00
mathiascode
dae2adde65 Updated sounds and effect IDs (#3422) 2017-02-15 06:05:24 +01:00
mathiascode
4311f4a658 Added some blocks and items (#3503) 2017-02-14 11:13:55 +01:00
Mattes D
cbff1378fd Fixed bindings for cBlockArea:Read and Write. (#3568)
The original bindings accepted nil as the World param, causing a crash.
2017-02-05 16:00:38 +01:00
Altenius
0896b3b079 Changed big flowers so they don't need air above them. 2017-01-28 13:55:38 +01:00
Altenius
2d376304c2 Changed big flowers so they can only be placed on dirt 2017-01-28 13:55:38 +01:00
Mattes D
e8fb85be88 Fix meta mirror (#3470) 2016-12-09 12:29:04 +01:00
mohe2015
502b5ec732 StyleCheck: Add "else has to be on a separate line" (#3412) 2016-10-20 19:09:18 +02:00
Moritz Borcherding
b268db4caa Use cChunkDef::Height for Y coord comparison where applicable. 2016-09-27 14:32:20 +02:00
ElNounch
40b929c02e Fix breaking ice in survival not giving a water's source (#3356)
Fix #3355
2016-08-28 08:18:32 +03:00
Tiger Wang
d46f7ce2c8 Redstone fixes (#3285)
* Comparators and pistons no longer update instantly
* Fixes #3168.
* Consolidated comparator code
* As a result, fixed an issue where GetPowerLevel didn't consider block
entities behind it (only GetFrontPowerLevel did)
2016-07-31 21:54:35 +01:00
Mattes D
a3112cdc45 Revert "Redstone fixes" 2016-07-29 07:56:50 +02:00
Tiger Wang
62090e7bed Consolidated comparator code
* As a result, fixed an issue where GetPowerLevel didn't consider block
entities behind it (only GetFrontPowerLevel did)
2016-07-28 23:20:53 +01:00
Tiger Wang
04cc8aa0f5 Comparators and pistons no longer update instantly
* Fixes #3168.
2016-07-28 23:20:52 +01:00
Mattes D
8eaa8613da CMake: Remove needless minimum version specifications. 2016-07-18 22:11:42 +02:00
gaurav sehgal
97b9422a3e removed cast from BlockTrapdoor.h (#3256) 2016-07-07 09:55:07 +02:00
Altenius
c54f9cede2 Fixed piston destroying other pistons
Fixes #3251
2016-07-06 08:04:58 -04:00
LogicParrot
7f5757eccf Reduced unnecessary block updates 2016-04-23 00:30:00 +03:00
LogicParrot
c921f47d85 Prevented snow from killing grass 2016-04-16 21:54:35 +03:00
LogicParrot
373d9f92a4 Updated cChunk::SetMeta, fixed grass growth, reduced markDirty/setMeta usage 2016-04-16 19:04:45 +03:00
Drahoslav Bednář
d85c3590fc Fix Pickups of BlockFlower
BlockMeta is handled correctly, when converting to pickups, so flowers
now drops right flower type.
2016-02-06 22:04:00 +01:00
LogicParrot
ca6ef58b1e Bulk clearing of whitespace 2016-02-05 23:50:18 +02:00
Kevin Riggle
e4a8c681b0 implement height logic for Acacia blocks 2016-02-04 01:20:31 -05:00
Mathias
d17c8fa349 Fixed typo 2016-01-03 16:29:04 +02:00
Mathias
8e2b2e7a18 More blocks that can't be mined with silktouch 2016-01-03 16:27:02 +02:00
Mattes D
80e1eb37dd Renamed leftover strings to Cuberite / Server, as needed.
Also upgraded the user setting file for MSVC to 2013.
2016-01-01 21:05:09 +01:00
Tiger Wang
b8752bb26e Merge pull request #2542 from Haxi52/pinkstone
Reorganised the redstone simulator
2015-12-19 21:20:56 +00:00
Alexander Harkness
8b851d5048 Added HTTPS links wherever they are supported. 2015-12-19 14:30:32 +00:00
Tiger Wang
5b62c4c314 Reorganised the redstone simulator
-> Many thanks to @worktycho for the idea, and @Haxi52 for the implementation plan!
* Uses classes and inheritance now
* Speed should be improved
2015-12-18 13:17:38 +00:00
Lukas Pioch
d620dcdd08 Moved variables into scope, removed unused variables and fixed variables 2015-12-17 10:48:36 +01:00
worktycho
1e5ba8a1bb Merge pull request #2638 from Gargaj/master
Implement block heights + adapt ground checks
2015-12-14 20:31:33 +00:00
Julian Laubstein
378b2b8ca6 Strip meta from hopper on converting to pickup 2015-12-13 15:46:43 +01:00
Gargaj
66e6589883 blockheight mechanism 2015-12-13 15:16:15 +01:00
Safwat Halaby
1540867cb5 Set overgrown wart age to 3 2015-12-13 15:55:09 +02:00
Gargaj
f9008a4860 allow use failures to propagate from the entity/block to the player 2015-12-13 13:27:38 +01:00
Gargaj
115865f845 Nether wart only ages to 3
See http://minecraft.gamepedia.com/Nether_Wart
2015-12-12 00:46:01 +01:00
Dave Tucker
83870f9fc0 Add enum for Sound and Particle Effects
Fixes #2603

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2015-11-24 13:21:40 +00:00
Julian Laubstein
b87e0b6b15 Adjusted height validation using cChunkDef::IsValidHeight() 2015-11-23 03:17:32 +01:00
bibo38
ea55e75672 Refactored code to use vectors in the cPistonHandler class 2015-11-07 17:34:54 +01:00
bibo38
429f615390 Added some code improvements 2015-11-07 17:23:02 +01:00
bibo38
0447af8bcb Renamed GetDirectionVec into VectorFromMetaData to improve code readability. 2015-11-07 17:23:02 +01:00
bibo38
f8c28cc373 Commented the GetDirectionVec method 2015-11-07 17:23:02 +01:00
bibo38
64012bf46f Fixed the style problems and added some comments 2015-11-07 17:23:02 +01:00
bibo38
5fa077f869 Removed unused CanPull method 2015-11-07 17:23:02 +01:00
bibo38
558991a725 Extracted block moving code into a seperate method 2015-11-07 17:23:02 +01:00
bibo38
f35060e8b5 Replaced the usage of pistonMeta with a direction vector to allow better meta value abstraction 2015-11-07 17:23:02 +01:00
bibo38
ceec6c936d Fixed pulling/pushing of breakable blocks, which are not required to be moved 2015-11-07 17:23:02 +01:00
bibo38
ede4eec4c5 Implemented the basic slime block pulling 2015-11-07 17:23:02 +01:00
bibo38
59a9ac5e6f Implemented the SlimeBlock into the CanPush method to allow slimeblocks to work correctly when pushed 2015-11-07 17:23:02 +01:00
bibo38
8f066a16ec Piston extension now works with the new recursive CanPushBlock method. 2015-11-07 17:23:02 +01:00
bibo38
e2d88106a9 Added the CanPushBlock method for the piston push check.
This allows the recursive check for blocks to push, which is needed to implement the slime blocks into the piston system.
2015-11-07 17:23:02 +01:00
bibo38
d92a92d78a Implemented the slime block dropping behaviour.
Fixes #2530
2015-11-07 17:23:02 +01:00
Lukas Pioch
9749c3aac9 Implemented brewing 2015-11-03 18:00:55 +01:00
Tiger Wang
a8bfe3a4c1 Prepared ScheduleTask for threading refactor
* Llama-ified and condensed Schedule/QueueTask
- Removed hackery done with piston animations
2015-09-25 18:56:49 +01:00
Mattes D
741dc78547 Lilypads drop when not on source water.
Lilypad blocks now break and drop as items when the block below them changes to non-water or non-source water.
Fixes #2404.
2015-09-25 14:42:32 +02:00