Commit Graph

426 Commits

Author SHA1 Message Date
TheMode
d5d4a97694 EntityTeleportPacket must also be prepared
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-22 19:12:48 +02:00
TheMode
93a62ba133 Optimize entity teleport, prevent movement packets from being sent with teleport ones
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-22 01:13:05 +02:00
TheMode
e43d001076 Passenger entities should not send velocity packets
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-21 10:37:36 +02:00
TheMode
22ead81ebe Take the vehicle eye height into consideration
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-21 09:10:51 +02:00
TheMode
d8abdef1da Synchronize entity position when removing vehicle
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-20 22:43:54 +02:00
TheMode
2e017c3f0e Put equality check in the final method
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-20 22:32:16 +02:00
TheMode
a6fda18af6 Ensure that passengers are visible
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-20 22:28:09 +02:00
TheMode
4e58d61345 Prevent deadlock when adding/removing viewers very fast
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-20 18:42:31 +02:00
TheMode
06d8586f7f Improve the thread provider api
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-12 22:55:37 +02:00
TheMode
b5062ab4d6 Gravity tick counter should be part of the velocity tick method
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-11 05:54:26 +02:00
TheMode
3977b6f967 Code style
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-11 05:31:35 +02:00
TheMode
96bfc4c6fa Add getters for chunk coordinates in Point
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-04 15:29:20 +02:00
TheMode
4b2bda15f5 Merge branch 'master' into viewable-broadcast
# Conflicts:
#	src/main/java/net/minestom/server/network/player/PlayerSocketConnection.java
2021-09-02 18:50:55 +02:00
TheMode
9739403ff4 Properly update the client position when switching vehicle 2021-08-28 11:37:42 +02:00
TheMode
2ae0c0bbcd Batch movement packets 2021-08-25 09:01:13 +02:00
TheMode
5ddd97cee2 Move optimized event calling inside ListenerHandle 2021-08-24 15:35:09 +02:00
TheMode
2450e741e6 Catch Throwable instead of Exception 2021-08-23 03:46:10 +02:00
Шандуренко Константин Владимирович
66e8ac2dc3 Code review 2021-08-22 17:47:52 +03:00
Шандуренко Константин Владимирович
f2f592209a Entity#getLineOfSightEntity and BoundingBox#intersect(Point, Point) 2021-08-22 16:56:34 +03:00
TheMode
129a39fc3d Proper place for global event ListenerHandles 2021-08-22 13:56:12 +02:00
TheMode
898252dad0 Fast exit if the player didn't move 2021-08-22 08:13:28 +02:00
TheMode
18b0e21f21 Start using ListenerHandle 2021-08-22 07:47:06 +02:00
TheMode
8acb2e292c Move potion effect tick into its own method 2021-08-22 07:34:11 +02:00
TheMode
ef58d770b4 Move block collision code into its own method 2021-08-22 07:31:47 +02:00
Bloepiloepi
e902591baa
Merge branch 'master' into velocity-changes 2021-08-22 01:56:45 +02:00
Bloepiloepi
4f4a274259 Calculate player velocity from previous position 2021-08-20 16:18:20 +02:00
Bloepiloepi
66fab0672c Revert "Fix knockback strength"
This reverts commit f955b1f2
2021-08-20 14:56:27 +02:00
Bloepiloepi
1b8cc19a54 Fix air drag when not onground 2021-08-18 20:44:45 +02:00
Bloepiloepi
f955b1f2ae Fix knockback strength 2021-08-18 20:37:16 +02:00
TheMode
69e8792ce0 Special case when an entity is teleported in the same chunk 2021-08-17 21:58:15 +02:00
TheMode
af50bbb440 Player#UNSAFE_init now set the instance 2021-08-15 00:52:07 +02:00
TheMode
d785f50447 Items gravity is predicted client-side 2021-08-13 08:01:48 +02:00
TheMode
5a1eb83f49 Check with the position field instead of the parameter 2021-08-13 06:04:44 +02:00
TheMode
e5903c23a3 Reduce position packets when velocity is applied 2021-08-13 05:59:52 +02:00
TheMode
fd08cabb6a Change default tab implementation to show all online players 2021-08-11 14:18:04 +02:00
TheMode
3924d2c0a2 Do not send additional velocity packets to players 2021-08-11 13:23:45 +02:00
TheMode
0c52c9eb30 Merge branch 'master' into new-block-api
# Conflicts:
#	src/main/java/net/minestom/server/entity/Entity.java
#	src/main/java/net/minestom/server/entity/Player.java
2021-08-09 00:52:36 +02:00
TheMode
1591df16aa Rename netty to socket wherever possible 2021-08-08 19:11:47 +02:00
TheMode
7ba8189a28 Fix ghost players 2021-08-05 15:10:15 +02:00
TheMode
b178a6adac Create velocityTick method 2021-07-30 18:10:35 +02:00
TheMode
3dd35c1605 Use a single registry-impl class per type 2021-07-30 15:08:06 +02:00
TheMode
d7a6891153 Remove vehicle in Entity#remove 2021-07-30 14:01:54 +02:00
TheMode
184140e341 Remove passengers in Entity#remove 2021-07-30 12:38:15 +02:00
TheMode
bf53313c3e Use 0.91 drag when not on ground 2021-07-28 09:20:28 +02:00
TheMode
274a40ea27 Make EntityType an interface 2021-07-27 11:56:20 +02:00
TheMode
5285665939 Remove longly deprecated chat package 2021-07-27 06:55:08 +02:00
TheMode
aaa71f4e9a Fix EntityProjectile 2021-07-26 11:53:30 +02:00
TheMode
ad964a0a39 Remove deprecated UpdateOption.java 2021-07-25 06:25:32 +02:00
TheMode
6ce5e8d310 Inline newposition when physics is disabled 2021-07-24 13:06:28 +02:00
TheMode
19e3bee23c Lambda cleanup 2021-07-24 04:31:35 +02:00
TheMode
9db4ac06cc Even more inline packets 2021-07-22 13:01:00 +02:00
TheMode
081266775c More inline packets 2021-07-22 12:50:38 +02:00
TheMode
12e430db69 Inline position packets 2021-07-20 03:06:27 +02:00
TheMode
28b034103e Remove deprecated interfaces impl 2021-07-15 05:23:33 +02:00
TheMode
ea231bf52e Add 1.17.1 support 2021-07-14 16:26:32 +02:00
TheMode
520c85fcdb Fix passenger position refresh 2021-07-13 18:21:32 +02:00
TheMode
a7b0b2685b Only synchronize position if entity has been affected by its velocity 2021-07-13 17:51:29 +02:00
TheMode
86472003f8 Reuse fields 2021-07-13 15:16:18 +02:00
TheMode
b3f78b4706 Fix chunk refresh being broken in unloaded chunk 2021-07-11 21:57:04 +02:00
TheMode
8597d93e22 Optimize block collision check 2021-07-11 20:44:37 +02:00
TheMode
9e8d0c9ce0 Micro collision optimization + style 2021-07-11 20:20:01 +02:00
TheMode
b35ab0b667 Fix second setInstance method 2021-07-11 13:45:28 +02:00
TheMode
6cdf8a9ab9 Add constant for null future 2021-07-11 03:35:17 +02:00
TheMode
1ead7c923a Change setInstance 2021-07-11 02:59:24 +02:00
TheMode
b9679bc1ac Initial future commit 2021-07-11 02:54:02 +02:00
TheMode
d8b92d23ba Improve collision 2021-07-09 20:43:12 +02:00
TheMode
0ff69503c5 Add Point#isZero 2021-07-09 12:42:36 +02:00
TheMode
45d7420397 Remove most Position/BlockPosition usage 2021-07-08 18:56:40 +02:00
TheMode
90ce845cdb Allow Point in setInstance 2021-07-08 18:26:26 +02:00
TheMode
fff78cdf94 Move coordinate package 2021-07-08 13:48:28 +02:00
TheMode
ca2a2eb233 Rename with to apply 2021-07-08 13:22:04 +02:00
TheMode
30464d903d Fix position packet being sent twice 2021-07-07 19:38:43 +02:00
TheMode
c9b2356a0b Fix entity chunk tracking 2021-07-07 19:20:58 +02:00
Németh Noel
ce8e14ede1 Use proper method for refreshing position 2021-07-07 18:36:24 +02:00
Németh Noel
5ae26c44e1 Initial npe fix 2021-07-07 17:56:17 +02:00
TheMode
84eb0a8934 Fix build 2021-07-07 14:59:53 +02:00
TheMode
8a5147c994 More fixes 2021-07-07 01:32:30 +02:00
Németh Noel
6f6b15fa96 Update part of Entity.java 2021-07-07 01:06:32 +02:00
Németh Noel
f29ed48da9 update getter names 2021-07-06 23:03:01 +02:00
Németh Noel
65a97e5b00 Initial collision update 2021-07-06 22:26:11 +02:00
TheMode
28dca16b29 Initial position api implementation 2021-07-06 20:44:24 +02:00
TheMode
796b6820ce Start implementing the new coordinate API 2021-07-05 09:10:03 +02:00
TheMode
0d031d4c15 Merge branch 'master' into new-block-api
# Conflicts:
#	src/main/java/net/minestom/server/instance/DynamicChunk.java
#	src/main/java/net/minestom/server/instance/Instance.java
#	src/main/java/net/minestom/server/instance/InstanceContainer.java
#	src/main/java/net/minestom/server/instance/SharedInstance.java
#	src/main/java/net/minestom/server/instance/block/CustomBlock.java
#	src/test/java/demo/Main.java
#	src/test/java/demo/blocks/CustomBlockSample.java
#	src/test/java/demo/blocks/UpdatableBlockDemo.java
2021-07-05 08:21:47 +02:00
Németh Noel
3f1c433c94 Removed unnecessary deprecations 2021-07-03 14:41:57 +02:00
Németh Noel
bcc1132ed7 Deprecated net.minestom.server.entity.Entity.scheduleRemove(long, java.time.temporal.TemporalUnit) 2021-07-01 15:03:16 +02:00
TheMode
5969ec1709 Merge branch 'master' into new-block-api
# Conflicts:
#	src/main/java/net/minestom/server/item/ItemMetaBuilder.java
2021-07-01 02:22:20 +02:00
Németh Noel
059565b397 Flip ?: null checks 2021-06-30 22:25:24 +02:00
Németh Noel
a5a370783d Removed redundant check 2021-06-30 22:00:05 +02:00
Németh Noel
c9dd06ba20 Simplified millis calculation 2021-06-30 13:10:22 +02:00
Németh Noel
01dfe2f48d Replaced ChronoUnit with TimeUnit for consistency 2021-06-30 13:05:52 +02:00
Németh Noel
67dc8bf996 Updated Entity.java 2021-06-30 00:59:26 +02:00
Németh Noel
f6425d9fb2 Reduce the visibility of Entity#initializeDefaultGravity 2021-06-28 21:58:59 +02:00
Németh Noel
796d296f0d Removed terminal velocity 2021-06-28 19:24:53 +02:00
Németh Noel
13779aabde Fix knockback 2021-06-28 19:23:36 +02:00
Németh Noel
1ea526aa89 Fix gravity acceleration 2021-06-27 23:29:28 +02:00
Németh Noel
6c60c4d0fc Implement knockback 2021-06-27 23:05:54 +02:00
Németh Noel
17aa606037 Added javadoc to gravity related fields 2021-06-27 22:48:58 +02:00
Németh Noel
811531da70 Remove unit conversion 2021-06-27 22:45:05 +02:00
Németh Noel
adf0e06888 Changed gravity calculation 2021-06-27 22:44:04 +02:00
Németh Noel
b900d0e73d Introduced Entity#initializeDefaultGravity method 2021-06-27 22:29:25 +02:00