Commit Graph

3888 Commits

Author SHA1 Message Date
TheMode
4680dbd64e Reuse call method for mapped nodes
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-27 09:55:10 +02:00
TheMode
5c9c57439a Prevent node update from being called multiple times
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-27 09:51:36 +02:00
jglrxavpok
42938111d5 Allow tasks to be bound to the same thread for each run. 2021-08-26 19:50:28 +02:00
TheMode
f7cd0def20 Add dedicated CachedPacket for future network optimizations
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-26 18:18:35 +02:00
TheMode
b60b785dcd Fix unhandled exception
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-26 17:59:51 +02:00
Matthew
75964f87b4 Merge Task#scheduleForShutdown into Task#schedule 2021-08-26 11:22:08 -04:00
Matthew
1c92414cad Add TaskBuilder#build 2021-08-26 11:22:08 -04:00
Matthew
2674ca933e Move functionality from TaskBuilder#schedule to Task#schedule and Task#scheduleForShutdown 2021-08-26 11:22:08 -04:00
Matt Worzala
3ce51ff470 switch permission level back to an int internally 2021-08-26 11:12:03 -04:00
kiipy
6eac7282af Made Player#setPermissionLevel persistent after death. 2021-08-26 11:12:03 -04:00
TheMode
66681c5caf Use an array for filtering 2021-08-26 14:25:13 +02:00
TheMode
d56479d316 Ensure that child also invalidate events
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-26 13:24:16 +02:00
TheMode
af82bf1236 Reduce allocations for chunk packet writing 2021-08-26 10:55:56 +02:00
TheMode
024f8d36bd API cleanup 2021-08-26 10:36:31 +02:00
LeoDog896
811e3c542b Fix up tab completion for EntityType 2021-08-25 18:35:51 -04:00
TheMode
748b24b8ef Expand block properties error 2021-08-25 18:26:45 +02:00
TheMode
73f125763c Use a lock + weak map 2021-08-25 17:25:08 +02:00
TheMode
e185bca468 Fix obvious packet corruption 2021-08-25 13:54:09 +02:00
TheMode
5e18f48a1b Cleanup 2021-08-25 10:45:35 +02:00
TheMode
2ae0c0bbcd Batch movement packets 2021-08-25 09:01:13 +02:00
TheMode
6520855418 Fix buffer offset 2021-08-24 21:21:51 +02:00
TheMode
5ddd97cee2 Move optimized event calling inside ListenerHandle 2021-08-24 15:35:09 +02:00
TheMode
aed441123e Marks some methods as experimental 2021-08-24 15:25:11 +02:00
TheMode
93cbd52313 Use arrays instead of lists for loops 2021-08-24 15:12:39 +02:00
TheMode
ec66beece4 Initial viewable broadcast attempt 2021-08-24 14:59:17 +02:00
TheMode
5e27399815 Fix event propagation on self 2021-08-24 11:49:57 +02:00
Kiip
b1c1f65064
Fix minestom.com > minestom.net 2021-08-24 11:33:02 +02:00
TheMode
4825f8d4c1 Add EquipmentHandler#hasEquipment 2021-08-24 08:26:04 +02:00
TheMode
2cf4e89694 Implement shift-click equip 2021-08-24 07:23:44 +02:00
TheMode
7740c45982 Fix node child removal 2021-08-23 18:43:20 +02:00
TheMode
dc59f3fd23 Make auth requests async 2021-08-23 08:53:08 +02:00
TheMode
8fa590fdcd Fix drag clicks 2021-08-23 04:02:06 +02:00
TheMode
2450e741e6 Catch Throwable instead of Exception 2021-08-23 03:46:10 +02:00
TheMode
f1c9268897 Catch Throwable instead of Exception 2021-08-22 18:35:19 +02:00
TheMode
1b55bd0137
Merge pull request #428 from RinesThaix/getLineOfSightEntity
Entity#getLineOfSightEntity and BoundingBox#intersect(Point, Point)
2021-08-22 16:52:13 +02:00
Шандуренко Константин Владимирович
66e8ac2dc3 Code review 2021-08-22 17:47:52 +03:00
TheMode
253c059614 Do not run chunk load callback in the instance thread 2021-08-22 16:44:24 +02:00
Шандуренко Константин Владимирович
f2f592209a Entity#getLineOfSightEntity and BoundingBox#intersect(Point, Point) 2021-08-22 16:56:34 +03:00
TheMode
91983e16eb Prevent the server from stopping twice 2021-08-22 14:29:46 +02:00
TheMode
01e39b5d98
Merge pull request #427 from AlexDicy/master
Handle Ctrl+C and SIGINT signal
2021-08-22 14:28:18 +02:00
TheMode
93fc7235e0 Fix context being null in globalListener 2021-08-22 14:22:06 +02:00
Lorenzo Lapucci
74abe0439b
Merge branch 'Minestom:master' into master 2021-08-22 14:13:01 +02:00
Lorenzo Lapucci
c61a3dcd12 Stop the server on Ctrl+C and SIGINT signal 2021-08-22 14:12:38 +02:00
TheMode
129a39fc3d Proper place for global event ListenerHandles 2021-08-22 13:56:12 +02:00
TheMode
a8d90955c7 Fix chunks being registered multiple times (weirdly only happen on Windows?)
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-22 09:57:39 +02:00
TheMode
8fae759a71
Merge pull request #426 from Kebab11noel/fix/number-range
Fix range parsing and reduce boilerplate
2021-08-22 08:47:58 +02:00
Németh Noel
f633cef273 Change argument order, restrict range type 2021-08-22 08:45:39 +02:00
Németh Noel
293786854b Fix range parsing 2021-08-22 08:36:02 +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
TheMode
2dbf795d5c Fix ArgumentBlockState not throwing an exception when properties are incorrect 2021-08-22 07:13:50 +02:00
TheMode
a519360a8d Fix ArgumentNumber range error 2021-08-22 06:05:28 +02:00
TheMode
9ce420838a Make RecursiveEvent experimental 2021-08-22 05:49:42 +02:00
TheMode
7bafdde57f Fix javadoc build 2021-08-22 05:08:46 +02:00
TheMode
3d1509aef0
Merge pull request #417 from Minestom/zero_cost_event
Free event calling
2021-08-22 05:04:21 +02:00
TheMode
234d26dce9 Add some comments 2021-08-22 05:02:44 +02:00
TheMode
ab91c08a66 Typo 2021-08-22 04:39:53 +02:00
TheMode
d4f8aa6fcb Simplify & inline mapped listeners
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-22 04:17:42 +02:00
TheMode
9c7c409fae Reduce listener count 2021-08-22 03:08:37 +02:00
Bloepiloepi
e902591baa
Merge branch 'master' into velocity-changes 2021-08-22 01:56:45 +02:00
TheMode
6f88abf987 Warn about EventNode#map performance 2021-08-22 00:41:30 +02:00
TheMode
23c76bc799 Fix & cleanup OpenToLAN 2021-08-21 10:12:55 +02:00
TheMode
d9c000f80a Cache listener handles for mapped nodes
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-21 10:02:57 +02:00
TheMode
9ec257ed3d
Merge pull request #416 from Bloepiloepi/knockback-fix
Air drag fix
2021-08-21 09:34:32 +02:00
TheMode
f9c67d9b2b Improve mapped node listening 2021-08-21 07:01:48 +02:00
TheMode
56f826a41e Cache block entities even without handler. Fix them from being invisible 2021-08-21 04:53:43 +02:00
TheMode
6541951aaa Add experimental ItemStack#withMeta with direct reference 2021-08-21 04:45:19 +02:00
TheMode
a58e149918 Remove unnecessary generic declaration 2021-08-21 04:21:03 +02:00
TheMode
c6cc96a5f9 Less change propagation/volatile read 2021-08-21 04:15:47 +02:00
TheMode
cfbd655027 Cleanup 2021-08-21 02:08:25 +02:00
TheMode
0ad763a813 Performance improvement 2021-08-21 02:00:30 +02:00
TheMode
429d12c7e3 Add some comments 2021-08-21 01:35:47 +02:00
TheMode
7dfa477500 Initial mapped node support 2021-08-21 01:24:30 +02:00
TheMode
6a2b48aee2 Merge branch 'master' into zero_cost_event 2021-08-20 23:55:30 +02:00
TheMode
fa07d861a6 Merge remote-tracking branch 'origin/master' 2021-08-20 20:51:11 +02:00
TheMode
22b722a530 Add LEATHER_HORSE_ARMOR meta 2021-08-20 20:50:51 +02:00
TheMode
67e12d07eb Add LEATHER_HORSE_ARMOR meta 2021-08-20 20:50:11 +02:00
jglrxavpok
f6c638c1e1 Reduce amount of memory used after saving an Instance with the AnvilLoader 2021-08-20 18:10:51 +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
TheMode
8297089ca8 Fix recursive class selection 2021-08-20 10:27:22 +02:00
TheMode
9a4ced9a6e Cleanup 2021-08-20 10:13:08 +02:00
TheMode
a365676848 Add RecursiveEvent 2021-08-20 10:05:44 +02:00
TheMode
403e9fc8f1 Slightly optimize RandomStrollGoal
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-20 07:17:53 +02:00
TheMode
8075cab011 Add ItemHideFlag#HIDE_DYE 2021-08-20 06:49:13 +02:00
TheMode
e16a662908 Add EventNode#hasListener 2021-08-20 05:57:29 +02:00
TheMode
88a3a7d37c Update doc 2021-08-20 05:21:53 +02:00
TheMode
04be72c429 Support listener expiration 2021-08-20 03:00:25 +02:00
TheMode
2ef8e957a0 Fix ThreadMXBean returning null thread info 2021-08-19 23:28:27 +02:00
TheMode
8762e54451 Clamp Pos#yaw 2021-08-19 23:22:50 +02:00
TheMode
874c60fb6a Remove player on server shutdown 2021-08-19 23:17:25 +02:00
TheMode
46d2542d59 Rename EventListener#eventType 2021-08-19 22:53:20 +02:00
TheMode
044849b5ac Add support for node predicate, fast exit when the node type is incompatible 2021-08-19 22:21:51 +02:00
TheMode
72bda2c4ec Fast exit when trying to write an empty array 2021-08-19 11:54:26 +02:00
TheMode
62916239b5 Increase the default socket buffer size 2021-08-19 10:42:50 +02:00
TheMode
987e355a70 Cleanup basic command parsing 2021-08-19 09:06:24 +02:00
TheMode
43fc7ad624 Add support for EventBinding 2021-08-19 07:12:53 +02:00
TheMode
b4fbfe572d Initial ListenerHandle implementation 2021-08-19 06:45:23 +02:00
emortal
2e548e6582 Remove unrelated changes, make PickupExperienceEvent implement PlayerEvent 2021-08-19 05:22:57 +01:00
emortal
a0696bc20b Add getPlayer() to PickupExperienceEvent 2021-08-19 05:05:00 +01:00
TheMode
9750e1fe8b Synchronize child access 2021-08-19 02:53:13 +02:00
TheMode
1c59186b61 Improve chunk packet reading 2021-08-19 00:11:24 +02:00
TheMode
8c6778983b Make FollowTargetGoal query for targets when necessary 2021-08-18 22:11:15 +02:00
TheMode
5cf358ac3c Fix inventory events not giving the proper inventory/slot 2021-08-18 21:08:04 +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
f26e6ef91f Annotation style 2021-08-18 00:43:09 +02:00
TheMode
dbf5ff6cd4 Add PlayerConnection#flush without guarantee 2021-08-17 23:23:41 +02:00
TheMode
a43f6f6b62 Potentially fix ghost chunks when switching instance 2021-08-17 23:01:28 +02:00
TheMode
69e8792ce0 Special case when an entity is teleported in the same chunk 2021-08-17 21:58:15 +02:00
TheMode
460585ae9b Prevent the client from breaking due to weird command syntaxes 2021-08-17 21:39:26 +02:00
TheMode
9afb86a511 Use fastutil #fastIterable when possible 2021-08-17 20:37:15 +02:00
TheMode
c58eaa51d3 Fix test 2021-08-17 18:44:53 +02:00
TheMode
adf9a91d7a Double-checked locking is unnecessary 2021-08-17 06:40:07 +02:00
TheMode
6c8cc9f669
Merge pull request #412 from Minestom/event-node-map
Mapped Event nodes
2021-08-17 06:31:18 +02:00
TheMode
42afae9b68 Add warning for string reading + incorrectly configured ip forwarding 2021-08-17 06:10:36 +02:00
TheMode
d0a5c781ca Propagate binding listeners 2021-08-17 03:10:16 +02:00
TheMode
488fe06f01 Make new methods experimental 2021-08-17 02:58:12 +02:00
TheMode
c5cf7e4ab2 Fix GlobalEventHandler 2021-08-17 02:35:43 +02:00
TheMode
523c9b512a More cleanup 2021-08-17 02:33:48 +02:00
TheMode
390c383e82 Rename EventInterface, add unregister 2021-08-17 02:24:21 +02:00
TheMode
a5a3b4f31e Remove unnecessary map lookup for event interfaces 2021-08-17 01:55:22 +02:00
TheMode
d5cdb36e47 Remove unnecessary list check 2021-08-17 01:35:16 +02:00
TheMode
e1c1f1d545 Make EventNode an interface 2021-08-16 23:42:02 +02:00
TheMode
42a6654993 Improve tickable block loop 2021-08-16 20:08:48 +02:00
TheMode
2339fe1c07 Cache BlockImpl hashcode 2021-08-16 20:07:57 +02:00
TheMode
bfdc5a53ca Style cleanup 2021-08-16 19:04:42 +02:00
TheMode
8617d98c95 Rework EventInterface 2021-08-16 07:58:58 +02:00
TheMode
02e8d53079 Use weak references to store mapped nodes 2021-08-16 05:53:11 +02:00
TheMode
e72c87f670 Reduce allocation in Navigator movement 2021-08-16 02:53:07 +02:00
TheMode
f3524d4a4f Use var to replace verbose map entrySet loop 2021-08-16 01:29:46 +02:00
TheMode
ef5c15fb6a Run ThreadMXBean method in the enable method 2021-08-15 23:16:50 +02:00
TheMode
6f2cf8e6a5 PlayerDiggingListener refactoring 2021-08-15 20:25:23 +02:00
TheMode
8410ac51c3 Fix enchantment nbt writing 2021-08-15 20:12:10 +02:00
TheMode
b6ab689b10 Style cleanup 2021-08-15 17:50:38 +02:00
TheMode
d53d2ecea5 Remove future allocation 2021-08-15 06:00:17 +02:00
TheMode
6c242cbc7f Simplify InstanceContainer 2021-08-15 05:58:53 +02:00
TheMode
af50bbb440 Player#UNSAFE_init now set the instance 2021-08-15 00:52:07 +02:00
TheMode
93405cd180 Style 2021-08-14 21:28:51 +02:00
TheMode
e5f0dc8061 Improve mapped node implementation. Add handler type to EventFilter 2021-08-14 21:20:51 +02:00
TheMode
e7cbe49a42 Fix middle click 2021-08-14 20:33:58 +02:00
TheMode
b505613810 Re-make the player field protected 2021-08-14 18:39:45 +02:00
TheMode
11d8c16bf4 Reduce magic values usage for packet slot conversion 2021-08-14 18:27:31 +02:00
TheMode
8cf58fa397 Fix double click clickedItem always being air 2021-08-14 18:21:01 +02:00
TheMode
4560f2e630 Change InstanceContainer#unloadChunk implementation to directly unload chunks instead of maintaining a set 2021-08-14 16:37:19 +02:00
TheMode
168672e002 Keep reference to the framed packet for debugging/transformation purpose 2021-08-14 14:39:11 +02:00
TheMode
ebb8d03985 Fix getEventMapping 2021-08-14 02:56:34 +02:00
TheMode
174cc2ea8f Make mapped nodes work 2021-08-14 02:48:26 +02:00
TheMode
5f51448da6 Add WIP EventNode.Mapped 2021-08-14 02:11:22 +02:00
TheMode
a075231770 Add EventInterface prototype 2021-08-14 01:39:45 +02:00
TheMode
e96334e315 Ignore creative inventory action when the item is already present. 2021-08-13 23:37:40 +02:00
TheMode
3ff5a7f414 Implement toString for registry objects 2021-08-13 21:15:43 +02:00
TheMode
1775de52e4 Remove debug line 2021-08-13 21:11:38 +02:00
TheMode
7f0f35b060 Fix double/drag prediction in player inventory 2021-08-13 21:05:56 +02:00
TheMode
3423562be8 Fix double/drag prediction 2021-08-13 20:45:28 +02:00
TheMode
1bdc50f4a0 Trust client's inventory prediction when possible 2021-08-13 20:41:59 +02:00
TheMode
d4f74abc64 Include original packet in FramedPacket for debugging/listening purpose 2021-08-13 19:58:14 +02:00
TheMode
17f9eb45ca Make #getNearbyBlocks static 2021-08-13 19:53:37 +02:00
TheMode
3f01d63913 Inline delta computation 2021-08-13 10:26:46 +02:00
TheMode
c89f049dad Reduce bounding box allocation 2021-08-13 10:12:28 +02:00
TheMode
3917d3cb1d Merge branch 'master' into new-block-api 2021-08-13 09:47:09 +02:00
TheMode
ce985bc41d
Merge pull request #410 from MrGazdag/patch-11
Add Player#refreshCommands()
2021-08-13 09:28:55 +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
88ec8ddffa Fix block hashcode 2021-08-13 05:40:29 +02:00
TheMode
0db44545cd Do not copy collections unless necessary 2021-08-13 03:25:11 +02:00
TheMode
322572c96d Rename to LocalCache 2021-08-13 01:13:58 +02:00
TheMode
78126fad6c Add experimental local buffer API. Remove allocation when writing chunk packets (should help with startup time) 2021-08-13 01:08:19 +02:00
TheMode
82602a686e Fix SoundEvent not being an adventure sound type 2021-08-12 22:08:31 +02:00
TheMode
70c757e8b5 Drag click cleanup, fix cursor item not being updated (thanks 1.17.1) 2021-08-12 20:49:03 +02:00
TheMode
c17f07e1d0 More inventory cleanup 2021-08-12 18:06:23 +02:00
MrGazdag
c71ea517a2
add refreshCommands() 2021-08-12 03:53:49 +02:00
themode
6b151c1f7c Inline position check 2021-08-11 22:17:41 +02:00
TheMode
35d63ae547 Implements #equals for BlockImpl 2021-08-11 21:28:13 +02:00
TheMode
be07fdb647 Simplify InventoryClickProcessor 2021-08-11 20:35:30 +02:00
TheMode
5607652378 Fix incorrect held click slot 2021-08-11 19:51:08 +02:00
TheMode
5714d9db79 Merge remote-tracking branch 'origin/new-block-api' into new-block-api 2021-08-11 16:16:01 +02:00
TheMode
8ff4f9432c Init player before setting its instance 2021-08-11 16:15:56 +02:00
Matthew
6ba5f64db6 Cleared up Section#toChunkCoordinate 2021-08-11 15:08:54 +02:00
TheMode
ea951f9566 Less allocation for compressed packets 2021-08-11 14:47:20 +02:00
TheMode
13538c768c Less worker threads by default 2021-08-11 14:32:06 +02:00
TheMode
6773ea73ef Merge remote-tracking branch 'origin/new-block-api' into new-block-api 2021-08-11 14:18:19 +02:00
TheMode
fd08cabb6a Change default tab implementation to show all online players 2021-08-11 14:18:04 +02:00
TheMode
1fdf1d62f9
Merge pull request #402 from MrGazdag/patch-9
Fix timeRate 0 when time is 0
2021-08-11 13:42:18 +02:00
MrGazdag
73d54e812e
format code 2021-08-11 13:39:36 +02:00
TheMode
3924d2c0a2 Do not send additional velocity packets to players 2021-08-11 13:23:45 +02:00
MrGazdag
4fc5b4f6c9
fix time 0 2021-08-11 03:41:17 +02:00
TheMode
ae3884efdc Automatically resize BinaryWriter 2021-08-11 01:01:50 +02:00
TheMode
e7e59052a9
Merge pull request #400 from Kebab11noel/merge-number-args
Reduce boilerplate in number arguments
2021-08-10 22:34:55 +02:00
Németh Noel
47a07ca219 Fix exception message 2021-08-10 22:21:19 +02:00
Németh Noel
c94344a22e Reduce boilerplate, add missing toString method 2021-08-10 22:18:11 +02:00
TheMode
7f4e4a9b80 Steal var-int/long code from async-profiler 2021-08-10 18:45:02 +02:00
Bloepiloepi
ed064c42be Use active hand when updating item state 2021-08-10 01:20:01 +02:00
TheMode
36f3355a12 Use for-each 2021-08-10 01:17:44 +02:00
TheMode
18058bc3c8 Reduce ByteBuffer allocation 2021-08-09 23:54:45 +02:00
Bloepiloepi
aaad91ff47 Initialize every projectile in CrossbowMeta 2021-08-09 16:41:01 +02:00
Bloepiloepi
447f921cf1 Send only changed attributes 2021-08-09 16:37:46 +02:00
TheMode
f489f95bb7 Improve velocity forwarding 2021-08-09 15:18:28 +02:00
TheMode
e9e688b50a Add (and fix) packet reading warning 2021-08-09 15:09:08 +02:00
TheMode
5b8b9cab57 Fix buffer not being emptied 2021-08-09 02:05:51 +02:00
TheMode
1b708bc851 Fix BinaryBuffer#canWrite, use read-only buffers for caching 2021-08-09 01:45:00 +02:00
TheMode
cb7bccf26c Load level.dat nbt on instance init 2021-08-09 01:16:51 +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
1181724b7a
Merge pull request #389 from Minestom/nio
Switch to NIO
2021-08-09 00:46:56 +02:00
TheMode
10fce3c034 Use lambda for socket accept 2021-08-08 23:51:59 +02:00
TheMode
1b79d2e2e8 Cleanup 2021-08-08 23:03:01 +02:00
TheMode
3881102925 Make Worker a thread 2021-08-08 21:28:38 +02:00
TheMode
99a3ad88a1 Use lambda for socket selection 2021-08-08 21:14:53 +02:00
TheMode
09b7daa985 Fix server shutdown 2021-08-08 19:58:00 +02:00
TheMode
1591df16aa Rename netty to socket wherever possible 2021-08-08 19:11:47 +02:00
TheMode
b56509718c Add encryption support 2021-08-08 19:02:36 +02:00
TheMode
f75f755194 Make BinaryBuffer internal 2021-08-08 17:01:44 +02:00
AwesomestCode
938ff330ec
Remove extra space 2021-08-07 19:40:27 -04:00
Eoghanmc22
6ed7581e03 fix a bug with map api 2021-08-06 22:22:25 -04:00
TheMode
a2e2461d22 Revert BinaryReader changes 2021-08-06 17:30:39 +02:00
TheMode
2a6f9a8bc8 Use BinaryBuffer for velocity forwarding 2021-08-06 16:35:01 +02:00
TheMode
f135edba0d Replace BinaryReader to BinaryBuffer 2021-08-06 16:30:52 +02:00
TheMode
9bcf89b677 Simplify var-int reading 2021-08-06 14:30:55 +02:00
TheMode
455c21208e WIP BinaryBuffer 2021-08-06 14:21:11 +02:00
TheMode
aa2a6522dc Increase socket size, cache direct buffers 2021-08-05 15:42:16 +02:00
TheMode
7ba8189a28 Fix ghost players 2021-08-05 15:10:15 +02:00
TheMode
87f141ff50 Simplify packet writing 2021-08-05 03:09:45 +02:00
TheMode
a52d574049 Send light packet first 2021-08-05 02:34:48 +02:00
TheMode
eb43dc0cc0 Reuse flush method 2021-08-05 01:10:03 +02:00
TheMode
58487f4455 Add PacketUtils#allocateTrimmedPacket 2021-08-05 00:08:53 +02:00
TheMode
a2afcdd3a0 Reduce field access 2021-08-04 21:17:02 +02:00
TheMode
120b58db6a Fix ghost player, trim chunk/light packets 2021-08-04 21:02:59 +02:00
TheMode
538d641d4b Channel write cleanup 2021-08-04 20:34:27 +02:00
TheMode
ba63fe5b63 Remove PropertyEntry map wrapper 2021-08-04 17:45:17 +02:00
TheMode
0b23795fb0 Remove login log 2021-08-04 17:32:36 +02:00
BuildTools
27d2219fb8 Fix dimension 2021-08-04 22:58:33 +08:00
TheMode
9b9d3f3405 Better chunk packet caching 2021-08-04 16:49:01 +02:00
TheMode
58f0f3ec89 Light cleanup 2021-08-04 14:47:19 +02:00
TheMode
7320d83175 Reduce exception spam 2021-08-04 12:52:49 +02:00
TheMode
174ef14303 Reuse grouped buffers 2021-08-04 12:41:15 +02:00
TheMode
0d91f9efc6 Close the main selector 2021-08-04 05:19:11 +02:00
TheMode
8895e49a52 Improve socket shutdown 2021-08-04 05:15:40 +02:00
TheMode
557d34c378 Reduce allocation count 2021-08-04 04:00:42 +02:00
TheMode
9bb50430d4 Fix memory leak, decrease socket size 2021-08-04 03:53:01 +02:00
TheMode
5adeed392b Flush packet sync
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-04 00:48:35 +02:00
TheMode
66b567597a Fix connection crash
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-04 00:37:17 +02:00
TheMode
548cee55e0 Fix compression
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 21:16:24 +02:00
TheMode
65df72fa82 Remove write branching
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 20:18:38 +02:00
TheMode
6db55ce91f Always flip
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 20:02:27 +02:00
TheMode
9f1efb0932 Fix writer to array conversion
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 19:54:32 +02:00
TheMode
fbf6479135 Fix item meta writing
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 19:44:10 +02:00
TheMode
e4a3a3dbae Removed unused buffer + deflater
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 17:05:21 +02:00
TheMode
b35954c05d Fix ping
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 13:09:03 +02:00
TheMode
1c3bb5b0ff First NIO attempt
Signed-off-by: TheMode <themode@outlook.fr>
2021-08-03 12:57:13 +02:00
TheMode
e0cfd4c33c Improve registry data load 2021-08-01 15:39:11 +02:00
TheMode
515b5358da Simplify forDifferencesBetweenArray 2021-08-01 14:10:47 +02:00
TheMode
9a74051cdb Use jdk method for array comparison 2021-08-01 14:00:57 +02:00
TheMode
db9906d0ae Override Block#toString 2021-08-01 13:01:56 +02:00
TheMode
bf48154aee Cache registry collections 2021-08-01 12:05:10 +02:00
TheMode
aa1fc186f0 Use cursor item in windows packet (thanks mojang) 2021-07-31 18:16:19 +02:00
TheMode
e150a6542a More specific Registry annotation/doc 2021-07-31 17:57:46 +02:00
TheMode
d61174235b Use intrinsics math floor 2021-07-30 18:33:37 +02:00
TheMode
b178a6adac Create velocityTick method 2021-07-30 18:10:35 +02:00
TheMode
d0ace7f10e Simplify BlockImpl 2021-07-30 17:34:39 +02:00
TheMode
0bf275afb2 Use getSafe 2021-07-30 17:17:37 +02:00
TheMode
53dea325f9 Move BlockLoader into impl class 2021-07-30 17:16:52 +02:00
TheMode
f865a7b9dd Reduce registry boilerplate 2021-07-30 15:29:05 +02:00
TheMode
c9f234cb1d Use #getSafe 2021-07-30 15:09:18 +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
BuildTools
0e8109f259 Fix position desynchronization 2021-07-30 17:09:00 +08:00
TheMode
1baf4a5068 Remove unused method 2021-07-30 11:01:43 +02:00
TheMode
31093cf3f0 Fix fluid tags 2021-07-29 15:51:51 +02:00
TheMode
34c5f5133e Remove loot table api 2021-07-29 13:24:29 +02:00
TheMode
24e4b8765e Remove resource gatherer, retrieve tags from our own data generator 2021-07-29 12:54:16 +02:00
TheMode
16e4b61eb7 Fix unused imports 2021-07-29 00:02:43 +02:00
TheMode
5fe72d4e2b Double lock fix 2021-07-29 00:00:08 +02:00
TheMode
16fbc5ea2c Simplify Player#setInstance 2021-07-28 17:28:36 +02:00
TheMode
5ff7667691 Add maxDamage for Material registry 2021-07-28 17:00:16 +02:00
TheMode
6a86e92999 Unload all chunks when changing instance 2021-07-28 16:36:21 +02:00
TheMode
de944edf42 Fix item stack argument 2021-07-28 14:35:07 +02:00
TheMode
13b7039721 Replace most enums 2021-07-28 14:29:28 +02:00
TheMode
a6a657b9b8 Make Enchantment an interface 2021-07-28 13:27:49 +02:00
TheMode
8dff4227eb Rename registry resource enum 2021-07-28 13:02:12 +02:00
TheMode
ec6bcf2d01
Merge pull request #383 from MrGazdag/patch-8
Set time to negative when timeRate is 0
2021-07-28 09:31:39 +02:00
TheMode
bf53313c3e Use 0.91 drag when not on ground 2021-07-28 09:20:28 +02:00
MrGazdag
24ee50d69e
use -Math.abs() instead 2021-07-27 20:50:17 +02:00
MrGazdag
f35bcb90b9
update Instance 2021-07-27 18:57:11 +02:00
MrGazdag
d3cacb0f25
remove methods 2021-07-27 12:24:25 +02:00
MrGazdag
a20fb32ef5
fix documentation and add hasFlag 2021-07-27 12:11:30 +02:00
MrGazdag
5b1e06de04
use static fields in Player 2021-07-27 12:08:13 +02:00
MrGazdag
a6c6944e56
Update PlayerAbilitiesPacket 2021-07-27 11:56:51 +02:00
TheMode
274a40ea27 Make EntityType an interface 2021-07-27 11:56:20 +02:00
TheMode
00b991e970 Add translation keys 2021-07-27 10:51:38 +02:00
TheMode
82e5873b4f Protocol interfaces to become sealed in the future 2021-07-27 10:28:06 +02:00
TheMode
c549ec1663 Remove legacy registry methods 2021-07-27 09:55:01 +02:00
TheMode
d685a7b136 Make Material an interface 2021-07-27 09:40:57 +02:00
TheMode
5b044a2d38 Update Registry to retrieve a block material 2021-07-27 08:48:45 +02:00
TheMode
b22d030a6f Ask for the flag directly in PlayerAbilitiesPacket 2021-07-27 07:44:06 +02:00
TheMode
de76ac5aad Add UpdateViewPositionPacket constructor 2021-07-27 07:00:04 +02:00
TheMode
d61b1d48b7 Remove SoundCategory.java 2021-07-27 06:58:42 +02:00