Commit Graph

4836 Commits

Author SHA1 Message Date
TheMode
83ff0daff7
Collision cleanup (#1085) 2022-05-17 17:09:16 +02:00
themode
bfa2dbd3f7 Rename AutoIncrementMap 2022-05-16 08:39:18 +02:00
TheMode
8d7175af73
Replace thread locals to pool (#1079) 2022-05-16 07:34:47 +02:00
TheMode
737b663a4c Update graal meta
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-13 00:58:03 +02:00
MrGazdag
5f9d44433d
Fix Entity#lookAt(Pos) not correctly looking at the position (#1058) 2022-05-12 23:35:46 +02:00
Steank
f774cc3b0f
Fix entities falling through tall blocks (#1047) 2022-05-11 21:30:48 +02:00
Articdive
e4de03ab1a
Automatically generate dye colors. (#1051) 2022-05-10 20:03:23 +02:00
TheMode
e4c1c9fe8d Cleanup Messenger, fix uuid
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-10 10:17:06 +02:00
TheMode
7d930ee28d Replace PlayerConnection#sendPacket when possible
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-10 10:07:55 +02:00
TheMode
abeda20646 Misc inventory style
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-10 07:42:18 +02:00
Moulberry
ad0440711f
Some tweaks to AbstractInventory/PlayerInventory, as well as various Tests (#1049) 2022-05-10 07:33:05 +02:00
TheMode
dfd8c94f5f More style
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-10 06:42:53 +02:00
TheMode
27c4c99949 Misc style
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-10 04:10:57 +02:00
TheMode
37ba3c7893 Simplify tag list
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-09 20:56:06 +02:00
TheMode
64de8f87c0 Add EquipmentSlot.armors
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-07 17:19:51 +02:00
TheMode
cb01b08b04 Add experimental tag update methods
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-07 16:26:39 +02:00
TheMode
2720d9ada2 Use checkIndex
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-07 10:58:19 +02:00
Kiip
35ae8bc07a
Only predict projectile higher if there is gravity (#1016) 2022-05-06 20:55:31 +02:00
iam
cef824bc16
Fix expanded bounding box (#1020) 2022-05-05 13:42:07 +02:00
themode
c009ef0505 Avoid slow synchronized path during reference building 2022-05-04 18:24:15 +02:00
TheMode
fdd3e2c53c Seal snapshot interfaces
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-04 13:25:24 +02:00
TogAr2
23d7df7cbb
Entity pose fixes (#487) 2022-05-03 22:29:38 +02:00
TheMode
0dc7f52a50 Use an identity map to store Snapshotable
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-03 18:55:41 +02:00
TheMode
1384bc0c18 ItemStack.Builder should only be TagWritable
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-02 21:51:33 +02:00
TheMode
d8a1003368 Allow path on view tags
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-02 21:30:22 +02:00
TheMode
68fc705cd3 More doc to TagHandler
Signed-off-by: TheMode <themode@outlook.fr>
2022-05-02 13:34:05 +02:00
Cody
ef53559349
Fix #1009: Make canPlaceOn and canDestroy use Material instead of Block (#1010) 2022-05-01 10:44:33 +02:00
TheMode
8a876a4a59 Entry must use NBTType
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-29 18:24:55 +02:00
Weiiswurst
afddb6f549
hasVelocity is now false if the entity just has gravity (#975) 2022-04-28 16:06:53 +02:00
CryptForge
4b0f10d448
Prevent invisible item when consumeBlock is false (#1001) 2022-04-28 14:50:39 +02:00
emortal
a78309a2b2
Fix block break packet using resultant block (#996) 2022-04-27 16:14:54 +02:00
TheMode
12543acf5e Simplify path recursive removal
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-27 04:46:30 +02:00
Weiiswurst
9ce5a79cc8
Ignore arrows and spectators (#986) 2022-04-26 13:01:47 +02:00
TheMode
42c6e75906 Fix handler invalidation
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-26 06:37:26 +02:00
TheMode
a74b6ce220 Temporary tag fix
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-25 07:26:26 +02:00
TheMode
acd3345fc9 Test style
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-25 06:28:58 +02:00
TheMode
49a69d353e More preparation for CAS tag write
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-25 05:45:22 +02:00
GreatWyrm
d17c95b826
Rename outdated LivingEntityMeta methods (#960) 2022-04-24 23:42:34 +02:00
TheMode
765d6057da Avoid entity field lookup
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-24 05:37:47 +02:00
TheMode
0f2be00291 Make Metadata.Entry sealed
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-24 05:09:39 +02:00
TheMode
4b7f8213aa Entity metadata cleanup
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-24 05:00:28 +02:00
Bloepiloepi
d87a8f72c7
Fix Entity#takeKnockback and gravity (#943) 2022-04-23 21:37:27 +02:00
DasLixou
e2dac1c46e
Made EatEvents ItemEvents (#965) 2022-04-23 19:26:22 +02:00
Weiiswurst
c32153d221
Fix #942 (#962) 2022-04-22 19:03:28 +02:00
TheMode
057109c94e Add experimental TagSerializer.COMPOUND
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-22 04:32:44 +02:00
TheMode
3f98bde82e No need to return a new meta
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-21 18:43:42 +02:00
TheMode
3c0abb0409 Make ItemStack.Builder extends Taggable
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-20 23:14:37 +02:00
TheMode
917302cbbb Avoid potential stacktrace generation
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-20 17:19:45 +02:00
TheMode
a4adbb49fe Add a new Pos#sameView
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-19 21:09:02 +02:00
Zak Shearman
64f617c81c
Add Pos#withLookAt (#945) 2022-04-19 20:31:05 +02:00
Weiiswurst
21e6ed4918
Check for adventure mode when finishing to break a block (#948) (#949) 2022-04-19 16:52:56 +02:00
Bloepiloepi
f0fa81b712
Use smaller position offset when placing blocks (#940) 2022-04-18 01:15:38 +02:00
iam
bb236b34b6
Stop update from being sent to the player when the player places a block on themselves (#939) 2022-04-17 22:02:24 +02:00
Bloepiloepi
e57e3ff305
Fix enchantment reading (#938) 2022-04-17 21:51:16 +02:00
Bloepiloepi
ff7098a083
Item metadata fixes (#935) 2022-04-17 20:52:29 +02:00
iam
0d93faf0db
Fix worldborder size on resize + test (#937) 2022-04-17 19:54:41 +02:00
iam
6aa999aa77
Don't reload chunk when player places block on entity (#936) 2022-04-17 19:21:01 +02:00
TheMode
8b187894f7 Make Instance implements EventHandler
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-17 06:19:14 +02:00
TheMode
0f767da5f0 Use NBT#getValue
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-17 00:16:59 +02:00
TheMode
c5bef0958d Prepare potential CAS tag impl
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-16 19:15:48 +02:00
TheMode
49488c4893 Remove nbt tag list/map restriction
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-16 14:37:41 +02:00
TheMode
198618ba98 Add rate limiter for incoming packets
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-15 12:25:58 +02:00
TheMode
164cf9fe2b Fix FireworkEffectMeta
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-15 04:44:34 +02:00
TheMode
1ad6caaf8b Add TagSerializer.fromCompound
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-15 03:50:57 +02:00
TheMode
5839ec71cc Make ItemMetaView.Builder extends ItemMeta.Builder
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-15 02:31:58 +02:00
Bloepiloepi
0c6da422c7
Add onGround to PlayerMoveEvent (#921) 2022-04-14 18:47:17 +02:00
TheMode
98a6e73e99 Improve memory usage of tags
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-14 16:26:57 +02:00
TheMode
821063addf Fix empty fork
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-14 01:32:54 +02:00
TheMode
3371de9556 Improve tag nbt convertor tests
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-14 01:13:45 +02:00
TheMode
e026a841ab Improve creation of item builder
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-14 00:50:19 +02:00
TheMode
83baabcbba Do not loop through parents if nothing has been removed
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 22:37:54 +02:00
TheMode
57832351ea Add pathInvalidClear
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 22:26:56 +02:00
TheMode
6c250de41c Fix OOB when clearing path-able tag entries
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 22:22:39 +02:00
Konstantin Shandurenko
d8cda624c8
PlayerDiggingListener fix (#918) 2022-04-13 22:03:25 +02:00
TheMode
b3030a3eb2 Fix PlayerHeadMeta
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 21:57:59 +02:00
TheMode
c9c2cc9ec8 Fix standalone view meta building
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 21:22:13 +02:00
Konstantin Shandurenko
f1606362b7
Stacking rule can be changed now (#916) 2022-04-13 20:42:09 +02:00
Konstantin Shandurenko
19eae7ef93
EntityTracker fix (#915) 2022-04-13 20:29:05 +02:00
TheMode
63b40deb34
Item API refactoring (#904) 2022-04-13 17:57:15 +02:00
TheMode
0875becdc7 Test integration of path & structure
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 13:16:23 +02:00
TheMode
50a7d7ca81 ShapeImpl should not depend on the block material
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-13 12:07:43 +02:00
TheMode
59d5bfe6d1 Invalidate ChunkCache on unload
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 23:55:17 +02:00
TheMode
384126e3b4 Optimize block retrieval from Instance
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 23:50:45 +02:00
TheMode
c56cd1054a DiggingResult can become a record
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 23:38:15 +02:00
Konstantin Shandurenko
c4a4ebd51a
Check whether chunk is loaded on ClientPlayerDiggingPacket input (#910) 2022-04-12 23:37:29 +02:00
TheMode
f073cc46c8 Add Tag.UUID
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 19:16:11 +02:00
TheMode
3f172a8d2c Support Tag.Component and for record auto-structure
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 16:20:17 +02:00
TheMode
86526ab219 Simplify flow
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 14:14:36 +02:00
TheMode
6a79de2406 Final entry
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 12:18:00 +02:00
TheMode
0c9542486f Dedicated traversePath method
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-12 12:16:40 +02:00
TheMode
afbc6d6a47 Fix potential NPE
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-11 22:38:37 +02:00
TheMode
5812482922 Document GenerationUnit size guarantee
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-11 21:12:58 +02:00
Konstantin Shandurenko
2cea7ca5af
Async tasks cancellation fix (#907) 2022-04-11 20:26:59 +02:00
TheMode
1bb0af7f77 Add TagHandler#copy
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-10 15:49:33 +02:00
TheMode
1cdc0aeddb Add Boolean tag
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-10 15:38:13 +02:00
Lorenzo Lapucci
97abccce0c
Use eye height difference when setting direction using Entity#lookAt(Entity) (#900) 2022-04-10 14:13:13 +02:00
TheMode
73fed47040 Misc
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-10 12:26:33 +02:00
TheMode
d25f791d59 Use isView()
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-10 11:44:08 +02:00
TheMode
af43c977bd
Tag nbt conversion (#901) 2022-04-10 10:01:39 +02:00
TheMode
23e1c8a0bc Prepare better nbt conversion
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-09 16:17:24 +02:00
TheMode
c22c4e914a Test read from compounds
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-09 15:29:14 +02:00
TheMode
b294cb3f1c Style
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-09 15:20:11 +02:00
TheMode
30aa3ac8f3 Fix fillHeight
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-08 15:08:40 +02:00
TheMode
b8b850fca1 Print problematic future
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-08 12:20:17 +02:00
TheMode
a70bb15146
Low level generation API (#574) 2022-04-08 07:19:52 +02:00
themode
3c2ef39d1b Test item snbt in tag 2022-04-07 15:26:45 +02:00
TheMode
60d22929a1 Move assert
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-07 11:35:09 +02:00
TheMode
031d9253a3 Fix view tag access
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-07 11:34:18 +02:00
TheMode
bbd9e58d35
Generate Tag from record type (#883) 2022-04-07 11:05:11 +02:00
iam
50c1083a48
Fix relative max. Currently finds the minimum of all individual bounding box maximums. Updated to find maximum of all bounding box maximums (#869) 2022-04-05 04:20:46 +02:00
TheMode
5109acac42 WIP singleTickMovementUpdate
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-05 03:08:34 +02:00
Alexander Mandera
740ffc8846
Fix bad conversion of block index using negative Y (#861) 2022-04-04 23:19:48 +02:00
TheMode
467decbb20 Remove explicit fences
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-03 04:09:11 +02:00
TheMode
7a371fe616 Do not fallback to waiting list
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-02 23:35:11 +02:00
TheMode
ff8dd0cdaa Misc networking improvements
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-02 22:05:29 +02:00
TheMode
446e4a64b7 Catch exceptions during skin request
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-01 22:53:46 +02:00
themode
3674fcc97d Fix nearbyEntities 2022-04-01 20:41:32 +02:00
TheMode
43734a9c58 Slight nearbyEntities improvement
Signed-off-by: TheMode <themode@outlook.fr>
2022-04-01 16:04:23 +02:00
TheMode
4e6c92e2c5
Unique stacking rule (#844) 2022-04-01 01:00:18 +02:00
Konstantin Shandurenko
8df0d37107
Entity's line of sight methods improvements (#842) 2022-03-31 20:28:02 +02:00
Konstantin Shandurenko
eebdb4a7a3
Reducing allocations count when working with bounding boxes (#843) 2022-03-31 19:48:43 +02:00
Konstantin Shandurenko
4c8b4c1abc
Fixed players visibility and relevancy within tablist (#840) 2022-03-31 18:57:56 +02:00
TheMode
a988327f37 Add held/left/right click integration tests
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-30 17:24:16 +02:00
themode
bc0cb57c61 Cache optimization 2022-03-30 16:50:08 +02:00
themode
c81b0c0125 Palette misc 2022-03-29 16:50:16 +02:00
Konstantin Shandurenko
244f8785ff
Another fix for EntityProjectile (#826) 2022-03-29 00:00:43 +02:00
TheMode
29a06487ce Better flow control
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-28 23:53:53 +02:00
Konstantin Shandurenko
b3ee3e2345
EntityProjectile fixes and optimizations (#807) 2022-03-28 22:06:25 +02:00
themode
cf1373396b Counted loop 2022-03-28 15:59:36 +02:00
TheMode
1c9b6f3529 Do not call Chunk#removeViewer
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-27 15:31:34 +02:00
iam
fb5d6b88e3
Reduce allocations from physics check (#813) 2022-03-27 00:27:47 +01:00
MrGazdag
5469fef417
send teams on join (#803) 2022-03-26 16:16:35 +01:00
EpicPlayerA10
40024da5c9
Fix compression packet order (#811) 2022-03-26 15:40:14 +01:00
TheMode
835b8ca89d Add TagReadPathBenchmark
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-26 15:26:46 +01:00
TheMode
ac4d78acf1 Synchronize cache access
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-26 13:05:21 +01:00
TheMode
85559abb28 TagHandlerImpl cleanup
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-26 13:03:28 +01:00
TheMode
131116013d Event nodes need total order
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-26 12:02:36 +01:00
themode
a689691873 Unnecessary fences 2022-03-26 11:44:40 +01:00
TheMode
daf83a25d1 Add some event node query tests
Signed-off-by: TheMode <themode@outlook.fr>
2022-03-26 10:13:43 +01:00
themode
8dcb3191f6 Improve tag value sharing 2022-03-25 17:48:18 +01:00
themode
edabb19891 Explicit fences 2022-03-25 10:12:04 +01:00
themode
0fc9cab6ab Unnecessary array lookup 2022-03-25 08:23:33 +01:00
themode
9ee74845e1 Avoid list copy when unnecessary 2022-03-25 08:18:30 +01:00
themode
2d6368f6bd copy-on-write index map 2022-03-24 12:51:24 +01:00
themode
043c139b91 Improve read performance with different tag 2022-03-24 11:23:16 +01:00
TheMode
2301ad9976
Tag list (#801) 2022-03-24 09:03:30 +01:00
themode
2ab3bca6d7 Remove suites 2022-03-24 06:52:59 +01:00
themode
d2e3055225 Use assertEqualsSNBT 2022-03-24 06:52:37 +01:00
TheMode
b5367ee96a
Tag path API (#800) 2022-03-24 05:42:01 +01:00
themode
54b65f49a6 Prevent unlikely race condition 2022-03-23 10:52:39 +01:00