aboutsummaryrefslogtreecommitdiff
path: root/socket.js
diff options
context:
space:
mode:
authorHolden Rohrer <holden.rohrer@gmail.com>2019-12-18 16:35:13 -0500
committerHolden Rohrer <holden.rohrer@gmail.com>2019-12-18 16:35:13 -0500
commitfae8f6b3bbb1fd18cd07c26673d454a8136c093f (patch)
tree564002acdf9cb737222d77831a8f5bf618ddb961 /socket.js
parent27edad92c3af494c24b0bddb052a5182e974027e (diff)
tested and fixed socket.fetch/cursor
Diffstat (limited to 'socket.js')
-rw-r--r--socket.js9
1 files changed, 5 insertions, 4 deletions
diff --git a/socket.js b/socket.js
index 114949b..b690151 100644
--- a/socket.js
+++ b/socket.js
@@ -52,21 +52,22 @@ class Socket extends retryws {
this.send(`{"fetchRectangles":${JSON.stringify(coords)},"kind":"fetch","v":"3"}`);
}
- this.write = function(chars){ //chars is an list of triplets [ tile coordinate (y/x), pixel coordinate (y/x < 16), char ]
+ this.write = function(chars){ //chars is an list of pairs [ pixel coordinate (y/x < 16), char ]
if (chars.length > 200){
throw "Too many characters to write";
}
for (var i=0; i<chars.length; i++){
let char = chars[i]
- chars[i] = [char[0][0],char[0][1],char[1][0],char[1][1],char[2]];
+ let coord = char[0];
+ chars[i] = [Math.floor(coord[0]/8),Math.floor(coord[1]/16),(coord[0] % 8),(coord[1] % 16),char[1]];
chars[i].splice(4,0,0);
chars[i].push(i);
}
this.send(`{"edits":${JSON.stringify(chars)},"kind":"write"}`);
}
- this.cursor = function(coords){ //coords is just one quadruplet analagous to fetch; I think the api could handle more, but it's unnecessary for now.
- this.send(`"kind":"cursor","positions":[${JSON.stringify(coords)}]}`);
+ this.cursor = function(coords){ //coords is just one pair of char coords; I think the api could handle more, but it's unnecessary for now.
+ this.send(`{"kind":"cursor","positions":[{"tileY":${Math.floor(coords[0]/8)},"tileX":${Math.floor(coords[1]/16)},"charY":${coords[0] % 8},"charX":${coords[1] % 16}}]}`);
}
}