994 Commits

Author SHA1 Message Date
Dylan K. Taylor
adabfe78df no-op for PlayerAction START_SLEEPING
this is pretty pointless tbh
2017-11-17 13:30:25 +00:00
Dylan K. Taylor
0fdceb6736 Remove useless sendNextChunk() condition
if the load queue is empty, it makes no difference whether we're spawned or not.
2017-11-17 13:24:31 +00:00
Dylan K. Taylor
ffa9a91a95 Remove dead craftingType field from Player 2017-11-17 12:57:49 +00:00
Dylan K. Taylor
78bb951942 Remove redundant survival check for exhaustion 2017-11-17 12:55:48 +00:00
Dylan K. Taylor
7508524b7b Arrange login sequence code in a bit more chronological order 2017-11-17 12:47:57 +00:00
Dylan K. Taylor
db4a8be240 Remove duplicated duplicated player code in Player 2017-11-17 12:39:12 +00:00
Dylan K. Taylor
3fe9963c84 remove redundant arguments for Entity methods 2017-11-17 12:19:36 +00:00
Dylan K. Taylor
460d540dbc Further cleanup on ListTag and CompoundTag usage 2017-11-17 11:43:32 +00:00
Dylan K. Taylor
3a16985d45 Cleaned up item & arrow pickup code 2017-11-15 12:14:42 +00:00
Oreo Oreoniv
bbbed22467 Save player data after PlayerQuitEvent (#1544), close #1543, close #1482
This reverses a bad solution for #1482 for level unloading on PlayerQuitEvent which caused more widespread issues with plugins doing other, more common things on player quit which directly affected the save data.
2017-11-15 11:16:02 +00:00
Dylan K. Taylor
aa399a1109
migrate to new CompoundTag API (#1515) 2017-11-10 15:38:21 +00:00
Dylan K. Taylor
0e64c3dad8 fixed misusing isAlive(), close #1523 2017-11-07 09:32:38 +00:00
Dylan K. Taylor
99f06c6c18 Fixed player hit animations 2017-11-06 14:41:48 +00:00
Dylan K. Taylor
fd0b07a0aa Added API to allow getting player latency 2017-11-06 14:33:27 +00:00
Dylan K. Taylor
20d2ef9d38 Fixed players respawning in the wrong world
add() returns a Vector3 instance, not a Position instance... argh
2017-11-04 22:04:33 +00:00
Dylan K. Taylor
eab7b93483
Fixed misuse of kill() and close() when deleting entities (#1490) 2017-11-04 19:30:48 +00:00
Dylan K. Taylor
a66a757f56 Cleaned up EntityEventPacket handling 2017-11-04 18:31:35 +00:00
Dylan K. Taylor
ddb7fd12f2 removed obsolete EntityEvent broadcast 2017-11-04 18:28:29 +00:00
Dylan K. Taylor
6ccb494f8d added API to get player language code
sadly this isn't particularly useful without something like the intl
extension to translate the language codes to ISO-632-1 codes like the
ones PocketMine-MP uses. However, this will do for now.
2017-11-04 15:50:00 +00:00
Dylan K. Taylor
6ebe3bfbea use Player->sendDataPacket() with immediate parameter 2017-11-03 19:00:08 +00:00
Dylan K. Taylor
4533df17cf make username validation on login less stupid
why are we checking if the username is valid AFTER we already tried to set it? it might not even be a string
2017-11-03 18:49:28 +00:00
Dylan K. Taylor
451f5d0cd7 Fixed block-pick on crops giving the crop block itself 2017-11-03 12:17:38 +00:00
Dylan K. Taylor
42ed03fd02 Merge branch 'left-click-spawn-prot' 2017-11-03 11:59:26 +00:00
Dylan K. Taylor
91c256f1a9 Added Level->getTileAt() 2017-10-30 13:36:42 +00:00
Dylan K. Taylor
7e490ccdf2 broadcast player skin to all online players by default
otherwise we could end up with undesirable bugs like players having the wrong skin when travelling from another part of the world... the skin has to be sent to everyone to update the player list
2017-10-29 12:19:47 +00:00
Dylan K. Taylor
991d321928 improved geometry debloating, also apply on skin changes 2017-10-29 12:14:16 +00:00
Dylan K. Taylor
600d80331a Accept null for targets in Human->sendSkin()
For humans, it'll send to all viewers. For players, it'll send to all viewers, and the player itself.
2017-10-29 11:18:34 +00:00
Dylan K. Taylor
c55bc2d7e9 added use-item click vector to PlayerInteractEvent
now go and make some touchscreens with maps!
2017-10-27 19:00:17 +01:00
Dylan K. Taylor
52d0ad8a61 be yet more tolerant for on-ground checks on players 2017-10-26 23:23:11 +01:00
Dylan K. Taylor
b6264d188e Change Server->getConfigBoolean() to getConfigBool()
to be consistent, deprecated the original
2017-10-25 16:30:39 +01:00
Dylan K. Taylor
a82efc44aa wtf 2017-10-24 13:29:28 +01:00
Dylan K. Taylor
6daa0135d5 Cancel PlayerInteractEvent automatically on left-click block when spawn protection is triggered 2017-10-24 13:11:19 +01:00
Dylan K. Taylor
0df3b00de4 Fixed incompatible protocol message showing an empty pair of brackets when protocol is null
this happens if an exception occurs while or before trying to read the protocol version
2017-10-23 19:44:19 +01:00
Dylan K. Taylor
3765511317 rename WritableBook->swapPage() to swapPages() 2017-10-23 17:55:01 +01:00
Frago9876543210
e055ce9526 Use translation for flight kick message (#1489) 2017-10-23 13:18:57 +01:00
Dylan K. Taylor
18e4e5364f Fixed getBlock() performance degradation caused by 781de3efabcd526281fd1adc8ce881d408471563, added Level->getBlockAt() to avoid creating vectors everywhere 2017-10-20 13:22:49 +01:00
Dylan K. Taylor
a245615531 fixed non-living entities lingering for a second after being kill()ed
only living entities should have death animation time
2017-10-19 20:51:50 +01:00
Dylan K. Taylor
11cc20972f extended death animation time 2017-10-19 13:39:51 +01:00
Dylan K. Taylor
584810780a Moved projectile-related classes to their own namespace 2017-10-19 12:27:44 +01:00
Dylan K. Taylor
ece37d1e19 Added more methods to PlayerIllegalMoveEvent 2017-10-17 16:14:41 +01:00
Takuya Sawada
cccaade00c make Player#unloadChunk() method protected 2017-10-17 14:22:57 +01:00
Dylan K. Taylor
d8c90be5b8 Make on-ground checking less fussy 2017-10-13 13:19:20 +01:00
Dylan K. Taylor
7b5df10b6a Reset position properly when reverting movement 2017-10-12 20:33:26 +01:00
Dylan K. Taylor
be2d134994 Added API to allow flagging an entity not to be saved to disk when its chunk is saved (#1452) 2017-10-11 16:09:08 +01:00
Dylan K. Taylor
287f08cbd1 Changed confusing MovePlayerPacket field name to be consistent with other packets 2017-10-10 21:56:17 +01:00
Dylan K. Taylor
9598b8cee4 Use API methods instead of directly setting properties 2017-10-09 11:38:52 +01:00
Dylan K. Taylor
2601e35990 Cleaned up and added API for entity air supply, fixed oxygen being used in creative/spectator
this commit also includes respiration checks because it's cherry-picked
from api3/blocks, but respiration won't work until it's registered.
2017-10-09 11:28:40 +01:00
Dylan K. Taylor
bdfd9c95dd Minor cleanup to attack handler 2017-10-09 11:02:00 +01:00
Dylan K. Taylor
cd44551d64 Cleaned up checks for handling inventory transactions 2017-10-09 10:57:28 +01:00
Dylan K. Taylor
66a3354b31 Fixed not respawning adjacent tiles correctly when cancelling block break events 2017-10-09 10:30:48 +01:00