themode
b6d8dd9f73
Style cleanup + increase food saturation limit to 20
2021-03-21 19:47:22 +01:00
themode
9893bb72c8
don't send a close inventory packet when opening a new one
2021-03-21 13:38:25 +01:00
Eoghanmc22
8975161edb
use a ConcurrentHashMap key set instead of a CopyOnWriteArraySet for viewers so .contains() is O(1)
2021-03-19 22:50:28 -04:00
themode
c960bb297b
Remove unnecessary condition, prevent double chunk refresh
2021-03-16 05:16:11 +01:00
themode
8b0ab3d8c3
Fix lag spikes when loading the same chunks multiple times
2021-03-16 00:52:35 +01:00
themode
ae922529ea
Increase default chunk range to 3
2021-03-15 20:33:08 +01:00
themode
509f8f7851
Fix player not being directly disconnected after a kick
2021-03-14 21:34:38 +01:00
themode
4f2ec0a65f
Fix chunk coordinates not being properly calculated
2021-03-13 23:04:15 +01:00
themode
42318478a2
Changed metadata related classes access to public
2021-03-12 21:35:00 +01:00
themode
d6683932c8
Added PickupItemEvent#getItemEntity
2021-03-12 20:59:47 +01:00
themode
d91fcde798
Fix properties & equipments changes not being properly sent to viewers & self
2021-03-12 01:38:52 +01:00
themode
3ecace5bd6
Introduce the Tickable interface
2021-03-11 20:54:30 +01:00
themode
b155f3bca3
Deprecate Attributes, constants in Attribute should be used instead
2021-03-09 20:51:11 +01:00
themode
51facb9f14
Prevent modified clients from messing with the chunk range
2021-03-09 17:21:43 +01:00
themode
6a0582a950
Do not send all chunks on logging, wait for the settings packet instead
2021-03-09 07:08:35 +01:00
themode
a25e414754
Fix players being stuck on first connection when no respawn point is defined
2021-03-08 17:12:21 +01:00
themode
8ab29368a6
Fixed players being able to move during teleport
2021-03-08 16:49:16 +01:00
themode
2e17c8a8e1
Fix inventory not appearing after changing dimension
2021-03-07 23:18:32 +01:00
themode
b8e987f556
Fix player getting stuck after changing dimension
2021-03-07 22:22:04 +01:00
TheMode
9ea34fb668
Merge pull request #162 from RinesThaix/projectilesGravity
...
Fixing projectiles gravity
2021-03-07 15:09:47 +01:00
Konstantin Shandurenko
b9ec78b313
Removed explicit bounding box setup in EntityProjectile
2021-03-07 13:35:21 +03:00
themode
74d902b2a2
Remove player synchronization group, a better alternative will come up
2021-03-06 14:31:44 +01:00
Konstantin Shandurenko
51c627491a
Fixing projectiles gravity
2021-03-06 11:24:31 +03:00
Articdive
dbfb3f7ff4
Remove commons-codec dependency
2021-03-05 21:03:23 +01:00
themode
c253a27260
Added copy to clipboard message click event
2021-03-05 14:30:50 +01:00
themode
55179082e9
Remove final methods
2021-03-04 23:06:29 +01:00
themode
7c505ecc17
Do not deprecate Entity#setInstance
2021-03-04 16:43:10 +01:00
themode
25c2dc661f
Fix position yaw/pitch not being copied
2021-03-02 19:36:11 +01:00
TheMode
29a8542d3e
Merge pull request #129 from Minestom/improve-extension-system
...
Improve extension system
2021-03-02 18:22:21 +01:00
TheMode
3971777e56
Merge pull request #155 from RinesThaix/entities
...
Projectile improvements, custom entity position synchronization cooldown support
2021-03-02 13:38:50 +01:00
Konstantin Shandurenko
4be54651c6
Added javadoc for GoalSelectorsArrayList
2021-03-02 15:15:39 +03:00
Konstantin Shandurenko
0e027bc62f
Comments for CombinedAttackGoal
2021-03-02 14:58:32 +03:00
Konstantin Shandurenko
818299db74
CombinedAttackGoal
2021-03-01 19:47:29 +03:00
Konstantin Shandurenko
e1e546d9fa
EntityAIGroup typo fix
2021-03-01 16:52:19 +03:00
Konstantin Shandurenko
1ae2cf78af
Added support of custom entity position synchronization cooldown
2021-03-01 13:09:08 +03:00
Konstantin Shandurenko
de15c4b6c5
Rewriting projectiles
2021-03-01 12:59:16 +03:00
Konstantin Shandurenko
2b6a081c0d
Now devs have to explicitly instantiate EntityAIGroupBuilder
2021-02-28 20:07:34 +03:00
Konstantin Shandurenko
57e2bdb5d6
Slightly rewritten EntityAIGroupBuilder
2021-02-27 17:57:30 +03:00
Konstantin Shandurenko
20f581cc11
Merged with master
2021-02-26 06:58:12 +03:00
themode
e8e8022ec6
Fix pathfinding + cleanup
2021-02-25 15:48:48 +01:00
themode
7da3a16978
Fix connection loop
2021-02-25 15:35:31 +01:00
TheMode
77ed13abd9
Merge pull request #152 from RinesThaix/entities
...
EntityMeta
2021-02-25 15:30:35 +01:00
Konstantin Shandurenko
6192d1fead
removed duplicating code piece
2021-02-25 14:40:14 +03:00
Konstantin Shandurenko
23ee4c7fdf
Deprecated Entity constructors accepting spawnPosition and introduces Entity#setInstance(Instance, Position)
2021-02-25 13:56:10 +03:00
Konstantin Shandurenko
3c5b76c0a8
Tiny improvement for Entity#switchEntityType
2021-02-25 13:39:22 +03:00
Konstantin Shandurenko
e13bca1fdd
default scope to EAST case in EntitySpawnType.PAINTING
2021-02-25 13:37:40 +03:00
Konstantin Shandurenko
046ebc03f6
AbstractProjectile now extends Entity and not ObjectEntity
2021-02-25 13:07:55 +03:00
Konstantin Shandurenko
8ca43c4caa
Entity is not abstract anymore
2021-02-25 13:00:02 +03:00
Konstantin Shandurenko
8a57918fe9
LivingEntity is not abstract anymore
2021-02-25 11:39:37 +03:00
Konstantin Shandurenko
83c5d3c95f
Marked Entity#getEntityType as NotNull
2021-02-25 10:38:53 +03:00
Konstantin Shandurenko
18da3e0168
Moved switchEntityType from EntityCreature to Entity
2021-02-25 10:37:02 +03:00
Konstantin Shandurenko
ca6546eb7d
Removed obsolete metadata type values inside Entity
2021-02-25 10:00:29 +03:00
Konstantin Shandurenko
1308f81678
Switched all direct spawn packets interactions to EntityType#getSpawnType#getSpawnPacket
2021-02-25 09:15:51 +03:00
Konstantin Shandurenko
7db7dab4b9
EntitySpawnType initial commit
2021-02-25 08:59:55 +03:00
Konstantin Shandurenko
1115b829a1
EntityAIGroupBuilder
2021-02-24 13:38:42 +03:00
Konstantin Shandurenko
f8634171f7
Metadata#setNotifyAboutChanges
2021-02-24 13:28:23 +03:00
Konstantin Shandurenko
3f941d51bb
Fixed initial BoundingBox of Pufferfish
2021-02-23 20:04:30 +03:00
Konstantin Shandurenko
405390640b
Switched LivingEntity's explicit usage of metadata to LivingEntityMeta
2021-02-23 19:57:45 +03:00
Konstantin Shandurenko
60fcd43f18
Removed ParticleWrapper
2021-02-23 19:30:26 +03:00
Konstantin Shandurenko
c9f7ee5546
Renamed ParticleType back to Particle
2021-02-23 19:29:21 +03:00
Konstantin Shandurenko
6e950ab170
BaseEntityMeta is now an EntityMeta
2021-02-23 19:18:53 +03:00
Konstantin Shandurenko
692dcfed4c
Setting default entity BoundingBox from EntityType data
2021-02-23 18:41:24 +03:00
Konstantin Shandurenko
bbe143520e
A bit more changes to EntityMeta
2021-02-23 18:37:00 +03:00
Konstantin Shandurenko
eb274ce95e
Added default meta constructor to EntityTypes
2021-02-23 18:07:57 +03:00
themode
2843da6b26
Small comment cleanup
2021-02-23 15:11:21 +01:00
TheMode
ebed118ee2
Merge pull request #139 from LeoDog896/sound
...
Add Position PlaySound methods
2021-02-23 15:08:43 +01:00
Konstantin Shandurenko
237466c90e
Removed new entity classes and marked previously existing ones as deprecated
2021-02-23 16:10:14 +03:00
LeoDog896
f7fc7240f6
Reduce boilerplate in convience methods
2021-02-23 07:53:10 -05:00
Konstantin Shandurenko
0915858df3
Meta wrappers for all the entities
2021-02-23 15:11:10 +03:00
Konstantin Shandurenko
6eda8f97db
Removed @author javadocs
2021-02-23 09:14:38 +03:00
Konstantin Shandurenko
cfc5f860e9
Fishes
2021-02-23 08:47:09 +03:00
Konstantin Shandurenko
07be9d449b
Much more entities
2021-02-23 08:25:35 +03:00
Konstantin Shandurenko
ca3d36ac0c
Villagers and Ageable
2021-02-23 07:11:54 +03:00
Konstantin Shandurenko
2a55ed654d
Zombies
2021-02-23 06:45:04 +03:00
Konstantin Shandurenko
7a7c63afc2
Horses
2021-02-23 06:38:54 +03:00
Konstantin Shandurenko
3bba4ea704
New Entity AI
2021-02-23 02:28:24 +03:00
TheMode
7bd9283e17
Merge pull request #148 from RinesThaix/goals
...
Switched TargetSelectors result caching from EntityCreature field to local one in GoalSelectors
2021-02-22 15:15:18 +01:00
Konstantin Shandurenko
fbddffec32
Switched TargetSelectors result caching from EntityCreature field to local one in GoalSelectors
2021-02-22 17:08:15 +03:00
TheMode
20a23a4ebc
Merge pull request #147 from RinesThaix/goals
...
AbstractProjectile and arrows now call EntityAttackEvent, without damaging entities
2021-02-22 14:46:20 +01:00
Konstantin Shandurenko
1053cb33b1
Tiny comment for Projectile#getShooter
2021-02-22 16:42:52 +03:00
Konstantin Shandurenko
bcdd1bb70a
AbstractProjectile and arrows now call EntityAttackEvent, without damaging entities
2021-02-22 16:41:39 +03:00
TheMode
71f1e51df3
Merge pull request #146 from RinesThaix/goals
...
Arrows and RangedAttackGoal
2021-02-22 13:58:43 +01:00
Konstantin Shandurenko
dbd0e472c2
Added power param for projectiles shooting
2021-02-22 15:54:35 +03:00
Konstantin Shandurenko
504e8cafb4
Codestyle formatting and several comments
2021-02-22 15:33:03 +03:00
Konstantin Shandurenko
6e23552d9a
Not calculating entity collisions for arrows in first 3 ticks of its life
2021-02-22 14:58:26 +03:00
Konstantin Shandurenko
714e107eb3
Removed @author javadocs
2021-02-22 14:53:04 +03:00
Konstantin Shandurenko
b475a4cd78
Entity collisions for arrows
2021-02-22 14:51:17 +03:00
Konstantin Shandurenko
dbfebc50ec
Block collisions for arrows
2021-02-22 14:42:46 +03:00
Konstantin Shandurenko
3a251934ec
Projectiles shooting
2021-02-22 09:45:19 +03:00
Konstantin Shandurenko
3d14b614ce
EntityArrow and EntitySpectralArrow
2021-02-22 09:05:54 +03:00
Konstantin Shandurenko
3c8824c7b0
RangedAttackGoal implementation initial commit
2021-02-22 08:46:37 +03:00
themode
77148338b9
Added Entity#clearEffects
2021-02-22 06:00:49 +01:00
Konstantin Shandurenko
54da48fd3e
Caching entity target found by goal selectors
2021-02-22 07:33:11 +03:00
themode
200b244224
Fix JSON string not being displayable using ColoredText, remove unnecessary fields in PlayerListHeaderAndFooterPacket
2021-02-21 16:49:25 +01:00
themode
721f9abc08
FakePlayer now implements NavigableEntity
2021-02-20 09:15:08 +01:00
LeoDog896
4daa55d27e
Add Position playsound methods
2021-02-19 18:43:35 -05:00
themode
06abbcb7fb
Fix chunks being sent 2 times on first spawn
2021-02-19 13:52:27 +01:00
themode
1af8ea5303
Added comment about broken bedrock client skin using Geyser
2021-02-06 03:51:17 +01:00
jglrxavpok
8a992b3e45
New constructor to give UUID as argument in LivingEntity, now used to specify player UUID
2021-02-05 14:32:28 +01:00
jglrxavpok
eadd4a2b39
Automatically unload GlobalEventHandler callbacks
2021-02-03 17:11:06 +01:00
themode
1146d50f24
Cleanup
2021-02-02 21:14:01 +01:00
themode
c6cafb19a4
Added all missing metadata (except Particle)
2021-02-02 21:13:31 +01:00
themode
cb41b2e3d7
Added villager data metadata
2021-02-02 21:03:25 +01:00
themode
735dd50f4e
Fix optional metadata
2021-01-31 15:26:51 +01:00
themode
3026e46220
Added new metadata API
2021-01-30 04:44:44 +01:00
themode
da2286de74
Make the FakePlayer constructor protected instead of private
2021-01-28 15:42:11 +01:00
themode
c607a7a2cb
Small style cleanup
2021-01-28 15:41:11 +01:00
themode
fa0c5050e4
Prevent entities from moving during death animation
2021-01-28 15:37:55 +01:00
themode
522b4edc7a
New Navigator class to properly separate pathfinder functionalities
2021-01-28 15:33:52 +01:00
themode
e0c8e94bc1
Limit the number of velocity packet used for entities
2021-01-27 19:35:53 +01:00
themode
9775262c6a
Fix velocity for netty clients
2021-01-27 19:20:52 +01:00
themode
0da4f96e7e
Allow gravity values to be doubles
2021-01-25 21:30:56 +01:00
themode
5f75ea7d3a
Remove unnecessary casts
2021-01-25 19:33:53 +01:00
themode
c01736f863
Use doubles instead of floats to represent Position and Vector
2021-01-25 13:47:13 +01:00
themode
b37670e1c7
Override PlayerSkin#toString
2021-01-24 16:32:42 +01:00
Tyan
7d7c65aa70
Set the last location at the end of refreshPosition
2021-01-23 15:51:07 +01:00
themode
bf692d8043
Clone the teleport position to prevent object sharing
2021-01-23 08:42:49 +01:00
themode
36933fe4b3
Ensure synchronization of the location field
2021-01-23 08:23:24 +01:00
themode
7de0067a13
Small utility methods for EntityRotationPacket
2021-01-22 21:28:33 +01:00
themode
7a4f3672de
Send creeper metadata on spawn
2021-01-21 12:33:04 +01:00
LeoDog896
78abfb9657
Make init function UNSAFE
2021-01-18 10:44:12 -05:00
LeoDog896
ac68c094ce
Better keepalive and connection handling
2021-01-17 19:26:20 -05:00
LeoDog896
3b3a86a402
Prefer nullable over optional
2021-01-15 13:39:12 -05:00
LeoDog896
3514547610
Fix isEmpty check in ColoredText
2021-01-15 13:26:12 -05:00
LeoDog896
3536bdc856
Microoptimization cleanup
...
Just some small microoptimizations including preferring fastutils, Removing unnecessary checks already dealt with using @NotNull, all since I had extra unplanned free time.
2021-01-15 11:08:11 -05:00
TheMode
e6706ec327
Merge pull request #102 from LeoDog896/master
...
Add EatBlockGoal instance check & MeleeAttackGoal range.
2021-01-13 20:01:02 +01:00
LeoDog896
97b7e122e9
Add instance check to NavigableEntity
2021-01-13 07:54:06 -05:00
LeoDog896
96d581a49f
Optimize EatBlockGoal with fastutil
2021-01-13 07:50:41 -05:00
LeoDog896
2cd5a362a4
Add eating check for instances.
2021-01-13 07:37:20 -05:00
LeoDog896
85a84dbea6
Add range to MeleeAttackGoal
2021-01-13 07:33:51 -05:00
KrystilizeNevaDies
7bc1f37e80
Add a direct way to set the bounding box in Entity
2021-01-13 21:57:55 +10:00
themode
098ba1a6a4
Fix client crash when receiving packets before playing state
2021-01-13 09:16:22 +01:00
LeoDog896
37d528c5a2
Check for removed entity before targeting
2021-01-12 15:16:24 -05:00
themode
29c8f924fa
Added missing metadata types
2021-01-11 21:21:19 +01:00
themode
c5d56ae820
Small velocity code cleanup
2021-01-11 08:44:38 +01:00
R0bbyYT
71ca9414e4
Makes the HologramEntity accessible and adds documentation.
2021-01-09 22:20:08 +01:00
Matt Worzala
ef35a39388
Add Player#openBook ( #99 )
2021-01-09 12:40:22 +10:00
themode
8871cf16c0
Don't default the permission level
2021-01-09 02:38:26 +01:00
themode
a6e5dbc60e
Fix permission level to use the target selector
2021-01-09 02:20:55 +01:00
themode
8fef648221
Fix chunk packets from being wrongly sent when switching instance
2021-01-08 17:17:36 +01:00
themode
066b3dc417
Cleanup
2021-01-08 08:32:33 +01:00
themode
349364e15d
Provide the proper dimensiontype in the JoinGamePacket
2021-01-07 04:21:34 +01:00
themode
0fa82aff1f
Fix default dimension
2021-01-07 03:49:55 +01:00
themode
706a36b30a
Fix dimension not being sent for the first instance & force dimensions to be registered in the manager
2021-01-07 03:46:58 +01:00
themode
596b9eedb9
Don't ignore entity yaw in EntityCreature#addViewer
2021-01-07 02:30:46 +01:00
themode
4107c768a3
Fix test
2021-01-06 21:19:09 +01:00
themode
84fd568c0c
Fix attributes not being fully sent for the first player login
2021-01-06 21:09:27 +01:00
themode
f5d550cda9
Fix attributes not being refreshed client side
2021-01-06 20:45:40 +01:00
themode
97a29c6ccf
Player#setInstance cleanup
2021-01-06 19:06:37 +01:00
themode
6b39cb1e32
Execute the async login event before sending the login success packet
2021-01-06 19:02:35 +01:00
themode
47447706b0
Fix Player#kick ignoring the kicking text
2021-01-04 23:15:41 +01:00
themode
5c2b7f38f6
Update Hydrazine library
2021-01-04 21:37:34 +01:00
themode
7019b7da85
Fix onGround field and gravityTickCount
2021-01-04 03:04:45 +01:00
themode
f13646fd0d
Allow null target in EntityCreature#setTarget
2021-01-03 22:42:15 +01:00
themode
edab21baa6
Allow null target in EntityCreature#setTarget
2021-01-03 22:41:50 +01:00
themode
317432460e
Entity cleanup
2021-01-03 00:23:41 +01:00
ThatCreeper
993b936e4e
reorder imports
2021-01-02 17:12:38 -06:00
ThatCreeper
30868df243
Remove unused imports
2021-01-02 17:08:59 -06:00
ThatCreeper
30be7b5b81
Add Potion Add and Remove events
2021-01-02 16:59:17 -06:00
Matt Worzala
46ac38d5b3
Change ColoredText usages to JsonMessage
2020-12-31 13:53:21 -05:00
themode
2141792fcf
Fixed math
2020-12-31 12:07:16 +01:00
themode
fd920ffdfe
Potion cleanup
2020-12-31 12:05:36 +01:00
ThatCreeper
0ce094567b
Fix most checkstyle warnings
2020-12-30 19:27:29 -06:00
ThatCreeper
c3d6af3afe
make removeEffect send a packet
...
Make Potion immutable, and use long instead of Long
2020-12-30 19:07:07 -06:00
ThatCreeper
c01b57ed9b
removed scheduledPotions
2020-12-30 18:55:20 -06:00
ThatCreeper
fa41aabaed
Make Potions use time instead of nanoTime
2020-12-30 18:47:43 -06:00
ThatCreeper
d7883d29ff
Rewrite Potions
2020-12-30 18:29:07 -06:00
themode
d4110632a4
Increase readability when using static fields instead of local ones
2020-12-30 20:30:48 +01:00
themode
23fc19430a
Fix entity uuid map memory leak
2020-12-30 20:29:46 +01:00
themode
835a769080
Implement entity eye height based on boundingbox
2020-12-29 20:42:41 +01:00
themode
78ed12887d
Implement client spectate packet
2020-12-29 19:58:40 +01:00
themode
8b9836d82a
Set Player eye height to 1.62
2020-12-29 18:12:25 +01:00
TheMode
feab43a5f1
Merge pull request #89 from Nesaak/master
...
Add BlockIterator and LivingEntity#getTargetBlockPosition
2020-12-29 18:09:30 +01:00
themode
8da6148152
PlayerInventory field in player is now protected, to allow unsafe modifications when extending the class
2020-12-29 16:42:07 +01:00
Nesaak
fd73cc1d23
Add BlockIterator and LivingEntity#getTargetBlockPosition
2020-12-28 20:24:03 -05:00
themode
718d787192
Makes the Pose enum public
2020-12-29 00:43:04 +01:00
themode
cecf6310ca
Added Entity#setPose
2020-12-29 00:04:15 +01:00
Matt Worzala
460b177866
Set player bounding box size to 0.6.
2020-12-28 14:16:43 -05:00
themode
87e8e550f1
Don't add players to the waiting list in the constructor, but in the registration method
2020-12-28 12:41:15 +01:00
themode
924fac562b
Print exceptions properly during server tick
2020-12-28 12:27:25 +01:00
themode
22aa9d01ed
Do not size the string in sendPluginMessage
2020-12-28 10:40:50 +01:00
themode
28c5e39f8b
Pre login event is now async
2020-12-27 22:16:19 +01:00
themode
feb4783988
Small optimization for entity velocity
2020-12-26 18:52:44 +01:00
R0bbyYT
4818e29d81
Merge remote-tracking branch 'origin/master' into feature/item-meta
2020-12-24 15:29:59 +01:00
themode
557ec7ca83
Fix auto viewable during viewers refresh
2020-12-23 10:51:59 +01:00
themode
18eab183a0
Auto entity viewing cleanup
2020-12-23 10:40:50 +01:00
R0bbyYT
58c7ad9e02
Implements PlayerHeadMeta, FireworkMeta and FireworkEffectMeta
2020-12-23 02:24:41 +01:00
themode
6e0ad54d5e
Added EntityEndCrystal
2020-12-22 05:36:15 +01:00
themode
b5feb35619
Added PlayerDeathEvent to change the death message/text
2020-12-22 05:26:37 +01:00
R0bbyYT
81592d8b56
More documentation for the FakePlayer, Small improvement for the FakePlayerController
2020-12-19 16:32:42 +01:00
themode
943aae7397
Do not send gamemode related packets before the player spawn
2020-12-18 00:57:23 +01:00
themode
5224eecdd1
Event unification (type-specific event, CancellableEvent is now an interface)
2020-12-16 03:21:59 +01:00
themode
7750934a3f
Small cleanup
2020-12-16 00:13:40 +01:00
themode
7bcca8ff9f
Rename the walkingSpeed ability to fieldViewModifier, the movement speed attribute should be used instead for speed
2020-12-15 13:41:42 +01:00
themode
69adb67394
Compute the tags packet only once to improve performance on high connection traffic
2020-12-15 06:21:59 +01:00
themode
f2c586177f
Cache the unmodifiable viewers set to mitigate object allocation
2020-12-14 06:27:39 +01:00
R0bbyYT
a51e1a8484
See commit 4ae623cd
, but without the Google code formatting
2020-12-13 23:31:37 +01:00
themode
2fa0f5a417
Revert "Fixes an issue when a player is in another team that this player is not showed in his team for other players"
...
This reverts commit 4ae623cd
2020-12-13 23:01:01 +01:00
R0bbyYT
4ae623cdab
Fixes an issue when a player is in another team that this player is not showed in his team for other players
2020-12-13 15:00:48 +01:00
Felix Cravic
5e85c0117a
Cleanup
2020-12-12 06:13:50 +01:00