Commit Graph

2387 Commits

Author SHA1 Message Date
themode
22be400fb3 Fix replace typo 2021-04-02 18:14:03 +02:00
themode
a128d30b6b WIP Item rework implementation 2021-04-02 18:13:02 +02:00
themode
a70870d261 Added ItemMetaBuilder.Provider 2021-04-02 15:42:58 +02:00
themode
cf0450f21f Only make immutable lists when built 2021-04-02 14:02:24 +02:00
Alex
63031f0493 Annotate appropriately & refactor 2021-04-02 09:00:19 +02:00
themode
042c7c864b Added covariant return type + enchantment 2021-04-01 22:52:28 +02:00
themode
3ba74639bf Added Item#getUuid 2021-04-01 22:28:32 +02:00
Alex
ad229eb637 SairsPlacementRule (not perfect yet) 2021-04-01 22:19:29 +02:00
themode
debf21927b Change Item#builder visibility 2021-04-01 20:26:19 +02:00
themode
066b041bba Allow to directly pass an ItemMeta 2021-04-01 20:06:10 +02:00
themode
cbfeb4e15b WIP meta support 2021-04-01 20:02:03 +02:00
themode
0ab66113c8 WIP item meta API 2021-04-01 19:08:21 +02:00
Matt Worzala
481494d572
Remove deprecated copy methods 2021-04-01 11:32:09 -04:00
themode
70191e23e9 Even more annotations 2021-04-01 00:32:21 +02:00
themode
5807da47a6 Update annotations + add example 2021-04-01 00:20:59 +02:00
themode
e66fdee4b1 More methods & annotation 2021-04-01 00:09:02 +02:00
Kieran Wallbanks
825bd57a8e Adventureise ResponseData and cleanup code 2021-03-31 21:22:24 +01:00
themode
d332855bc4 Renamed CooldownUtils to Cooldown 2021-03-31 19:17:37 +02:00
themode
cba09e6a26 Reuse lore code 2021-03-31 16:58:07 +02:00
themode
308dbe0fdb Initial item api rework 2021-03-31 16:50:08 +02:00
TheMode
a1548fd35d Remove packet caching to CacheablePacket#getCache
Signed-off-by: TheMode <themode@outlook.fr>
2021-03-30 22:42:11 +02:00
TheMode
b386472eb3 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/main/java/net/minestom/server/network/player/NettyPlayerConnection.java
2021-03-30 22:40:48 +02:00
TheMode
f3eb3f6e34 Remove packet caching to CacheablePacket#getCache
Signed-off-by: TheMode <themode@outlook.fr>
2021-03-30 22:38:45 +02:00
jglrxavpok
13eb2ebc4c Merge remote-tracking branch 'origin/read-write-packets' 2021-03-30 22:14:09 +02:00
jglrxavpok
1ffd327214 Read/Write methods inside BinaryReader/BinaryWriter for Writeable and Readable interfaces 2021-03-30 22:11:30 +02:00
themode
45d3b7158c Use a Supplier in Argument#setDefaultValue, fix all-optional syntaxes missing arguments 2021-03-30 20:29:50 +02:00
jglrxavpok
255617b3ba Store heightmap+block entities read inside fields 2021-03-30 19:56:56 +02:00
themode
4af1e91653 Resize palette when required 2021-03-30 19:56:56 +02:00
themode
c984ca7a19 Cleanup & read section palettes 2021-03-30 19:54:49 +02:00
themode
3562c82e7f Start chunk block reading (miss palette information) 2021-03-30 19:52:11 +02:00
jglrxavpok
098a58a500 Pushing what I have in case someone wants to finish it before I find the motivation to 2021-03-30 19:52:11 +02:00
jglrxavpok
930054385f More packets, just missing ChunkDataPacket 2021-03-30 19:50:55 +02:00
jglrxavpok
07ab4ac090 Most client packets are writtable, same for server packets and readability 2021-03-30 19:46:20 +02:00
jglrxavpok
43957805fd Handshake and login packets, even more readable server packets 2021-03-30 19:42:40 +02:00
jglrxavpok
f9dcbafddf More readable server packets 2021-03-30 19:39:05 +02:00
jglrxavpok
7b8a8e3eb0 Tests to check which packets fail to write then read properly 2021-03-30 19:37:43 +02:00
Kieran Wallbanks
18608deefa Add util method to send a packet to an audience 2021-03-30 15:54:56 +01:00
themode
3d2d3868a3 Use a ConcurrentHashMap to store viewable chunks 2021-03-30 01:50:36 +02:00
themode
f3a67f8f50 Fix heap buffer being used for cached packets 2021-03-29 20:31:06 +02:00
themode
7f0dc6d40a Rename InventoryType#getAdditionalSlot to InventoryType#getSize 2021-03-29 17:36:18 +02:00
themode
adb9a449bf Cleanup default chat message 2021-03-29 17:33:52 +02:00
themode
ee18488f53 Fix chat message style + spacing 2021-03-29 17:00:58 +02:00
Callum Seabrook
1f961e0eab
Made chat messages use the vanilla format 2021-03-29 15:55:10 +01:00
themode
720c0fb6df Send light packet before chunk 2021-03-29 14:36:17 +02:00
themode
9a83226df5 Added more built in option in ArgumentParser#generate 2021-03-29 14:13:13 +02:00
themode
fa61be6858 Fix non released pooled buffer 2021-03-29 13:04:26 +02:00
themode
0326bd1445 Increase the default chunk range 2021-03-29 11:01:32 +02:00
themode
1e817ee4b5 Use velocity native compression 2021-03-28 20:40:27 +02:00
themode
85d01e5009 Micro optimize packet header varint 2021-03-28 19:34:38 +02:00
TheMode
3f1d1531ea
Merge pull request #197 from kezz/get-players-boss-bars
Expose player to/from boss bar methods
2021-03-28 17:37:27 +02:00
TheMode
d73f87d545 Use default compression level
Signed-off-by: TheMode <themode@outlook.fr>
2021-03-28 17:35:22 +02:00
Kezz
20b2ddb055
Rename player -> boss bar method 2021-03-28 16:22:48 +01:00
themode
5c832a954b Cache chunk packet, preallocate memory for tick buffer 2021-03-28 17:13:18 +02:00
themode
56a34f73d9 Improve/simplify packet memory allocation 2021-03-28 15:58:52 +02:00
Kieran Wallbanks
229a54b4b5 Expose player to/from boss bar methods 2021-03-28 14:57:54 +01:00
themode
7edc508662 Added beta ArgumentType#generate 2021-03-28 11:39:10 +02:00
themode
b9527c4909 Cleanup netty shutdown 2021-03-27 20:45:18 +01:00
themode
250ec081ae Enable SO_KEEPALIVE 2021-03-27 20:29:57 +01:00
themode
dedd807ceb Enabled compression by default, provide .editorconfig file 2021-03-27 19:44:09 +01:00
themode
27cfe9c92b Rename Command#addConditionalSyntax 2021-03-27 18:28:10 +01:00
Kezz
156c6a31df
Write scoreboard objects using standard JSON serialization (#196) 2021-03-28 01:52:35 +10:00
TheMode
36813c6858
Merge pull request #195 from kezz/fix-non-location-sound
Use EntitySoundEffectPacket in no location playSound method, fixes #194
2021-03-27 16:11:23 +01:00
Kieran Wallbanks
d086d16fa1 Use EntitySoundEffectPacket in no location playSound method, fixes #194 2021-03-27 13:59:08 +00:00
Kieran Wallbanks
bd6768f168 Switch to streams in bulk boss bar addition/removal 2021-03-27 13:32:27 +00:00
Kieran Wallbanks
45f6d4b80c Remove boss bar registration system 2021-03-27 13:26:23 +00:00
themode
404d6aa45e some protected fields for Argument 2021-03-27 14:08:04 +01:00
themode
dba2ff3e02 Merge remote-tracking branch 'origin/master' 2021-03-27 10:52:20 +01:00
themode
2f86a2f5cf Fix lore not being compared in ItemStack#isSimilar 2021-03-27 10:52:09 +01:00
LeoDog896
d896cda22c Add comment describing null check 2021-03-26 19:52:31 -04:00
LeoDog896
78734b5a3c Add null check to makeClassLoader 2021-03-26 19:32:18 -04:00
themode
66ab1bb53d Prevent Check#notNull from concatenating strings unnecessarily 2021-03-26 22:23:41 +01:00
TheMode
ea3f558d8a
Merge pull request #187 from Kebab11noel/demo-commands
Demo commands
2021-03-26 21:50:25 +01:00
Németh Noel
256ed45fab Added two new commands /summon <entity> <pos> and /remove entities <entities> 2021-03-26 21:32:58 +01:00
themode
705f419f9d Rename some internal-only methods 2021-03-26 21:31:57 +01:00
themode
55626738e2 Style cleanup 2021-03-26 21:26:35 +01:00
Németh Noel
a442603067 Removed deprecated parts, changed conditions and other minor changes 2021-03-26 21:19:53 +01:00
Németh Noel
477b69b9e5 Added common conditions 2021-03-26 21:13:45 +01:00
TheMode
d41402c2e7
Merge pull request #186 from kezz/fix-scorebord-value
Write scoreboard values using legacy strings
2021-03-26 20:47:31 +01:00
Kieran Wallbanks
d433b0d3bc Write scoreboard values using legacy strings 2021-03-26 19:42:04 +00:00
themode
cb8225c5f3 Fix BenchmarkManager#getCpuMonitoringMessage color 2021-03-26 20:35:30 +01:00
themode
9789f541cf Remove Audiences from MinecraftServer 2021-03-26 20:33:58 +01:00
Kieran Wallbanks
b9e35d1cc7 Make Audiences static 2021-03-26 19:28:07 +00:00
themode
6b644d6130 Fix BenchmarkManager not returning a Component 2021-03-26 20:10:42 +01:00
themode
d114f8e61a Do not create empty components every time 2021-03-26 20:04:19 +01:00
themode
d33f7df512 Force non-null components 2021-03-26 20:00:52 +01:00
TheMode
74947251fd
Merge pull request #157 from kezz/adventure
Adventure Time!
2021-03-26 19:46:41 +01:00
themode
52c7192462 Fix EntityFinder for non-player entities 2021-03-26 19:32:12 +01:00
Kieran Wallbanks
13d279aaf4 Rename AudienceProvider methods, add custom(Key, Predicate) 2021-03-26 17:58:14 +00:00
Kieran Wallbanks
96c9075378 Fix boss bar grouped packet sending 2021-03-26 17:43:08 +00:00
Kieran Wallbanks
3628c42ef2 Rework boss bar system 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
aa2d1f6397 Rename serializer and make static static 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
7fd3daae5f Store audiences to reduce object allocation 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
30cfd854a2 Only return iterables 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
bbfe83eeea Use Audiences class instead of ConnectionManager 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
3f525bef2e Remove iterable constructor 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
73ab9a7c21 Unimplement Audience in ConnectionManager 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
7afca9554d Split BossBarManager into multiple classes for clarity 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
658d07e8e4 Fix clearTitle 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
0caca00dda Provide access to AudienceRegistry and rename CollectionAudienceProvider to reflect return types 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
1f52761c39 Make Audiences use PacketGroupingAudience where possible 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
cd06fbdfaa Fix ItemStack display name serialization 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
c3adf3ff67 Include echo command in demo packages 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
e02a521494 Send all Adventure packets grouped where possible 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
4a0103a795 Move sound packet creation into AdventurePacketConvertor 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
ef7329351f Cleanup AdventurePacketConvertor 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
cfba291522 Make Player use SoundCategory#asSource 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
7cedde0502 Create Audiences system for obtaining grouped audiences 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
f861814352 Un-implement Audience in MinecraftServer 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
0a1a0f2fa1 Remove deprecated elements from packets 2021-03-26 17:34:39 +00:00
Kieran Wallbanks
eeedd97e8b Make book metas use components for pages 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
9f87912d02 Remove TeamColor 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
1fe159636b Tidy up new color classes 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
9490f1f9da Add single Audience getter from Viewable viewers 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
e738efded3 Use Adventure in ArgumentComponent and add demo echo command 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
0178a0a852 Add Contract annotation to asBinaryTagHolder 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
9e6b1203e1 Fix NamespaceID tests 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
b861426c8f Remove deprecated packet members 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
8cb10a2049 Implement Keyed in NamespaceID 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
f593590ab4 fix rebase compilation errors 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
03f092fa54 Rename Sound enum to SoundEvent 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
b4b2cf70c5 Revert argument changes to single file with adventure style result 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
8ee624f02d make Sound enum implement Adventure's Sound.Type 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
63aaee698e Rebase to master and fix complication issues 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
8dc7328c76 Off-by-default component translation 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
96826e03d1 Cache player Identity 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
1cc7867f9b Exclude more checker-qual 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
f7b683c343 Add ability to skip packet translating 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
931d790702 Make player implement Identified 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
52ce8027f2 Simplify component translation 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
c40139349b Add null check for Component in BinaryWriter 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
5ac5b0ba99 Finalise key in generated enums 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
6dd3eb8044 Implement HoverSource for ItemStack, Entity and Player 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
4ef62a1017 bump adventure to 4.7.0 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
aea8a5f794 fix compilation issues 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
327558c003 begin bringing packets back to use components 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
35e057a638 prefer minestom enums over raw packet values 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
94b737812d add converter from adventure enums to packet values 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
c25dbaa936 swap utils to registry 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
4179e5b91e allow obtaining enum values from registries using adventure key 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
89a962de9e remove more checker annotations 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
f20d2ac273 prefer iterable audiences 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
426b93db8f delegate hover event for items/entities to adventure, fixes #161 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
b6dd2fa8f1 implement Keyed in generated enums 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
d419bf9401 fix TeamColor allowing unsupported formats 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
aa7703c056 make color take an RGBLike instead of a TextColor 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
e3d135e1f2 update arguments to reflect new color options 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
8b82d61c0c fix demo build 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
abae740cbc fix javadocs 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
35f9161d19 update demos 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
f2897eedca fix title ticks 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
87b30a8361 correct SerializationManager method contracts 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
3b0aa2d63b Deprecate legacy chat functions 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
edbd244a07 Optimise JsonMessage <-> Component 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
3b2d5fd7d0 more colour cleanup 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
5ebd9058e2 Update colours 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
522367dd78 Begin removing deprecated usages 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
82820bc40b Remove WrapperAudience 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
7351b9fdd3 Implement global translation system 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
6095523d8a Deprecate old chat in packets 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
316ecbbf5a Cleanup annotations and imports 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
2c2f1b6cee Implement playSound and openBook methods 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
52831e7091 Add converter from Component to JsonMessage 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
653859e784 Add SerializationManager 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
d9c7f2cd61 Formatting changes 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
be5b31e207 Add concurrencyLevel to the MapMaker 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
ac57726a98 Make more classes implement Audience 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
9fca53a8d3 Make JsonMessage a ComponentLike 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
d4873e5e02 Make Team implement ForwardingAudience 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
f9ab109eb0 Fix player title overrides 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
aff04c0e0d Add boss bar implementations 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
cfa9cffe87 Clean up non-Player CommandSender implementations 2021-03-26 17:34:38 +00:00
Kieran Wallbanks
4f0944ba9f Initial adventure implementation
- deprecate old text classes
- make CommandSender and Audience
- implement in ConsoleSender
- partially implement in Player
2021-03-26 17:34:38 +00:00
TheMode
7c63099963
Merge pull request #180 from Project-Cepi/extension-exposing
Extension exposing and cleanup
2021-03-26 18:33:35 +01:00
themode
0d7d7ef453 Cleanup comment 2021-03-26 16:43:25 +01:00
themode
cef7e3d591 Optimize packet writing & reduce allocation 2021-03-26 15:58:46 +01:00
themode
9c8c8c8bf8 WIP packet allocation improvement 2021-03-26 13:08:05 +01:00
themode
6db1c34c50 Remove mention of deprecated class 2021-03-26 11:25:03 +01:00
themode
71f2e885a4 Remove unused field 2021-03-26 11:24:09 +01:00
themode
1ceffd8540 Do not write empty buffer 2021-03-26 11:09:30 +01:00
TheMode
1b162c1139
Merge pull request #184 from kezz/viewable-defaults
Simplify Viewable packet sending
2021-03-26 09:23:42 +01:00
themode
c92a7873db Only send velocity packet in #addViewer if required 2021-03-26 09:04:28 +01:00
themode
0eea491f9d Fix intellij warning 2021-03-26 08:52:16 +01:00
themode
c6c720e0c7 Use concurrent map instead of copyonwrite set for player's viewable entities 2021-03-26 08:49:27 +01:00
themode
e9d76cc742 Flush in netty event loop 2021-03-26 08:37:47 +01:00
themode
eb4a6baf8e Use a thread safe Set for EntityCreature ai groups 2021-03-25 21:36:18 +01:00
Kieran Wallbanks
845f41b88a Remove cast and instanceof check from Viewable#sendPacketToViewersAndSelf 2021-03-25 17:07:05 +00:00
themode
622f632989 Use heap buffer for short lived packets 2021-03-25 16:51:36 +01:00
themode
b3655ad82d Small style cleanup 2021-03-25 16:05:10 +01:00
Eoghanmc22
0f5bb0e4f2 Changes to networking 2021-03-25 10:44:02 -04:00
LeoDog896
c60b92394c jglr's notes 2021-03-24 15:55:48 -04:00
LeoDog896
1b6bf4f173 Comment fixes 2021-03-24 15:53:02 -04:00
LeoDog896
69efdfd63f Spacing, more annotations 2021-03-24 13:25:36 -04:00
LeoDog896
082330dcd4 Remove invalid TODO 2021-03-24 12:25:33 -04:00
LeoDog896
606079ea98 Move cleanup to front, don't discover if not necessary 2021-03-24 12:23:44 -04:00
LeoDog896
2de657bca6 Outsource classloader to DiscoveredExtension 2021-03-24 12:16:29 -04:00
LeoDog896
d2c1284459 Merge remote-tracking branch 'upstream/master' into extension-exposing 2021-03-24 11:59:01 -04:00
LeoDog896
0fe222ea85 Small docs cleanup 2021-03-24 11:58:51 -04:00
LeoDog896
faa53b3d48 Cleanup, renaming, and docs 2021-03-24 11:55:46 -04:00
LeoDog896
5e92e04c29 JavaDocs 2021-03-24 11:23:56 -04:00
themode
5320beddb8 Added ArgumentUUID 2021-03-24 15:13:25 +01:00