summaryrefslogtreecommitdiffstats
path: root/src/Protocol/Protocol_1_11.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-07-19Pickups: improve coalescing implementationPickupsTiger Wang1-1/+1
+ Add ability to coalesce before spawning in to world. * Adapt coalescing for pickup entities already in the world to be more like Vanilla.
2022-04-21Protocol sources fixes (#5411)Simon Pribylski1-13/+0
* Move HANDLE_READ to header * Fix compiler warnings * Removed unnecessary default statement
2022-04-20Valid Height is now checked by vector.x12xx12x1-1/+1
2022-04-20Updated protocol functions to Vector3xx12xx12x1-4/+4
also added support in included functions
2022-01-02WriteBlockEntity: don't write position multiple times (#5373)Tiger Wang1-7/+5
2021-12-29Add skeleton bow pulling animation (#5355)Persson-dev1-1/+13
* Added basic skeleton bow animation * Fixing style
2021-04-30Chest, weather, crash, and miscellaneous fixes (#5215)Tiger Wang1-2/+10
* 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
2021-04-12More cProtocol cleanupTiger Wang1-19/+19
* Alpha sort functions * Simplify hand handling * Fix left handed mode client-side display
2021-04-12Unify multiprotocol entity animationsTiger Wang1-0/+53
2021-03-28Unify DoWithBlockEntity (#5168)Tiger Wang1-5/+0
+ 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
2021-03-18Deduplicate WriteBlockEntityTiger Wang1-126/+66
2021-03-15Adding basic Banner functionality (#4806)12xx121-0/+13
+ Added item and block for banners Co-authored-by: 12xx12 <12xx12100@gmail.com> Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-02-20Mark UNREACHABLE with intrinsicsTiger Wang1-5/+2
2021-01-11zlib -> libdeflate (#5085)Tiger Wang1-1/+1
+ Use libdeflate + Use std::byte * Fix passing temporary to string_view + Emulate make_unique_for_overwrite
2020-11-23Adding new monster types to enum and saving/loading for easier future implementation (#4941)12xx121-7/+84
* added new monster types to enum added string <-> enum conversion in namespace serializer added loading functions added to saving * renamed zombie pigman to zombified piglins in enum Co-authored-by: 12xx12 <12xx12100@gmail.com> Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-11-06Ender Crytal Fix and report proper cmake file for luabindingscheck fail (#5017)12xx121-4/+4
* fixed network fixed explosion fixed ticking added network broadcast to Setter method added nullptr protection using macros in 1.10 Protocol_1_10.cpp revealed functions to LUA API small fixups, typos, less functions used fixed more doc readded info that saving is done only if the beam is displayed made the constructor transfer all needed members fixed wrong commit removed default parameters on SpawnEnderCrystal fixed wrong metadata moved call to destroy in the right place fixed some typos Fixed Ender Crystal * fixed documentation * fixed doc and added proper error message * Parameters, arrows * Parameters Co-authored-by: 12xx12 <12xx12100@gmail.com> Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-10-29Add beam target, configurable base visibility to Ender Crystals (#5010)12xx121-0/+17
* Fixes #4990 Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-08-21Made cProtocol::Version, EntityMetadata enums less verboseTiger Wang1-2/+2
2020-07-261.14 connection supportTiger Wang1-1/+1
2020-07-20Remove some unused inclusionsTiger Wang1-1/+0
2020-07-19Inherit constructors, remove duplicationTiger Wang1-16/+4
2020-07-18Delete duplicated status request handlersTiger Wang1-81/+11
Here we go again...
2020-07-17cProtocolRecognizer goes on a diet (#4770)Tiger Wang1-2/+2
- Removed inheritance from cProtocol
2020-07-06Made grass spreader prettierTiger Wang1-1/+1
2020-05-15Enable some more clang-tidy linter checks (#4738)peterbell101-1/+1
* Avoid inefficient AString -> c_str() -> AString round trip * Avoid redundant string init expressions * Avoid unnecessary return, continue, etc. * Add .clang-format to help with clang-tidy fix-its * Avoid unnecessary passing by value * Avoid unnecessary local copying * Avoid copying in range-for loops * Avoid over-complicated boolean expressions * Some violations missed by my local clang-tidy * Allow unnecessary continue statements * Add brackets * Another expression missed locally * Move BindingsProcessor call into clang-tidy.sh and add space * Fix pushd not found error * Different grouping of CheckBlockInteractionRate
2020-05-09Update submodules (#4727)peterbell101-4/+3
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.
2020-05-04Fix one definition rule violationsTiger Wang1-4/+4
2020-05-04Improve entity position updates (#4701)Tiger Wang1-4/+4
* Make puking pickups fly nicer * Improve entity position updates * Move determination of whether a delta is too big for a packet into the protocol handlers + Less jittery movement + Generalise CollectEntity to take any entity
2020-05-01Unify entity spawn packet sendingTiger Wang1-1/+1
2020-04-10Fix compilation, for real this time.Alexander Harkness1-0/+1
I should go to sleep now...
2020-04-10Add Zombie VillagersBond-0091-9/+17
2020-04-04Implement wither skeletons (#4563)Mat1-11/+1
2020-03-29Add protocol mob ID remapping (#4538)Mat1-1/+46
2020-03-05Use LastSentPos for mob spawn packet in 1.11+ (#4490)Mat1-3/+4
2019-09-10Protocol: Use logical outgoing packet types.Mattes D1-10/+11
2019-08-11Fix building with clang 8.0 (#4346)Bond-0091-4/+6
2018-07-26CheckBasicStyle: Check number of empty lines between functions (#4267)peterbell101-2/+0
Add check for number of empty lines between functions and fix the corresponding failures
2018-05-02Prefer static_cast to reinterpret_cast (#4223)peterbell101-38/+38
* Change reinterpret_cast -> static_cast wherever possible * Remove more unnecessary `const_cast`s. reinterpret_casts should be avoided for the same reason as c-style casts - they don't do any type-checking. reinterpret_cast was mainly being used for down-casting in inheritance hierarchies but static_cast works just as well while also making sure that there is actually an inheritance relationship there.
2018-01-08Rewrite cClientHandle::HandleRightClick (#4089)9caihezi1-1/+1
* Add hand parameter to distinguish main hand/off hand. * Add a new function cClientHandle::HandleUseItem to separate the functionality of using an item without a target block. This matches the protocol with client version >= 1.9 * Always actively update the status of a block if the placement fails (by out of reach or rejected by plugin). * Do not call plugin callback CallHookPlayerRightClick(-1, 255, -1, -1, 0, 0, 0) when using item. The CallHookPlayerUsingItem will still be called. Now at most one of CallHookPlayerRightClick, CallHookPlayerUsingBlock, CallHookPlayerUsingItem and CallHookPlayerEating will be called based on the type of action (not including the used version of callbacks). * Do not count using item as BlockInteractionsRate check (Using item takes time). * Now we can open chests(etc.) when sneaking as long as the player's hand is empty. This is what vanilla server does.
2017-09-14Fix switch warnings (#4013)peterbell101-33/+35
* Fix switch warnings * Fix a variety of -Wswitch and -Wswitch-enum warnings * Remove unneeded -Wno-error flags * Reorganise some eMonsterType switches * Alpha sort eMonsterType cases in WriteMobMetadata and in cNBTChunkSerializer::AddMonsterEntity * List all mob types in protocol 1.12 and NBTChunkSerializer * cStructGenTrees::GetNumTrees: remove switch default * cWSSAnvil::LoadOldMinecartFromNBT: Log unhandled minecart type
2017-09-02GetPacketID for protocol packet IDs (#3977)Lane Kolbly1-4/+4
* Added GetPacketId method to protocol, implemented for all protocols. * Moved GetPacketID methods into a single file, alpha-sorted. * Fixed 1.12.1 HandlePacket switch statement. * Added SendLogin to the GetPacketId framework. * Added SpawnObject to GetPacketId framework. * Added missing sendEntityEquipment packet ID update for 1.12.1 * Added LeashEntity packet ID change to 1.12.1 * Alphabetized packet enum, added SpawnGlobalEntity to GetPacketId framework * Fixed clang errors * Indented cases, expanded comment for GetPacketId * Changed dyslexic comment.
2017-08-27Implement Forge protocol handshake support (#3869)satoshinm1-0/+2
2017-08-25Add cUUID class (#3871)peterbell101-1/+1
2017-08-24Minor changes (#3909)mathiascode1-1/+1
2017-07-28Tentative fix for player-limit race condition (#3862)Tiger Wang1-4/+4
* Attempts to fix #2257 Derived from d233e9843148313c71fbaba96ccff660e47b07b1 * Changed player count type to int * Clarified certain actions
2017-07-12Added basic ocelot behavior (#3829)Bond-0091-0/+18
2017-07-07Added bed entity (#3823)Lukas Pioch1-0/+12
* 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-06-09Added WriteBlockEntity to 1.10 and 1.11 and fixed mob spawnerLukas Pioch1-0/+115
2017-05-24Exported boatLukas Pioch1-1/+1
- 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-15VarInt metadata written correctly for boats (#3709)peterbell101-3/+3
* Varint metadata written correctly for boats
2017-03-03Add 1.11 entity metadata (#3601)Pokechu221-2/+838
2017-02-21Add 1.11.1/1.11.2 protocol (#3575)mathiascode1-7/+58
2016-12-16Initial support for the 1.11 protocol.Mattes D1-0/+189