Commit Graph

2347 Commits

Author SHA1 Message Date
TheMode
b3a548287a Improve thread safety 2021-04-15 03:53:18 +02:00
TheMode
2b79e91295 Add comment + todo 2021-04-15 03:38:27 +02:00
TheMode
bd3e4e2f0a Added Acquirable#currentEntities 2021-04-15 03:08:19 +02:00
TheMode
11b1bbea2e Update entities thread 2021-04-15 01:44:08 +02:00
LeoDog896
c41c202589 Deepclone and cast 2021-04-14 18:19:07 -04:00
LeoDog896
7eb13de433 Compound and list tags 2021-04-14 18:12:41 -04:00
TheMode
fec36d4706 Run thread directly 2021-04-14 22:48:13 +02:00
TheMode
73cdfed5ce Merge branch 'master' into acquirable 2021-04-14 22:29:55 +02:00
TheMode
250907df6c Return constant empty set if the chunk is not loaded 2021-04-14 22:29:38 +02:00
TheMode
7dc0387ecf Add a way to find the current threadid of a chunk 2021-04-14 22:22:46 +02:00
TheMode
79f0d97664 Cleanup tick preparation 2021-04-14 21:41:14 +02:00
TheMode
a55ea6d0c2 WIP per-chunk thread 2021-04-14 21:29:37 +02:00
TheMode
356150847e Per-chunk batch management 2021-04-14 20:32:02 +02:00
TheMode
9b8dd6e768 Merge branch 'master' into acquirable
# Conflicts:
#	src/main/java/net/minestom/server/thread/ThreadProvider.java
2021-04-14 20:13:26 +02:00
TheMode
ccab205a54 Initial acquirable API commit 2021-04-14 20:12:56 +02:00
TheMode
c1b278f4b9 Fix merge, remove unnecessary methods (for now)
Signed-off-by: TheMode <themode@outlook.fr>
2021-04-14 20:09:49 +02:00
TheMode
683a6d35fa Merge branch 'master' into tickable
# Conflicts:
#	src/main/java/net/minestom/server/entity/Entity.java
#	src/main/java/net/minestom/server/instance/DynamicChunk.java
#	src/main/java/net/minestom/server/instance/Instance.java
2021-04-14 20:06:35 +02:00
TheMode
dc5b764732 Inventory id generation cleanup 2021-04-14 07:25:51 +02:00
TheMode
97f2f3f06c Fix inventory id overflow 2021-04-14 05:03:37 +02:00
TheMode
c57e35c58a Add completable future return to AsyncUtils 2021-04-14 04:06:41 +02:00
TheMode
7d574317dc ClientCloseWindowPacket window id is a byte, not a var int 2021-04-14 02:00:19 +02:00
TheMode
b68c30423c Add BinaryWriter#write(ByteBuf) 2021-04-14 01:40:21 +02:00
TheMode
a3f1235df4 Stacking rule should be defaulted to vanilla if null 2021-04-13 23:15:51 +02:00
TheMode
6ba336ee73 Added hand inside eat events 2021-04-13 22:59:40 +02:00
TheMode
a55ae4d048 Cache unmodifiable players set, remove print 2021-04-13 21:39:42 +02:00
TheMode
49944fb651 Keep StackingRule across builders 2021-04-13 09:24:37 +02:00
TheMode
58a532ac03 Annotate ItemStackBuilder#stackingRule with Beta 2021-04-13 09:19:39 +02:00
TheMode
70b97951e4 Added setter for StackingRule 2021-04-13 05:50:11 +02:00
TheMode
fed4e6897a Fix FireworkEffect byte reading 2021-04-13 04:14:32 +02:00
TheMode
61d2ef2f06 Fix ItemStack#fromNBT 2021-04-13 03:45:01 +02:00
TheMode
508659fd30 Fix potential race condition 2021-04-13 03:29:55 +02:00
TheMode
2b74d7697c Added ItemStack#fromNBT 2021-04-13 03:27:51 +02:00
TheMode
32430882a5 ItemStack is final 2021-04-13 03:10:04 +02:00
TheMode
3b8ed1df32 Add api status annotations 2021-04-13 02:21:03 +02:00
TheMode
56439a2330 Merge branch 'master' into jline 2021-04-13 02:18:10 +02:00
TheMode
1b98a65869 Get entities from all instances when none is specified in an entity query 2021-04-13 02:08:09 +02:00
TheMode
20c947650f Clear command cache after unregistering a command 2021-04-12 22:45:45 +02:00
TheMode
cdaef2b4f0 Remove LivingEntity outdated TODO 2021-04-12 19:56:40 +02:00
TheMode
2755add8df Fix item tags not being saved when going through a builder 2021-04-12 17:11:28 +02:00
TheMode
1e99810451 Inventory title can be raw string 2021-04-12 16:42:57 +02:00
TheMode
6b165c7692 Fix MapMeta not being a provider 2021-04-12 16:29:15 +02:00
TheMode
2531161964 Fix drag click 2021-04-12 16:27:12 +02:00
TheMode
0fea9b39a2 Return AIR if the amount is 0 or below 2021-04-12 09:11:08 +02:00
TheMode
adfb487140 Fix entity currentChunk being null 2021-04-12 04:50:45 +02:00
TheMode
4932262750 Use chunk instead of instance to check if an entity is on ground 2021-04-12 04:45:11 +02:00
TheMode
bd90de0df2 Remove unnecessary string concat 2021-04-12 04:27:36 +02:00
TheMode
0ff9e3e435 Remove debug print 2021-04-12 04:05:18 +02:00
TheMode
8f6a651bda Added StackingRule#apply with unary operator for amount 2021-04-12 01:27:33 +02:00
TheMode
aac32420de Annotation cleanup 2021-04-12 01:07:05 +02:00
TheMode
1d5262caf2 Merge branch 'master' into item-api
# Conflicts:
#	src/test/java/demo/PlayerInit.java
2021-04-12 00:44:47 +02:00
TheMode
7e3035709f Annotation, fix cursor item not being cleared 2021-04-12 00:42:32 +02:00
TheMode
8e9d7098e5 Allow custom transaction type, simplify inventory superclasses 2021-04-12 00:33:27 +02:00
TheMode
ecb77fc847 Rename FillOption to TransactionOption 2021-04-12 00:07:38 +02:00
TheMode
1100aa98a5 Annotation & comment 2021-04-12 00:04:40 +02:00
TheMode
17fcd23c77 Fix condition, add documentation 2021-04-11 23:52:12 +02:00
TheMode
d86a733b79 WIP FillOption 2021-04-11 23:43:35 +02:00
TheMode
db8f071633 Cleanup, make PingPlayer immutable 2021-04-11 20:46:48 +02:00
TheMode
9f3b7d4ca8
Update FakePlayerConnection.java 2021-04-11 20:32:09 +02:00
thiccaxe
fadbe39494 Getters for fields in HandshakeData 2021-04-11 10:46:09 -07:00
thiccaxe
c451d46ce0 document ServerListPingEvent 2021-04-11 10:30:47 -07:00
TheMode
c7cd8c332a Rename meta package to metadata to limit breaking changes 2021-04-11 19:13:50 +02:00
TheMode
df20670ce8 Use AIR as default in CrossbowMeta instead of null 2021-04-11 17:12:28 +02:00
TheMode
ea3aedd76f ItemMeta#getOrDefault annotation 2021-04-11 17:05:32 +02:00
TheMode
792dd9787f Remove ItemStore API until a stable solution is found 2021-04-11 17:01:05 +02:00
TheMode
f7bf7c1321
Merge pull request #204 from kezz/send-packets-to-audience
Add util method to send a packet to an audience
2021-04-11 15:29:04 +02:00
TheMode
34a7c68e16
Merge pull request #237 from Minestom/update_structure_packet
Add update structure block packet
2021-04-11 15:26:19 +02:00
TheMode
2fadf1da94 Added varargs equivalent for canPlace/Destroy 2021-04-11 15:01:43 +02:00
TheMode
3b37987f15 Remove dead line 2021-04-11 14:55:27 +02:00
Matt Worzala
1f27f2e6cd
provide default location 2021-04-11 00:46:04 -04:00
Matt Worzala
11146186cc
add update structure block packet 2021-04-11 00:37:00 -04:00
thiccaxe
8a9abff98b Remove Duplicate Code; unlinking ResponseData & ServerListPingEvent
Removed code that would cause maintaining more difficult after an update in ResponseData, and additionally PlayerConnection

Updated demo to reflect changes.
2021-04-10 21:14:36 -07:00
TheMode
2f53388b9f Fix velocity IP forwarding 2021-04-11 05:46:52 +02:00
TheMode
6e0202c33b Fix math, improve physics performance 2021-04-11 03:21:38 +02:00
TheMode
e0c2c4b655 Support for canPlace & canDestroy meta 2021-04-11 00:42:09 +02:00
TheMode
5adbc287b3 Added TickMonitor 2021-04-11 00:09:01 +02:00
TheMode
c347f55c1f Make it clear that ArgumentEntity uses a bitmask 2021-04-10 23:18:07 +02:00
TheMode
d219570fe6 Make it clear that PlayerAbilitiesPacket uses a bitmask 2021-04-10 23:17:20 +02:00
TheMode
2da42cb8cb Remove unnecessary chunk callback 2021-04-10 22:33:38 +02:00
TheMode
032343011a Reduce map lookup when looping through surrounding custom blocks 2021-04-10 22:03:03 +02:00
TheMode
f5a21948c6 Reduce chunk lookup when switching 2021-04-10 21:57:33 +02:00
TheMode
c74946cc3c Cache entity current chunk 2021-04-10 21:42:45 +02:00
TheMode
aaab620839 Reduce entity movement overhead (chunk lookup) 2021-04-10 21:21:37 +02:00
TheMode
be2d1db9e0 Merge branch 'master' into item-api 2021-04-10 19:37:36 +02:00
TheMode
ea293bd376 Added EquipmentHandler#setEquipment 2021-04-10 19:30:25 +02:00
TheMode
0be4c6d8c7 More meta utils method, fix openBook 2021-04-10 18:55:26 +02:00
TheMode
0619b1b14b Fix immutability inside ItemMeta 2021-04-10 18:36:20 +02:00
TheMode
e81c31f61b Remove Ownership code 2021-04-10 17:47:45 +02:00
TheMode
bd3c678bde Add HoverEventSource to ItemStack 2021-04-10 17:01:50 +02:00
TheMode
ebbfe7868b Prevent implicit cast from int to double 2021-04-10 06:11:43 +02:00
TheMode
d2efb43625 Improve immutability & prevent NPE 2021-04-10 06:08:08 +02:00
TheMode
50ceeb33e4 Use proper meta based on material 2021-04-10 06:03:48 +02:00
TheMode
1d12a5de95 Implement all meta 2021-04-10 05:53:40 +02:00
TheMode
e4f7a66046 Packet cache rename 2021-04-10 02:02:59 +02:00
TheMode
d88f81e5f3 Use UnaryOperator instead of Function 2021-04-10 01:16:21 +02:00
TheMode
d1f8e60a7e Cache meta binary 2021-04-10 00:55:18 +02:00
TheMode
f5b8f267d6 Clone instead of caching 2021-04-10 00:25:50 +02:00
TheMode
5e8e7cbaf4 Rename nbt method to remove confusion about the object being mutable or not 2021-04-10 00:24:29 +02:00
TheMode
64e70c3b64 Use the builder methods instead of fields 2021-04-10 00:01:06 +02:00
TheMode
d6e7c9a635 Handle nbt directly inside builders instead of lazily 2021-04-09 23:57:05 +02:00
TheMode
4f5fd125c4 ItemMetaBuilder doesnt need to be cloneable 2021-04-09 23:23:33 +02:00
TheMode
e19af0377c Merge branch 'master' into item-api
# Conflicts:
#	src/main/java/net/minestom/server/item/ItemDisplay.java
#	src/main/java/net/minestom/server/utils/binary/BinaryReader.java
2021-04-09 23:19:38 +02:00
TheMode
e4a26df2b6 Rename ItemMeta#nbt, remove unnecessary cache 2021-04-09 23:16:57 +02:00
TheMode
05a553eb4e Fix javadoc build 2021-04-09 19:01:37 +02:00
TheMode
4b31e27348 Fix ArgumentMap when the argument accepts space 2021-04-09 18:59:24 +02:00
TheMode
b50c2831bf
Merge pull request #228 from Project-Cepi/argument-map
Add ArgumentMap
2021-04-09 18:55:36 +02:00
LeoDog896
ca6ee7c23a Move ArgumentMapper inside ArgumentMap 2021-04-09 12:54:02 -04:00
LeoDog896
e4c3345da7 Add beta to map 2021-04-09 12:50:05 -04:00
TheMode
b03752afbe Fix javadoc build 2021-04-09 18:28:03 +02:00
TheMode
5ef4d0f9b4 Reduce the overhead of converting chunk indexes to chunk object, dont tick empty entity list 2021-04-09 18:22:29 +02:00
Kieran Wallbanks
05192de8e1 Make NamespaceID implement Key directly 2021-04-09 13:47:53 +01:00
thiccaxe
61242dc185 Remove extra setters and congregate into refreshServerInformation 2021-04-08 22:06:16 -07:00
TheMode
164873c313 Ensure thread safety 2021-04-09 06:04:16 +02:00
TheMode
abbf7f932d Prevent memory leak when dealing with cached packets 2021-04-09 06:02:07 +02:00
TheMode
56bdb402b1 Merge remote-tracking branch 'origin/master' 2021-04-09 05:41:03 +02:00
TheMode
01d233f7d8 Overall performance improvement 2021-04-09 05:40:40 +02:00
thiccaxe
fce63a91d5 actually remove the code this time 2021-04-08 18:21:00 -07:00
thiccaxe
b086dc82ca Remove extra code in FakePlayerConnection, add refershServerInformation back 2021-04-08 18:20:23 -07:00
thiccaxe
94c4ec79e1 simplify data storage, fix annotations
Removed HandshakeData  - too excessive

Added abstract methods in PlayerConnection as replacement

in FakePlayerConnection setters do nothing and Getters return MinecraftServer defaults
2021-04-08 16:51:50 -07:00
thiccaxe
cad128a393 update demo to show example
may be cut down later as it is very excessive.
2021-04-08 14:41:22 -07:00
thiccaxe
cd27d1d6c7 ServerListPingEvent
An implementation of what could be done to make this event - not perfect in my opinion.
2021-04-08 14:19:32 -07:00
TheMode
102c060114
Merge pull request #232 from strajabot/master
Add multiple colors for FireworkEffect
2021-04-08 20:25:54 +02:00
strajabot
96155e826e Add multiple colors for FireworkEffect 2021-04-08 19:02:42 +02:00
LeoDog896
45cc41c99e
Merge branch 'master' into argument-map 2021-04-08 13:01:50 -04:00
TheMode
c2f302ad0e Fix Inventory never being null when clicking inside an inventory (when the click happens on a player inventory slot) 2021-04-08 17:47:44 +02:00
TheMode
25176e9b9d
Merge pull request #231 from DiamondCodingYT/yaw-fix
Added a yaw fix to for issue #168
2021-04-08 15:04:08 +02:00
Florian Fuhrmann
9c1eeb56d3 Added the Position#fixYaw method that fixes yaw values an used it on Position#setYaw and on a Position constructor to fix issue #168 2021-04-08 12:45:17 +02:00
TheMode
4c495f401d Code cleanup 2021-04-07 18:35:19 +02:00
TheMode
5b98fbeb8b Rename CommandCondition 'source' to 'sender' 2021-04-07 15:48:05 +02:00
LeoDog896
dfae6ad5f8 Documentation and visibility changes 2021-04-06 22:12:30 -04:00
LeoDog896
0e4168ba45 Add ArgumentMap 2021-04-06 22:07:38 -04:00
LeoDog896
97cad24b14 Merge remote-tracking branch 'upstream/master' into update-option-equals 2021-04-06 21:39:17 -04:00
TheMode
2606f2b291 Added PlayerChatEvent#getDefaultChatFormat 2021-04-07 02:47:19 +02:00
TheMode
093cce7242 Dependency update 2021-04-06 23:59:48 +02:00
LeoDog896
9d1d60cdcd Equals & hashcode overrides 2021-04-06 15:25:18 -04:00
TheMode
0bb8144d33 Improve BinaryReader & BinaryWriter 2021-04-06 18:31:30 +02:00
TheMode
017bbf8a60 Remove 0 size check 2021-04-06 06:43:16 +02:00
TheMode
720c986cea Fix reading of non-ASCII characters being higher than the protocol limit 2021-04-06 06:39:57 +02:00
Felix Cravic
e3867c659b Merge branch 'master' into item-api
# Conflicts:
#	src/main/java/net/minestom/server/item/ItemStack.java
2021-04-06 05:10:58 +02:00
themode
008b7fb223 Fix FishingHookMeta NPE 2021-04-05 20:55:51 +02:00
KrystilizeNevaDies
7a6fb4d601 Format FishingHookMeta + make owner not null 2021-04-06 04:43:19 +10:00
KrystilizeNevaDies
b1cfa3d9b2 make FishingHookMeta implement ObjectDataProvider 2021-04-06 04:39:47 +10:00
thiccaxe
159ff3f646 Remove reprecated code
Removed deprecated code,
Added missing code,
Optimized imports.
2021-04-05 09:57:18 -07:00
themode
88765dd703 Fix test 2021-04-05 18:26:57 +02:00
themode
49397957a2 Style cleanup, add more information when the server is not run using bootstrap 2021-04-05 18:24:38 +02:00
themode
63159cc49a Fix client 0x1E & 0x1F packets 2021-04-05 18:22:08 +02:00
thiccaxe
56f8728890 Fix Deprecation of ResponseDataConsumer 2021-04-04 19:53:01 -07:00
thiccaxe
02982c0ee2 Shortcut methods in StatusRequestEvent 2021-04-04 18:52:55 -07:00
thiccaxe
2dec361836 Deprecate ResponseDataConsumer
Not sure if this is how to correctly deprecate, please lmk!
2021-04-04 18:50:41 -07:00
thiccaxe
7c0fcadd4f Add HandshakeEvent 2021-04-04 16:26:58 -07:00
thiccaxe
4f8e94dcf2 Note about favicon format 2021-04-04 15:57:42 -07:00