Commit Graph

257 Commits

Author SHA1 Message Date
Németh Noel
7abf6ba9e7 Added CanPlaceOn and CanDestroy properties for ItemStacks and implemented checks for them 2021-02-28 19:37:31 +01: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
Kieran Wallbanks
a3f388a88b Add events for player sneaking and sprinting changes 2021-02-22 16:36:40 +00:00
Konstantin Shandurenko
e01a92c92c Fixing armor equip with right clicking 2021-02-22 05:17:14 +03:00
themode
c01736f863 Use doubles instead of floats to represent Position and Vector 2021-01-25 13:47:13 +01:00
themode
3e990bb716 Ignore INTERACT_AT packet, remove buggy console prefix 2021-01-24 15:44:18 +01:00
themode
4bb27c305f Cleanup & remove unnecessary calls in PlayerDiggingListener 2021-01-21 16:53:20 +01:00
themode
d83abcef85 Fix inventory click on size non-divisible by 9 2021-01-20 08:18:00 +01:00
themode
8e1ffdff7d Prevent double intersect check 2021-01-13 06:34:09 +01:00
themode
7d8ce32ba9 Fix block placement collision on chunk border 2021-01-13 06:32:42 +01:00
themode
1c65b36087 Rework of ArgumentCallback to be more robust, allowing to simplify all argument types in order to be used out of the command framework for general parsing.
Also removed magic space string, replaced with constant from commons apache library
2021-01-08 03:07:37 +01:00
themode
7c5bb7126a Added PlayerBlockPlaceEvent#setBlockData 2021-01-07 16:12:56 +01:00
themode
852391f210 Fix packet listeners not being called if there is no default listener 2021-01-05 18:10:25 +01:00
themode
3a7ae11c56 Add CommandSender as param in onDynamicWrite 2021-01-05 18:04:28 +01:00
themode
7019b7da85 Fix onGround field and gravityTickCount 2021-01-04 03:04:45 +01:00
themode
2ec727d5f8 Fix InventoryClickResult not using the proper items 2021-01-01 13:43:43 +01:00
ThatCreeper
50b44e46e0 Add PotionEffectManager 2020-12-30 17:12:03 -06:00
themode
78ed12887d Implement client spectate packet 2020-12-29 19:58:40 +01:00
themode
cecf6310ca Added Entity#setPose 2020-12-29 00:04:15 +01:00
Archy-X
e911612ad6 Add onWrite method with CommandSender in CommandProcessor 2020-12-28 10:59:18 -07:00
themode
ca3667732f Attempt to fix sync issue in window click 2020-12-28 17:27:40 +01:00
themode
978a1f5135 PlayerChatEvent function should return a JsonMessage and not necessarily a RichMessage 2020-12-23 08:24:29 +01:00
themode
3a7afa63d5 Security update preventing modified client from crashing the server by placing a block in an unloaded chunk 2020-12-20 03:38:36 +01:00
themode
ffbde089f8 BlockPlacementRule cleanup 2020-12-20 03:24:29 +01:00
themode
3e532b24a8 Prevent placing block in adventure mode 2020-12-18 00:28:06 +01:00
themode
5224eecdd1 Event unification (type-specific event, CancellableEvent is now an interface) 2020-12-16 03:21:59 +01:00
themode
7750934a3f Small cleanup 2020-12-16 00:13:40 +01:00
themode
9b9dab56eb Fix ghost cursor item when canceling an inventory click 2020-12-15 05:52:35 +01:00
themode
bf10f0d3f7 Fixed thread crash when clicking in a non interactive inventory slot (-1) 2020-12-15 05:47:18 +01:00
themode
e1a886aa3a Fix SetSlotPacket 2020-12-15 05:39:28 +01:00
Felix Cravic
f7c05a445e Remove #copy 2020-12-09 21:34:53 +01:00
Felix Cravic
716e2ea5ef Remove unnecessary synchronized block and allow for custom drop amount 2020-12-08 00:12:49 +01:00
Felix Cravic
99f4c8f2d3 No item copy when swapping item hand 2020-12-08 00:08:27 +01:00
Felix Cravic
ff4580c41b Prevent unnecessary item copy during drop 2020-12-07 23:57:57 +01:00
Felix Cravic
1f1bd348b5 Fix player teleport being teleported inside a block 2020-12-05 17:14:10 +01:00
themode
2d7159f888 Fixed javadoc 2020-11-20 03:50:41 +01:00
themode
0739b57dd1 Server packet listener now takes a collection of player, for future network optimization 2020-11-20 03:47:29 +01:00
themode
828069c685 Cleanup + reduced default chunk view distance to 8 2020-11-19 07:00:41 +01:00
themode
a5839ae1c8 PacketListenerManager#processServerPacket comment 2020-11-16 12:25:13 +01:00
themode
540405e796 Optimized PacketCompressor 2020-11-16 11:41:03 +01:00
themode
c60f625c55 Revamp of the packet sending code, added possibility to have listeners for outgoing packets 2020-11-13 07:43:35 +01:00
themode
0ae656c1f2 Prevent placing blocks above y=255 2020-11-13 03:51:02 +01:00
themode
72d941bc74 Prevent corrupted item stack from crashing the server 2020-11-13 03:39:00 +01:00
themode
cf6fbd3d34 Cleanup 2020-11-06 22:58:38 +01:00
themode
463e1f047f Cleanup + added PlayerSettingsChangeEvent 2020-11-01 00:07:15 +01:00
themode
0184ada9a0 Renamed #clone to #copy 2020-10-31 18:03:15 +01:00
themode
c4f36a9cea Cleanup + comments 2020-10-31 05:09:30 +01:00
themode
872dccd7ce Small cleanup 2020-10-29 22:52:07 +01:00
themode
fb26ec0f0b Added Chunk#setReadOnly and Chunk#isReadOnly 2020-10-24 00:17:23 +02:00
themode
3cb880cf80 General cleanup 2020-10-22 12:55:53 +02:00
themode
fbe4126021 Added Player#chat to simulate chat message 2020-10-16 11:37:00 +02:00
themode
9e2e48f79c Fix bug when you could send a break a custom block with a finished digging packet 2020-10-16 09:12:31 +02:00
themode
660a67e53e English fix 2020-10-15 21:16:31 +02:00
themode
50326b676c Added PotionEffect 2020-10-15 05:29:48 +02:00
themode
0e5831cdc3 Cleanup + typo fix 2020-10-13 12:49:29 +02:00
themode
81c6f97336 Comments 2020-10-12 06:41:47 +02:00
themode
739c3f1d7d Allow non-custom block in PlayerStartDiggingEvent 2020-10-10 13:46:41 +02:00
Eoghanmc22
ae44fa124d Fix teleports 2020-09-26 16:03:51 -04:00
themode
c3b1e88b83 Re-fix the breaking of a block just below the player 2020-09-26 19:43:28 +02:00
themode
ce81c3a85d Fix position issue when cancelling the breaking of a block just below the player 2020-09-25 21:50:50 +02:00
themode
cd521d4c19 Fix teleport in the PlayerMoveEvent 2020-09-23 22:14:43 +02:00
themode
e2940c9aee Renamed CustomBlock#getBlockStateId to CustomBlock#getDefaultBlockStateId 2020-09-06 03:15:00 +02:00
themode
6b778f425a Cleanup 2020-08-20 19:06:55 +02:00
themode
5b394e5bf7 Rewrite of the CustomBlock break delay system + support for multi player digging 2020-08-20 02:42:27 +02:00
themode
8b30caa8c8 Micro optimization + cleanup 2020-08-19 01:24:51 +02:00
Felix Cravic
caa89dd2f8 Chunk update 2020-08-16 00:53:42 +02:00
Felix Cravic
1d047b5de3 Removed useless synchronization 2020-08-14 15:24:57 +02:00
Felix Cravic
f3414224fe Added ItemStack callbacks for interactions 2020-08-13 19:00:19 +02:00
Felix Cravic
a9aff3e6ef Remove pathfinder specific thread pool + cleanup 2020-08-12 07:46:07 +02:00
Felix Cravic
c2165abe1f Added ChunkUtils#isLoaded + optimization of the thread providers 2020-08-10 11:32:03 +02:00
Articdive
f1f3885751
Start Entity abstraction, add some missing entities. 2020-08-09 10:12:44 +02:00
Felix Cravic
67db1d6568 Replaced blockId by blockStateId 2020-08-09 09:55:30 +02:00
Felix Cravic
2ab7427b94 Added AdvancementTabEvent 2020-08-05 11:34:49 +02:00
Felix Cravic
aecf0f427a Added dynamic arguments for Command (allow for server tab completion) 2020-08-04 06:14:42 +02:00
Felix Cravic
baccc36ed7 Allow ask_server tab complete for CommandProcessor 2020-08-04 04:21:11 +02:00
Felix Cravic
7007c507c1 Fix PlayerCommandEvent being called 2 times 2020-08-03 23:55:54 +02:00
Articdive
30ff313cad
Added Advancements and Advancement Toasties. 2020-08-03 17:17:32 +02:00
Felix Cravic
647bb39e7c Change packet listener to ConnectionManager#onPacketReceive 2020-07-29 22:38:46 +02:00
Felix Cravic
da641fd54b Update item hover + rich message comments 2020-07-29 20:13:17 +02:00
Articdive
78f4bc0a13
Started work on item hovering. 2020-07-29 11:21:11 +02:00
Felix Cravic
98c3419766 Cleanup 2020-07-27 02:28:03 +02:00
Felix Cravic
71b2988583 Added AnimationEvent comments + cleanup 2020-07-26 20:03:39 +02:00
Felix Cravic
4fb7d61a7c Cleanup 2020-07-24 18:23:15 +02:00
Felix Cravic
4f788b9b8d Cleanup 2020-07-24 16:11:48 +02:00
Felix Cravic
5c1e6e7572 Cleanup 2020-07-23 07:36:49 +02:00
Felix Cravic
f8453b4906 Added ItemMeta + MapDataPacket 2020-07-23 05:36:15 +02:00
Felix Cravic
189376f951 Cleanup + javadoc comments 2020-07-21 18:48:15 +02:00
jglrxavpok
54c4134006 BlockFace added to PlayerBlockInteractEvent 2020-07-18 17:45:56 +02:00
jglrxavpok
47c249c293 Don't instabreak custom blocks with -1 block delay 2020-07-13 14:48:56 +02:00
Felix Cravic
e1b9f74cf4 Optimize message sending 2020-06-30 01:25:23 +02:00
Eoghanmc22
061db7c8de Add some vanilla placement rules, add a scheduleNextTick method for instances and entities, make changes to BlockPlacementRule, make BlockFace its own class. 2020-06-28 17:11:40 -04:00
Felix Cravic
19fc90e764 Fixed Held packet + replaced the short by a byte 2020-06-23 18:09:01 +02:00
Felix Cravic
b47efa35ca Added PlayerChangeHeldSlotEvent 2020-06-23 17:50:43 +02:00
Felix Cravic
9dfb9b657b Added CommandSender#isPlayer and CommandSender#isConsole 2020-06-23 17:25:46 +02:00
Felix Cravic
f892213e8c Added a new Chat API 2020-06-22 23:25:00 +02:00
Felix Cravic
889b1fe095 Renamed PlayerInteractEvent to PlayerEntityInteractEvent 2020-06-21 23:44:20 +02:00
Felix Cravic
c17aba4ac7 Added Player#setResourcePack + PlayerResourcePackStatusEvent 2020-05-31 19:53:59 +02:00
Felix Cravic
f8758d2933 Added LivingEntity#swingMainHand and LivingEntity#swingOffHand 2020-05-31 16:14:27 +02:00
Felix Cravic
eed946e948 Cleanup 2020-05-31 15:52:56 +02:00
Felix Cravic
30ef05183e Added more synchronization at death + added listener for teleport and window confirmation to remove warning 2020-05-31 00:39:56 +02:00
Felix Cravic
1bcd0c474f Added event comments 2020-05-30 22:32:12 +02:00
Felix Cravic
1343a66681 Added player in inventory events + comments 2020-05-30 14:58:00 +02:00
Felix Cravic
589079f8f6 Updated netty + fix network crash 2020-05-29 15:31:11 +02:00
Felix Cravic
eb5659c235 Optimize bandwidth + fix keep alive 2020-05-29 02:11:41 +02:00
Felix Cravic
7cd2d570bd Comments 2020-05-28 20:09:52 +02:00
Felix Cravic
dfd7ca84a4 Fixed player mining vanilla block 2020-05-28 19:29:29 +02:00
Felix Cravic
5e91b75d78 Comments 2020-05-28 19:15:55 +02:00
Felix Cravic
32ebd4a53e Digging cleanup 2020-05-28 00:21:14 +02:00
Felix Cravic
7147250432 Fixed player digging vanilla blocks + comments 2020-05-27 23:26:45 +02:00
Felix Cravic
039e9aca4f Lot of comments 2020-05-27 20:30:13 +02:00
Felix Cravic
f5ddc66c43 Modified digging listener, added more clear exceptions and some comments 2020-05-27 19:43:08 +02:00
Felix Cravic
fc773044e8 Remove chunk unloaded check 2020-05-26 21:30:12 +02:00
Felix Cravic
e8a2c54485 More FakePlayerController features + fix with chunks and player food bar 2020-05-25 13:46:48 +02:00
Felix Cravic
6254ec93e9 Proper List#toArray array initialization 2020-05-25 12:25:39 +02:00
Felix Cravic
9a7c07af65 Added some FakePlayerController features 2020-05-25 03:17:24 +02:00
Felix Cravic
f8ff01349b Fixed Player#isFlying it is now properly synchronized with the client 2020-05-24 22:27:58 +02:00
Felix Cravic
e26ee1380a Fixed vehicles + added PlayerStartFlyingEvent & PlayerStopFlyingEvent 2020-05-24 22:21:38 +02:00
Felix Cravic
b193c5f12a Lot of comments 2020-05-24 19:59:50 +02:00
Felix Cravic
c2d1a4f70a Fix synchronization issue with metadata + some comments 2020-05-24 19:22:58 +02:00
Felix Cravic
b8f2afa4c3 Changed the packet listener api, allowing for listener override 2020-05-24 17:11:21 +02:00
Felix Cravic
a4b530c1dc WIP vehicle support 2020-05-23 14:04:53 +02:00
Felix Cravic
97bd1ecdb1 Cleanup 2020-05-23 04:20:01 +02:00
Felix Cravic
45d901a0bc Lot of inventory improvements/fixes 2020-05-22 23:19:04 +02:00
Felix Cravic
888c570235 Added enchantments reader/writer + item dropping in creative mode 2020-05-22 18:51:03 +02:00
Felix Cravic
47ca22c3d1 Fixed player item dropping, it does not consume the item anymore when the event is cancelled 2020-05-17 04:41:32 +02:00
Felix Cravic
4a287f82a6 Fixed ArmorEquipEvent calling 2020-05-14 18:59:01 +02:00
Felix Cravic
aeeb9f08a4 Added EntityVelocityEvent + minor refactoring 2020-05-14 18:57:44 +02:00
Felix Cravic
be0311a874 Added PlayerPreEatEvent for more customisation, separate the default eating time and the individual ones. Also a InventoryOpenEvent#setInventory to change the inventory to open 2020-05-12 18:40:04 +02:00
Felix Cravic
4fa1d08fa5 End properly eat animation 2020-05-12 14:19:45 +02:00
Felix Cravic
37add239f8 Custom food animation delay + PlayerEatEvent 2020-05-12 14:12:17 +02:00
jglrxavpok
9d9c158af0 Added event callbacks to Instance, and organized events into packages 2020-05-07 15:46:21 +02:00
TheMode
ca7e220543
Merge pull request #5 from Draycia/master
Replace minecraft-text with kyori-text
2020-05-05 21:06:44 +02:00
jglrxavpok
0627d8d368 Reset fire state + remove now useless debug log 2020-05-05 18:40:58 +02:00
jglrxavpok
365c3edbdf Custom block contact behaviour + fix breaking of 0 hardness blocks not removing the block in survival, fixed players in survival not taking damage. 2020-05-05 15:55:21 +02:00
Draycia
5b97dde21f Merge remote-tracking branch 'upstream/master' 2020-05-03 23:55:44 -07:00
jglrxavpok
05acfdf59f New event for when an item is used on a block 2020-05-03 22:44:38 +02:00
Draycia
ad4193d934 Fix player sendMessage methods 2020-05-03 05:17:32 -07:00
Draycia
5437fa90cc Remove old Chat methods
Note: I'm 100% certain things will break because of theee changes. I'll fix things as I find them broken. 10/10 strategy.
2020-05-03 05:05:43 -07:00
Draycia
83bb14d5a0 Use kyori/text instead of minecraft-text 2020-05-03 04:59:53 -07:00
Felix Cravic
7eee0c788f WIP Enchantments (de)serialization 2020-04-29 20:17:04 +02:00
Felix Cravic
c2af4be2fa Can now define an inventory to open after closing another + added a bunch of inventory type 2020-04-29 17:27:58 +02:00
Felix Cravic
0782ee7fe5 Added the InventoryCloseEvent event 2020-04-29 12:11:13 +02:00
jglrxavpok
2292261de7 Allow for a different visual block to be placed along a custom block 2020-04-29 00:42:18 +02:00
jglrxavpok
365cdf7818 Correct visual ID when overriding in PlayerBlockPlaceEvent 2020-04-29 00:20:20 +02:00
jglrxavpok
263713ab49 Custom block breaking and data creation now both have an instance and a position accessible 2020-04-29 00:12:59 +02:00
jglrxavpok
54111ece6a Convenience method to find horizontal Direction based on yaw, easier block properties usage and PlayerBlockPlaceEvent now references the player placing the block 2020-04-28 21:52:06 +02:00
Felix Cravic
e022881554 Fixed inventory id generation 2020-04-28 18:55:09 +02:00
jglrxavpok
85da9203b1 Custom blocks can block item interaction, prevents blocks being placed when opening containers 2020-04-28 18:12:06 +02:00
Felix Cravic
6d9ac0b35d CustomBlock#getBreakDelay is now optional 2020-04-28 17:58:34 +02:00
Felix Cravic
8050708ecf Changed BlockPosition arg to CustomBlock#createData 2020-04-28 15:25:56 +02:00