summaryrefslogtreecommitdiffstats
path: root/src/Entities/Entity.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add magical critical effectTiger Wang2021-04-121-5/+20
|
* Unify multiprotocol entity animationsTiger Wang2021-04-121-3/+11
|
* Update entity sizesTiger Wang2021-04-121-4/+14
|
* Streamline player abilities handlingTiger Wang2021-04-121-1/+1
| | | | | | | * Update player list gamemode on world change * Fix invisibility for spectators, use entity metadata * Populate m_World for cPlayers on load - Remove SendPlayerMaxSpeed, a duplicate of SendEntityProperties
* Fix sending incorrect date values on world changeTiger Wang2021-04-121-2/+2
| | | | Yak shave: make more things use cTickTime. Fix a couple of incorrect modulo-on-millisecond-value by making them use WorldTickAge.
* Basic elytra flight (#5124)Damián Imrich2021-04-031-20/+2
| | | | | | * Basic elytra flight Co-authored-by: 12xx12 <44411062+12xx12@users.noreply.github.com> Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
* Properly deprecate more XYZ parameter'd functions (#5147)Tiger Wang2021-03-151-5/+4
| | | * Fixes #5144
* Fix #5118Tiger Wang2021-02-071-44/+3
|
* Clarify cClientHandle, cPlayer ownership semanticsTiger Wang2021-01-121-70/+16
| | | | | | | | + A cPlayer, once created, has a strong pointer to the cClientHandle. The player ticks the clienthandle. If he finds the handle destroyed, he destroys himself in turn. Nothing else can kill the player. * The client handle has a pointer to the player. Once a player is created, the client handle never outlasts the player, nor does it manage the player's lifetime. The pointer is always safe to use after FinishAuthenticate, which is also the point where cProtocol is put into the Game state that allows player manipulation. + Entities are once again never lost by constructing a chunk when they try to move into one that doesn't exist. * Fixed a forgotten Super invocation in cPlayer::OnRemoveFromWorld. * Fix SaveToDisk usage in destructor by only saving things cPlayer owns, instead of accessing cWorld.
* Convert most calls to blocking GetHeight/GetBiomeAt to direct chunk accessesTiger Wang2021-01-111-2/+2
| | | | * Hopefully fixes #5094
* Fix potential destruction crashes (#5095)Tiger Wang2021-01-021-44/+27
| | | | | | | | | | * Fix potential destruction crashes * Fix destructors accessing destroyted objects * Fix cPlayer not destroying windows (Destroyed never called) * Tentatively fixes #4608, fixes #3236, fixes #3262 - Remove cEntity::Destroyed() and replace with cEntity::OnRemoveFromWorld() * Add missing call to OnRemoveFromWorld
* Added magma block contact damage (#5055)Aiden Neill2020-11-251-4/+49
| | | | | | * Added magma block contact damage * Fireproof entities do not take damage from magma * Fire resistance prevents magma damage * No magma damage when hovering over magma block
* Do not call into things we don't own in destructorsTiger Wang2020-09-251-15/+0
| | | | | - Remove improper accesses in cChunk destructor * Fixes #4894
* Fixed missing case: in entity damaging crashin the server (#4899)12xx122020-09-191-0/+1
| | | | | | | | | | | | | | * made snow golems not crashing the server anymore * changed damage type to environment * updated damage in API dopcumentation and changed enderman damage type * removed incidental d in the code * added dtEnvironment to ArmorCoversAgainst Co-authored-by: 12xx12 <12xx12100@gmail.com> Co-authored-by: Alexander Harkness <me@bearbin.net>
* Entities can fail to add into a chunkTiger Wang2020-08-291-5/+0
| | | | - MoveEntityToNewChunk, AddEntity can fail. Ensure we handle these cases correctly
* Add Statistics and Achievements for newer Network standards12xx122020-08-191-3/+3
|
* Reduced packet spam when entities idleTiger Wang2020-07-061-2/+2
| | | | * Try not to send look packets when nothing's changed.
* Enable some more clang-tidy linter checks (#4738)peterbell102020-05-151-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Fixed various MSVC warnings.Mattes D2020-05-061-1/+1
|
* Improve entity position updates (#4701)Tiger Wang2020-05-041-39/+24
| | | | | | | | | * 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
* Add cEntity::GetBoundingBox, and use where appropriate. (#4711)Alexander Harkness2020-05-031-1/+1
| | | * Add cEntity::GetBoundingBox, and use where appropriate.
* Set entity world earlymathiascode2020-05-031-0/+1
|
* MoveToWorld must always be provided a worldTiger Wang2020-04-181-15/+17
|
* Only store IDs across ticksTiger Wang2020-04-181-18/+40
|
* Using Super.Mattes D2020-04-161-2/+2
|
* Fixed entity teleport for just-spawned entities.Mattes D2020-04-121-1/+5
| | | | Includes a test code in the Debuggers plugin - throwing a cake-as-fallingblock.
* Add Zombie VillagersBond-0092020-04-101-1/+2
|
* Don't set entity world twice (#4606)Mat2020-04-091-3/+0
| | | | | * Don't set entity world twice * Call HookSpawnedEntity when the entity actually spawned
* Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)Mattes D2020-04-031-0/+1
| | | | | | | | | 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
* Pickup spawn improvements (#4525)Mat2020-03-231-1/+1
| | | 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.
* TNT position fixes (#4519)Mat2020-03-221-1/+1
| | | | | | | | | | | | | | | | | | | * 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
* Fix armor protection (#4506)Mat2020-03-221-15/+22
| | | | | | | | | | | | | | | * Fix armor protection * Check min damage * Check min damage * Commit missing changes * Convert to int * Use float * Float some more
* Clamp teleportation position (#4203)stone33112020-03-201-1/+9
|
* Improvements to knockback (#4504)Mat2020-03-191-6/+18
| | | | | * Improvements to knockback * SetSpeed for explosions * Improve code consistency
* Don't send entity velocity for boats (#4488)Mat2020-03-071-1/+1
| | | * Don't send entity velocity for boats
* Attached entities can't enter portals (#4484)Mat2020-03-051-0/+15
| | | | | | * Attached entities can't enter portals * Whitespace fixes
* Stabilise MoveToWorld (#4004)Mat2020-03-051-86/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Stabilise MoveToWorld * Fix comments and deprecate ScheduleMoveToWorld * Enhanced thread safety for m_WorldChangeInfo * Return unique_ptr from cAtomicUniquePtr::exchange * cWorld now calls entity cEntity::OnAddToWorld and cEntity::OnRemoveFromWorld. Allows broadcasting entities added to the world from the world's tick thread. This also factors out some common code from cEntity::DoMoveToWorld and cEntity::Initialize. As a consequence, cEntity::Destroy(false) (i.e. Destroying the entity without broadcasting) is impossible. This isn't used anywhere in Cuberite so it's now deprecated. * Update entity position after removing it from the world. Fixes broadcasts being sent to the wrong chunk. * Fix style * cEntity: Update LastSentPosition when sending spawn packet * Add Wno-deprecated-declarations to the lua bindings * Kill uses of ScheduleMoveToWorld
* Update LastSentPosition when entity has no speed (#4487)peterbell102020-03-041-53/+50
| | | | | | * Update LastSentPosition when entity has no speed * Restructure BroadcastMovementUpdate and always process relmove
* Refactored more of Entities and BlockEntities to use Vector3. (#4403)Mattes D2019-09-291-4/+4
|
* Fixed MSVC warnings (#4400)Mattes D2019-09-271-2/+2
|
* Fix building with clang 8.0 (#4346)Bond-0092019-08-111-6/+6
|
* Change TakeDamageInfo::FinalDamage from int to float (#4359)Aplaus2282019-08-081-5/+5
| | | | Closes #4357
* Add a formatting function for Vector3 (#4282)peterbell102018-09-241-9/+9
| | | | | | | | | | * Vector3: Add custom fmt compatible formatter. * cLuaState: Add fmt version of ApiParamError * Use vector formatting in manual bindings * Always log vectors with FLOG
* Force all headers other than "Globals.h" to be included with relative paths (#4269)peterbell102018-08-291-2/+2
| | | | | | | Closes #4236 CMake now creates a header file in the build directory under the path "include/Globals.h" which just includes "src/Globals.h" with an absolute path. Then instead of adding "src/" to the include directories, it adds "include/". #include "Globals.h" still works by including the build generated file and any other src-relative path will not work.
* Add new flow direction calculating algorithm (#4160)bionext032018-07-271-51/+37
|
* CheckBasicStyle: Check number of empty lines between functions (#4267)peterbell102018-07-261-4/+11
| | | | Add check for number of empty lines between functions and fix the corresponding failures
* Broadcast refactor (#4264)peterbell102018-07-241-16/+5
| | | | | | | | | | | | | | | | | | | | | | | * Move Broadcast functions from cChunkMap to cBroadcaster - Remove cBroadcastInterface in favour of cBroadcaster. - cChunk: Remove broadcast functions. * resurect broadcast interface * Absorb cBroadcaster into cWorld. Removes the need for forwarding the function calls. * Improve const-correctness * Use Int8 instead of char + Comment `ForClients` functions * Improve comments * Broadcaster: Rename ForClients functions
* Rewrite explosion knock back (#4251)changyong guo2018-07-231-1/+63
| | | | | | | 1. Base knockback on an entity's bounding box intersection with the explosion 2. Armor blast protection reduces knockback 3. Don't apply knockback to players flying in creative mode Fixes #4139
* Prefer static_cast to reinterpret_cast (#4223)peterbell102018-05-021-13/+13
| | | | | | | * 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.
* Update m_LastSentPosition in TeleportToCoords and DoMoveToWorld. (#4211)peterbell102018-04-111-2/+12
|
* Deal with covered switches consistently (#4161)peterbell102018-02-051-4/+1
| | | | | | | * Fixes a number of "<function>: not all control paths return a value" warnings on MSVC. * Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults. * Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message()
* Calculate crit damage properly (#4154)Bond-0092018-01-171-11/+13
|
* Exp Orbs and Pickups are destroyed instantly by cacti. (#4136)Alexander Harkness2018-01-161-15/+21
| | | | | | | | | | | | | * Cactus detection code follows pattern set in #3996 * Pickups are now destroyed on cactus contact * Add cactus detection and destruction to Exp Orbs Remove checks for IsExpOrb() in cEntity::Tick() Exp Orbs do not call super::Tick() and so this condition was pointless.
* Rename cEntity swim states (#3996)Alexander Harkness2018-01-141-78/+71
| | | | | | | | | | * Replace cEntity:m_IsSubmerged with m_IsHeadInWater * Replace cEntity:m_IsSwimming with m_IsInWater * Add API documentation for new symbols * Apply SetSwimState to all entities, not just mobs and players * Pickups now use IsOnFire to check if they are on fire before destruction Fixes #3987
* improve rain simulation (#4017)Alexander Harkness2017-12-261-5/+2
| | | | | | | | | | | * 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.
* Fixed Clang 5.0 compile errors (#4085)bibo382017-12-211-0/+2
| | | | | | | | | | | | * Fixed Clang 5.0 compile errors * Fixed wrong comment * Only disable warnings in Clang 5 or higher * Added a CMake condition for the Clang 5 no-zero-as-null-pointer-constant warning * Now using the use_nullptr branch of the Cuberite specific SQLiteCpp fork
* Store Health as a float (#4073)Fabian2017-11-221-5/+5
| | | | | | | | | | | | | | | | | | * Fix #4024 * Fix clang error * Add comment * Fix behaviour * Save Health as float * Changed m_Health to float * Remove redundant static_cast * Fix casts
* Adjust lava damage values (#4020)Alexander Harkness2017-09-121-1/+1
| | | Fixes isue #2925
* Replace ItemCallbacks with lambdas (#3993)peterbell102017-09-111-22/+6
|
* Fix crash for players out of the world. Fixes #4006 (#4007)Alexander Harkness2017-09-101-3/+4
|
* Fire effect now shown for creative and spectator mode players (#3998)Alexander Harkness2017-09-071-0/+7
| | | | | | | | * Fire effect now shown for creative and spectator mode players Fixes #3989 * Add documentation for IsFireproof
* Add cWorld::RemoveEntity and use in cEntity (#4003)peterbell102017-09-051-11/+10
| | | | | | * Add cWorld::RemoveEntity and use in cEntity * cEntity: Remove uneeded asserts from Destroy and DoMoveToWorld
* Revert "Replace ItemCallbacks with lambdas (#3948)"LogicParrot2017-09-021-6/+22
| | | | This reverts commit 496c337cdfa593654018c171f6a74c28272265b5.
* SetSwimState now takes into account head heightAlexander Harkness2017-09-011-2/+3
| | | | | | | This affects m_IsSubmerged and IsSubmerged() for entities of all types. Also prevent squids from suffocating in water.
* Replace ItemCallbacks with lambdas (#3948)peterbell102017-09-011-22/+6
|
* Added ShouldSendRespawn parameter to ScheduleMoveToWorld (#3979)Lane Kolbly2017-08-301-2/+3
|
* Gives all entities the default airlevel on creation (#3942)Bond-0092017-08-251-2/+2
| | | | * Guardians don't take damage on land * Squids suffocate on land
* Minor changes (#3909)mathiascode2017-08-241-5/+5
|
* Added check in cEntity::TickBurning for whether the entity is planning to change worlds. (#3943)Lane Kolbly2017-08-221-0/+6
|
* Give arthropods slowness IV when hit with bane of arthropods (#3932)Bond-0092017-08-211-3/+7
|
* Fully implemented leashes (#3798)Pablo Beltrán2017-08-211-0/+36
|
* Merge pull request #3489 from cuberite/EntityOwnershipTiger Wang2017-08-181-9/+10
|\ | | | | * Changed entity ownership model to use smart pointers
| * Changed entity ownership model to use smart pointersTiger Wang2017-08-071-9/+10
| |
* | Added knockback to arrows, fixed knockback enchantment handling (#3900)Lane Kolbly2017-08-131-18/+14
|/ | | | * Added knockback for arrows, fixed knockback enchantment handling.
* Updated armor cover calculation. (#3858)Lane Kolbly2017-07-231-122/+73
| | | | | | | | * Updated armor damage calculation. + Added lua docs, added casts from float to int. * Changed verbage in docstring and comment.
* If entity is a player, send relmove packets.Lane Kolbly2017-07-121-1/+1
|
* Players in creative and spectator aren't affected by cacti (#3824)Bond-0092017-07-021-1/+4
|
* Entity: Replaced a mutexed counter with a std::atomic. (#3773)Mattes D2017-06-151-7/+9
|
* FastRandom rewrite (#3754)peterbell102017-06-131-6/+4
|
* Avoid pickups to sink into blocks and disappear (#3739)Pablo Beltrán2017-06-041-22/+27
| | | | * Avoid pickups to sink into blocks and disappear
* Fixed tracer usage in Entity physics handling. (#3720)Mattes D2017-05-281-7/+9
|
* Tracer replacement (#3704)Mattes D2017-05-111-46/+49
| | | | | | * Replaced cTracer usage with cLineBlockTracer. * Exported new cLineBlockTracer utility functions to Lua API.
* Added a nullptr check to cEntity::IsA (#3659)Marvin Kopf2017-04-011-1/+1
| | | Fixes #3603
* Fixed cactus detection and zombie pigman sword (#3584)Bond-0092017-02-251-1/+2
| | | | Fixes for issues #902 and #2917
* Updated links and docs (#3488)mathiascode2016-12-191-4/+4
|
* Use cChunkDef::Height for Y coord comparison where applicable.Moritz Borcherding2016-09-271-2/+2
|
* Proper respawn packets on dimension travelLogicParrot2016-08-291-9/+38
|
* Fixed RasPi builds of unit tests.Mattes D2016-08-041-1/+3
| | | | | On RasPi with gcc 4.8.2, the asserts wouldn't compile when tests were enabled. Enforced the assumption that ASSERT code is generated only in Debug builds.
* Fixes for boat entities (#3265)beeduck2016-07-181-0/+22
| | | protocol for vehicles now properly handled, protocol for boat paddles now properly handled, boats can no longer spawn underwater, boats now properly float, boat metadata now properly broadcasted.
* 1.9 / 1.9.2 / 1.9.3 / 1.9.4 protocol support (#3135)Pokechu222016-05-141-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Semistable update to 15w31a I'm going through snapshots in a sequential order since it should make things easier, and since protocol version history is written. * Update to 15w34b protocol Also, fix an issue with the Entity Equipment packet from the past version. Clients are able to connect and do stuff! * Partially update to 15w35e Chunk data doesn't work, but the client joins. I'm waiting to do chunk data because chunk data has an incomplete format until 15w36d. * Add '/blk' debug command This command lets one see what block they are looking at, and makes figuring out what's supposed to be where in a highly broken chunk possible. * Fix CRLF normalization in CheckBasicStyle.lua Normally, this doesn't cause an issue, but when running from cygwin, it detects the CR as whitespace and creates thousands of violations for every single line. Lua, when run on windows, will normalize automatically, but when run via cygwin, it won't. The bug was simply that gsub was returning a replaced version, but not changing the parameter, so the replaced version was ignored. * Update to 15w40b This includes chunk serialization. Fully functional chunk serialization for 1.9. I'm not completely happy with the chunk serialization as-is (correct use of palettes would be great), but cuberite also doesn't skip sending empty chunks so this performance optimization should probably come later. The creation of a full buffer is suboptimal, but it's the easiest way to implement this code. * Write long-by-long rather than creating a buffer This is a bit faster and should be equivalent. However, the code still doesn't look too good. * Update to 15w41a protocol This includes the new set passengers packet, which works off of the ridden entity, not the rider. That means, among other things, that information about the previously ridden vehicle is needed when detaching. So a new method with that info was added. * Update to 15w45a * 15w51b protocol * Update to 1.9.0 protocol Closes #3067. There are still a few things that need to be worked out (picking up items, effects, particles, and most importantly inventory), but in general this should work. I'll make a few more changes tomorrow to get the rest of the protocol set up, along with 1.9.1/1.9.2 (which did make a few changes). Chunks, however, _are_ working, along with most other parts of the game (placing/breaking blocks). * Fix item pickup packet not working That was a silly mistake, but at least it was an easy one. * 1.9.2 protocol support * Fix version info found in server list ping Thus, the client reports that it can connect rather than saying that the server is out of date. This required creating separate classes for 1.9.1 and 1.9.2, unfortunately. * Fix build errors generated by clang These didn't happen in MSVC. * Add protocol19x.cpp and protocol19x.h to CMakeLists * Ignore warnings in protocol19x that are ignored in protocol18x * Document BLOCK_FACE and DIG_STATUS constants * Fix BLOCK_FACE links and add separate section for DIG_STATUS * Fix bat animation and object spawning The causes of both of these are explained in #3135, but the gist is that both were typos. * Implement Use Item packet This means that buckets, bows, fishing rods, and several other similar items now work when not looking at a block. * Handle DIG_STATUS_SWAP_ITEM_IN_HAND * Add support for spawn eggs and potions The items are transformed from the 1.9 version to the 1.8 version when reading and transformed back when sending. * Remove spammy potion debug logging * Fix wolf collar color metadata The wrong type was being used, causing several clientside issues (including the screen going black). * Fix 1.9 chunk sending in the nether The nether and the end don't send skylight. * Fix clang build errors * Fix water bottles becoming mundane potions This happened because the can become splash potion bit got set incorrectly. Water bottles and mundane potions are only differentiated by the fact that water bottles have a metadata of 0, so setting that bit made it a mundane potion. Also add missing break statements to the read item NBT switch, which would otherwise break items with custom names and also cause incorrect "Unimplemented NBT data when parsing!" logging. * Copy Protocol18x as Protocol19x Aditionally, method and class names have been swapped to clean up other diffs. This commit is only added to make the following diffs more readable; it doesn't make any other changes (beyond class names). * Make thrown potions use the correct appearence This was caused by potions now using metadata. * Add missing api doc for cSplashPotionEntity::GetItem * Fix compile error in SplashPotionEntity.cpp * Fix fix of cSplashPotionEntity API doc * Temporarilly disable fall damage particles These were causing issues in 1.9 due to the changed effect ID. * Properly send a kick packet when connecting with an invalid version This means that the client no longer waits on the server screen with no indication whatsoever. However, right now the server list ping isn't implemented for unknown versions, so it'll only load "Old" on the ping. I also added a GetVarIntSize method to cByteBuffer. This helps clean up part of the code here (and I think it could clean up other parts), but it may make sense for it to be moved elsewhere (or declared in a different way). * Handle server list pings from unrecognized versions This isn't the cleanest way of writing it (it feels odd to use ProtocolRecognizer to send packets, and the addition of m_InPingForUnrecognizedVersion feels like the wrong technique), but it works and I can't think of a better way (apart from creating a full separate protocol class to handle only the ping... which would be worse). * Use cPacketizer for the disconnect packet This also should fix clang build errors. * Add 1.9.3 / 1.9.4 support * Fix incorrect indentation in APIDesc
* Fix issues below y = 0LogicParrot2016-04-181-0/+6
|
* MoveToWorld defaults to spawnpointLogicParrot2016-03-301-1/+19
|
* Proper entity destruction in non-ticking chunksLogicParrot2016-02-191-36/+94
|
* remove cWorld::createAndInitializeWorldLogicParrot2016-02-081-4/+10
|
* cMonster::m_Target safety across worldsLogicParrot2016-02-031-0/+7
|
* Merge pull request #2941 from LogicParrot/chunkBug2LogicParrot2016-02-031-2/+11
|\ | | | | [Attempt 2] Fixed cChunk::m_Entities corruption upon world travel
| * Fixed cChunk::m_Entities corruption upon world travelLogicParrot2016-02-021-2/+11
| |
* | Fix cPawn pushingMarvin Kopf2016-02-021-0/+13
|/ | | | cPawn instances can no longer push an entity they are attached to. cEntity now has a IsAttachedTo method.
* Updated old forum linksMathias2016-01-311-1/+1
|
* Improved tamed wolf pack cooperation and projectile reactionsLogicParrot2016-01-221-0/+41
|
* Fix crash when tamed wolf is hit by arrowsLogicParrot2016-01-161-50/+57
|
* Moved variables into scope, removed unused variables and fixed variablesLukas Pioch2015-12-171-1/+1
|
* blockheight mechanismGargaj2015-12-131-5/+6
|
* Improved spawn location calculations.samoatesgames2015-11-131-2/+2
| | | | | | | | | | - Supports Overworld and Nether spawns. - Supports spawning under objects, but still above ground (e.g. under the leaves of a tree). - Protects against spawning in oceans. - Protects against spawning in water. - Uses a radial search about the origin, rather than a linear. - Correctly calculates Nether spawn on spawn world generation (fixes: cuberite#2548) - Fixes a bug in CheckPlayerSpawnPoint() where the X offset was used in both the X and Z coords (BLOCKTYPE BlockType = GetBlock(a_PosX + Coords[i].x, a_PosY, a_PosZ + Coords[i].x);)
* Fix being set on fire while directly being under lavaGargaj2015-11-041-1/+1
| | | Right now you will be on fire if there is a block of lava right above you, even if it doesn't pour down.
* Implemented the FireResistence potion effects.bibo382015-10-311-3/+3
| | | | | This not only provides fire resistence, but also prevents blaze fireballs. See #2556
* Fixed food drain bugsTiger Wang2015-08-201-94/+14
|
* Unified the doxy-comment format.Mattes D2015-07-311-6/+0
|
* Silenced and fixed many warning messages across multiple files.Samuel Barney2015-07-291-49/+49
|
* Work on NetherPortalScanner. Setup portal scanner to reset PortalCooldown. Changed where player is spawned. Added a_InitSpawn flag to CreateAndInitializeWorld.Lane Kolbly2015-06-131-5/+14
|
* Added HOOK_KILLEDNounours Heureux2015-06-131-0/+7
|
* Implemented nether portal scanning code.Lane Kolbly2015-06-101-6/+41
|
* Merge branch 'master' into PreventNewWarningstycho2015-05-231-3/+3
|\
| * Renamed hook HOOK_ENTITY_CHANGE_WORLDLukas Pioch2015-05-211-3/+3
| |
* | Make -Werror disabling file onlytycho2015-05-191-1/+1
|/ | | | Ad fix a load of warnings
* Added hooks HOOK_ENTITY_CHANGE_WORLD and HOOK_ENTITY_CHANGED_WORLDLukas Pioch2015-05-181-0/+11
| | | | Fixes #1435.
* More style checking.Mattes D2015-05-091-3/+4
| | | | Spaces around some operators are checked.
* Entity improvementsTiger Wang2015-05-041-1/+0
| | | | | | | | •Pathfinder improvements •Fixes #1217 •Fixes #1933 Merge remote-tracking branch 'SafwatHalaby/water2' into fixes
* Changed air drag units to 'interpolated ticks' per secondDevToaster2015-03-311-2/+2
|
* Modified physics for more vanilla-like behaviorDevToaster2015-03-311-9/+11
|
* Merge pull request #1826 from mc-server/UnifyPacketizerMattes D2015-03-241-37/+38
|\ | | | | Unify packetizer
| * Changed cEntity::m_UniqueID to UInt32.Mattes D2015-03-211-37/+38
| |
* | Changed linked world name variables and setters / getters.Mattes D2015-03-211-5/+5
|/ | | | | Ref.: #1792 Ref.: https://github.com/mc-server/MCServer/pull/1792#discussion_r25946707
* Added OnTeleportEntity hook for plugins.joshi072015-03-051-2/+6
| | | | | Plugins may or may not allow teleport to the new position. Updated the HookNotify plugin with it.
* use DoSetSpeed in AddSpeed* in Entity.cppRaekye2015-02-261-10/+4
|
* Fixed type-conversion warnings.Mattes D2015-01-181-4/+4
|
* Initial convertion of a_Dt to std::chronoTycho2015-01-111-13/+13
| | | | also refactored cWorld::m_WorldAge and cWorld::m_TimeOfDay
* BasicStyle: Added missing braces to control statements.Mattes D2014-12-051-4/+16
|
* Fixed reported parentheses around comparisons.Mattes D2014-12-051-1/+1
|
* En masse NULL -> nullptr replaceTiger Wang2014-10-231-28/+28
|
* Removed more unessicary includesTycho2014-09-261-1/+0
|
* Merge branch 'master' into redstoneTestsTycho2014-09-251-5/+6
|\ | | | | | | | | Conflicts: src/Mobs/Monster.h
| * A few compiler warning fixesChris Darnell2014-09-231-2/+3
| |
| * Merge pull request #1398 from mc-server/1.8-ProtocolAlexander Harkness2014-09-221-1/+1
| |\ | | | | | | 1.8 Protocol Update
| | * Merge branch 'master' into 1.8-ProtocolHowaner2014-09-141-16/+25
| | |\
| | * \ Merge branch 'master' into 1.8-ProtocolHowaner2014-09-131-11/+13
| | |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/Items/ItemHoe.h
| | * | | Added the player list to the 1.8 protocol.Howaner2014-09-091-1/+1
| | | | |
| * | | | Made it compile with clangChris Darnell2014-09-221-2/+2
| | |_|/ | |/| |
* | | | Merge branch 'master' into redstoneTestsTycho2014-09-171-15/+26
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/Blocks/ChunkInterface.h
| * | | Entities experience water resistanceTiger Wang2014-09-131-16/+25
| | |/ | |/|
| * | Fixed friction being applied whilst airborneTiger Wang2014-09-121-11/+13
| |/ | | | | | | Reported by tonibm9 in #1300.
* / Added first test to show the object can be createdTycho2014-09-171-10/+10
|/
* Fixed style and alpha-sorting.madmaxoft2014-09-031-2/+2
|
* Fixed previous commit's wrong assumptions.madmaxoft2014-09-011-10/+10
| | | | The equipment-getting functions return a copy already, so we can't take a pointer, really.
* Fixed MSVC compilation, improved performance.madmaxoft2014-09-011-30/+59
| | | | We're not creating copies of the equipped items anymore, rather, we're using pointers to them. Also pow() is needlessly slow for a simple second power, and MSVC2008 was confused about the pow() overloads.
* Fixed styleJaume Aloy2014-08-311-7/+5
|
* Added a_Digger checkJaume Aloy2014-08-301-2/+2
|
* More EnchantmentsJaume Aloy2014-08-221-57/+70
| | | | - Added Thorns and Respiration enchantments
* Protection Enchantments, some fixesJaume Aloy2014-08-211-2/+108
| | | | | | | | - Protection echantments (fire, blast, feather falling, protection and projectile). It isn't finished, add secondary effects and optimize the code. - Removed some brackets. - Silk touch fixed.
* Changed if in BlockHandlerJaume Aloy2014-08-191-1/+0
|
* Changed if for switchJaume Aloy2014-08-191-3/+2
|
* Added more enchantments and some fixesJaume Aloy2014-08-191-3/+22
| | | | | | | - Removed Debug messages - Added Punch enchantment effect - Added Silk Touch enchantment - Added Unbreaking enchantment effect
* Added some EnchantmentsJaume Aloy2014-08-191-1/+61
| | | | | | - Bow enchantments: Infinity, Flame and Power - Sword and tools enchantments: Fire Aspect, Bane of Arthropods, Smite, Sharpness
* Attempt to fix knockback and swimming.Howaner2014-08-041-15/+13
|
* Entity.cpp: Air timer comment fixarchshift2014-08-031-1/+1
|
* Code reduction and clarity fixesarchshift2014-08-031-19/+9
|
* Entity.cpp: On portal check, use if-else for current dimensionarchshift2014-08-031-60/+54
| | | | If current dimension corresponds with the portal (nether portal in the nether) send to the overworld, else send to the portal dimension. No need to switch on the dimension and exclude potential others.
* Detrailed whitespaceTiger Wang2014-07-291-3/+3
|
* Merge branch 'master' into portalsTiger Wang2014-07-291-5/+8
|\ | | | | | | | | Conflicts: src/World.h
| * Fix item durability.Howaner2014-07-231-5/+8
| | | | | | Fixes #1181
* | SuggestionsTiger Wang2014-07-231-9/+14
| |
* | Speed improvements, crash fixes, & self-suggestionsTiger Wang2014-07-221-30/+29
| |
* | Merge remote-tracking branch 'origin/master' into portalsTiger Wang2014-07-221-10/+7
|\| | | | | | | | | | | | | | | Conflicts: src/Chunk.cpp src/Entities/Player.cpp src/Root.cpp src/World.cpp
| * Style: Normalized to no spaces before closing parenthesis.madmaxoft2014-07-211-2/+2
| |
| * Added m_TicksAlive to entities, allows projectiles to hit their creatorsarchshift2014-07-201-0/+3
| |
| * Fixed clamping issuesarchshift2014-07-191-4/+1
| |
| * Merge branch 'Entities'madmaxoft2014-07-181-4/+1
| |\
| | * Fixed many slime bugs.Howaner2014-07-171-4/+1
| | | | | | | | | | | | | | | | | | | | | - Fixed slime hurt/death sound - Added slime spawning on death. - Fixed the max health. - Fixed the attack damage. - Little slimes should not attack players.
* | | SuggestionsTiger Wang2014-07-211-35/+43
| | |
* | | Bug and crash fixesTiger Wang2014-07-201-18/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Fixes end portals' solidity * Fixed crashes to do with multithreading and removing an entity from the wrong world * Fixed crashes due to bad merge * Fixed crashes due to an object being deleted twice * Simplified cWorld::Start() and added comments to configuration files
* | | Fix failed merge and other issuesTiger Wang2014-07-181-3/+3
| | |
* | | Merge branch 'master' into portalsTiger Wang2014-07-181-59/+48
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/Blocks/WorldInterface.h src/ClientHandle.cpp src/ClientHandle.h src/Entities/Player.cpp src/Entities/Player.h src/Generating/FinishGen.cpp src/Protocol/Protocol.h src/Protocol/Protocol125.cpp src/Protocol/Protocol125.h src/Protocol/Protocol16x.cpp src/Protocol/Protocol16x.h src/Protocol/Protocol17x.cpp src/Protocol/Protocol17x.h src/Protocol/ProtocolRecognizer.cpp src/Protocol/ProtocolRecognizer.h src/Root.h src/World.cpp
| * | Fixed tabs used for alignment.madmaxoft2014-07-171-1/+1
| | |
| * | More trailing whitespace fixes.madmaxoft2014-07-171-2/+2
| | |
| * | Basic style fixes.madmaxoft2014-07-171-15/+15
| | |
| * | Merge branch 'master' of https://github.com/mc-server/MCServermadmaxoft2014-07-171-23/+8
| |\|
| | * Fixed mob knockbackTiger Wang2014-07-171-23/+8
| | | | | | | | | | | | * Fixes #901
| * | Normalized comments.madmaxoft2014-07-171-14/+14
| |/ | | | | | | | | This was mostly done automatically and then visually inspected for obvious errors. All //-style comments should have a 2-space separation from the code, and 1 space after the comment sign.
| * Merge branch 'master' into potionsmadmaxoft2014-07-171-4/+4
| |\
| | * Merge pull request #1193 from mc-server/deathmessagesMattes D2014-07-171-4/+4
| | |\ | | | | | | | | Death messages
| | | * Resolved backwards compatibility issuesTiger Wang2014-07-161-1/+1
| | | |
| | | * Tailored death messagesTiger Wang2014-07-041-4/+4
| | | |
| * | | Readability and clarity changesarchshift2014-07-141-3/+6
| | | |
| * | | Merge remote-tracking branch 'origin/master' into potionsarchshift2014-07-101-9/+8
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: src/Entities/Player.cpp src/Entities/ProjectileEntity.cpp
| | * | Merge pull request #1135 from mc-server/fixesTiger Wang2014-07-091-8/+4
| | |\ \ | | | |/ | | |/| Fixes to projectiles and the undead
| | | * SuggestionsTiger Wang2014-06-291-2/+3
| | | |
| | | * Some Entity.cpp style improvementsTiger Wang2014-06-221-11/+6
| | | |
| | * | Fixed server forcing players afloatTiger Wang2014-06-281-1/+4
| | |/ | | | | | | | | | * Fixes #1131
| * | Added wither damage type, wither entity effect.archshift2014-06-171-0/+1
| | |
| * | Entity: only fire critical hit if damage type is physicalarchshift2014-06-171-1/+2
| |/
* | Conforms to standardsTiger Wang2014-06-221-1/+1
| |
* | Merge branch 'master' into portalsTiger Wang2014-06-211-20/+18
|\| | | | | | | | | | | | | Conflicts: src/Chunk.cpp src/Entities/Entity.h src/Entities/Player.h
| * Merge branch 'master' of github.com:mc-server/MCServerTycho2014-06-161-20/+18
| |
* | Fixed invalid iteratorsTiger Wang2014-06-211-1/+2
| |
* | More suggestionsTiger Wang2014-06-211-1/+1
| |
* | Reverted portal creation codeTiger Wang2014-06-141-100/+0
| | | | | | | | It wasn't really working and needs more development
* | Fixed compileworktycho2014-06-121-1/+1
| |
* | Portals animate and delay correctlyTiger Wang2014-06-121-28/+93
| |
* | Merge branch 'master' into portalsTiger Wang2014-06-101-5/+5
|\| | | | | | | | | | | | | | | | | Conflicts: src/ClientHandle.cpp src/Entities/Player.cpp src/Entities/Player.h src/Protocol/Protocol125.cpp src/Protocol/Protocol17x.cpp
| * Fixed deadlock when moving players to other worlds.Mattes D2014-06-081-5/+5
| | | | | | | | Fixes #1039, fixes #851
* | Portal improvements and suggestionsTiger Wang2014-06-101-41/+89
| |
* | SuggestionsTiger Wang2014-06-041-2/+4
| |
* | Configurable portalsTiger Wang2014-06-041-13/+32
| |
* | Added checks for no downfall biomesTiger Wang2014-06-041-1/+1
| |
* | Implemented bed homesTiger Wang2014-06-011-0/+6
| | | | | | | | | | | | + Implemented bed home positions * Fixed some inventory and health server/client mismatches after world change
* | Implemented end and nether portalsTiger Wang2014-05-311-0/+117
|/
* Merge branch 'master' into achievementtranslateTiger Wang2014-05-251-2/+2
|\ | | | | | | | | Conflicts: src/Entities/Player.cpp
| * Fixed datatype conversion warning.Mattes D2014-05-231-2/+2
| |
* | Fixed a cactus Y position issueTiger Wang2014-05-191-2/+3
| |
* | Simplified cacti conditionsTiger Wang2014-05-191-2/+2
|/
* Merge pull request #1010 from mc-server/cactidamageAlexander Harkness2014-05-191-0/+24
|\ | | | | Implemented cacti damage
| * DerpAlexander Harkness2014-05-191-1/+1
| |
| * Should have fixed assumptions about entity width.Alexander Harkness2014-05-191-4/+5
| | | | | | @madmaxoft can you comment?
| * Fixed clanging errors.Alexander Harkness2014-05-191-5/+5
| | | | | | Please @tigerw make sure this is correct.
| * Implemented cacti damageTiger Wang2014-05-181-0/+23
| | | | | | | | | | + Implemented cacti damage * Fixed pickup tossing (PR #994 bug)
* | There's no "round" function in MSVC2008.madmaxoft2014-05-181-1/+1
| |
* | Movement Statisticsandrew2014-05-121-2/+13
| |
* | cEntity::Killed(cEntity *) Handler; Achievement triggers; cPlayer::AwardAchievement()andrew2014-05-121-0/+5
|/
* Suggestions'dTiger Wang2014-05-061-1/+1
|
* Merge branch 'master' into fixes.madmaxoft2014-05-021-15/+81
|\
| * Merge pull request #940 from Howaner/GlobalFixesMattes D2014-04-281-3/+18
| |\ | | | | | | Add entity invulnerable
| | * FixesHowaner2014-04-261-1/+1
| | |
| | * Merge branch 'master' into GlobalFixesHowaner2014-04-261-7/+34
| | |\
| | * | Add entity invulnerableHowaner2014-04-261-3/+18
| | | |
| * | | Fixed warnings.madmaxoft2014-04-271-0/+1
| | | |
| * | | Added static const, initialized fields.archshift2014-04-271-0/+2
| | | |
| * | | Merge pull request #941 from archshift/masterMattes D2014-04-261-5/+26
| |\ \ \ | | |_|/ | |/| | Fixed lots of warnings, and other small changes.
| | * | Further refactored, Reverted Minecart changearchshift2014-04-261-1/+1
| | | | | | | | | | | | | | | | Other small changes.
| | * | Moved switch{} out of GetArmorCoverAgainst().archshift2014-04-261-5/+26
| | |/
| * | Fix formattingr.ramazanov2014-04-251-9/+15
| | |
| * | Fix for clangr.ramazanov2014-04-251-5/+1
| | |
| * | Mobs shouldn't burn when it's Raining & Mob Knockback is far too muchr.ramazanov2014-04-251-8/+5
| | |
| * | Merge branch 'master' of https://github.com/mc-server/MCServerr.ramazanov2014-04-231-3/+23
| |\|
| * | Mobs shouldn't burn when it's Raining #906r.ramazanov2014-04-231-9/+30
| | | | | | | | | | | | Mob Knockback is far too much #776
| * | Mobs shouldn't burn when it's Raining #906r.ramazanov2014-04-211-5/+12
| | |
* | | More comments!Tiger Wang2014-04-271-1/+1
| | | | | | | | | | | | | | | * Also fixed a potential issue with position sending - if someone moved slowly enough, their position would never be updated.
* | | Implemented suggestionsTiger Wang2014-04-241-7/+6
| | |
* | | Merge branch 'master' into fixesTiger Wang2014-04-241-3/+23
|\ \ \ | | |/ | |/| | | | | | | Conflicts: src/World.h
| * | Renamed getter and setter for IsFireproof.archshift2014-04-231-1/+1
| | |
| * | Fireproof status getter and setter.archshift2014-04-231-0/+11
| | |
| * | Fixed indentation and changed m_Fireproof to m_IsFireproof.archshift2014-04-221-12/+12
| | |
| * | Lay foundation for fireproof entities.archshift2014-04-221-3/+12
| |/ | | | | | | Prevent any entities with the m_Fireproof flag from taking fire or lava damage.
* / Some change to Entity.cppTiger Wang2014-04-231-92/+90
|/ | | | * Added comments to BroadcastMovementUpdate() and the collision tracer
* Fixed #906Tiger Wang2014-04-181-0/+10
|
* Merge pull request #891 from mc-server/fixesMattes D2014-04-171-66/+49
|\ | | | | Fixes to redstone & general
| * Entities handle chunks properly againTiger Wang2014-04-121-66/+49
| | | | | | | | | | * Entities properly handle chunks * Changed EntityStatus enums to be less shouty
* | Added new AI rulesTiger Wang2014-04-171-1/+1
|/ | | | | | | + Added new AI rules handling cacti and large heights * Fixed cIniFile not recognising comments in cIniFile::ReadFile() * Fixed users.ini not being properly generated * Changed all instances of (int)floor(GetPosXXX()) to POSXXX_TOINT
* Fixed Endiannes conversion routines for floats and doubles.madmaxoft2014-04-051-1/+1
| | | | | This bug has been introduced in 8825d30aabbee8cb2e452dc5a17deb6f9b6892a7. This change fixes #854.
* Minor Entity.cpp cleanupTiger Wang2014-03-201-12/+9
|
* Merge branch 'master' into awesometntTiger Wang2014-03-181-1/+1
|\ | | | | | | | | Conflicts: src/ChunkMap.cpp
| * Unified Matrix4 codeandrew2014-03-111-1/+1
| |
* | Added extra awesomeness to TNTTiger Wang2014-03-051-188/+192
|/ | | | | | | + TNT now has a chance of flinging FallingBlock entities around * Improved TNT damage * Improved TNT spawning visuals * Possible fix for 'SetSwimState failure' messages in debug
* g_BlockXXX => cBlockInfo::XXXandrew2014-03-011-3/+3
|
* Fixed most of the reordering warningsTycho2014-02-051-2/+2
|
* Creative players take Plugin damageTiger Wang2014-02-021-1/+2
|
* All mobs now drown (fixes #54)Tiger Wang2014-01-251-1/+94
| | | | | * Implemented mob drowning * Iron Golems and squids are excluded
* Removed unused ReferenceManagerTiger Wang2014-01-241-36/+0
|
* Fixed crash with failed entity-loading.madmaxoft2014-01-241-1/+2
| | | | | | This should fix issues reported in: http://forum.mc-server.org/showthread.php?tid=1328 http://forum.mc-server.org/showthread.php?tid=1308
* Merge remote-tracking branch 'origin/customnames'madmaxoft2014-01-171-3/+3
|\
| * Removed obsoleted functionsTiger Wang2014-01-161-3/+3
| |
* | Disabled excessive entity-related logging in Debug mode.madmaxoft2014-01-161-1/+11
|/
* Final improvements to MinecartsTiger Wang2014-01-131-36/+8
| | | | | | | | | | | | | * Fixed curved rails being a little broken + Implemented detector rails + Implemented block collisions on rails * Fixed snapping to rail - Removed minecart physics conditions in Entity.cpp as minecarts use their own simulator when on rails Fixes #148 and #217; partially implemented #215. This is Cave Johnson, and we're done here.
* Detaching improvementsTiger Wang2014-01-131-3/+5
| | | | | * Players now search for an area around themselves to teleport to when detaching from something
* Multiple enhancements and fixes to minecartsTiger Wang2014-01-121-1/+4
| | | | | | + They are destroyed instantly by creative mode * Physics is much improved + Basic implementation of powered rails
* Improved knockback animationTiger Wang2013-12-241-3/+3
| | | | | | | * Critical hits now actually increase damage * Looking down at an entity and hitting them still produces upwards motion (as per Vanilla experience) * Reduced force to be more realistic
* Fixed a comment in Entity.cppTiger Wang2013-12-231-1/+1
|
* Implemented knockback and critical hitTiger Wang2013-12-221-4/+21
|
* More reordering fixes.madmaxoft2013-12-201-2/+2
|
* Sorted a few constructors to remove warnings.madmaxoft2013-12-201-5/+5
|
* Fixed compiler warning when iterating over a fixed array of items (ARRAYCOUNT).madmaxoft2013-12-201-1/+1
|
* Added HandleSpeedFromAttachee so an entity can override the function.STRWarrior2013-12-161-4/+14
|
* Fixed angle normalization typo.madmaxoft2013-12-081-1/+1
|
* Fixed normalizing large angles.madmaxoft2013-12-081-6/+3
|
* Moved bindings-related to a Bindings subfolder.madmaxoft2013-12-081-1/+1
| | | | Ref.: #407
* Moved source to srcAlexander Harkness2013-11-241-0/+1450