Commit Graph

491 Commits

Author SHA1 Message Date
TheSnoozer 0c64623696 fix wrong import; note we don't need to consider legacy import inside the packets module since this packet just got added before the structure changed 2017-08-09 16:33:41 +01:00
TheSnoozer ab71aeeb7d Revert "deal with faulty compression's"
This reverts commit 357340e6dc.
2017-08-09 16:33:41 +01:00
TheSnoozer 346b3081ec fix broken tests 2017-08-09 16:33:41 +01:00
TheSnoozer 4a508f935b use namedtuple for position type and use it as subclass for ClientExplosion.Record 2017-08-09 16:33:41 +01:00
TheSnoozer 8552c6efe5 regorganize packet structure as outlined in https://github.com/ammaraskar/pyCraft/pull/68 2017-08-09 16:33:41 +01:00
TheSnoozer f8781c19c8 The packet IDs of Entity Velocity (0x3E), Update Health (0x41), Combat Event (0x2D), and Client Status (0x03) changed in [protocol 336 (snapshot 17w31a)](http://wiki.vg/index.php?title=Pre-release_protocol&oldid=13265) 2017-08-09 16:33:41 +01:00
TheSnoozer 6137436d03 feedback: add write method 2017-08-09 16:33:41 +01:00
TheSnoozer 5349ff2730 feedback: we can use enum since subclass packets do no vary depending on the type id 2017-08-09 16:33:41 +01:00
TheSnoozer d8fc742862 feedback: pass x, y, z as arguments since types classes are supposed to abstract away the python types and sending them over the network and calling an encode method before sending breaks that a little. 2017-08-09 16:33:41 +01:00
TheSnoozer 9ab2e1ae69 fix tox -e pylint-errors 2017-08-09 16:33:41 +01:00
TheSnoozer fdb5a0bb72 fix tox -e flake 2017-08-09 16:33:41 +01:00
TheSnoozer cc466bb0ea fixed an issue with mc 1.8.8 where velocity is not being sent and self.data is negative 2017-08-09 16:33:41 +01:00
TheSnoozer 6fbf75203c add Multi Block Change (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer 93227e26fa add Block Change Packet (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer ca30ff2e74 add spawn object (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer 3ad5d1abd5 add Explosion Packet (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer 81f2ae4070 add Combat Event Packet (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer fecb1d10e9 add Client Status Packet and allow client to respawn when issuing '/respawn' 2017-08-09 16:33:41 +01:00
TheSnoozer 0dc333237b add Update Health Packet (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer 6f52ceac0d add Entity Velocity Packet (client bound) 2017-08-09 16:33:41 +01:00
TheSnoozer 9caff502ca add ClientSpawnPlayer packet 2017-08-09 16:33:41 +01:00
TheSnoozer 42ede3f83d deal with faulty compression's 2017-08-09 16:33:41 +01:00
joo 89a1bfb796 Update README.rst 2017-08-04 16:15:55 +01:00
joo 9e7e75f9a7 Increment package version to 0.5.0. 2017-08-03 19:08:36 +01:00
joo 33cd42848e Add version data for Minecraft 1.12.1 (protocol 338). 2017-08-03 18:48:36 +01:00
joo 5aa2d3df59 Add support for Minecraft 17w31a and 1.12.1-pre1 (protocols 336 and 337). 2017-08-03 18:31:00 +01:00
joo cf464d2da2 Add compression tests to test_connection. 2017-08-03 13:04:47 +01:00
joo cab8d56746 Revert "Remove unnecessary fileno method from FileObjectWrapper"
This partially addresses issue #65.

This reverts commit c87d7bc6f3.
2017-07-18 13:39:56 +01:00
Ammar Askar f450ef5ff4
Add test for reactors 2017-07-16 20:02:50 -07:00
Ammar Askar d686b6487f
Add testing for MapPacket 2017-07-16 15:18:09 -07:00
Ammar Askar 5b261b840e
Refactor out the action of writing out the packet header.
This allows subclasses of Packet to just call the new
method instead of having to duplicate the header writing
and compression code.
2017-07-16 13:40:00 -07:00
Ammar Askar 4ce8c7f6ca
Fix flake errors in test file 2017-07-16 02:53:52 -07:00
Ammar Askar 8859e0f7bf
Add test coverage for PlayerList packet 2017-07-16 02:42:16 -07:00
Ammar Askar da967a4e56
Minor coverage improvement for packets 2017-07-16 01:20:08 -07:00
Ammar Askar c87d7bc6f3
Remove unnecessary fileno method from FileObjectWrapper 2017-07-16 01:03:47 -07:00
Ammar Askar d8226d266f
Improve tests of types.py 2017-07-16 01:00:14 -07:00
Ammar Askar ca4fd6680e
Connect to localhost instead of the socket's binding address.
The bound address is 0.0.0.0 which usually implies all
available interfaces, which makes sense when listening
for something. However, when connecting to an address,
a specific address needs to be targeted. Hopefully, any
properly configured computer should have `localhost`
pointing to its loopback interface. Fixes #64
2017-07-16 00:19:30 -07:00
joo 2cf1d3cb03 Fix incorrect packet ID for PlayerPositionAndLookPacket.
Fix: PlayerPositionAndLookPacket.apply() does not correctly restrict angles.
2017-07-03 11:32:52 +01:00
joo 991f0b3da6 Increment package version to 0.4.0. 2017-06-09 09:25:56 +01:00
joo 5b5f36048c Update README.rst. 2017-06-08 06:52:46 +01:00
joo ece5fd903d Fix incorrect packet ID for MapPacket. 2017-06-08 06:10:40 +01:00
joo 8d1dcec3e2 Add version data for Minecraft 1.12 (protocol 335). 2017-06-07 22:06:01 +01:00
joo bcf22b8312 Add version data for Minecraft pre-release 1.12-pre7 (protocol 334). 2017-06-02 21:32:11 +01:00
joo 0cc96f7dc5 Add version data for Minecraft pre-release 1.12-pre6 (protocol 333). 2017-05-29 17:31:04 +01:00
joo b7290cf327 Add support for Minecraft pre-release 1.12-pre5 (protocol 332). 2017-05-20 05:27:23 +01:00
joo a1570bd3a9 Add version data for Minecraft pre-releases 1.12-pre3 and 1.12-pre4 (protocols 330 and 331). 2017-05-19 12:22:42 +01:00
joo 3f4571d9e9 Update testing configuration:
(1) Add py35 job to Travis.
(2) To address issue #57: run tests that connect to Mojang's auth server exactly once, during the py35 job.
(3) Measure coverage exactly once, during the py35 job; always submit the result to coveralls.
(4) Fix miscellaneous errors in generate_travis_yml.py.
2017-05-19 11:58:14 +01:00
joo 19cdf80952 Require cryptography>=1.5 -- see issue #60. 2017-05-19 10:43:51 +01:00
joo 028ef3f802 Add version data for Minecraft pre-release 1.12-pre2 (protocol 329). 2017-05-12 00:52:31 +01:00
joo 0d42c18211 Add version data for Minecraft pre-release 1.12-pre1 (protocol 328). 2017-05-11 10:16:11 +01:00