Commit Graph

1314 Commits

Author SHA1 Message Date
Felix Cravic
ac8ba3ab10 Fixed ItemDropEvent and PickupItemEvent constructor + changed PlayerInit event registration to use the global event handler 2020-12-11 04:34:08 +01:00
Felix Cravic
c16a0234a3 Comment for PermissionHandler#getPermission 2020-12-11 03:24:30 +01:00
Felix Cravic
6017a902c3 fix typo 2020-12-11 03:22:07 +01:00
Felix Cravic
7700c718aa Added PermissionHandler#getPermission 2020-12-11 03:19:25 +01:00
Felix Cravic
1b7f00f1b9 Merge branch 'master' into nbt-permission 2020-12-11 03:15:14 +01:00
Felix Cravic
62ab0a2007 Remove unnecessary shouldUpdate method in Entity 2020-12-10 18:12:05 +01:00
Felix Cravic
00c144b592 Rework of the permission API 2020-12-10 02:56:56 +01:00
Felix Cravic
30a7843018 Added #flush in comment 2020-12-10 00:08:35 +01:00
Felix Cravic
54d3a6bace fixed GlobalEventHandler getter name 2020-12-09 22:36:15 +01:00
Felix Cravic
6e3df970fa Added GlobalEventHandler 2020-12-09 22:31:20 +01:00
Felix Cravic
30d257c847 Remove unnecessary #callEvent override in Entity 2020-12-09 22:18:11 +01:00
Felix Cravic
08f7b1c715 Event callback collections now use a set, and #add/removeCallback return a boolean to know if the action was successful 2020-12-09 22:05:11 +01:00
Felix Cravic
f7c05a445e Remove #copy 2020-12-09 21:34:53 +01:00
Felix Cravic
f39f6444d7 PublicCloneable and support for ItemMeta#clone 2020-12-09 21:15:02 +01:00
Felix Cravic
cea3b8b593 WIP removal of #copy for #clone 2020-12-09 20:51:40 +01:00
KrystilizeNevaDies
f54dc4efe5
Style fixes + Imports 2020-12-10 01:10:46 +10:00
CmdrNorthpaw
df536f9aaf
Function in CommandSender to send ColoredText (#75)
* Send ColoredText messages to CommandSender

* Only send ColoredText if this is a player

* Documentation!
2020-12-10 01:09:29 +10:00
TheMode
ea3021ea69 Console command doesnt need to start with the command prefix
Signed-off-by: TheMode <themode@outlook.fr>
2020-12-09 06:30:15 +01:00
Felix Cravic
5576d11fce Do not wait for worker thread shutdown 2020-12-08 18:14:10 +01:00
Felix Cravic
91a000ab31 heap buffers don't need to be released manually 2020-12-08 09:49:29 +01:00
Felix Cravic
b307a979c3 Added NotNull annotation for Sidebar 2020-12-08 09:39:51 +01:00
Felix Cravic
42cedf3fbf Use Guava to initialize concurrent linked queues 2020-12-08 09:36:19 +01:00
Felix Cravic
fec23a9783 Improve grouped packet performance 2020-12-08 09:13:22 +01:00
Felix Cravic
91dc4eb675 Remove unnecessary synchronized blocks 2020-12-08 03:37:00 +01:00
Felix Cravic
eca6a657c3 Execute InstanceTickEvent in Instance instead of InstanceContainer 2020-12-08 00:16:46 +01:00
Felix Cravic
c836bbc051 Merge remote-tracking branch 'origin/master' 2020-12-08 00:13:24 +01:00
Felix Cravic
716e2ea5ef Remove unnecessary synchronized block and allow for custom drop amount 2020-12-08 00:12:49 +01:00
KrystilizeNevaDies
061c1600e7 Annotation and type fix
Just clean up annotations on primatives and instance v InstanceContainer
2020-12-08 09:12:42 +10:00
Felix Cravic
99f4c8f2d3 No item copy when swapping item hand 2020-12-08 00:08:27 +01:00
Felix Cravic
0de69ae2ad Merge remote-tracking branch 'origin/master' 2020-12-07 23:58:34 +01:00
Felix Cravic
ff4580c41b Prevent unnecessary item copy during drop 2020-12-07 23:57:57 +01:00
KrystilizeNevaDies
e8e30b1328 Fix first tick call 2020-12-08 07:52:46 +10:00
KrystilizeNevaDies
6cc8946963 Add instance tick event 2020-12-08 07:30:14 +10:00
Felix Cravic
07990b26e9 Better comment for Entity#isAutoViewable 2020-12-06 20:11:14 +01:00
Felix Cravic
0f97930f79 Fix player gravity 2020-12-06 16:52:04 +01:00
Felix Cravic
43aca45c05 Fixed void promise on channel write 2020-12-06 05:52:36 +01:00
Felix Cravic
70000e75d5 Added gravity acceleration and terminal velocity (and an utils method to get the gravity tick count) 2020-12-06 01:36:37 +01:00
Felix Cravic
d5e5412309 Allow custom EntityCreature death animation time 2020-12-06 00:06:52 +01:00
Felix Cravic
3f487f4f4f Entity with scheduled removal still execute tick until complete removal, added some comments 2020-12-05 23:57:07 +01:00
Felix Cravic
8966cc7ec8 Merge remote-tracking branch 'origin/master' 2020-12-05 20:55:04 +01:00
Felix Cravic
a58dab4f34 Disable netty errors processing by default 2020-12-05 20:54:39 +01:00
R0bbyYT
a1ef2b21c3 The leather armor pieces are now correctly colored 2020-12-05 20:45:54 +01:00
Felix Cravic
e3f6b73241 NettyPlayerConnection.java#write and flush should return a ChannelFuture 2020-12-05 20:35:43 +01:00
LeoDog896
e6c314a5e5 Ignore kotlin in classloader 2020-12-05 11:44:18 -05:00
Felix Cravic
1f1bd348b5 Fix player teleport being teleported inside a block 2020-12-05 17:14:10 +01:00
Felix Cravic
3c0fa42758 Precision in the documentation, syntax argument count needs to be higher than 0 2020-12-05 16:19:54 +01:00
Felix Cravic
59b4b7996d Do not retrieve all chunks when teleporting in the same chunk 2020-12-05 16:16:25 +01:00
Felix Cravic
f7753ab447 #showPlayer cleanup 2020-12-05 16:09:08 +01:00
Felix Cravic
6bd6d22651 Added EntityCreature#switchEntityType 2020-12-05 01:36:06 +01:00
Felix Cravic
cd44732cbc Velocity cleanup 2020-12-04 19:19:30 +01:00
Felix Cravic
9b8579eaf4 Small cleanup 2020-12-04 18:25:24 +01:00
KrystilizeNevaDies
d6c0a24bed Add Vector & BlockPosition copyCoordinates 2020-12-04 15:17:25 +10:00
Felix Cravic
ddf8cc383d Fixed concurrent exception when shutting down the extension manager 2020-12-03 17:54:23 +01:00
Felix Cravic
6f8cbeb73b Unload extensions when shutting down the server 2020-12-03 17:35:04 +01:00
Felix Cravic
d61a598c94 Prevent players being disconnected two times during a clean stop, also made shutdown tasks being executed in a single thread 2020-12-02 21:28:36 +01:00
Felix Cravic
5de6e466ee Execute the shutdown tasks before closing the netty server 2020-12-02 20:55:05 +01:00
Felix Cravic
6748fbe6bf Merge remote-tracking branch 'origin/master' 2020-12-02 20:35:23 +01:00
Felix Cravic
635d6f9f95 Fixed EntityCreeper metadata 2020-12-02 20:35:09 +01:00
KrystilizeNevaDies
936f7b9392 Add direct playSound variant 2020-12-03 00:08:09 +10:00
Felix Cravic
181f20289c Cleanup for the sound code, and comment for PlayerLoginEvent about not working player methods 2020-12-02 14:36:54 +01:00
Felix Cravic
369910aea4 Fixed a terrible typo 2020-12-01 18:52:37 +01:00
Felix Cravic
aa4ee97710 Added getter and setter for the entity in GoalSelector 2020-12-01 18:21:19 +01:00
KrystilizeNevaDies
92b06b6992 sendPacketToSelf
Added sendPacketToSelf for more utility on veiwable player
2020-11-30 10:25:12 +10:00
Felix Cravic
8675a90e9c Added the NavigableEntity interface to use the pathfinder (instead of hardcoding it in EntityCreature) 2020-11-29 23:14:21 +01:00
Felix Cravic
75e3ffde8d Comments for FollowTargetGoal 2020-11-29 22:19:13 +01:00
Felix Cravic
b6aa81bbbf Prevent adding a command syntax without any argument 2020-11-29 21:34:54 +01:00
Felix Cravic
415bcda6fd Allow custom Netty thread count 2020-11-29 17:49:02 +01:00
Felix Cravic
cabdb60370 Fix pathfinding NPE 2020-11-29 17:27:24 +01:00
Felix Cravic
bb3d57b1e5 WIP support for flying entities 2020-11-29 16:50:57 +01:00
Felix Cravic
d0ad143c0f Prevent dropping air 2020-11-29 16:41:56 +01:00
Felix Cravic
1f2e4de0b3 Use of a ScheduledExecutorService for the server ticks (instead of Thread#sleep) 2020-11-28 21:50:34 +01:00
Felix Cravic
a7b6a20cae Prevent enabling mojang auth multiple time + cleanup 2020-11-28 20:57:08 +01:00
Felix Cravic
bd49ae05f4 Prevent the generation of authentication service when mojang auth is disabled 2020-11-28 20:49:05 +01:00
Felix Cravic
c21acd97f3 Use unpooled buffer in ChunkDataPacket to reduce memory usage 2020-11-27 14:32:13 +01:00
Felix Cravic
1579bee693 Made Entity#generateId public and prevent writing null data to BinaryWriter 2020-11-27 13:29:38 +01:00
Felix Cravic
cac3c29e41 Added block command argument type 2020-11-27 11:24:32 +01:00
Felix Cravic
80d899a53a EntityCreature scheduling priority for pathfinding can now be modified 2020-11-27 10:47:35 +01:00
Felix Cravic
8ae82a81a1 Cleanup 2020-11-27 00:08:32 +01:00
Felix Cravic
fe568abe70 Entity gravity fixed 2 2020-11-26 22:29:06 +01:00
Felix Cravic
3bc90fffd9 Prevent EntityCreature from ignoring gravity 2020-11-26 14:14:40 +01:00
Felix Cravic
e813037475 Fixed position fields update for netty connections 2020-11-26 13:38:52 +01:00
Felix Cravic
63196e024b Fixed EntityTeleportPacket being sent for every position fields modification and use a proper entity movement packet instead of velocity 2020-11-26 12:46:49 +01:00
Eoghanmc22
012e65337d Improve follow target goal 2020-11-25 21:36:18 -05:00
Eoghanmc22
f8840cf7a9 Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-25 20:15:08 -05:00
Eoghanmc22
338a1737c7 wait for netty to finish shutting down 2020-11-25 20:13:38 -05:00
Felix Cravic
0fc494d9df Fixed concurrent exception with attributes 2020-11-26 02:00:20 +01:00
Felix Cravic
79a5f99358 A few internal comments 2020-11-26 01:38:08 +01:00
Felix Cravic
ae845e38ab Small cleanup 2020-11-26 01:24:43 +01:00
Eoghanmc22
6d203b975e Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-25 19:06:45 -05:00
Felix Cravic
431d20ef73 Fixed syntax starting with an unspecified length argument 2020-11-26 00:57:01 +01:00
Eoghanmc22
296d645400 Merge branch 'master' of https://github.com/Minestom/Minestom
 Conflicts:
	src/main/java/net/minestom/server/benchmark/BenchmarkManager.java
2020-11-25 11:29:50 -05:00
Eoghanmc22
d1138f9f81 Fix race condition 2020-11-25 11:28:37 -05:00
Felix Cravic
049e3b8495 Position in Player#setInstance can be null 2020-11-25 12:21:29 +01:00
Felix Cravic
ab73b0fa3e Player#setInstance can now take an optional Position parameter 2020-11-25 12:12:58 +01:00
Felix Cravic
edf22fcb66 Prevent getting the cpu monitoring message if the benchmark manager is not enabled 2020-11-25 11:39:36 +01:00
Felix Cravic
df4dd762d9 Minestom is not really an alternative to Bukkit 2020-11-25 10:58:09 +01:00
Felix Cravic
24d4e9b7e4 Added BatchOption 2020-11-25 09:47:04 +01:00
Felix Cravic
7bbb095156 Fixed Player#setInstance not refreshing chunks when already in an instance 2020-11-24 22:56:12 +01:00
Felix Cravic
daa72719a0 Specify that ASK_SERVER is required for dynamic write callback 2020-11-22 23:04:06 +01:00
Felix Cravic
0705ab34ed Allow custom suggestion type with ArgumentDynamicWord 2020-11-22 22:58:14 +01:00
Felix Cravic
e09397a0e2 Use of a lock object to synchronize instance entities collections 2020-11-22 22:18:47 +01:00
Eoghanmc22
d056fceb8a slightly improve performance and fix memory leak 2020-11-22 12:44:08 -05:00
themode
a8c1c73282 Use of a synchronized wrapper for InstanceContainer chunks map 2020-11-22 17:40:57 +01:00
Eoghanmc22
414245a1a6 Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-22 10:33:38 -05:00
themode
5966cdaa47 Reduced the number of garbage objects 2020-11-22 16:32:15 +01:00
Eoghanmc22
a934df2af2 Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-22 08:59:52 -05:00
themode
0a5349226e Replaced CopyOnWriteArraySet to IntOpenHashSet for block entities 2020-11-22 14:58:01 +01:00
themode
fcb59ff7e7 Removed unnecessary biomes clone 2020-11-22 14:52:37 +01:00
themode
2d7b4360c2 Fixed non-0 respawn point 2020-11-22 14:11:18 +01:00
themode
acc013be6a Fixed glitched chunks when teleporting a player + divided teleportation count by 2 during first join 2020-11-22 13:56:36 +01:00
themode
5d8b59c012 Fixed MinecraftServer#setChunkViewDistance making players show more chunks than what their option is 2020-11-22 13:23:53 +01:00
themode
aa2f8489b2 Fixed max string length 2020-11-22 11:16:21 +01:00
themode
8330abbc4b Fixed mojang authentication 2020-11-21 23:33:06 +01:00
Eoghanmc22
04fc38a14f Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-21 14:59:17 -05:00
themode
48b637cbc8 Fixed player spawn when a respawn point is not specified 2020-11-21 20:56:32 +01:00
Eoghanmc22
f2f0625666 Merge branch 'master' of https://github.com/Minestom/Minestom
 Conflicts:
	src/test/java/demo/PlayerInit.java
2020-11-21 13:23:16 -05:00
Eoghanmc22
926c02b7f5 Small optimizations to netty. 2020-11-21 13:09:03 -05:00
themode
ab98c11de3 ItemStack#isSimilar should return true if both items have the same identifier 2020-11-21 11:42:47 +01:00
themode
3087b120f9 Basic support for linux io_uring 2020-11-21 10:42:07 +01:00
themode
3193c0894e Typo fix 2020-11-21 10:27:39 +01:00
themode
27414f65ab Made packet caching optional (enabled by default) 2020-11-21 10:26:25 +01:00
themode
0e6bb6cc3d Replaced Arrays.copyOf to native #clone 2020-11-21 09:35:50 +01:00
themode
6ecf53c863 Increased player synchronization group from 50 to 75 2020-11-21 08:14:25 +01:00
themode
500fc2e903 Fixed chunk being asked two times 2020-11-21 08:06:04 +01:00
themode
404ddb5bf9 Added a new item data ownership system, replacing the old nbt consumer and NbtDataImpl 2020-11-21 06:37:44 +01:00
themode
58f035fc4a Added lastUpdate param comment in TemporaryCache 2020-11-21 05:53:30 +01:00
Eoghanmc22
62663ccb64 Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-20 13:38:41 -05:00
themode
2ae602df87 Rollback teleportation to respawn point 2020-11-20 19:23:50 +01:00
Eoghanmc22
c1c84217c2 Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-20 12:16:55 -05:00
Eoghanmc22
ee2e141673 implement pooled buffers 2020-11-20 12:16:45 -05:00
themode
206991ad0a Fixed TemporaryCache#retrieve not taking the last update time 2020-11-20 18:15:37 +01:00
Eoghanmc22
035844787e Merge branch 'master' of https://github.com/Minestom/Minestom 2020-11-20 11:39:15 -05:00
themode
7a1a43279a Fixed empty chunk when connecting during its generation 2020-11-20 17:13:00 +01:00
themode
da4216a51f Fixed chunk synchronization during generation and packet sending 2020-11-20 16:37:59 +01:00
Eoghanmc22
9a64a0a409 Merge branch 'master' of https://github.com/Minestom/Minestom
 Conflicts:
	src/main/java/net/minestom/server/entity/Player.java
	src/main/java/net/minestom/server/network/player/NettyPlayerConnection.java
	src/main/java/net/minestom/server/utils/PacketUtils.java
2020-11-20 08:56:58 -05:00
themode
d7d610ffef Fixed the player receiving multiple self position packet 2020-11-20 14:39:10 +01:00
themode
014bc8b0b5 Fixed DebugUtils 2020-11-20 14:21:20 +01:00
themode
871cb993b4 Do not send packet to empty collection 2020-11-20 14:14:55 +01:00
Eoghanmc22
6fd401589c slightly optimize CommandManager 2020-11-20 08:07:09 -05:00
themode
98fe83c605 Comments for PacketUtils 2020-11-20 14:05:22 +01:00
TheMode
8c5d013990 Flush in the current thread
Signed-off-by: TheMode <themode@outlook.fr>
2020-11-20 13:48:45 +01:00
themode
f1c0c99781 Fixed TemporaryCache check 2020-11-20 11:59:58 +01:00
themode
075ff7600a Added a whole new caching system for ChunkDataPacket and UpdateLightPacket 2020-11-20 11:14:15 +01:00
themode
e453a0f9b5 Added Chunk#getLastChangeTime 2020-11-20 08:39:06 +01:00
themode
02eab844a5 Fix logging when compression is disabled (not recommended) 2020-11-20 07:55:34 +01:00
themode
9f45cf11a3 Added todo to optimize buffer allocation 2020-11-20 05:50:52 +01:00
themode
4060f8d290 Added GroupedPacketHandler to prevent rewriting the same packet multiple times 2020-11-20 05:37:13 +01:00
themode
3455c77eb7 Explain the role of each handlers 2020-11-20 04:48:33 +01:00
themode
e8ddf44c39 Stop hardcoding handler names 2020-11-20 04:36:33 +01:00
themode
153f7215b3 Write packet only once when used with PacketUtils#sendGroupedPacket 2020-11-20 03:57:05 +01:00