LeoDog896
9e23085c34
Refactor and remove classes
2021-06-16 09:17:13 -04:00
TheMode
679030e75b
Add BlockEvent
2021-06-14 15:30:05 +02:00
TheMode
a70fe174bf
Fix rebase
2021-06-14 15:26:16 +02:00
TheMode
63004cf4ba
Merge branch 'master' into new-block-api
...
# Conflicts:
# src/main/java/net/minestom/server/event/player/PlayerBlockBreakEvent.java
# src/main/java/net/minestom/server/event/player/PlayerBlockInteractEvent.java
# src/main/java/net/minestom/server/event/player/PlayerBlockPlaceEvent.java
# src/main/java/net/minestom/server/event/player/PlayerStartDiggingEvent.java
# src/main/java/net/minestom/server/instance/Instance.java
# src/main/java/net/minestom/server/instance/InstanceContainer.java
# src/main/java/net/minestom/server/listener/BlockPlacementListener.java
# src/main/java/net/minestom/server/listener/PlayerDiggingListener.java
# src/test/java/demo/PlayerInit.java
2021-06-14 15:22:54 +02:00
TheMode
6315bd5c61
Add try-catch for EventNode condition
2021-06-14 14:42:10 +02:00
TheMode
f2bf27c86e
Fix rebase
2021-06-14 00:18:53 +02:00
TheMode
eadb32eba3
Merge branch 'master' into event-api
2021-06-14 00:17:42 +02:00
TheMode
911c983957
Merge branch 'master' into event-api
...
# Conflicts:
# src/main/java/net/minestom/server/entity/Player.java
# src/main/java/net/minestom/server/event/player/UpdateTagListEvent.java
# src/main/java/net/minestom/server/instance/Chunk.java
2021-06-14 00:11:41 +02:00
thiccaxe
7641b8a75d
Updated Server List Ping
...
Added playersHidden field to ResponseData; shows "???" in Vanilla.
Added event for ping/pong packet
2021-06-11 13:54:52 -07:00
TheMode
457ef9df17
Merge branch 'master' into new-block-api
...
# Conflicts:
# src/autogenerated/java/net/minestom/server/instance/block/Block.java
# src/main/java/net/minestom/server/MinecraftServer.java
# src/main/java/net/minestom/server/entity/Player.java
# src/main/java/net/minestom/server/entity/pathfinding/PFBlockDescription.java
# src/main/java/net/minestom/server/entity/pathfinding/PFBlockObject.java
# src/main/java/net/minestom/server/instance/Chunk.java
# src/main/java/net/minestom/server/instance/palette/PaletteStorage.java
# src/main/java/net/minestom/server/network/packet/server/play/ChunkDataPacket.java
# src/main/java/net/minestom/server/network/packet/server/play/TagsPacket.java
2021-06-11 16:31:01 +02:00
TheMode
265ae83b4d
Fix tags packet
2021-06-11 16:00:14 +02:00
TheMode
c0e956bef5
Fix javadoc
2021-06-10 14:41:44 +02:00
TheMode
ea05a6f784
Add trait to ItemDropEvent
2021-06-10 11:58:48 +02:00
TheMode
74d323126f
Add traits to EntityEquipEvent
2021-06-10 11:57:13 +02:00
TheMode
3b80335134
Avoid foreach for sensitive code
2021-06-10 11:53:50 +02:00
TheMode
13350d0ab8
Fix ignoreCancelled option
2021-06-09 22:01:46 +02:00
TheMode
603e3293a6
Catch event exceptions
2021-06-09 14:05:37 +02:00
TheMode
0bd4a68290
Added ignoreCancelled option for EventListener
2021-06-09 08:46:19 +02:00
TheMode
12a215349d
Lazily add eventhandler node to root for backward compatibility
2021-06-09 08:31:06 +02:00
TheMode
d800c94dcc
Remove EventHandler mention in Event
2021-06-09 08:25:56 +02:00
TheMode
68ba4b232d
Remove EventHandler mention in Event
2021-06-09 08:25:32 +02:00
TheMode
16d8597195
Make CancellableEvent a trait
2021-06-09 07:11:01 +02:00
TheMode
dd44b752c3
Remove addListener0
2021-06-09 06:57:08 +02:00
TheMode
fc70d4528e
formatting
2021-06-09 06:52:00 +02:00
Matt Worzala
d38c0368fc
add event api javadocs v1
2021-06-08 16:58:48 -04:00
TheMode
3fae5ed35f
Fix checks
2021-06-08 17:18:00 +02:00
TheMode
34cde8390a
Add more node children manipulation methods
2021-06-08 17:09:24 +02:00
TheMode
eb3cdd1495
Added EventNode#findChildren
2021-06-08 16:55:21 +02:00
TheMode
1e90d67511
Formatting
2021-06-08 14:20:48 +02:00
TheMode
5469190e64
Add annotations
2021-06-08 14:15:30 +02:00
TheMode
9705915e21
Add support for predicate expiration
2021-06-08 14:07:27 +02:00
TheMode
f47159d131
Add EventNode#setPriority
2021-06-08 13:47:10 +02:00
TheMode
c930eed412
propagate listener changes to parents
2021-06-06 07:55:30 +02:00
TheMode
9594d848bc
Use for-each loops during event calling
2021-06-06 07:34:33 +02:00
TheMode
180a3fa898
Improve event calling performance, reduce memory footprint
2021-06-06 07:28:07 +02:00
TheMode
3dfd4678d5
Add PlayerPacketEvent
2021-06-05 01:04:51 +02:00
TheMode
25f1183a1b
Remove EventNode#map
2021-06-04 21:12:27 +02:00
TheMode
2872a25325
Improve redirection performance
2021-06-04 10:07:46 +02:00
TheMode
b979c9b624
Temporary fix for mapped object
2021-06-04 09:50:26 +02:00
TheMode
030e5b6857
Create #addListener0 to ensure proper stacktrace when adding a listener
2021-06-04 07:45:15 +02:00
TheMode
d9b26f84d3
Keep using GlobalEventHandler
2021-06-04 04:54:07 +02:00
TheMode
a585e4e45b
Improve event calling performance
2021-06-04 04:39:45 +02:00
TheMode
80c6bb3fa5
Deprecate GlobalEventHandler
2021-06-04 04:24:25 +02:00
TheMode
f39fc8c81e
Fast exit when a node as no child
2021-06-04 04:14:41 +02:00
TheMode
c4d521cde5
All node should have a name
2021-06-04 04:10:13 +02:00
TheMode
d81df24132
Support old EventHandler API
2021-06-04 04:05:57 +02:00
TheMode
8b255651ab
Call events using EventDispatcher
2021-06-04 03:48:51 +02:00
TheMode
5d3bae3d7f
Make some events implement ItemEvent
2021-06-04 00:54:36 +02:00
TheMode
f1ddedfb44
Add EventNode#getParent
2021-06-04 00:30:48 +02:00
TheMode
94e315e3b2
Rename predicate
to type
2021-06-03 21:59:27 +02:00
TheMode
5aa8d95ed9
Remove debug print
2021-06-03 21:54:42 +02:00
TheMode
734e6f5bcb
Remove predicate
from the EventNode factory methods
2021-06-03 21:54:07 +02:00
TheMode
a15717ae49
Remove unnecessary generic
2021-06-03 21:41:28 +02:00
TheMode
9177e94d1b
Allow node predicate based on tag
2021-06-03 21:39:38 +02:00
TheMode
27bdbe7275
Rename removeMap to unmap
2021-06-03 20:59:05 +02:00
TheMode
81e2072bc5
Add shortcut to add listener
2021-06-03 20:46:11 +02:00
TheMode
e5031ff37e
Prevent a node from having its parent as child
2021-06-03 09:47:48 +02:00
TheMode
e300d3ec57
Simplify EventNode#map
2021-06-03 05:59:13 +02:00
TheMode
8ec33bb6c8
EventNode methods return self
2021-06-03 04:41:08 +02:00
TheMode
d5cce11562
Remove second generic from EventNode
2021-06-03 04:26:47 +02:00
TheMode
5fa750fde3
Remove EventNodeConditional.java
2021-06-03 03:56:05 +02:00
TheMode
493c397efe
Remove EventNodeList.java
2021-06-03 03:39:37 +02:00
TheMode
3727f3f954
Use a global lock when modifying tree data
2021-06-03 03:37:41 +02:00
TheMode
65c303766f
Make EventNode a class, fast exist when no children can listen to an event
2021-06-03 03:27:30 +02:00
TheMode
f8eb211d0d
Add node mapping support, for per-object listeners
2021-06-03 00:48:37 +02:00
TheMode
8f3b52a8b9
Inline method
2021-06-02 23:04:35 +02:00
TheMode
1a9bdd93d7
Remove unused parameter
2021-06-02 22:58:43 +02:00
TheMode
5b42ce4a52
Reuse EventFilter code
2021-06-02 22:55:24 +02:00
TheMode
b1714641e8
Use Object for EventFilter#ALL
2021-06-02 22:51:11 +02:00
TheMode
d58cd3b578
Add remaining filters
2021-06-02 22:47:45 +02:00
TheMode
6cbc31b114
Allow filtering on more than just EventHandler
2021-06-02 21:18:18 +02:00
TheMode
2977bb7b66
Make EventListener an interface
2021-06-02 21:14:48 +02:00
TheMode
4f127b2e0e
Separate conditional event from conditional handler
2021-06-02 21:08:10 +02:00
TheMode
c95c8430b6
Force the use of EventListener
2021-06-02 20:56:47 +02:00
TheMode
ee99c94509
Remove unnecessary generic
2021-06-02 20:53:02 +02:00
TheMode
15ae5fd3c1
Force the use of EventFilter
2021-06-02 20:33:35 +02:00
TheMode
e670a0a40d
Remove unnecessary method
2021-06-02 20:25:37 +02:00
TheMode
7aee717196
Add EventFilter
2021-06-02 20:23:50 +02:00
TheMode
aa5a182788
Add EventNode#removeChild
2021-06-02 19:52:05 +02:00
TheMode
11bdcdf92a
Add EventNode#removeListener
2021-06-02 19:50:23 +02:00
TheMode
8fa4c22d1f
Rename EventNode#create methods
2021-06-02 19:44:44 +02:00
TheMode
f6fe41cfe9
Return proper type
2021-06-02 19:28:02 +02:00
TheMode
0d6dde3ff5
Make EventNode an interface
2021-06-02 19:17:08 +02:00
TheMode
a835a479ae
Added EventNode#map
2021-06-02 18:13:17 +02:00
TheMode
cd30a97cbb
Make PlayerEvent extends EntityEvent
2021-06-02 18:04:08 +02:00
TheMode
305aa3e8d9
Add support for listener expiration count
2021-06-02 12:12:14 +02:00
TheMode
bdfa164695
Do not reuse node objects
2021-06-02 11:29:16 +02:00
TheMode
12c620df7a
Fix conditional factory not actually having a condition
2021-06-02 11:26:36 +02:00
TheMode
5d1b742934
Move type check inside EventNode
2021-06-02 11:18:26 +02:00
TheMode
bc2a075b60
Fix event calling
2021-06-02 11:08:48 +02:00
TheMode
c3f52031e6
Added EventNodeConditional
2021-06-02 10:52:20 +02:00
TheMode
4f7192b6c7
Can now call an event from anywhere in the tree
2021-06-02 10:34:01 +02:00
TheMode
f4db18ea6c
Start EventNode implementation
2021-06-02 10:19:23 +02:00
TheMode
5474116e7a
Add EventNode#addChild
2021-06-02 09:50:18 +02:00
TheMode
80b2dd2747
Make InventoryEvent an interface
2021-06-02 09:25:08 +02:00
TheMode
096e1de9b5
Delete EventGroup.java, make InstanceEvent an interface
2021-06-02 09:21:13 +02:00
TheMode
0b6c7b0b0e
Delete EventTrait
2021-06-02 09:06:04 +02:00
TheMode
52547c5bd6
Rename create method
2021-06-02 08:59:46 +02:00
TheMode
f88a2f3883
Dont allow every event
2021-06-02 08:24:02 +02:00
TheMode
77f74bb7dc
Introduce EventNode
2021-06-02 08:17:21 +02:00
TheMode
2d8474282b
Made Event an interface
2021-06-02 08:17:03 +02:00
TheMode
9c87b4d54f
Add EventTrait interface
2021-06-02 07:15:28 +02:00
TheMode
02fe4c65a2
Use traits for events
2021-06-02 07:09:15 +02:00
TheMode
047d4a92ac
Merge branch 'master' into event-api
2021-06-02 06:41:42 +02:00
TheMode
36d2834b18
Remove unnecessary block manager reference
2021-05-25 04:44:11 +02:00
TheMode
47c7e36b1d
Fix remaining errors
2021-05-24 23:39:22 +02:00
TheMode
b15422f406
More error fix
2021-05-24 22:00:18 +02:00
TheMode
86f7fa7e27
Fix more errors
2021-05-24 21:39:30 +02:00
TheMode
c4b3e40225
Merge pull request #282 from Bloepiloepi/equipment-improvements
...
Equipment improvements
2021-05-16 11:55:04 +02:00
TheMode
d31fe2d88e
Merge pull request #229 from Project-Cepi/better-catching
...
Better catching for events/commands
2021-05-15 22:51:20 +02:00
R0bbyYT
cd988f1271
Reset flying with elytra when the player is on the ground
2021-05-14 19:02:22 +02:00
R0bbyYT
34d428be10
Start with the elytra implementation
2021-05-14 18:35:09 +02:00
TheMode
36942708bb
Introduce EventGroup
2021-05-13 09:11:02 +02:00
Arne Dalhuisen
00278881ee
Revert "Made EntityEquipEvent cancellable"
...
This reverts commit d72fb72e
2021-05-11 20:11:56 +02:00
Arne Dalhuisen
d72fb72e74
Made EntityEquipEvent cancellable
2021-05-11 17:05:16 +02:00
Arne Dalhuisen
ed010ff110
Renamed armorItem to equippedItem in EntityEquipEvent
2021-05-11 14:48:52 +02:00
Arne Dalhuisen
77ef5f7d42
Made EntityEquipEvent, replacing ArmorEquipEvent
2021-05-11 14:45:14 +02:00
TheMode
920a36399f
Merge branch 'master' into event-api
2021-05-11 04:53:03 +02:00
TheMode
3cb7cdaea8
Create EventListener class
2021-05-11 04:52:57 +02:00
Kieran Wallbanks
42933e58b0
Minor formatting and javadoc changes
2021-05-05 16:18:11 +01:00
Kieran Wallbanks
ec5ecb49bf
Update javadoc
2021-05-05 16:18:11 +01:00
Kieran Wallbanks
01fe452783
Implement OpenToLAN system
2021-05-05 16:18:11 +01:00
Kieran Wallbanks
a15e3aef44
Make legacy server pings use the ServerListPingEvent
2021-05-05 16:18:11 +01:00
TheMode
4012b6d0bd
Use a predicate instead of boolean function
2021-05-04 23:26:51 +02:00
TheMode
e45c60c225
Initial revamped event listening API
2021-05-04 00:46:18 +02:00
TheMode
b066b6029a
Merge pull request #223 from thiccaxe/master
...
Add events for STATUS packets.
2021-04-15 07:10:32 +02:00
TheMode
6ba336ee73
Added hand inside eat events
2021-04-13 22:59:40 +02:00
TheMode
8e9d7098e5
Allow custom transaction type, simplify inventory superclasses
2021-04-12 00:33:27 +02:00
thiccaxe
c451d46ce0
document ServerListPingEvent
2021-04-11 10:30:47 -07: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
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
4c495f401d
Code cleanup
2021-04-07 18:35:19 +02:00
LeoDog896
5e4af20992
And handle event exceptions
2021-04-06 22:29:24 -04:00
TheMode
2606f2b291
Added PlayerChatEvent#getDefaultChatFormat
2021-04-07 02:47:19 +02:00
thiccaxe
159ff3f646
Remove reprecated code
...
Removed deprecated code,
Added missing code,
Optimized imports.
2021-04-05 09:57:18 -07:00
thiccaxe
02982c0ee2
Shortcut methods in StatusRequestEvent
2021-04-04 18:52:55 -07:00
thiccaxe
7c0fcadd4f
Add HandshakeEvent
2021-04-04 16:26:58 -07:00
thiccaxe
cf4a8756ef
StatusRequestEvent
...
Added basic event
notes:
- minestom will only accept the 1.16.5 protocol version, as of now there is no way to get the protocol version from the event. Assume 1.16.5
- there is also no way to currently get the address the client used to ping the server, as that is sent in another packet and minestom does not currently pass that data through.
- favicon appears to not be working
2021-04-04 15:43:19 -07:00
Kieran Wallbanks
522367dd78
Begin removing deprecated usages
2021-03-26 17:34:38 +00:00
themode
d6683932c8
Added PickupItemEvent#getItemEntity
2021-03-12 20:59:47 +01:00
TheMode
29a8542d3e
Merge pull request #129 from Minestom/improve-extension-system
...
Improve extension system
2021-03-02 18:22:21 +01:00
Konstantin Shandurenko
de15c4b6c5
Rewriting projectiles
2021-03-01 12:59:16 +03:00
Kieran Wallbanks
a3f388a88b
Add events for player sneaking and sprinting changes
2021-02-22 16:36:40 +00:00
themode
549eb6b6e1
Fix javadoc
2021-02-22 14:02:33 +01:00
Konstantin Shandurenko
dbd0e472c2
Added power param for projectiles shooting
2021-02-22 15:54:35 +03:00
Konstantin Shandurenko
3a251934ec
Projectiles shooting
2021-02-22 09:45:19 +03:00
jglrxavpok
ee158c0dea
Use Nullable string instead of Optional in MinestomRootClassLoader#findExtensionObjectOwner
2021-02-04 11:57:43 +01:00