Commit Graph

3658 Commits

Author SHA1 Message Date
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
Németh Noel
0793ccefc8 remove undefined type 2021-07-09 20:13:40 +02:00
Németh Noel
d6221ab212 fix boolean order 2021-07-09 20:05:46 +02:00
Németh Noel
47a0447f12 Merge remote-tracking branch 'upstream/improvement/relative-vec' into improvement/relative-vec 2021-07-09 20:03:07 +02:00
Németh Noel
8e5d2f0dfe fix mix check 2021-07-09 19:57:59 +02:00
TheMode
f829aea534 Add entity eye height 2021-07-09 19:28:08 +02:00
TheMode
2efefe25b3 Improve RelativeVec api 2021-07-09 18:53:13 +02:00
TheMode
f9689bc1f3 Merge branch 'new-block-api' into improvement/relative-vec 2021-07-09 18:38:09 +02:00
Németh Noel
e1d1f52c3d Implement local coordinate parsing 2021-07-09 18:18:52 +02:00
TheMode
ec440f778b Remove nullable annotation 2021-07-09 17:15:28 +02:00
TheMode
b9864a1a28
Merge pull request #360 from djytw/master
Fix extension resource load in Windows
2021-07-09 15:44:08 +02:00
Németh Noel
1ac99fa44c Moved parser method to ArgumentRelativeVec.java and made the class package-private 2021-07-09 15:40:19 +02:00
Németh Noel
5992d52429 Update /setblock command 2021-07-09 15:27:36 +02:00
Németh Noel
782620466b Fix parse call 2021-07-09 15:24:32 +02:00
Németh Noel
cfad7a4145 Fix parsing 2021-07-09 15:17:35 +02:00
TheMode
0ff69503c5 Add Point#isZero 2021-07-09 12:42:36 +02:00
TheMode
95a2805723 Merge branch 'master' into new-block-api 2021-07-09 11:54:15 +02:00
TheMode
b546a873e3 Remove unnecessary cast 2021-07-09 11:23:18 +02:00
TheMode
37ab206cb1 ThreadProvider cleanup 2021-07-09 11:20:49 +02:00