# HG changeset patch # User Steve Losh # Date 1308865288 14400 # Node ID 493a95fc89251239174c3bab03d5fa261c8d4139 # Parent 8747ed0f715f6dfcb562c8e7d6be9c1679e90021 Moar. diff -r 8747ed0f715f -r 493a95fc8925 src/clojurecraft/core.clj --- a/src/clojurecraft/core.clj Thu Jun 23 17:32:19 2011 -0400 +++ b/src/clojurecraft/core.clj Thu Jun 23 17:41:28 2011 -0400 @@ -28,6 +28,8 @@ 0x13 :entityaction 0x14 :namedentityspawn 0x15 :pickupspawn + 0x16 :collectitem + 0x17 :addobjectvehicle }) (def packet-ids (apply assoc {} (mapcat reverse packet-types))) @@ -394,6 +396,26 @@ (assoc :pitch (-read-byte conn)) (assoc :roll (-read-byte conn)))) +(defn read-packet-collectitem [conn] + (-> {} + (assoc :collectedeid (-read-int conn)) + (assoc :collectoreid (-read-int conn)))) + +(defn read-packet-addobjectvehicle [conn] + (let [basepacket (-> {} + (assoc :eid (-read-int conn)) + (assoc :type (-read-byte conn)) + (assoc :x (-read-int conn)) + (assoc :y (-read-int conn)) + (assoc :z (-read-int conn)) + (assoc :moar (-read-int conn)))] + (if (< 0 (:moar basepacket)) + basepacket + (-> basepacket + (assoc :unknownx (-read-int conn)) + (assoc :unknowny (-read-int conn)) + (assoc :unknownz (-read-int conn)))))) + ; Reading Wrappers ----------------------------------------------------------------- (defn read-packet [conn packet-id] @@ -421,6 +443,8 @@ (= packet-type :entityaction) (read-packet-entityaction conn) (= packet-type :namedentityspawn) (read-packet-namedentityspawn conn) (= packet-type :pickupspawn) (read-packet-pickupspawn conn) + (= packet-type :collectitem) (read-packet-collectitem conn) + (= packet-type :addobjectvehicle) (read-packet-addobjectvehicle conn) :else (str "UNKNOWN PACKET TYPE: " packet-id) )) (println "\n\n\n")))