Commit Graph

3503 Commits

Author SHA1 Message Date
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
jglrxavpok
9b25f5d95b Allow server to be stopped cleanly 2020-04-28 19:23:02 +02:00
Felix Cravic
98875df389 Small tweaks 2020-04-28 19:22:47 +02:00
Felix Cravic
e022881554 Fixed inventory id generation 2020-04-28 18:55:09 +02:00
Felix Cravic
f5212e3bf6 Merge remote-tracking branch 'origin/master' 2020-04-28 18:16:13 +02:00
Felix Cravic
a4922e60fa Added InventoryData 2020-04-28 18:16:00 +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
b128074c75 Reworked data management 2020-04-28 17:36:17 +02:00
Felix Cravic
08015586a0 Merge remote-tracking branch 'origin/master' 2020-04-28 17:11:35 +02:00
Felix Cravic
60cc562435 Changed DataType class and its implementation 2020-04-28 17:11:12 +02:00
jglrxavpok
b09db32ddc Send effects to players 2020-04-28 16:08:21 +02:00
Felix Cravic
03f4e19db3 Reduce needed map checks for InstanceContainer#setCustomBlock 2020-04-28 15:41:29 +02:00
Felix Cravic
8050708ecf Changed BlockPosition arg to CustomBlock#createData 2020-04-28 15:25:56 +02:00
jglrxavpok
f8f649852b Allow PlayerBlockPlaceEvent callbacks to change the block placed.
Can be used to place custom blocks in replacement of normal ones.
2020-04-28 13:47:41 +02:00
jglrxavpok
4c6d31fac1 Allow custom blocks to initialize their data on placement 2020-04-28 13:23:49 +02:00
Felix Cravic
f00bdc66bf Fixed ItemStackData#decode 2020-04-28 03:06:37 +02:00
Felix Cravic
e43325edd8 Added ItemStack data type 2020-04-28 03:02:29 +02:00
Felix Cravic
0946c8ce11 Moved the ResponseDataConsumer definition to MinecraftServer#start 2020-04-28 02:33:15 +02:00
jglrxavpok
7ea87b56c2 Wrong check in StatusRequestPacket, show actual error when running 2020-04-28 01:39:53 +02:00
Felix Cravic
48c4941813 We can now have multiple listeners 2020-04-28 01:20:11 +02:00
Felix Cravic
38abe55161 Added Block object to the CustomBlock constructor 2020-04-28 01:01:54 +02:00
Felix Cravic
f544f090ae Added SerializableData 2020-04-28 00:24:10 +02:00
Felix Cravic
754821f447 Fixed gamemode command (CommandBuilder update) 2020-04-27 23:36:22 +02:00
Felix Cravic
ce40627a36 Added CustomBlock#getCustomBlockId, it is now defined by the developer and not increased automatically by a counter 2020-04-27 23:13:17 +02:00
Felix Cravic
22511ca052 Added damage application verification 2020-04-27 23:03:21 +02:00
Felix Cravic
bf795c1442 Added EntityDamageEvent 2020-04-27 22:38:11 +02:00
jglrxavpok
bdab9bf71f Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	src/main/java/net/minestom/server/entity/Player.java
2020-04-27 21:16:24 +02:00
jglrxavpok
7e3bc22bc4 Chat messages when player dies and cleaner damage types 2020-04-27 21:12:42 +02:00
jglrxavpok
6b77627d60 Implemented damage types and void below world 2020-04-27 20:33:08 +02:00
Felix Cravic
51811a5909 Added dimension support 2020-04-27 18:46:39 +02:00
Felix Cravic
26debd0d4b Optimization + fixed custom block placement 2020-04-26 20:41:58 +02:00
Felix Cravic
d4cf29c7a7 Less magic values 2020-04-26 19:17:04 +02:00
Felix Cravic
161e229985 Cleanup 2020-04-26 17:03:42 +02:00
Felix Cravic
1639a4947c Amazingly fast block getter 2020-04-26 16:51:00 +02:00
Felix Cravic
005d95e97b WIP chunk storage rework (use an array instead of a map) hope that this is working 2020-04-26 16:08:04 +02:00
Felix Cravic
18019277e6 Update 2020-04-26 06:34:08 +02:00
Felix Cravic
3614c378f3 Optimization + added Recipe#shouldShow check 2020-04-26 04:50:38 +02:00
Felix Cravic
9d0cec23df Making pathfinder maxCheck configurable 2020-04-25 23:58:17 +02:00
Felix Cravic
cbffd37c8e Added aliases support to CommandProcessor 2020-04-25 23:51:45 +02:00
Felix Cravic
5980943344 Finally a homemade pathfinder 2020-04-25 23:06:16 +02:00
Felix Cravic
6f5ff41c57 Optimization + fix non-solid block entity collision 2020-04-25 20:40:08 +02:00
Felix Cravic
d7e9a3a23f Remove useless equipments sync 2020-04-24 18:39:35 +02:00
Felix Cravic
2f6205b577 Added ItemUpdateStateEvent + batch file clean 2020-04-24 17:43:35 +02:00
Felix Cravic
90925b4967 Block/chunk batching should be much faster 2020-04-24 11:33:29 +02:00
Felix Cravic
7daac5e610 Package rename to net.minestom.server 2020-04-24 03:25:58 +02:00
Felix Cravic
5d7f538ab7 WIP block entity 2020-04-24 00:17:40 +02:00
Felix Cravic
6da352f192 Optimization + a data data type (huh) 2020-04-23 23:46:36 +02:00
Felix Cravic
f4aa328849 Fixed a random instance crash 2020-04-23 13:43:31 +02:00
Felix Cravic
4570e7a013 Added ItemStack#getAirItem 2020-04-23 12:30:49 +02:00
Felix Cravic
3f15701256 WIP entity/block collision/gravity 2020-04-23 01:26:45 +02:00
Felix Cravic
69e46274da Block collision improvement 2020-04-22 21:45:15 +02:00
Felix Cravic
51308ce920 Added Block#isLiquid 2020-04-22 20:14:27 +02:00
Felix Cravic
0a30554a5a Fixed EntityCreature walking collision 2020-04-22 19:09:57 +02:00
Felix Cravic
26276af29e Added a packet listener 2020-04-22 18:48:27 +02:00
Felix Cravic
bd8ccd427c Fixed move event + added a bunch of data type 2020-04-22 16:48:55 +02:00
Felix Cravic
01c348349b Added Block#isSolid and fixed player collision 2020-04-22 13:49:52 +02:00
Felix Cravic
ab3aabf6b0 Update 2020-04-22 02:42:58 +02:00
Felix Cravic
7cbb964e21 Added dropping functions + fixes 2020-04-21 15:31:41 +02:00
Felix Cravic
f596a8fa84 Update + fixed animations 2020-04-20 23:43:09 +02:00
Felix Cravic
68d8513e1a Fully functional inventory clicks 2020-04-20 20:57:04 +02:00
Felix Cravic
4c25a61720 Optimization + block collision 2020-04-20 18:46:39 +02:00
Felix Cravic
07a0ba2f54 Update 2020-04-19 14:57:27 +02:00
Felix Cravic
d53cb49648 Update 2020-04-18 18:03:26 +02:00
Felix Cravic
3940927b5e Update 2020-04-18 15:35:37 +02:00
Felix Cravic
406dad1385 Some fixes 2020-04-17 21:34:01 +02:00
Felix Cravic
29c940b372 Inventory click update 2020-04-17 19:24:59 +02:00
Felix Cravic
d7372ce853 Optimization + added stats 2020-04-17 15:58:07 +02:00
Felix Cravic
944ac43b3f Optimization + fixed random tcp crash 2020-04-17 03:44:00 +02:00
Felix Cravic
4af1c0388c Switch to netty (network rewrite) 2020-04-17 01:16:02 +02:00
Felix Cravic
f52e0dd6ba Prepare the switch to netty 2020-04-16 16:40:29 +02:00
Felix Cravic
656ccac26d Update 2020-04-16 14:51:21 +02:00
Felix Cravic
cb194db4c0 Update 2020-04-15 16:35:25 +02:00
Felix Cravic
db9549560c Update + added particles 2020-04-15 13:20:28 +02:00
Felix Cravic
c2580789b9 Update + added benchmark tool 2020-04-13 17:17:21 +02:00
Felix Cravic
126d778221 Added redstone placement 2020-04-12 10:24:25 +02:00
Felix Cravic
a8f48aafe9 Lot of new packets 2020-04-11 17:21:53 +02:00
Felix Cravic
c8ebe32116 Sound & header/footer 2020-04-10 13:39:22 +02:00
Felix Cravic
66572db705 Added sound 2020-04-10 13:18:03 +02:00
Felix Cravic
be36486285 Registry update 2020-04-10 12:45:04 +02:00
Felix Cravic
a2b36f56c0 Added block registry 2020-04-10 10:31:49 +02:00
Felix Cravic
2db7474b68 Update 2020-04-09 14:25:42 +02:00
Felix Cravic
289ee48816 Update 2020-04-08 10:10:05 +02:00
Felix Cravic
35b77e4e8c Update 2020-04-05 17:46:29 +02:00
Felix Cravic
3b06c5b9ef Update 2020-04-05 10:15:21 +02:00
Felix Cravic
4dd3bd607d Update 2020-04-01 13:16:18 +02:00
Felix Cravic
7b11a54d29 Inventory update 2020-03-31 12:37:51 +02:00
Felix Cravic
5c2771c059 Update 2020-03-30 19:48:25 +02:00
Felix Cravic
994494c5de Update 2020-03-29 20:58:30 +02:00
Felix Cravic
212fceb142 Update 2020-03-20 19:50:22 +01:00
Felix Cravic
a4ade2a806 Proper separation 2020-02-17 17:33:53 +01:00
Felix Cravic
0cd6eadd7e Better inventory management & typo 2020-02-16 19:11:36 +01:00
Felix Cravic
b8319217ab Optimization & proper ItemStack reader 2020-02-13 15:14:41 +01:00
Felix Cravic
e9809b20ac Cleaned code & added some packets 2020-02-11 16:48:06 +01:00
Felix Cravic
b1b41afebb 1.15.2 update 2020-02-09 15:34:09 +01:00
TheMode
c66020a196 Bugs fixes & scheduled task API 2019-09-23 19:56:08 +02:00
TheMode
5c0056e183 General optimization 2019-09-21 20:42:27 +02:00
TheMode
d833963414 WIP blocks update 2019-09-15 16:30:38 +02:00
TheMode
972ed294d3 WIP per block data 2019-09-15 13:42:36 +02:00
TheMode
be6cdf8e72 Chunk memory/performance improvement 2019-09-14 19:27:25 +02:00
TheMode
e8aa4bfe9e General optimization 2019-09-14 18:00:18 +02:00
TheMode
0fc6234b72 Added json message & scoreboard API 2019-09-10 06:59:15 +02:00
TheMode
879f9e7c42 Fixes & added data serializer 2019-09-07 11:42:33 +02:00
TheMode
b517c1091e Optimization 2019-09-06 16:05:36 +02:00
TheMode
c23b937c4b Some fixes 2019-09-03 07:36:04 +02:00
TheMode
81c0626e57 Switched to SimpleNet 2019-09-02 06:02:12 +02:00
TheMode
dedc17f42e Update 2019-09-01 06:18:41 +02:00
TheMode
f43bf11e66 Fixed teleportation & improved first chunk loading 2019-08-31 12:10:46 +02:00
TheMode
666f433ae7 Updated packets reader/writer 2019-08-31 07:54:53 +02:00
TheMode
d929730a61 Update 2019-08-30 01:17:46 +02:00
TheMode
932fb6ae2b Update 2019-08-29 02:15:52 +02:00
TheMode
8b95e3881d Added gravity 2019-08-27 20:49:11 +02:00
TheMode
0a732034c2 Update 2019-08-27 05:23:25 +02:00
TheMode
4b1fac6cd4 WIP chunk loading fix 2019-08-26 04:39:58 +02:00
TheMode
b13a888170 Added entity properties & removed unnecessary reflection 2019-08-26 00:29:40 +02:00
TheMode
e0eb35e81e Auto chunk load & death manager 2019-08-25 20:03:43 +02:00
TheMode
fc6f6afccc Shared instances 2019-08-24 21:41:43 +02:00
TheMode
c25c846dce Added velocity & WIP shared instances 2019-08-24 20:34:01 +02:00
TheMode
7a557169bd Chunk Zstd compression 2019-08-24 01:05:52 +02:00
TheMode
b933a83c31 Basic chunk serializer & reworked chunk multi-threading 2019-08-23 23:55:09 +02:00
TheMode
d5d3dab6c7 Reworked packet writer 2019-08-23 15:37:38 +02:00
TheMode
c407e384ab Update 2019-08-22 14:52:32 +02:00
TheMode
8ddfdbb42a Cleaned and optimized code 2019-08-21 16:50:52 +02:00
TheMode
9d8e4e7ea2 Multiplayer synchronization 2019-08-20 22:40:57 +02:00
TheMode
729d82abd4 Rewrite of packets listener and added callbacks 2019-08-20 17:41:07 +02:00
TheMode
bdde4af581 Update 2019-08-19 17:04:19 +02:00
TheMode
4263a3965b Chunk memory optimization 2019-08-19 00:48:49 +02:00
TheMode
0d40be1552 custom block with custom hardness 2019-08-18 23:52:11 +02:00
TheMode
57def5aaac Update 2019-08-18 20:38:09 +02:00
TheMode
2da2823cbd Added double click and shift-click inventory action 2019-08-14 15:54:37 +02:00
TheMode
60f5768011 Inventory click listener 2019-08-14 06:50:03 +02:00
TheMode
e2e7d67013 Enhanced inventory creation & listener 2019-08-13 17:52:09 +02:00
TheMode
349de8773f Added BlockBatch 2019-08-12 13:27:24 +02:00
TheMode
2e626f785e Improved thread safety over entities update 2019-08-12 08:59:15 +02:00
TheMode
e0172022b2 Inventory and block breaking/placing 2019-08-12 08:30:59 +02:00
TheMode
3b6b5676ed Improved thread safety 2019-08-11 13:57:23 +02:00
TheMode
87345f70ab Prevent from going on unloaded chunks 2019-08-11 09:33:27 +02:00
TheMode
c8ee6858bc Merge branch 'master' of https://github.com/TheMode/Minestom 2019-08-11 08:57:30 +02:00
TheMode
2afb170ff0 Fixed chunk 2019-08-11 08:57:23 +02:00
Adamaq01
25621dede6 Added UpdateViewPositionPacket 2019-08-11 07:56:30 +01:00
TheMode
d1967186e5 Basic instances implementation 2019-08-11 07:42:56 +02:00
Adamaq01
383bb634f4 Modified ConnectionManager#removePlayer 2019-08-11 02:45:09 +01:00
Adamaq01
c8b5e13175 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/main/java/fr/themode/minestom/entity/Player.java
#	src/main/java/fr/themode/minestom/net/ConnectionManager.java
#	src/main/java/fr/themode/minestom/net/packet/client/login/LoginStartPacket.java
2019-08-11 02:42:13 +01:00
Adamaq01
eb532a1856 Implemented some more packets, basic multiplayer functionalities such as a basic chat system, seeing other players etc... 2019-08-11 02:40:34 +01:00
TheMode
7271636aa8 Updated tick manager & players update 2019-08-11 00:36:20 +02:00
TheMode
cc203b1a1a Fixed thread safety 2019-08-10 08:59:33 +02:00
TheMode
d4bf3bd2ec WIP entity implementation 2019-08-10 08:44:35 +02:00
Adamaq01
5130931b29 Implemented some more packets 2019-08-10 04:16:16 +01:00
Adamaq01
7f83aacdf8 Implemented some packets + the keepalive system so the client doesn't timeout after 20 seconds 2019-08-10 03:47:19 +01:00
TheMode
076f4d558b Added chunks & some location packets 2019-08-10 04:16:01 +02:00
TheMode
81a880d3cd Update 2019-08-09 07:24:26 +02:00
TheMode
31bf307ae3 WIP chunk packet 2019-08-07 03:42:48 +02:00
TheMode
9380770492 Initial commit 2019-08-03 15:25:24 +02:00