1
0
Fork 0
Commit Graph

5674 Commits

Author SHA1 Message Date
DrButcher 3591be50b2
Fixing washing away of redstone mechanisms (#4665) 2020-04-17 21:01:21 +01:00
Mattes D 26ac146f41
More Vector3 in cBlockHandler (#4644)
* cBlockHandler.OnUpdate uses Vector3 params.

Also slightly changed how block ticking works.
2020-04-17 10:36:37 +01:00
Peter Bell 96bd4637d7 Implement glowing redstone ore 2020-04-16 23:49:33 +01:00
Tiger Wang ede56a5750
ಠ_ಠ (#4660)
+ Provisional handling for observers
2020-04-16 22:27:04 +01:00
Mattes D 9ee47e5999 Using Super. 2020-04-16 20:07:48 +00:00
Mat f931590bf0 Prevent crash when breeding 2020-04-16 18:03:51 +00:00
Bond_009 dc4df66548 Trapdoor can be placed anywhere since 1.9 2020-04-15 21:58:27 +00:00
Mattes D 42cc736bfd
ServerHandle: Fix closing failed servers. (#4653)
If the cServerHandle failed to listen, closing it would then crash Cuberite.
2020-04-15 14:13:40 +02:00
Mattes D f84bab3bc2
Fixed Lua Vector unification. (#4652) 2020-04-15 00:23:24 +01:00
Mattes D c9a9b3c9d0
Bindings: Allow coercion between Vector3 subtypes. (#4646)
In manually bound functions, allows one to use any Vector3<T> value, as well as a {x, y, z} table, in Lua as any Vector3<T> parameter.
Has example in Debuggers' /vector command.
Unfortunately doesn't work in auto-bindings.
2020-04-14 16:43:21 +02:00
DrButcher 35299b8509
Pressure plate sounds and delay (#4643)
+ Added sounds on depress and release
+ Added correct delay times
2020-04-13 23:23:43 +01:00
Peter Bell 43525c5df8 Acquire chunk map CS when accessing player entities 2020-04-13 17:13:38 +02:00
Mattes D fb05ea7cf7 Fixed entity teleport for just-spawned entities.
Includes a test code in the Debuggers plugin - throwing a cake-as-fallingblock.
2020-04-12 13:34:24 +02:00
Mattes D ef2d5027d3
Removed extended ASCII, and added a check against it. (#4642) 2020-04-12 09:24:30 +02:00
Alexander Harkness 8914355895 Fix rotation metas on blocks 2020-04-11 19:00:05 +00:00
GefaketHD 0712fd2d90 fixing rotation - rel. #4625 2020-04-11 19:00:05 +00:00
Alexander Harkness 0d72270186 Replace all single-digit hex constants with two-digit version 2020-04-10 13:07:16 +00:00
Alexander Harkness db118af6ae Remove silly empty cBlockGlazedTerracotta class 2020-04-10 13:07:16 +00:00
Alexander Harkness 49f301d5a4 Reduce line length on templates 2020-04-10 13:07:16 +00:00
Alexander Harkness e5cc698ee7 Add additional spacing between template/function definitions 2020-04-10 13:07:16 +00:00
Alexander Harkness 9bb001f17b Add doxy-comments to new functions 2020-04-10 13:07:16 +00:00
Alexander Harkness 2b77b67197 Fix comment text 2020-04-10 13:07:16 +00:00
Alexander Harkness f40aba941e Add mixins for blocks that rotate based on player yaw at placement
Also add observer block handler.
2020-04-10 13:07:16 +00:00
Alexander Harkness 458d7f95c2 Brewing stands do not have rotation 2020-04-10 13:07:16 +00:00
Alexander Harkness 48ccd93426 Add Terracotta handlers 2020-04-10 13:07:16 +00:00
Alexander Harkness cb21a4611d Correct Black Glazed Terracotta block handler 2020-04-10 13:07:16 +00:00
Alexander Harkness b8141f6c87 Add additional blocks which are not breakable by hand 2020-04-10 13:07:16 +00:00
Alexander Harkness 4a62e004c5 Change stained clay hardness value 2020-04-10 13:07:16 +00:00
Mat d4f3d674d1
Use correct value for zombie villager in 1.13 2020-04-10 05:17:46 +03:00
Alexander Harkness 4b3043f627
Fix compilation, for real this time.
I should go to sleep now...
2020-04-10 01:01:07 +01:00
Alexander Harkness a780b3a4f5
Oops, remember to save your files! 2020-04-10 00:53:04 +01:00
Bond-009 8438def87e
Add Zombie Villagers 2020-04-10 00:50:45 +01:00
Mat d966a12624
Don't set entity world twice (#4606)
* Don't set entity world twice

* Call HookSpawnedEntity when the entity actually spawned
2020-04-09 20:26:06 +00:00
Mattes D bdedab15c9
Falling blocks can now be spawned at any position. (#4620)
* Falling blocks can now be spawned at any position.

* Added a /cake command to Debuggers that throws a cake in a nice slow arc.

* Fixed regular falling blocks.
2020-04-09 20:25:20 +00:00
Mat 23219c4738 Wolves and mooshrooms are passive mobs 2020-04-09 12:39:45 +01:00
Mat 6a21bf979c
Initial resource pack support (#4622) 2020-04-07 21:23:54 +00:00
peterbell10 19ad96561c
Filter blocks to add to redstone sim's wake queue (#4621) 2020-04-05 19:20:52 +00:00
Alexander Harkness 16b3de94c8
Add potatoes to washed away list also 2020-04-05 12:43:03 +01:00
metiu07 6bde0dd9ad
FluidSimulator: Carrots should be also washable (#4619) 2020-04-05 11:41:31 +00:00
Lukas Pioch 9680408c16
Block entity for beacon was not created (#4618) 2020-04-04 19:34:00 +00:00
Alexander Harkness 2b9474f171
Remove switch statements from cItemFoodHandler (#4610)
* Remove switch statements from cItemFoodHandler

* Alpha-sort and add comment

* Relocate golden apple handler
2020-04-04 15:13:41 +00:00
Mat 3eaab73540
Potion changes (#4601)
* Correct protocol translation for potions

* Update brewing recipes
2020-04-04 14:16:36 +00:00
Mat 60bcc06f43
Implement wither skeletons (#4563) 2020-04-04 13:44:17 +02:00
peterbell10 aac592f985
Manage block entity lifetime with unique_ptr (#4080) 2020-04-03 23:23:38 +02:00
Alexander Harkness ba048e2101
New hotfix to prevent calling OnBroken (#4600)
* Fix stack overflow in breaking ice.

Stupid fix, but it does work and is used in other places too...

* Replace hotfix for pistons with better one

* Fix comments in BlockBed handler
2020-04-03 20:24:49 +00:00
Mat 4c6f95f49a
Quick fix to make spawn eggs work (#4611) 2020-04-03 21:56:48 +03:00
Mat 4ed182c13a
Tweak pickup sound pitch (#4598) 2020-04-03 15:49:12 +00:00
Mattes D a765e71325
Removed the obsolete cTracer class. (#4594) 2020-04-03 12:50:08 +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 318d31dc39
Use a reasonable listen backlog value (#4597) 2020-04-02 16:05:07 +02:00
Alexander Harkness cdc452916e
Replace buckets to the selected hotbar slot, rather than the first available. (#4580)
* Replace buckets to the selected hotbar slot, rather than the first available.

Replicates vanilla behaviour, as well as being more logical.

* Refactor cInventory::AddItem. Behaviour is now documented

* Add new cInventory::ReplaceOneEquippedItem and ::SetEquippedItem methods

* Return empty potion to the same slot after drinking

* Replace buckets correctly in other situations, not simply water and lava

Uses the new ReplaceOneEquippedItem method

* Correct collecting water from source block with bottle

* Add cPlayer::ReplaceOneEquippedItemTossRest method

* Handle stacked filled buckets (in theory)

Use new cPlayer::ReplaceOneEquippedItemTossRest method
2020-04-02 12:42:15 +00:00
mathiascode d5c58c6b17 Tweak attack ranges 2020-04-02 09:30:50 +02:00
peterbell10 59e38d1a46
Fix explosion knockback issues and tweak knockback strength (#4590) 2020-04-02 09:29:42 +02:00
Alexander Harkness 41d4ea6948
Fix off-by-one error and clean error messages in manual bindings for BlockArea (#4549)
* Correct off-by-one error in manual bindings for FillRelCuboid

Fixes #4454

* Fix inconsistent error messages in manual bindings for BlockArea

* Generate error if invalid coords passed to FillRelCuboid
2020-04-01 12:43:26 +00:00
Alexander Harkness 9210501af5
Prevent player from being destroyed by plugins (#4584)
* Prevent player from being destroyed by plugins

Add manual binding, bails out with error message if attempted
entity to destroy is player.

* Improve warnings and documentation, remove automatic binding

* Remove old and unnecessary deprecated function
2020-03-31 11:39:23 +00:00
Mat 5eb1ba3bcc
Lua API for spectating entities (#4518) 2020-03-30 21:35:37 +02:00
Mat c04ba834d1
Send experience on respawn (#4586) 2020-03-30 21:29:59 +02:00
peterbell10 6116f899de
Fix client disconnect assert (#4579) 2020-03-29 22:58:19 +02:00
Mat 31ace87d28
Add protocol mob ID remapping (#4538) 2020-03-29 17:54:37 +02:00
Alexander Harkness aa9a16b0c6
Fix build on Clang 2020-03-28 18:27:38 +00:00
Mat fce548139b
Inventory changes (#4561)
Co-Authored-By: peterbell10 <peterbell10@live.co.uk>
2020-03-28 13:52:40 +00:00
Xenoxis 1e1f79b795
Updated Bookshelves drop behaviour (#4567)
* Updated BookShelves Drop Behaviour

As described here : https://minecraft.gamepedia.com/Bookshelf#Loot

* Update src/Blocks/BlockBookShelf.h

* Update CONTRIBUTORS
2020-03-28 12:20:14 +00:00
Mat ec7247fa63
Toss all items from enchantment table (#4569) 2020-03-28 14:01:21 +02:00
peterbell10 1bc24055d5
cClientHandle: Only allow m_State to increase (#4533)
* cClientHandle: Only allow m_State to increase

* WasAddedToWorld was incorrect if kicked

* Rewrite cClient::Destroy with a guard clause
2020-03-28 10:44:44 +00:00
Xenoxis ae4d387f1d
Fix Snow Spawn on Cobblestone Slab (#4564) 2020-03-27 23:37:32 +00:00
Mat 92cf553bf8
Reduce ghast spawn rate again 2020-03-27 21:00:26 +02:00
Mat c9b3d2d95a
Reduce ghast spawn rate 2020-03-27 20:29:43 +02:00
Mat 7d8da81b92
Updated plugin list format (#4557) 2020-03-27 13:47:04 +01:00
Bond-009 ea386eaab1
Lock hopper when powered by redstone (#4347)
* Lock hopper when powered by redstone

* Add to manual bindings

* Add hopper API documentation

Co-authored-by: Mat <mail@mathias.is>
2020-03-27 12:03:28 +00:00
Alexander Harkness 3a2f364c95
Merge #4552
commit 28654b1f42a98c0f9910e333a9c8074fe30aff24
Author: Alexander Harkness <me@bearbin.net>
Date:   Fri Mar 27 11:58:34 2020 +0000

    Remove whitespace

commit f1492e174b51e168bf4fb150c2d7b7096c393057
Author: Odin <SirRobo@users.noreply.github.com>
Date:   Fri Mar 27 04:30:32 2020 +1100

    Add issue comment

commit b64166d68a327e8a9bf80720ff6e9c6af93921b5
Author: Odin <SirRobo@users.noreply.github.com>
Date:   Fri Mar 27 03:42:35 2020 +1100

    Don't run OnBroken with pistons

    Stops piston duplication bug and doesn't break water and lava simulation
2020-03-27 12:01:50 +00:00
Mat f5beeccd25
Fix typo in floater code (#4556) 2020-03-27 02:40:40 +02:00
Mat 996ce888e1
Fix typo in block break particle coordinate (#4555)
* Use Vector3d for block break particle

* Fix typo
2020-03-27 02:40:16 +02:00
Mat 2b32bb0b19
Decrease attack cooldown for monsters (#4542)
* Decrease attack cooldown for monsters

* Nerf some mobs

* Decimal points
2020-03-26 20:11:43 +02:00
Mat 84f86a467e
Improvements to blaze and ghast (#4547) 2020-03-26 18:54:40 +01:00
Mat 195bebb480
Disable bonemealable settings for now (#4551) 2020-03-26 17:06:15 +00:00
Mat b7e88e2c9f
Fix nether mob spawning (#4546)
* Fix nether mob spawning

* Remove zombie from nether mobs
2020-03-25 10:49:36 +00:00
Mat 782619e3f8
Send respawn packet by default (#4540) 2020-03-24 14:54:12 +00:00
Mat fdca7dc7f1
Furnace and brewing stand drops (#4534)
* Furnace drops contents

* Brewing stand drops contents

* Fix lit furnace drop

* Fix brewing stand drop

* Style

* Style
2020-03-24 14:16:09 +02:00
Max Luchterhand 08a9991b5a
When Client sends message longer than 256 bytes, kick him instead of handling message (#4514)
* Wrong overload of function push() got called when pushing a cEntity*.
Using a const cEntity * fixes this.

* Fixed accidental wrong indentation

* Compiler didn't like old style cast

* Kicking player when writing chat message longer than 2048

* Accounted for Astrings size() method returning bits, not bytes

* Fixed typo

* Changed MAX_STRING_SIZE to 1024, removed unnecessary division by 8

* Handling message length check in cClientHandle:HandleChat

* Guard clause instead of if else

* Remove stale changes

* Fixed formatting

Co-authored-by: mluchterhand <mluchterhand@max.de>
Co-authored-by: Peter Bell <peterbell10@live.co.uk>
Co-authored-by: Mattes D <github@xoft.cz>
2020-03-24 10:39:54 +02:00
Mat 0d0d019bbe
Fix certain item drops (#4536)
* Fix certain item drops

* Revert unwanted changes

* Revert unwanted changes

* Revert change

* Style fixes
2020-03-23 22:07:08 +02:00
mathiascode bff7319622 Enable functional packets in 1.13 2020-03-23 18:02:32 +02:00
Mat 4fde622e2d
Play sound when brewing is complete 2020-03-23 16:12:54 +02:00
Mat f5d24746d6
Jukebox improvements (#4537)
* Add jukebox block handler

Co-authored-by: peterbell10 <peterbell10@live.co.uk>
2020-03-23 13:45:09 +00:00
Alexander Harkness 0a68994f48 Manual merge of #4498.
Credit to @MeMuXin

Closes #4498
2020-03-23 12:18:12 +00:00
Mat 7d05e4402f
Don't attempt to give bucket with item count of 0 2020-03-23 11:39:32 +02:00
Mat 4b57513dd6
Cocoa pods have three growing stages 2020-03-23 10:19:52 +02:00
Mat 7700116330
Pickup spawn improvements (#4525)
Pickups are now thrown around when spawned, like in vanilla. Pickups also bail out of the collision detection checks while being created, to prevent them from blasting too far off in e.g. cobblestone generators.
2020-03-23 00:05:47 +00:00
Mat 41e09484b7
Don't push blocks outside world height limits (#4516)
* Don't push blocks outside world height limits

* Style fix

* Apply suggestion

Co-Authored-By: peterbell10 <peterbell10@live.co.uk>

* Apply suggestion

Co-Authored-By: peterbell10 <peterbell10@live.co.uk>

* Improvements

* Add block type check back

* Revert line break changes

* Update BlockPiston.cpp

Co-authored-by: peterbell10 <peterbell10@live.co.uk>
2020-03-22 22:51:11 +02:00
Mat 9ddf433ae7
Add ambient mob sounds (#4521) 2020-03-22 15:50:34 +00:00
Mat 076749bd36
Increase speed of splash potion and expbottle (#4513) 2020-03-22 17:44:24 +02:00
Mat 0b0d6b23d2
Fix effect crashes (#4530)
* Fix effect crashes

* Change according to suggestion
2020-03-22 17:34:24 +02:00
Mat c968f1f7da
TNT position fixes (#4519)
* TNT position fixes

* Don't add offset to explosion spawn coords

* Don't make other entities push TNT

* Correct initial TNT speed

* Fix typo

* Improvements

* Revert unwanted change

* Style fixes

* Update format
2020-03-22 17:33:36 +02:00
Mat 00ae9604e1
Fix invalid explosion damage (#4529) 2020-03-22 13:02:21 +00:00
Mat 581c1e5034
Fix typo in fish meta 2020-03-22 14:43:12 +02:00
Mat c0c9bf2b86
Don't enchant an already enchanted book 2020-03-22 13:32:24 +02:00
Mat c750c4e55f
Fix armor protection (#4506)
* Fix armor protection

* Check min damage

* Check min damage

* Commit missing changes

* Convert to int

* Use float

* Float some more
2020-03-22 12:39:32 +02:00
Mat 49dd645aa6
Don't remove items twice (#4524)
* Don't remove items twice
2020-03-22 12:17:04 +02:00
Mat 038194d2a6
Allow enderman to attack during day (#4522) 2020-03-22 12:13:44 +02:00
Mat 3d5a295423
Ender chest is not affected by piston (#4526) 2020-03-22 00:18:49 +00:00
Mat c4fc6a5343
Bonemeal cannot be used on cactus and sugar cane 2020-03-21 19:46:57 +02:00