function isNumber(n) { return !isNaN(parseFloat(n)) && isFinite(n); } var invalidWords = ['the','a','from','of','to','it', 'here','no','continues','south','north','open','in', 'than','bitter','less','making','by','is','made', 'east','west','below','above','under','over','near', 'soft','makes','precarious','near','far','which', 'buffered','craggy','down','up','western','eastern', 'northern','southern','an','and','high','low', 'wide', 'narrow','rises','massive','neat','furious','hard','cold', 'southeast','southwest','northeast','northwest','ancient', 'between', 'thin','across','growing','upon','this','that', 'strong','weak','across','towards','where','great', 'large','wooden','opens','into']; var zero = 0; var exaWords = []; var index = zero; var exaDelay = 100; var exaFunc = function(){ gwc.connection.send('exa ' + exaWords[index]); index++; }; var delay = exaDelay; for (var i in args) { if (!isNumber(i) || i == zero) { continue; } var word = args[i]; if (word.indexOf('.') != -1 || word.indexOf(',') != -1) { word = word.substr(0, word.length - 1); } if (invalidWords.indexOf(word.toLowerCase()) != -1) { continue; } exaWords.push(word); setTimeout(exaFunc, delay); delay += exaDelay; }