Commit Graph

2083 Commits

Author SHA1 Message Date
themode
1f7558c753 Deprecate CommandProcessor further, added SimpleCommand as a replacement 2021-03-11 03:02:13 +01:00
themode
f3335d25f6 Cleanup 2021-03-11 02:42:15 +01:00
themode
60dc164cdc Prevent quote(s) in the middle of inputs 2021-03-11 00:19:55 +01:00
themode
060a148b60 Fix un-quoted ArgumentString 2021-03-11 00:18:04 +01:00
themode
9c1ff216a1 Replace Arguments by CommandContext in demo commands 2021-03-11 00:11:29 +01:00
themode
db02e93429 Fix subcommand query 2021-03-10 22:36:15 +01:00
themode
7cfa07f2e0 Support CommandContext for normal syntaxes 2021-03-10 20:19:29 +01:00
themode
7bf2deecf2 Added raw arg in CommandContext + cleanup 2021-03-10 20:03:36 +01:00
themode
cbe57f9cac Retrieve context from suggestion 2021-03-10 19:47:08 +01:00
themode
eb56324e8b Added suggestion support for subcommands 2021-03-10 19:14:24 +01:00
themode
67b3b37813 Replace Arguments by CommandContext 2021-03-10 06:38:51 +01:00
themode
b03b35b881 Improve tab packet when dealing with trailing spaces 2021-03-10 04:21:42 +01:00
themode
aa29103983 Fix java 11 support 2021-03-10 01:25:01 +01:00
themode
bca2434cff Command parsing cleanup + preparation for suggestion & advanced caching 2021-03-10 01:21:33 +01:00
themode
94526b218f Merge branch 'master' into command-suggestion 2021-03-09 22:51:29 +01:00
themode
68ef3e31af Don't hardcode breakBlock digging status 2021-03-09 21:54:10 +01:00
themode
b155f3bca3 Deprecate Attributes, constants in Attribute should be used instead 2021-03-09 20:51:11 +01:00
themode
51facb9f14 Prevent modified clients from messing with the chunk range 2021-03-09 17:21:43 +01:00
themode
0b4c9ec094 Merge branch 'master' into network-caching 2021-03-09 07:11:47 +01:00
themode
6a0582a950 Do not send all chunks on logging, wait for the settings packet instead 2021-03-09 07:08:35 +01:00
themode
b6d96098f8 Update packet caching timestamp when retrieved 2021-03-09 05:21:43 +01:00
themode
f98cfe1d54 Set default start & length for the tab complete packet 2021-03-09 04:04:21 +01:00
themode
441cb5a1db Initial command suggestion commit 2021-03-09 01:44:01 +01:00
themode
7241dbdcf7 Modernize the demo package 2021-03-09 00:43:35 +01:00
themode
a25e414754 Fix players being stuck on first connection when no respawn point is defined 2021-03-08 17:12:21 +01:00
themode
8ab29368a6 Fixed players being able to move during teleport 2021-03-08 16:49:16 +01:00
themode
7e452cdd74 Enable tcpNoDelay + prevent memory leak on disconnection 2021-03-08 16:01:33 +01:00
Eoghanmc22
6e18d2bcfe Merge branch 'network-caching' of https://github.com/Minestom/Minestom into network-caching 2021-03-07 21:42:48 -05:00
Eoghanmc22
f7cd00fb18 get rod of an unnecessary allocation that was using a lot of mem 2021-03-07 21:41:09 -05:00
themode
9b9cd2ed03 Remove unnecessary chaining 2021-03-08 02:44:46 +01:00
Eoghanmc22
a61034fc1d make delayed sending slightly faster 2021-03-07 20:23:01 -05:00
themode
6f9a92ac76 Cleanup 2021-03-08 02:11:18 +01:00
themode
e730f60c0a Initial per connection buffer 2021-03-08 01:30:18 +01:00
themode
2e17c8a8e1 Fix inventory not appearing after changing dimension 2021-03-07 23:18:32 +01:00
themode
b8e987f556 Fix player getting stuck after changing dimension 2021-03-07 22:22:04 +01:00
themode
c20cf38399 Merge remote-tracking branch 'origin/master' 2021-03-07 16:09:41 +01:00
themode
0442cb0067 autoChunkLoad for InstanceContainer should be enabled by default 2021-03-07 16:09:28 +01:00
TheMode
9ea34fb668
Merge pull request #162 from RinesThaix/projectilesGravity
Fixing projectiles gravity
2021-03-07 15:09:47 +01:00
Konstantin Shandurenko
b9ec78b313 Removed explicit bounding box setup in EntityProjectile 2021-03-07 13:35:21 +03:00
themode
3b918a9382 Increase cache from 10s to 30s for the chunk & light packet 2021-03-06 21:17:16 +01:00
themode
74d902b2a2 Remove player synchronization group, a better alternative will come up 2021-03-06 14:31:44 +01:00
Konstantin Shandurenko
51c627491a Fixing projectiles gravity 2021-03-06 11:24:31 +03:00
Matt Worzala
2cb343f493 minor reviewdog changes 2021-03-05 19:39:43 -05:00
Matt Worzala
ca8eac5356 implement BatchOption#isFullChunk, clarity change in Chunk 2021-03-05 19:39:43 -05:00
Matt Worzala
3167de3bd3 send chunk updates to all players, import cleanup 2021-03-05 19:39:43 -05:00
Matt Worzala
6fb533837d make reviewdog slightly happier 2021-03-05 19:39:43 -05:00
Matt Worzala
7166525b8c send individual section updates when less than half of the sections are updated. 2021-03-05 19:39:43 -05:00
Matt Worzala
d0163ae749 send individual section updates when less than half of the sections are updated. 2021-03-05 19:39:42 -05:00
Matt Worzala
5bedee2795 Revert "Start of rotation, chunkbatch is fine, relative batch is not."
This reverts commit b48cce1d
2021-03-05 19:39:42 -05:00
Matt Worzala
e1e2772f4d Start of rotation, chunkbatch is fine, relative batch is not. 2021-03-05 19:39:42 -05:00
Matt Worzala
0f080b9dc8 javadocs 2021-03-05 19:39:42 -05:00
Matt Worzala
5a9e393ae2 bring back BatchOption, batch inversion start 2021-03-05 19:39:42 -05:00
themode
d5a53641ba Oops, firstEntry is now properly used 2021-03-05 19:39:42 -05:00
themode
eed97fd472 Small style cleanup 2021-03-05 19:39:42 -05:00
themode
ba32acbd04 Do not force the use of InstanceContainer 2021-03-05 19:39:42 -05:00
themode
66a5829c3e Implement offset for RelativeBlockBatch + optimization 2021-03-05 19:39:42 -05:00
Matt Worzala
8531d3958d Temp RelativeBlockBatch implementation 2021-03-05 19:39:42 -05:00
Matt Worzala
73249deb5a Add ChunkGenerationBatch, replace batches with 'v2' ones, remove batch creation methods in Instance 2021-03-05 19:39:42 -05:00
themode
6bd09256f3 Small cleanup and reduce memory usage with AbsoluteBlockBatch 2021-03-05 19:39:40 -05:00
Matt Worzala
c35b8887e8 Style changes & use computeIfAbsent instead of a null check/put 2021-03-05 19:39:40 -05:00
Matt Worzala
ccaf96b434 Start 'v2' batches with relative chunkbatch and absolute blockbatch 2021-03-05 19:39:40 -05:00
Matt Worzala
27aec6b48e Change BlockBatch to use ChunkBatch instead of its own internal representation 2021-03-05 19:39:39 -05:00
themode
999a815eba Use ThreadLocal for deflater instead of dirty hack 2021-03-05 23:57:28 +01:00
themode
469a4a32f7 Cache values from the mojang api 2021-03-05 23:03:18 +01:00
themode
c253a27260 Added copy to clipboard message click event 2021-03-05 14:30:50 +01:00
themode
55179082e9 Remove final methods 2021-03-04 23:06:29 +01:00
LeoDog896
b20de605e1 Add default method and fix tests 2021-03-04 11:57:58 -05:00
LeoDog896
283469e025 Prefer position over entity 2021-03-04 11:54:29 -05:00
themode
7c505ecc17 Do not deprecate Entity#setInstance 2021-03-04 16:43:10 +01:00
themode
368faa72b9 Re-fix cached packets 2021-03-04 15:55:04 +01:00
themode
93bd039938 Fix EntityFinder performance when searching for a constant name or uuid 2021-03-04 13:54:46 +01:00
themode
f7ec45802f Added ArgumentComponent 2021-03-03 22:52:40 +01:00
themode
5ffd44449d fix custom block state id being ignored in PlayerBlockPlaceEvent 2021-03-02 23:37:46 +01:00
themode
bde027432a Small code cleanup for packet caching 2021-03-02 20:42:36 +01:00
themode
25c2dc661f Fix position yaw/pitch not being copied 2021-03-02 19:36:11 +01:00
themode
a927938677 Fix cached packets being outdated 2021-03-02 19:14:52 +01:00
TheMode
85998cabd9
Merge pull request #154 from Kebab11noel/master
Added CanPlaceOn and CanDestroy for ItemStacks
2021-03-02 18:30:23 +01:00
TheMode
29a8542d3e
Merge pull request #129 from Minestom/improve-extension-system
Improve extension system
2021-03-02 18:22:21 +01:00
TheMode
3971777e56
Merge pull request #155 from RinesThaix/entities
Projectile improvements, custom entity position synchronization cooldown support
2021-03-02 13:38:50 +01:00
Konstantin Shandurenko
4be54651c6 Added javadoc for GoalSelectorsArrayList 2021-03-02 15:15:39 +03:00
Konstantin Shandurenko
0e027bc62f Comments for CombinedAttackGoal 2021-03-02 14:58:32 +03:00
Konstantin Shandurenko
818299db74 CombinedAttackGoal 2021-03-01 19:47:29 +03:00
Konstantin Shandurenko
e1e546d9fa EntityAIGroup typo fix 2021-03-01 16:52:19 +03:00
Konstantin Shandurenko
412de5de20 Merge branch 'master' into ai 2021-03-01 16:17:24 +03:00
Konstantin Shandurenko
1ae2cf78af Added support of custom entity position synchronization cooldown 2021-03-01 13:09:08 +03:00
Konstantin Shandurenko
de15c4b6c5 Rewriting projectiles 2021-03-01 12:59:16 +03:00
Németh Noel
2f725becf2 canPlaceOn and canDestroy getters no longer return an unmodifiable list, methods for additions and removals are therefore removed 2021-02-28 22:39:38 +01:00
Németh Noel
bcfaf71c7c Added checks for canPlaceOn and canDestroy sets in #isSimilar, changed emptiness check to Collection#isEmpty from != 0 in #hasNbtTag 2021-02-28 21:01:23 +01:00
Németh Noel
10ece83d75 Cleaned up imports and removed unnecessary .toString() calls 2021-02-28 20:35:10 +01:00
Németh Noel
7abf6ba9e7 Added CanPlaceOn and CanDestroy properties for ItemStacks and implemented checks for them 2021-02-28 19:37:31 +01:00
Konstantin Shandurenko
2b6a081c0d Now devs have to explicitly instantiate EntityAIGroupBuilder 2021-02-28 20:07:34 +03:00
Konstantin Shandurenko
57e2bdb5d6 Slightly rewritten EntityAIGroupBuilder 2021-02-27 17:57:30 +03:00
themode
419ebe7553 Use soft references for cached packet instead of weak 2021-02-26 12:48:53 +01:00
Konstantin Shandurenko
20f581cc11 Merged with master 2021-02-26 06:58:12 +03:00
TheMode
d3bea57ddc Packet caching cleanup
Signed-off-by: TheMode <themode@outlook.fr>
2021-02-25 20:14:13 +01:00
themode
882720c822 Added RawJsonMessage constructor taking a json object as a string to reduce boilerplate code 2021-02-25 19:01:29 +01:00
themode
e8e8022ec6 Fix pathfinding + cleanup 2021-02-25 15:48:48 +01:00
themode
a0d5ac12bc Small literal argument cleanup 2021-02-25 15:38:59 +01:00
themode
7da3a16978 Fix connection loop 2021-02-25 15:35:31 +01:00
TheMode
77ed13abd9
Merge pull request #152 from RinesThaix/entities
EntityMeta
2021-02-25 15:30:35 +01:00
Konstantin Shandurenko
6192d1fead removed duplicating code piece 2021-02-25 14:40:14 +03:00
Konstantin Shandurenko
23ee4c7fdf Deprecated Entity constructors accepting spawnPosition and introduces Entity#setInstance(Instance, Position) 2021-02-25 13:56:10 +03:00
Konstantin Shandurenko
3c5b76c0a8 Tiny improvement for Entity#switchEntityType 2021-02-25 13:39:22 +03:00
Konstantin Shandurenko
e13bca1fdd default scope to EAST case in EntitySpawnType.PAINTING 2021-02-25 13:37:40 +03:00
Konstantin Shandurenko
046ebc03f6 AbstractProjectile now extends Entity and not ObjectEntity 2021-02-25 13:07:55 +03:00
Konstantin Shandurenko
8ca43c4caa Entity is not abstract anymore 2021-02-25 13:00:02 +03:00
Konstantin Shandurenko
8a57918fe9 LivingEntity is not abstract anymore 2021-02-25 11:39:37 +03:00
Konstantin Shandurenko
83c5d3c95f Marked Entity#getEntityType as NotNull 2021-02-25 10:38:53 +03:00
Konstantin Shandurenko
18da3e0168 Moved switchEntityType from EntityCreature to Entity 2021-02-25 10:37:02 +03:00
Konstantin Shandurenko
ca6546eb7d Removed obsolete metadata type values inside Entity 2021-02-25 10:00:29 +03:00
Konstantin Shandurenko
1308f81678 Switched all direct spawn packets interactions to EntityType#getSpawnType#getSpawnPacket 2021-02-25 09:15:51 +03:00
Konstantin Shandurenko
7db7dab4b9 EntitySpawnType initial commit 2021-02-25 08:59:55 +03:00
Konstantin Shandurenko
49c92883cd ArgumentEnum 2021-02-25 07:03:26 +03:00
themode
d60118d5f6 Improve block breaking code, to fix issue when breaking a block should immediately place a new one 2021-02-24 12:18:27 +01:00
Konstantin Shandurenko
1115b829a1 EntityAIGroupBuilder 2021-02-24 13:38:42 +03:00
Konstantin Shandurenko
f8634171f7 Metadata#setNotifyAboutChanges 2021-02-24 13:28:23 +03:00
Konstantin Shandurenko
3f941d51bb Fixed initial BoundingBox of Pufferfish 2021-02-23 20:04:30 +03:00
Konstantin Shandurenko
405390640b Switched LivingEntity's explicit usage of metadata to LivingEntityMeta 2021-02-23 19:57:45 +03:00
Konstantin Shandurenko
60fcd43f18 Removed ParticleWrapper 2021-02-23 19:30:26 +03:00
Konstantin Shandurenko
c9f7ee5546 Renamed ParticleType back to Particle 2021-02-23 19:29:21 +03:00
Konstantin Shandurenko
6e950ab170 BaseEntityMeta is now an EntityMeta 2021-02-23 19:18:53 +03:00
Konstantin Shandurenko
ebb061ae39 Removed LambdaMetafactoryUtils 2021-02-23 18:45:24 +03:00
Konstantin Shandurenko
692dcfed4c Setting default entity BoundingBox from EntityType data 2021-02-23 18:41:24 +03:00
Konstantin Shandurenko
bbe143520e A bit more changes to EntityMeta 2021-02-23 18:37:00 +03:00
Konstantin Shandurenko
eb274ce95e Added default meta constructor to EntityTypes 2021-02-23 18:07:57 +03:00
themode
2843da6b26 Small comment cleanup 2021-02-23 15:11:21 +01:00
TheMode
ebed118ee2
Merge pull request #139 from LeoDog896/sound
Add Position PlaySound methods
2021-02-23 15:08:43 +01:00
Konstantin Shandurenko
237466c90e Removed new entity classes and marked previously existing ones as deprecated 2021-02-23 16:10:14 +03:00
LeoDog896
f7fc7240f6 Reduce boilerplate in convience methods 2021-02-23 07:53:10 -05:00
Konstantin Shandurenko
0915858df3 Meta wrappers for all the entities 2021-02-23 15:11:10 +03:00
Konstantin Shandurenko
6eda8f97db Removed @author javadocs 2021-02-23 09:14:38 +03:00
Konstantin Shandurenko
b409eadffa ArgumentEnum and /horse command for demo scene 2021-02-23 09:06:19 +03:00
Konstantin Shandurenko
cfc5f860e9 Fishes 2021-02-23 08:47:09 +03:00
Konstantin Shandurenko
07be9d449b Much more entities 2021-02-23 08:25:35 +03:00
Konstantin Shandurenko
ca3d36ac0c Villagers and Ageable 2021-02-23 07:11:54 +03:00
Konstantin Shandurenko
2a55ed654d Zombies 2021-02-23 06:45:04 +03:00
Konstantin Shandurenko
7a7c63afc2 Horses 2021-02-23 06:38:54 +03:00
Konstantin Shandurenko
d2c5d87582 EntityType improvements 2021-02-23 06:02:52 +03:00
Konstantin Shandurenko
3bba4ea704 New Entity AI 2021-02-23 02:28:24 +03:00
Kieran Wallbanks
a3f388a88b Add events for player sneaking and sprinting changes 2021-02-22 16:36:40 +00:00
TheMode
7bd9283e17
Merge pull request #148 from RinesThaix/goals
Switched TargetSelectors result caching from EntityCreature field to local one in GoalSelectors
2021-02-22 15:15:18 +01:00
Konstantin Shandurenko
fbddffec32 Switched TargetSelectors result caching from EntityCreature field to local one in GoalSelectors 2021-02-22 17:08:15 +03:00
TheMode
20a23a4ebc
Merge pull request #147 from RinesThaix/goals
AbstractProjectile and arrows now call EntityAttackEvent, without damaging entities
2021-02-22 14:46:20 +01:00
Konstantin Shandurenko
1053cb33b1 Tiny comment for Projectile#getShooter 2021-02-22 16:42:52 +03:00
Konstantin Shandurenko
bcdd1bb70a AbstractProjectile and arrows now call EntityAttackEvent, without damaging entities 2021-02-22 16:41:39 +03:00
themode
0cef390ff2 Fix null check 2021-02-22 14:06:47 +01:00
TheMode
60385c0887
Merge pull request #141 from MrBretze/master
Fixed somme read for NBT Tag to ItemStack
2021-02-22 14:03:48 +01:00
themode
549eb6b6e1 Fix javadoc 2021-02-22 14:02:33 +01:00
TheMode
71f1e51df3
Merge pull request #146 from RinesThaix/goals
Arrows and RangedAttackGoal
2021-02-22 13:58:43 +01:00
Konstantin Shandurenko
dbd0e472c2 Added power param for projectiles shooting 2021-02-22 15:54:35 +03:00
Konstantin Shandurenko
504e8cafb4 Codestyle formatting and several comments 2021-02-22 15:33:03 +03:00
Konstantin Shandurenko
6e23552d9a Not calculating entity collisions for arrows in first 3 ticks of its life 2021-02-22 14:58:26 +03:00
Konstantin Shandurenko
714e107eb3 Removed @author javadocs 2021-02-22 14:53:04 +03:00
Konstantin Shandurenko
b475a4cd78 Entity collisions for arrows 2021-02-22 14:51:17 +03:00
Konstantin Shandurenko
dbfebc50ec Block collisions for arrows 2021-02-22 14:42:46 +03:00
themode
b0185aa7e1 Cache command result, increases performance by an order of magnitude 2021-02-22 11:49:28 +01:00
themode
732fa0434a Properly return the command result UNKNOWN 2021-02-22 11:26:16 +01:00
themode
b4508692a5 Fix situation where no command executor is chosen when there is ambiguity. Also fix subcommand default executor not being used as backup 2021-02-22 09:42:48 +01:00
themode
b4d9cecdce Fix build & remove deprecated method 2021-02-22 08:46:30 +01:00
themode
3d585825b2 Use weak references for cached values 2021-02-22 08:43:06 +01:00
themode
04b5a4f166 Use google common cache instead of our own dirty solution 2021-02-22 08:41:38 +01:00
Konstantin Shandurenko
3a251934ec Projectiles shooting 2021-02-22 09:45:19 +03:00
Konstantin Shandurenko
3d14b614ce EntityArrow and EntitySpectralArrow 2021-02-22 09:05:54 +03:00
Konstantin Shandurenko
3c8824c7b0 RangedAttackGoal implementation initial commit 2021-02-22 08:46:37 +03:00
themode
77148338b9 Added Entity#clearEffects 2021-02-22 06:00:49 +01:00
TheMode
1fda2aba6d
Merge pull request #145 from RinesThaix/goalTargetsCaching
Caching entity target found by goal selectors
2021-02-22 05:36:26 +01:00
Konstantin Shandurenko
54da48fd3e Caching entity target found by goal selectors 2021-02-22 07:33:11 +03:00
TheMode
5014cd7ba9
Merge pull request #143 from MrBretze/optifineFix
Added OptifineSupport.isEnabled()
2021-02-22 05:32:54 +01:00
Konstantin Shandurenko
e01a92c92c Fixing armor equip with right clicking 2021-02-22 05:17:14 +03:00
themode
85a8396c9d UUID & player name cannot contain space 2021-02-21 17:44:38 +01:00
themode
78e37258ed Improve ArgumentEntity to support entity UUID & pre-check for player name 2021-02-21 17:43:30 +01:00
MrBretzel
f7ec0dbc1f Added OptifineSupport.isEnabled() 2021-02-21 17:25:35 +01:00
ALS
fb6c51204b getAsByte 2021-02-21 16:59:50 +01:00
ALS
12f0190f97 Revert AttributeSlot.parse(String string) 2021-02-21 16:56:06 +01:00
themode
200b244224 Fix JSON string not being displayable using ColoredText, remove unnecessary fields in PlayerListHeaderAndFooterPacket 2021-02-21 16:49:25 +01:00
themode
728107b0fe Added convenient EntityFinder#findFirstEntity 2021-02-21 12:35:04 +01:00
ALS
b842f07c3c Use getAsInt and getAsDouble 2021-02-20 23:54:25 +01:00
ALS
0f9a2b5b4f Fixed a possible null for attributeSlot 2021-02-20 20:39:49 +01:00
ALS
01ff9e2123 Fix failed issue 2021-02-20 19:51:45 +01:00
themode
99be06f571 Revert to check shared command arguments 2021-02-20 19:18:28 +01:00
ALS
ac7ca6f8e4 Fixed somme read for NBT Tag to ItemStack 2021-02-20 17:35:02 +01:00
MrBretzel
2c45103b2c
Update Arguments.java 2021-02-20 15:43:22 +01:00
MrBretzel
1ad1f06e33
Adding has(Argument<T> argument) to Arguments.java 2021-02-20 15:31:30 +01:00
themode
bd840a868f Improve optional argument support & client-side brigadier suggestion 2021-02-20 13:10:12 +01:00
themode
721f9abc08 FakePlayer now implements NavigableEntity 2021-02-20 09:15:08 +01:00
themode
a419d7eb3f Add subcommand support for fast parsing & proper separation between logics 2021-02-20 08:59:15 +01:00
LeoDog896
4daa55d27e Add Position playsound methods 2021-02-19 18:43:35 -05:00
themode
06abbcb7fb Fix chunks being sent 2 times on first spawn 2021-02-19 13:52:27 +01:00
jglrxavpok
e40186a2aa Periodically remove extension observers (every minute at the moment) 2021-02-17 17:37:54 +01:00
themode
9ed3bd929c Only flush when the channel is active 2021-02-17 05:12:43 +01:00
themode
590e6cb939 Add write water mark, reduce debug prints, update netty to latest 2021-02-17 05:03:31 +01:00
themode
16ad864c09 Disable TCP_NO_DELAY by default 2021-02-16 04:17:38 +01:00
themode
437afc28ff Enable suggestion by default for ArgumentEntityType 2021-02-14 07:52:27 +01:00
themode
f1448c8c89 Renamed RelativeLocation#from 2021-02-14 00:31:49 +01:00
themode
beaf25ff47 Added convenient Arguments#has 2021-02-14 00:25:08 +01:00
themode
df2ee23a7c ArgumentLoop cleanup 2021-02-13 08:43:38 +01:00
themode
e0d0c14933 Fix ArgumentLong and don't set default min/max for number arguments 2021-02-13 07:35:53 +01:00
TheMode
6c4454e9fb
Merge pull request #137 from LeoDog896/command
Enhance Command System
2021-02-13 06:28:54 +01:00
themode
1d64cafcf2 Move some CommandDispatcher methods 2021-02-13 00:34:25 +01:00
LeoDog896
367889a374 No magic strings in ArgumentString 2021-02-12 15:27:18 -05:00
themode
33a26b80f5 Added CommandData#has and allow #set chaining 2021-02-12 08:34:05 +01:00
themode
c9ab710be2 Fix argument callback being overridden 2021-02-12 05:24:40 +01:00
themode
efd2dbc021 Fix command argument sharing 2021-02-12 04:34:37 +01:00
KrystilizeNevaDies
427632d29b Use primitives in BlockBatch#flush 2021-02-12 11:34:45 +10:00
LeoDog896
2f99567edf Use slf4j logger instead of direct print 2021-02-11 20:18:02 -05:00
KrystilizeNevaDies
ee8815d2f8 Add shouldLoadChunks in BlockBatch#flush 2021-02-12 10:37:53 +10:00
themode
5610b1a72a Added ArgumentLoop parsing 2021-02-12 00:25:12 +01:00
themode
84da72d798 Fix command aliases + cleanup 2021-02-12 00:00:44 +01:00
themode
f0105d7058 Added WIP ArgumentLoop (no parsing yet) 2021-02-11 20:36:02 +01:00
themode
f639ac83f7 Rewrite of the command nodes creation 2021-02-11 06:37:09 +01:00
themode
ab9ddebfea WIP ArgumentGroup nodes, renamed NodeMaker#addNodes 2021-02-11 05:08:49 +01:00
themode
b34b490504 Added ArgumentGroup parsing, WIP nodes 2021-02-11 04:47:48 +01:00
themode
e9d91fd21e Separate the dispatcher from the parsing algorithm 2021-02-11 04:18:19 +01:00
themode
86908fbd0e Remove Argument redirect API (should use NodeMaker instead) 2021-02-11 03:09:00 +01:00
themode
053ef06ee1 Cleanup (moved some packet methods to DeclareCommandsPacket) and added CommandResult#getInput 2021-02-11 03:00:13 +01:00
themode
1a2fd4f743 Added NodeMaker + ArgumentCommand 2021-02-11 02:51:42 +01:00
themode
601ee71744 Fix invalid argument being considered as "successful" execution 2021-02-11 01:45:35 +01:00
themode
779490064e Root node should be at index 0 (to facilitate the future ArgumentCommand) 2021-02-11 00:58:10 +01:00
themode
dffb90e1b4 Fix CommandDispatcher#findCommandResult never returning null, + cleanup 2021-02-11 00:33:55 +01:00
themode
266c4d9bed ArgumentEntity static fields naming fix 2021-02-11 00:29:31 +01:00
themode
eda821c3d8 Cleanup + don't verify player name in ArgumentEntity 2021-02-11 00:25:38 +01:00
themode
c11151360b Added ArgumentLiteral 2021-02-11 00:14:29 +01:00
themode
c6e15d4bda Added getters in CommandResult 2021-02-11 00:06:22 +01:00
themode
9fc10bc051 Added CommandResult & moved ParsedCommand 2021-02-11 00:04:42 +01:00
themode
12c0b604db Added boolean for node redirection 2021-02-10 23:09:38 +01:00
themode
2547972459 Deprecate Arguments#getObject 2021-02-10 21:35:18 +01:00
LeoDog896
0ce88102ed Get, has, and set argument redirects 2021-02-09 19:11:27 -05:00
LeoDog896
2330cb7037 And declare it as a set 2021-02-09 18:27:41 -05:00
LeoDog896
c4e6d18ee4 Get commands from appropiate set 2021-02-09 18:26:26 -05:00
LeoDog896
3f5fe7bbd9 Revert command set removal 2021-02-09 18:24:23 -05:00
LeoDog896
7854602a04 Remove unnecessary toNodes wrapper 2021-02-09 13:21:25 -05:00
LeoDog896
de5e8e3e67 Cleanup 2021-02-09 12:24:50 -05:00
LeoDog896
becd876dcd Put getNumberProperties into Number arg 2021-02-09 10:58:27 -05:00
LeoDog896
bedc91427e Remove repetitive Set
The Map of commands already stores 2 lists, and making another one for the sake of it actually decreases readability.
2021-02-09 10:40:04 -05:00
LeoDog896
79ec9e6569 Add null checks for aliases 2021-02-09 09:26:53 -05:00
LeoDog896
3d74e74b9e Use redirection for aliases instead of repetition 2021-02-09 09:25:18 -05:00
LeoDog896
6b4c514254 Fix imports 2021-02-09 07:26:32 -05:00
LeoDog896
f20d8941a5 Put simpleArgumentNode into Argument 2021-02-08 21:03:55 -05:00
LeoDog896
b770710e0d Redo argsValues
(Until / if theres a better solution)
2021-02-08 20:59:46 -05:00
LeoDog896
01b4a1b582 Allow time unit to be omittable 2021-02-08 19:45:25 -05:00
LeoDog896
7705c03500 Use Array for validation
Unless something goes absolutely terribly and in fact void wrong the ArgumentValidation should be fine.
2021-02-08 19:33:56 -05:00
LeoDog896
8d7cce3044 Use collections for the correct situations 2021-02-08 19:11:47 -05:00
LeoDog896
e809e69a07 Use protected COMMAND_MANAGER field 2021-02-08 18:54:55 -05:00
LeoDog896
f300d60411 Prefer primitives over list 2021-02-08 18:33:01 -05:00
LeoDog896
4379f4b1e1 Outsource node building to other classes 2021-02-08 18:25:10 -05:00
themode
04c792c302 Fix javadoc 2021-02-08 04:10:43 +01:00
themode
004b4563c2 Replace NbtCompound to CommandData 2021-02-08 04:08:22 +01:00
themode
3c7bbc9d2d Added initial command return support 2021-02-08 03:42:35 +01:00
themode
8334e100cf Don't send packet to disconnected clients 2021-02-07 22:02:03 +01:00
themode
2d7e16fa8e change UpdateOption value from int to long 2021-02-07 20:14:40 +01:00
themode
f7aeeabe9c Override ItemStack#equals 2021-02-07 19:38:14 +01:00
themode
5a308f0ced Added deprecation warning for most Arguments methods 2021-02-06 19:38:59 +01:00
themode
1af8ea5303 Added comment about broken bedrock client skin using Geyser 2021-02-06 03:51:17 +01:00
jglrxavpok
8a992b3e45 New constructor to give UUID as argument in LivingEntity, now used to specify player UUID 2021-02-05 14:32:28 +01:00
jglrxavpok
da3a8b17b2 Add FireworkMeta#getFlightDuration 2021-02-05 12:18:05 +01:00
jglrxavpok
6addd63396 Fix extension subdependencies not being loaded + Test that J9 modules are supported 2021-02-04 20:40:12 +01:00
jglrxavpok
9ce7a08d12 Extension can check if their code modifiers (including Mixins) loaded correctly 2021-02-04 19:11:43 +01:00
jglrxavpok
ee158c0dea Use Nullable string instead of Optional in MinestomRootClassLoader#findExtensionObjectOwner 2021-02-04 11:57:43 +01:00
jglrxavpok
2a96beb819 Extensions will be unloaded when server is stopped 2021-02-03 20:56:36 +01:00
jglrxavpok
a63e9462c2 All EventHandler remove extension callback when the extension unloads 2021-02-03 20:47:01 +01:00
jglrxavpok
c9d2edef3a Tests for shutdown and delay tasks 2021-02-03 19:35:59 +01:00
jglrxavpok
c8e311855f Auto-unschedule and cancel tasks from extensions 2021-02-03 17:51:14 +01:00
themode
9fe2b8359c Added convenient EntityFinder#findFirstPlayer(CommandSender) 2021-02-03 17:21:49 +01:00
jglrxavpok
4f39498ef5 Remove debug code no longer relevant 2021-02-03 17:12:20 +01:00
jglrxavpok
eadd4a2b39 Automatically unload GlobalEventHandler callbacks 2021-02-03 17:11:06 +01:00
themode
b5d03cb7a9 Added convenient EntityFinder#find(CommandSender) 2021-02-03 16:57:58 +01:00
KrystilizeNevaDies
a92ab6ea47 Add comment on Instance#setTime 2021-02-03 16:31:15 +10:00
themode
1146d50f24 Cleanup 2021-02-02 21:14:01 +01:00
themode
c6cafb19a4 Added all missing metadata (except Particle) 2021-02-02 21:13:31 +01:00
themode
cb41b2e3d7 Added villager data metadata 2021-02-02 21:03:25 +01:00
jglrxavpok
2b5d67a3ca Don't crash the server if Mixin can't be loaded due to identical file names inside the JAR file.
But please spam the console.
2021-02-02 14:49:19 +01:00
jglrxavpok
9b9565dbbd Early loading of Mixin and code modifiers
+ System property to disable early loading if necessary
2021-02-02 12:44:57 +01:00
themode
b6cce091e8 Remove magic values from ColoredText 2021-02-02 07:04:16 +01:00
themode
f17a518e92 Fix color not being displayed after a forward slash 2021-02-02 06:56:45 +01:00
themode
7843f74b4b Fix string encoding to UTF-8 2021-02-01 23:39:44 +01:00
themode
dd1b67e5de Enable netty error processing by default 2021-02-01 18:22:36 +01:00
themode
735dd50f4e Fix optional metadata 2021-01-31 15:26:51 +01:00
themode
1707cc73f5 rename to #legacyToFormat 2021-01-31 00:42:21 +01:00
themode
2f326aeaae Rename #toLegacy to #toFormat since it didn't make sense 2021-01-31 00:25:49 +01:00
themode
8f174f2c87 Update ChangeGameStatePacket to reflect wikivg documentation 2021-01-30 16:03:04 +01:00
themode
3026e46220 Added new metadata API 2021-01-30 04:44:44 +01:00
themode
59c4cd9382 Reorder Direction enum to support entity metadata 2021-01-29 21:05:18 +01:00
themode
66817eb9c4 Fixed Team#removeMember 2021-01-29 00:02:43 +01:00
themode
edd880ceb6 Allow to update both the block state and custom ids using PlayerBlockBreakEvent#setResultCustomBlock 2021-01-28 22:53:02 +01:00
themode
b321a10caa Change the algorithm order of InstanceContainer#setBlock 2021-01-28 16:19:06 +01:00
themode
da2286de74 Make the FakePlayer constructor protected instead of private 2021-01-28 15:42:11 +01:00
themode
c607a7a2cb Small style cleanup 2021-01-28 15:41:11 +01:00
themode
fa0c5050e4 Prevent entities from moving during death animation 2021-01-28 15:37:55 +01:00
themode
522b4edc7a New Navigator class to properly separate pathfinder functionalities 2021-01-28 15:33:52 +01:00
themode
e0c8e94bc1 Limit the number of velocity packet used for entities 2021-01-27 19:35:53 +01:00
themode
9775262c6a Fix velocity for netty clients 2021-01-27 19:20:52 +01:00
themode
626d48a0fb Fix Sidebar line score not being removed client-side 2021-01-27 17:46:26 +01:00
themode
7a54b4162d Style cleanup 2021-01-26 15:53:03 +01:00
iamceph
ded8a4b4f8 Move getBlock to Instance only 2021-01-26 09:51:19 +01:00
iamceph
564d549f81 Merge remote-tracking branch 'upstream/master' 2021-01-26 09:46:41 +01:00
themode
a9e638b93f Fix infinite recursion with Instance#getBlockStateId 2021-01-25 21:58:06 +01:00
themode
0da4f96e7e Allow gravity values to be doubles 2021-01-25 21:30:56 +01:00
themode
5f75ea7d3a Remove unnecessary casts 2021-01-25 19:33:53 +01:00
themode
3067f1daaa Merge with master 2021-01-25 19:27:04 +01:00
themode
9ee25ee8ce Merge branch 'master' into double-position 2021-01-25 19:24:19 +01:00
themode
f4a3a9e733 Change Sidebar's queue into a Set, added Sidebar#getLines 2021-01-25 17:48:08 +01:00
themode
fa02a12c1e More math 2021-01-25 14:09:36 +01:00
themode
f48c291929 More math methods in Vector 2021-01-25 13:56:17 +01:00
themode
c01736f863 Use doubles instead of floats to represent Position and Vector 2021-01-25 13:47:13 +01:00
themode
886c4ca9c9 Improve InstanceManager#getInstance comment 2021-01-25 10:21:10 +01:00
iamceph
e74d3ca0f6 Merge remote-tracking branch 'upstream/master' 2021-01-25 09:56:35 +01:00
KrystilizeNevaDies
d733dbbc3f Upate getInstance(UUID) to return nullable instance 2021-01-25 17:25:51 +10:00
iamceph
324c72002f Fix oopsie 2021-01-25 01:17:24 +01:00
iamceph
028241e069 Add ability to get Block from Instance 2021-01-25 01:16:07 +01:00
iamceph
6807217608
Add ability to get Instance by UUID (#114) 2021-01-25 09:52:08 +10:00
iamceph
60cd25e07f Add ability to get Instance by UUID 2021-01-25 00:23:44 +01:00
themode
b37670e1c7 Override PlayerSkin#toString 2021-01-24 16:32:42 +01:00
themode
3e990bb716 Ignore INTERACT_AT packet, remove buggy console prefix 2021-01-24 15:44:18 +01:00
themode
a0f5317292 Remove unnecessary unmodifiable collection 2021-01-23 22:06:41 +01:00
Tyan
7d7c65aa70 Set the last location at the end of refreshPosition 2021-01-23 15:51:07 +01:00
themode
bf692d8043 Clone the teleport position to prevent object sharing 2021-01-23 08:42:49 +01:00
themode
36933fe4b3 Ensure synchronization of the location field 2021-01-23 08:23:24 +01:00
themode
7de0067a13 Small utility methods for EntityRotationPacket 2021-01-22 21:28:33 +01:00
TheMode
5eb5f32095
Merge pull request #110 from MrBretze/patch-1
Added withProperties in BlockAlternative.java
2021-01-21 17:22:59 +01:00
MrBretzel
840eb1a27e
Update BlockAlternative.java 2021-01-21 17:21:36 +01:00
themode
4bb27c305f Cleanup & remove unnecessary calls in PlayerDiggingListener 2021-01-21 16:53:20 +01:00
themode
7a4f3672de Send creeper metadata on spawn 2021-01-21 12:33:04 +01:00
themode
b5a01d6571 Add indicator in the console to display command support 2021-01-21 11:37:54 +01:00
TheMode
1cd3228c06
Merge pull request #109 from DerTyan/exception-handling
Added ExceptionManager for custom exception handling
2021-01-21 06:06:27 +01:00
MrBretzel
18ce3625c7
Added withProperties in BlockAlternative.java
Example: 

blockAlternative.withProperties("facing");

Return the facing of the block a empty string
2021-01-20 20:22:54 +01:00
Tyan
855c8af455 Added ExceptionManager for custom exception handling 2021-01-20 11:43:45 +01:00
themode
d83abcef85 Fix inventory click on size non-divisible by 9 2021-01-20 08:18:00 +01:00
themode
023431e32a Use ordinal as the id in InventoryType 2021-01-20 05:35:41 +01:00
KrystilizeNevaDies
feb1d8f0e9
missing comma 2021-01-20 13:31:45 +10:00
KrystilizeNevaDies
b08a75fc03
Add SMITHING to InventoryType 2021-01-20 13:31:01 +10:00
themode
240a745830 Prevent runtime exception when passing an array with null values in ArgumentWord 2021-01-19 06:27:58 +01:00
themode
7d72d48a5a Fix keep alive packet 2021-01-18 21:47:00 +01:00
LeoDog896
fa7fe1398f Change remove to poll 2021-01-18 10:45:22 -05:00
LeoDog896
78abfb9657 Make init function UNSAFE 2021-01-18 10:44:12 -05:00
LeoDog896
4aed6ffa5c Revert ConcurrentStack 2021-01-18 10:42:01 -05:00
LeoDog896
83111cb8bb Add javadocs to ConcurrentStack 2021-01-18 10:35:43 -05:00
LeoDog896
ac68c094ce Better keepalive and connection handling 2021-01-17 19:26:20 -05:00
TheMode
1eea505da0 Update version name 2021-01-17 08:29:23 +01:00
TheMode
b00824d053
Merge pull request #104 from LeoDog896/master
Microoptimization cleanup
2021-01-17 07:20:51 +01:00
LeoDog896
5419530125 Enchanted book and Colored StringBuilder 2021-01-15 22:03:44 -05:00
Alexander
8f130b5dd9 Fix missing field bug 2021-01-15 21:25:16 +00:00
LeoDog896
fec05d6838 More fastutil usages 2021-01-15 16:04:57 -05:00
LeoDog896
3b3a86a402 Prefer nullable over optional 2021-01-15 13:39:12 -05:00
LeoDog896
3514547610 Fix isEmpty check in ColoredText 2021-01-15 13:26:12 -05:00
LeoDog896
8633797420 Use a StringBuilder for ColoredText 2021-01-15 13:16:09 -05:00
LeoDog896
0c1b93a82b Return non-fastutil type 2021-01-15 13:08:55 -05:00
LeoDog896
12adb9a965 *Actually important Microoptimization*
Anything that handles every single connected player should be optimized
2021-01-15 13:05:21 -05:00
LeoDog896
3536bdc856 Microoptimization cleanup
Just some small microoptimizations including preferring fastutils, Removing unnecessary checks already dealt with using @NotNull, all since I had extra unplanned free time.
2021-01-15 11:08:11 -05:00
themode
238ea649ab Cleanup Team class 2021-01-14 04:33:23 +01:00
TheMode
e6706ec327
Merge pull request #102 from LeoDog896/master
Add EatBlockGoal instance check & MeleeAttackGoal range.
2021-01-13 20:01:02 +01:00