Шандуренко Константин Владимирович
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
746cf19869
Fix build
2021-08-22 06:14:03 +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
d6dd81b35f
Change dimension command to teleport to any different instance
2021-07-28 20:30:45 +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
fa8bab8191
Revert "Remove Fluid enum"
...
This reverts commit 3c10d93d9c
.
2021-07-28 13:48:24 +02:00
TheMode
3c10d93d9c
Remove Fluid enum
2021-07-28 13:46:04 +02:00
TheMode
7df7d3ad74
Reuse code for the generator
2021-07-28 13:43:05 +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
TheMode
5285665939
Remove longly deprecated chat package
2021-07-27 06:55:08 +02:00
TheMode
2cc92e5e3e
Simplify login process
2021-07-26 15:49:03 +02:00
TheMode
aaa71f4e9a
Fix EntityProjectile
2021-07-26 11:53:30 +02:00
TheMode
87e4d84e4a
Fix falling block meta
2021-07-26 10:34:18 +02:00
TheMode
25d645a5cb
Remove legacy position objects
2021-07-25 06:30:49 +02:00
TheMode
ad964a0a39
Remove deprecated UpdateOption.java
2021-07-25 06:25:32 +02:00
TheMode
adacf6b8aa
Improve mapping/filtering
2021-07-25 05:56:52 +02:00
TheMode
e04a5bc2d8
unused import
2021-07-24 14:38:43 +02:00
TheMode
6ce5e8d310
Inline newposition when physics is disabled
2021-07-24 13:06:28 +02:00
TheMode
fdaac26e72
Fix epsilon
2021-07-24 12:53:55 +02:00
TheMode
e3520f4294
Use a fastutil map to store chunks, will be significantly slower when accessed from multiple threads but without generating any garbage, and better for single-threaded use.
2021-07-24 11:44:50 +02:00
TheMode
3a93ab045a
Fix with the latest version of MinestomData
2021-07-24 11:22:59 +02:00
TheMode
7f5ea582c9
More packet constructors
2021-07-24 07:45:08 +02:00
TheMode
2ad8fb1c77
Use instance players when possible
2021-07-24 04:39:57 +02:00
TheMode
19e3bee23c
Lambda cleanup
2021-07-24 04:31:35 +02:00
TheMode
f7d30feb7f
Cleanup EntityFinder
2021-07-24 04:22:50 +02:00
TheMode
6aa55ad7b6
Cleanup
2021-07-24 03:31:03 +02:00
MrGazdag
4b517244a2
Fix incorrect coordinate encoding
2021-07-23 18:20:01 +02:00
TheMode
d146aacd36
Cleanup
2021-07-23 16:14:42 +02:00
TheMode
11b2426629
Micro optimize block properties map
2021-07-23 15:44:53 +02:00
TheMode
8734478126
More packet constructors
...
Signed-off-by: TheMode <themode@outlook.fr>
2021-07-23 08:15:25 +02:00
TheMode
991de2d0cc
Fix ghost item/block when cancelling interaction
2021-07-23 06:12:57 +02:00
TheMode
66904f2539
Lazily init nbt writer in BinaryWriter
2021-07-23 02:48:50 +02:00
TheMode
7fae70ebc1
Add experimental ItemStack#consume
2021-07-23 01:47:43 +02:00
TheMode
6c4cb66737
Merge branch 'master' into new-block-api
2021-07-23 01:09:22 +02:00
MrGazdag
ac2d61d68b
undeprecate ArgumentType.Long()
2021-07-22 19:49:40 +02:00
MrGazdag
d3515c13c3
Change ArgumentLong to use actual longs
...
why is this not a thing already
2021-07-22 19:44:39 +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
ff9ca60a58
Add some inline packet constructors
2021-07-22 09:54:34 +02:00
TheMode
690c5b7614
Remove unused method
2021-07-22 00:21:25 +02:00
TheMode
a0bb437c4c
Reduce chunk entities Set allocation
2021-07-21 22:21:43 +02:00
TheMode
266ecd5b64
Fix warning
2021-07-21 20:06:12 +02:00
TheMode
fceafb0b1e
Load a single chunk on instance spawn
2021-07-21 09:45:13 +02:00
TheMode
bebdcf59d5
Do not allocate arrays when refreshing a player chunks, optimize array lookup
2021-07-21 08:42:49 +02:00
TheMode
94a96d7df1
Improve entity chunk switch
2021-07-21 08:25:44 +02:00
TheMode
953d84add7
Fix string operation when switching an entity chunk
2021-07-21 08:12:03 +02:00
TheMode
60e22e9df8
Merge branch 'master' into new-block-api
2021-07-21 05:48:45 +02:00
TheMode
efc135f48a
Handle empty list case, let the try-catch handle NPE
2021-07-20 23:48:13 +02:00
TheMode
bad206d504
Improve anvil block loading performance
2021-07-20 23:40:23 +02:00
TheMode
8f6f63b2c8
Merge pull request #373 from MrGazdag/patch-3
...
Modify /gamemode to behave more like vanilla
2021-07-20 22:29:52 +02:00
TheMode
cb21b0baf5
Merge branch 'master' into new-block-api
2021-07-20 22:18:43 +02:00
TheMode
40ae462d89
Fix NPE
2021-07-20 22:18:24 +02:00
TheMode
6079f87b38
Merge branch 'master' into new-block-api
2021-07-20 22:16:00 +02:00
LeoDog896
8a7d13c8ad
Make the constant static?
2021-07-20 14:07:16 -04:00
LeoDog896
8e849ad947
Add constant in ItemStack for VanillaStackingRule
2021-07-20 14:03:55 -04:00
LeoDog896
7d55d6db87
Add #equals method
2021-07-20 13:58:40 -04:00
TheMode
a074117ea5
Simplify optionalLoadAll
2021-07-20 19:10:53 +02:00
MrGazdag
4348ce50cf
further polish
2021-07-20 17:01:30 +02:00
MrGazdag
471838a77f
capitalize a single N
...
i missed that lmao
2021-07-20 13:52:04 +02:00
MrGazdag
037dfc2003
Format and comment code
...
makes the code look nicer
2021-07-20 13:46:57 +02:00
TheMode
1dc80d6b87
Simplify movement processing
2021-07-20 07:05:08 +02:00
TheMode
bca3324b56
Limit chunk map lookup while moving
2021-07-20 06:17:13 +02:00
MrGazdag
ed97de417e
remove pattern matching
2021-07-20 04:15:43 +02:00
MrGazdag
ecdd0181e0
Modify /gamemode to function more like vanilla
...
Modifies the /gamemode command in the demo, to function like the vanilla /gamemode command, with the syntax `/gamemode <gamemode> [target]`. It also utilizes translation components for players, and allows the console to run the command as well as players.
2021-07-20 03:56:48 +02:00
TheMode
12e430db69
Inline position packets
2021-07-20 03:06:27 +02:00
TheMode
1ff4b7cb74
Do not call the move event when moving at the same position
2021-07-20 02:33:02 +02:00
TheMode
4d2b925edd
Improve block#withProperty/ies performance
2021-07-19 23:59:40 +02:00
TheMode
14e42f7907
Micro optimize block placement
2021-07-19 23:41:28 +02:00
TheMode
111d5b9b66
Reduce ItemMeta allocation
2021-07-19 04:34:42 +02:00
TheMode
a61ff53189
Remove deprecated ItemTag
2021-07-19 04:27:44 +02:00
TheMode
d4398bda5b
Merge branch 'master' into new-block-api
2021-07-18 17:20:22 +02:00
TheMode
4e93e52333
New command fix attempt
2021-07-18 17:19:48 +02:00
TheMode
cc1719c3c1
Remove unused method
2021-07-18 16:36:09 +02:00
TheMode
22ac1c4998
Merge branch 'master' into new-block-api
...
# Conflicts:
# src/main/java/net/minestom/server/utils/ArrayUtils.java
2021-07-18 16:20:08 +02:00
TheMode
a07177fbf0
Prevent IOB
2021-07-18 02:13:20 +02:00
TheMode
97104df793
Potentially fix command node creation
2021-07-18 01:09:59 +02:00
TheMode
93fa65f90b
Temporary command node fix
2021-07-17 23:21:31 +02:00
TheMode
2ee1470470
Cleanup ArrayUtils
2021-07-17 21:38:32 +02:00
TheMode
ac3cbce278
Fix BlockHandler#onInteract return, simplify block placement code
2021-07-17 21:28:00 +02:00
MrGazdag
0724b8639b
Fix ArrayUtils#sameStart
...
Fixes #370 , which was a weird occurrence of this bug lmao
2021-07-17 21:20:10 +02:00
TheMode
518aab3a44
Add Block#values
2021-07-16 19:39:56 +02:00
TheMode
b07e912063
Fix build
2021-07-15 22:14:57 +02:00
TheMode
55fa083adf
Remove longly deprecated player initialization callback
2021-07-15 22:12:11 +02:00
TheMode
ba6e83b6d1
Fix build
2021-07-15 22:01:46 +02:00
TheMode
1c7cd269ab
Remove DataContainer from more classes
2021-07-15 21:58:29 +02:00
TheMode
91a01a23b6
Use for-each instead of lambda
2021-07-15 20:09:13 +02:00
TheMode
ebd17fdf81
Inline EffectPacket
2021-07-15 18:31:10 +02:00
TheMode
d3d809f714
Inline EffectPacket
2021-07-15 18:26:02 +02:00
TheMode
0a84b1c542
Fix test
2021-07-15 05:27:56 +02:00
TheMode
28b034103e
Remove deprecated interfaces impl
2021-07-15 05:23:33 +02:00
TheMode
2e4975eb9a
Fix ClientEditBookPacket
2021-07-14 16:51:22 +02:00
TheMode
a565ee77aa
Fix build
2021-07-14 16:30:48 +02:00
TheMode
ea231bf52e
Add 1.17.1 support
2021-07-14 16:26:32 +02:00
TheMode
e76d7486b3
Fix build
2021-07-14 03:12:20 +02:00
TheMode
1915722d02
Fix generator, use namespace instead of mojang field name
2021-07-14 03:06:49 +02:00
TheMode
2dceab7743
Improve #getBlock performance
...
Signed-off-by: TheMode <themode@outlook.fr>
2021-07-13 21:27:58 +02:00
TheMode
404852b0b1
Make ArgumentSyntaxException a RuntimeException
2021-07-13 19:21:29 +02:00
TheMode
eea0c7e1eb
Add block face to PlayerBlockPlaceEvent
2021-07-13 18:27:45 +02:00
TheMode
520c85fcdb
Fix passenger position refresh
2021-07-13 18:21:32 +02:00
TheMode
86376d431e
Remove unused method
2021-07-13 18:12:46 +02:00
TheMode
2ad0263101
Inline ChunkUtils#retrieve to avoid computing chunk coordinate twice
2021-07-13 18:10:34 +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
fe28ba6f04
Fast exit in CollisionUtils
2021-07-13 02:32:44 +02:00
TheMode
66bac1b532
Small math improvement
2021-07-13 02:26:30 +02:00
TheMode
c643ecaeb1
Add Argument#parse
2021-07-13 01:07:02 +02:00
TheMode
838472b6c5
Added toString for Vec
2021-07-12 23:26:09 +02:00
TheMode
690b5bff57
Nitpicking
2021-07-12 21:30:32 +02:00
TheMode
722b04cbce
Inline chunk getter
2021-07-11 22:01:21 +02:00
TheMode
b3f78b4706
Fix chunk refresh being broken in unloaded chunk
2021-07-11 21:57:04 +02:00
TheMode
3031895ea8
Fix return types
2021-07-11 21:30:36 +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
96c7fc9147
Add Vec#fromPoint
2021-07-11 19:56:15 +02:00
TheMode
a9e78d5583
Add comments
2021-07-11 19:35:07 +02:00
TheMode
cd090e13d0
Fix test
2021-07-11 19:22:21 +02:00
TheMode
9db185f8a1
Catch exceptions in instance/chunk/entity ticks
2021-07-11 16:56:27 +02:00
TheMode
2bdc403fd0
Add Vec#rotateAroundAxis
2021-07-11 15:33:22 +02:00
TheMode
13768d35cf
Add Vec#rotateFromView
2021-07-11 15:09:14 +02:00
TheMode
fe3505a6fd
Add Vec#rotate
2021-07-11 14:56:48 +02:00
TheMode
b0c2b6d1b6
Merge branch 'master' into new-block-api
2021-07-11 14:07:50 +02:00
TheMode
44edeb585d
Merge pull request #366 from Minestom/new-block-future
...
Initial future commit
2021-07-11 14:07:34 +02:00
TheMode
b35ab0b667
Fix second setInstance method
2021-07-11 13:45:28 +02:00
TheMode
693a5f3d72
Move methods around
2021-07-11 03:56:01 +02:00
TheMode
6cdf8a9ab9
Add constant for null future
2021-07-11 03:35:17 +02:00
TheMode
7cf5821341
Annotations
2021-07-11 03:26:08 +02:00
TheMode
37b5575484
Support async chunk loading
2021-07-11 03:14: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
6c9cef35c0
Merge pull request #365 from Kebab11noel/coordinatetype-cleanup
...
Cleanup CoordinateType
2021-07-11 01:11:04 +02:00
Németh Noel
8122b6673a
Cleanup CoordinateType
2021-07-11 00:59:59 +02:00
TheMode
560b450b3e
Use fastutil treemap
2021-07-11 00:56:54 +02:00
TheMode
99d4682655
Prevent nbt copy when placing a block
2021-07-10 20:41:22 +02:00
TheMode
4abc6dd9eb
Ooops
2021-07-10 20:30:35 +02:00
TheMode
98f645b344
Micro cleanup
2021-07-10 20:26:30 +02:00
TheMode
a8a9f59715
Remove BlockEntry
2021-07-10 18:42:02 +02:00
TheMode
fc52b502dd
Use proper neg method
2021-07-09 21:04:28 +02:00
TheMode
d8b92d23ba
Improve collision
2021-07-09 20:43:12 +02:00
TheMode
4f20580482
Use block position for intersection check
2021-07-09 20:25:22 +02:00