Skip to content

Commit

Permalink
fix: fix faulty bitwise checking, add missing doc tags
Browse files Browse the repository at this point in the history
  • Loading branch information
hexjelly committed Jan 26, 2017
1 parent 0d0205f commit fb2b472
Showing 1 changed file with 12 additions and 13 deletions.
25 changes: 12 additions & 13 deletions src/rec.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ class Replay {

/**
* Loads a replay from file.
* @static
* @param {string} filePath Path to file
* @returns {Promise} Promise
*/
Expand Down Expand Up @@ -96,28 +97,25 @@ class Replay {
/**
* Parses frame data into an array of frame objects.
* @private
* @static
* @param {Buffer} buffer Frame data to parse.
* @param {Number} numFrames Number of frames to parse.
* @returns {Array}
*/
static _parseFrames (buffer, numFrames) {
let frames = []
for (let i = 0; i < numFrames; i++) {
let data = buffer.readUInt8(i + (numFrames * 23)) // read in data field first to process it
let data = buffer.readUInt8(i + (numFrames * 24)) // read in data field first to process it
let frame = {
bike_x: buffer.readFloatLE(i * 4),
bike_y: buffer.readFloatLE((i * 4) + (numFrames * 4)),
left_x: buffer.readInt16LE((i * 2) + (numFrames * 8)),
left_y: buffer.readInt16LE((i * 2) + (numFrames * 10)),
right_x: buffer.readInt16LE((i * 2) + (numFrames * 12)),
right_y: buffer.readInt16LE((i * 2) + (numFrames * 14)),
head_x: buffer.readInt16LE((i * 2) + (numFrames * 16)),
head_y: buffer.readInt16LE((i * 2) + (numFrames * 18)),
bike: { x: buffer.readFloatLE(i * 4), y: buffer.readFloatLE((i * 4) + (numFrames * 4)) },
leftWheel: { x: buffer.readInt16LE((i * 2) + (numFrames * 8)), y: buffer.readInt16LE((i * 2) + (numFrames * 10)) },
rightWheel: { x: buffer.readInt16LE((i * 2) + (numFrames * 12)), y: buffer.readInt16LE((i * 2) + (numFrames * 14)) },
head: { x: buffer.readInt16LE((i * 2) + (numFrames * 16)), y: buffer.readInt16LE((i * 2) + (numFrames * 18)) },
rotation: buffer.readInt16LE((i * 2) + (numFrames * 20)),
left_rotation: buffer.readUInt8(i + (numFrames * 21)),
right_rotation: buffer.readUInt8(i + (numFrames * 22)),
throttle: data & 1 !== 0,
right: data & (1 << 1) !== 0,
leftRotation: buffer.readUInt8(i + (numFrames * 22)),
rightRotation: buffer.readUInt8(i + (numFrames * 23)),
throttle: (data & 1) !== 0,
right: (data & (1 << 1)) !== 0,
volume: buffer.readInt16LE((i * 2) + (numFrames * 25))
}
frames.push(frame)
Expand All @@ -128,6 +126,7 @@ class Replay {
/**
* Parses event data into an array of event objects.
* @private
* @static
* @param {Buffer} buffer Event data to parse.
* @param {Number} numEvents Number of events to parse.
* @returns {Array}
Expand Down

0 comments on commit fb2b472

Please sign in to comment.