857b63ba8f
Entity: Added recalculateBoundingBox()
2018-01-18 16:35:38 +00:00
6f6e3aaa21
Fixed projectiles collding with spectator players
...
closes #1857
2018-01-17 10:57:04 +00:00
beb5bf6dda
Add API methods: Entity::isInvisible(), Entity::setInvisible() ( #1930 )
...
* Make use of the API function in Effect class
2018-01-17 09:56:59 +00:00
cb90e30bcf
Entity: Fixed intersecting with blocks they aren't actually intersecting with...
...
at the expense of magma no longer working (which will need to be done better anyway).
This:
- reverts the +0.01 outset which hugely exacerbated the lava bug (fixes #1892 )
- adds a 0.001 inset (PC-style) which prevents entities incorrectly intersecting with diagonally adjacent blocks at far-ish coordinates (lava at x=4000, z=4000 is a good way to test this).
PR #1880 does also solve this issue, but again at the expense of magma. Since the bugfix does not require a big bounding-box handling refactor, it has been separated out.
2018-01-11 11:10:36 +00:00
418d099a2e
Merge PR #1561 : Implement XP
2018-01-05 12:53:48 +00:00
684fd46d09
Entity: Throw exception when trying to get save ID of non registered entity
2018-01-04 21:05:17 +00:00
a84910f04c
Implemented XP orbs
2018-01-04 19:28:19 +00:00
06a3c7c478
Entity: Write attributes in AddEntityPacket
2018-01-03 11:30:22 +00:00
c747c7d025
Throw exceptions when entities/tiles are created on chunks that don't exist
...
These assertions don't make sense. Since the chunk field is used below in both cases, the chunk should **never** be null no matter what.
2018-01-02 13:12:54 +00:00
c9e2e8980f
Fixed some places entities/players use their chunk without checking if it is valid
...
This may be invalid in some cases, such as:
- chunk is not loaded
- entity is not fully constructed
- entity is a Player who has not yet completed the login sequence.
2018-01-02 12:57:04 +00:00
502dd14c67
Entity: Remove excess whitespace in doOnFireTick()
2017-12-07 17:28:37 +00:00
3c936e1be8
Entity: removed dead maxFireTicks property
2017-12-07 16:37:32 +00:00
16fd37a039
Entity: Add getter & setter for fireTicks
2017-12-07 16:37:01 +00:00
e9e22db1e7
Cleaned up death animation handling, removed dead ticking from non-Living entities
2017-11-22 17:17:47 +00:00
74b074753f
Bulk addition of constant visibilities
...
thanks PhpStorm inspections plugin for annoying the shit out of me until
I did this.
2017-11-21 14:44:10 +00:00
a8ad956b29
Fixed keepMovement logic
2017-11-19 19:28:04 +00:00
db8a835a64
add a default value for Entity->setCanClimb()
2017-11-17 12:19:04 +00:00
460d540dbc
Further cleanup on ListTag and CompoundTag usage
2017-11-17 11:43:32 +00:00
3a16985d45
Cleaned up item & arrow pickup code
2017-11-15 12:14:42 +00:00
aa399a1109
migrate to new CompoundTag API ( #1515 )
2017-11-10 15:38:21 +00:00
d4494687d1
Fixed collision blocks not being recalculated after teleporting, close #1531
2017-11-09 15:11:42 +00:00
0e64c3dad8
fixed misusing isAlive(), close #1523
2017-11-07 09:32:38 +00:00
eab7b93483
Fixed misuse of kill() and close() when deleting entities ( #1490 )
2017-11-04 19:30:48 +00:00
a66a757f56
Cleaned up EntityEventPacket handling
2017-11-04 18:31:35 +00:00
d48880e31b
Remove redundant assert
2017-10-24 17:40:22 +01:00
7db8345424
Added rough support for reading entity saves with multiple save IDs (for PC 1.11 compatibility)
...
this will still always save using the legacy format to remain compatible with PC < 1.11.
TODO: entirely separate entity NBT format from entity implementation for proper multi-format compatibility
2017-10-22 10:16:24 +01:00
1dd2203ee5
Fixed burning mobs not getting onfire data flag set when read from disk
...
they'd just flash red and take damage for no apparent reason
2017-10-21 12:36:30 +01:00
18e4e5364f
Fixed getBlock() performance degradation caused by 781de3efab
, added Level->getBlockAt() to avoid creating vectors everywhere
2017-10-20 13:22:49 +01:00
98cfd0b398
fix entity rotation changes not getting broadcast until the entity moves
2017-10-20 10:13:19 +01:00
a245615531
fixed non-living entities lingering for a second after being kill()ed
...
only living entities should have death animation time
2017-10-19 20:51:50 +01:00
0a19a2611a
Re-organise some Entity methods
2017-10-19 19:03:11 +01:00
50be26958a
Added a helper function Entity->createBaseNBT() to cut down on boilerplate code
2017-10-19 17:36:51 +01:00
67c6fca0ed
Relocate a couple of Entity API methods and add some documentation
2017-10-19 17:05:27 +01:00
087badcb48
Remove deprecated effects methods from Entity
2017-10-19 16:35:44 +01:00
d9769360fe
Remove redundant code from Entity->entityBaseTick()
...
this will never be called because onUpdate() checks this and returns.
2017-10-19 16:32:45 +01:00
9fb93985d6
Cleaned up Entity->spawnTo()
2017-10-19 16:13:09 +01:00
2b22d5d8cc
Added EntityIds interface with constants
2017-10-19 15:43:55 +01:00
2db13bd114
added throwable eggs and refactor some projectile logic
...
close #1473
2017-10-19 14:12:50 +01:00
11cc20972f
extended death animation time
2017-10-19 13:39:51 +01:00
4821e7386d
fixed entities despawning too soon when killed
2017-10-19 13:39:10 +01:00
584810780a
Moved projectile-related classes to their own namespace
2017-10-19 12:27:44 +01:00
3e3157cbe1
fix tick diff debug spam when entities are spawned
2017-10-17 17:38:43 +01:00
07abd61f73
Added a FIXME for Entity->move()
2017-10-17 17:14:45 +01:00
15d6fd86e2
Added basic support for blocks with multiple AABBs, fixed stairs ( #1303 )
2017-10-12 16:29:24 +01:00
7e9b89e48a
Make Entity->checkObstruction() less confusing
2017-10-12 11:59:02 +01:00
be2d134994
Added API to allow flagging an entity not to be saved to disk when its chunk is saved ( #1452 )
2017-10-11 16:09:08 +01:00
78d49f8e66
Merge branch 'php/7.0' into mcpe-1.2
2017-09-03 15:02:41 +01:00
cb7911ee9c
Improved Absorption, now only applies to living entities, now controllable by plugins
2017-09-03 12:37:34 +01:00
7483f22e8b
Fixed a PhpStorm inspection
2017-09-03 12:10:56 +01:00
5d75d3d5b6
Merge branch 'php/7.0' into mcpe-1.2
2017-09-01 23:10:58 +01:00