From 84d292cfdad4249885e43b7123634e5a8dd0ff1f Mon Sep 17 00:00:00 2001 From: Holden Rohrer Date: Wed, 18 Dec 2019 20:57:16 -0500 Subject: updated socket and space to export the main class --- examples/helloworld.js | 8 ++++---- examples/jarvis.js | 25 +++++++++++++++++++++---- examples/spam.js | 8 ++++---- socket.js | 3 +-- space.js | 5 +++-- tests/socket_cursor.js | 4 ++-- tests/socket_fetch.js | 4 ++-- tests/space_comb.js | 6 +++--- tests/space_file.js | 4 ++-- tests/space_fromfetch.js | 4 ++-- tests/space_search.js | 6 +++--- tests/space_subsection.js | 4 ++-- 12 files changed, 49 insertions(+), 32 deletions(-) diff --git a/examples/helloworld.js b/examples/helloworld.js index cc43666..4984914 100644 --- a/examples/helloworld.js +++ b/examples/helloworld.js @@ -1,9 +1,9 @@ -const ywot = require('../socket'); // Import direct library -const space = require('../space'); +const Socket = require('../socket'); // Import direct library +const Space = require('../space'); -writes = new space.Space(); //Generate a place to store potential writes +writes = new Space(); //Generate a place to store potential writes writes.adhoc('hello\nworld') // A method to fill internal data with inline code. -main = new ywot.Socket(''); // Open socket +main = new Socket('helloworld'); // Open socket at yourworldoftext.com/helloworld main.on('open',()=>{ // When socket opens main.write(writes.towrite([8,16])); // Tell the server to write the content of `writes` to }); diff --git a/examples/jarvis.js b/examples/jarvis.js index a130f17..e6bafc5 100644 --- a/examples/jarvis.js +++ b/examples/jarvis.js @@ -1,9 +1,22 @@ // A bot which responds to `jarvis` with a box -const space = require('../space'); -const socket = require('../socket'); +const Space = require('../space'); +const Socket = require('../socket'); +const getdims = require('../utils/getdims'); -var main = new socket.Socket(); +var main = new Socket(); + +function Sparse(){ // A "sparse" data-storage mechanism + this.data = []; + this.avail = []; + this.add = function(data){ + + } + this.del = function(id){ + this.avail.push(id); + this.data[id] = null; + } +} function equals(arg1,arg2){ // Just takes the specific case argument of each being an int pair return arg1[0] == arg2[0] && arg1[1] == arg2[1] @@ -22,5 +35,9 @@ main.on('open', ()=>{ // Tries to identify itself with a cursor movement }) main.on('identity', (sender) => { - + main.on('tileUpdate', (send, source, tiles) => { + if (send == sender) return; + // Get dimensions somehow + + }) } diff --git a/examples/spam.js b/examples/spam.js index 8134c76..53ac2af 100644 --- a/examples/spam.js +++ b/examples/spam.js @@ -1,8 +1,8 @@ // Sorry about writing this, but I want to maintain a notif about the API -const socket = require('../socket'); -const space = require('../space'); +const Socket = require('../socket'); +const Space = require('../space'); -let text = new space.Space(); +let text = new Space(); text.adhoc("\ \n\ For a node.js YWOT api: \n\ @@ -10,7 +10,7 @@ text.adhoc("\ "); let out = text.towrite([-6,20]); -let main = new socket.Socket(); +let main = new Socket(); function write(){ main.write(out.slice()); diff --git a/socket.js b/socket.js index d5ce72d..949dcdd 100644 --- a/socket.js +++ b/socket.js @@ -91,5 +91,4 @@ class Socket extends retryws { } } -exports.retryws = retryws; -exports.Socket = Socket; +exports = Socket; diff --git a/space.js b/space.js index 9ffcd18..e567733 100644 --- a/space.js +++ b/space.js @@ -30,7 +30,8 @@ function Space(){ // CLASS for (let line=0; line<8; line++) this.data.push([]); // Adds lines for (let x=dimension[1]; x<=dimension[3]; x++){ - tilein(tiles[[y,x]],y-dimension[0]); + if (! tiles[[y,x]]) tilein({"content":' '.repeat(16*8),"properties":{"cell_props":{}}}); // Insert a null tile + else tilein(tiles[[y,x]],y-dimension[0]); } } @@ -123,4 +124,4 @@ function Space(){ // CLASS } -exports.Space = Space +exports = Space diff --git a/tests/socket_cursor.js b/tests/socket_cursor.js index dc0ca7f..e9e4df7 100644 --- a/tests/socket_cursor.js +++ b/tests/socket_cursor.js @@ -1,8 +1,8 @@ // Tests Socket.cursor and Socket.on('cursor') -socket = require('../socket'); +Socket = require('../socket'); -world = new socket.Socket(); +world = new Socket(); world.on('open', ()=>{world.cursor([22,23])}); world.on('cursor', (locs, send)=>{console.log(locs,send)}); diff --git a/tests/socket_fetch.js b/tests/socket_fetch.js index a613dc6..b558f89 100644 --- a/tests/socket_fetch.js +++ b/tests/socket_fetch.js @@ -1,7 +1,7 @@ // Tests Socket.fetch and Socket.on('fetch') -const socket = require('../socket'); +const Socket = require('../socket'); -let world = new socket.Socket(); +let world = new Socket(); world.on('open', () => {world.fetch([[10,10,10,10]])}); diff --git a/tests/space_comb.js b/tests/space_comb.js index 3fae916..1cde721 100644 --- a/tests/space_comb.js +++ b/tests/space_comb.js @@ -1,15 +1,15 @@ // Tests space.comb() -space = require('../space'); +const Space = require('../space'); -newspace = new space.Space(); +newspace = new Space(); newspace.adhoc('\ line1\n\ &&&&transparency&&&&\n\ \n\ afterempty\n') -otherspace = new space.Space(); +otherspace = new Space(); otherspace.adhoc('\ &&&transparency&&&\n\ testline'); diff --git a/tests/space_file.js b/tests/space_file.js index 84e42a3..572214e 100644 --- a/tests/space_file.js +++ b/tests/space_file.js @@ -1,7 +1,7 @@ // Tests Space.{to,from}file -const space = require('../space') +const Space = require('../space') -text = new space.Space(); +text = new Space(); text.adhoc('\ line of text\n\ diff --git a/tests/space_fromfetch.js b/tests/space_fromfetch.js index 2d8572a..67b41cc 100644 --- a/tests/space_fromfetch.js +++ b/tests/space_fromfetch.js @@ -1,7 +1,7 @@ // Tets Space.fromfetch -const space = require('../space') +const Space = require('../space') -newspace = new space.Space() +newspace = new Space() newspace.fromfetch({"4,2": {"content": " hhhhhhhh k hone ns ", "properties": {"writability": null, "cell_props": {}}}},[4,2,4,2],conform=false); // Straight from a real tileUpdate diff --git a/tests/space_search.js b/tests/space_search.js index fffdcc7..14ec174 100644 --- a/tests/space_search.js +++ b/tests/space_search.js @@ -1,8 +1,8 @@ // Tests space.search -const space = require('../space') +const Space = require('../space') -let text = new space.Space(); +let text = new Space(); text.adhoc('\ \n\ jarvis\n\ @@ -10,7 +10,7 @@ text.adhoc('\ jarvis \ '); -let line = new space.Space(); +let line = new Space(); line.adhoc('jarvis'); console.log(text.search(line)) diff --git a/tests/space_subsection.js b/tests/space_subsection.js index a2523e5..b30b7e1 100644 --- a/tests/space_subsection.js +++ b/tests/space_subsection.js @@ -1,7 +1,7 @@ // Tests Space.subsection() -const space = require('../space'); +const Space = require('../space'); -newspace = new space.Space(); +newspace = new Space(); newspace.adhoc('\ line\n\ \n\ -- cgit