From 8277732846f594547a0c8cfde4aa81f21396f393 Mon Sep 17 00:00:00 2001
From: Holden Rohrer <holden.rohrer@gmail.com>
Date: Fri, 27 Dec 2019 14:23:55 -0500
Subject: reenabled jarvis tileHandler (responder todo)

---
 examples/jarvis.js | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

(limited to 'examples')

diff --git a/examples/jarvis.js b/examples/jarvis.js
index a78024b..8b67961 100644
--- a/examples/jarvis.js
+++ b/examples/jarvis.js
@@ -13,6 +13,7 @@ function equals(arg1,arg2){ // Just takes the specific case argument of each bei
 }
 
 main.on('open', ()=>{ // Tries to identify itself with a cursor movement
+  console.log('socket opened');
   let coords = [Math.floor(Math.random()*100000+16),Math.floor(Math.random()*100000+16)];
   main.cursor(coords);
   main.on('cursor',detect);
@@ -33,23 +34,24 @@ function identity(sender){
   var read = new Search(search);
   var expire = {};
 
-  main.on('tileUpdate', (send, source, tiles) => { console.log(tiles); });
-  /*main.on('tileUpdate', (send, source, tiles) => {
-    console.log('detected update', tiles);
-    if (send == sender) return;
+  main.on('tileUpdate', (send, source, tiles) => {
+    // if (send == sender) return; ::: this may lead to issues later, but for now is used to count its own updates
     let locs = tilekeys(tiles);
 
     for (let i=0; i<locs.length; i++){
       let loc = locs[i];
-      if (read.has(loc)) clearTimeout(expire[loc]);
+      if (read.has(loc)){
+        clearTimeout(expire[loc]);
+        delete expire[loc];
+        read.del(loc);
+      }
       let locspace = new Space();
       locspace.fromfetch(tiles, [loc, loc], conform=false);
-      let results = read.add(locspace);
-      if (! results) respond(results);
-      expire[loc] = setTimeout(()=>{read.del(loc)}, 30000);
+      let results = read.add(loc, locspace);
+      if (results.length > 0) respond(results);
+      expire[loc] = setTimeout(() => {read.del(loc)}, 30000);
     }
-
-  });*/
+  });
 }
 
 function respond(coord){
-- 
cgit