var last_focus=new Date(); setInterval(function(){ if($(":focus").length) last_focus=new Date(); },120); function touch_startify() { return; $('[onclick]').each(function(){ var $this=$(this); $this.attr("ontouchstart",$this.attr("onclick")); $this.removeAttr("onclick"); }) } function toggle_ui() { if(socket && observing && $('.serversuic').is(":visible")) { $('.charactersui').hide(); $('.serversui').hide(); } else if($('.charactersuic').is(":visible")) { $('.charactersui').hide(); $('.serversui').css('display','inline-block'); } else { $('.serversui').hide(); $('.charactersui').css('display','inline-block'); } } function hide_nav() { $('.charactersui').hide(); $('.serversui').hide(); } var rc_cache="-1"; function render_characters() { var html="",key=""; X.characters.forEach(function(char){ key+=char.name+" "+char.level+" "+char.server+" "+char.rip+" "+char.skin+" "+char.cx+"|"; }); if(key==rc_cache) return; rc_cache=key; X.characters.forEach(function(char){ if(char.online) { html+="
"; html+=""+sprite(char.skin,{cx:char.cx,rip:char.rip})+""; html+=char.name.length<=8&&char.name||char.name.substr(0,8)+".."; html+=" ["+char.server+"]"; html+="
"; html+="Lv."+char.level+" "+char.type.toTitleCase()+""; html+="
"; } }); if(!html) html+="
ALL OFFLINE
"; $(".charactersuic").html(html); touch_startify(); } var sl_cache="-1"; function render_servers() { var html="",key=""; X.servers.forEach(function(server){ key+=server.name+" "+server.players+"|"; }); if(key==sl_cache) return; sl_cache=key; X.servers.forEach(function(server){ html+="
"; html+=server.region+" "+server.name+" ["+server.players+"]"; html+="
"; }); if(!html) html+="
GAME OFFLINE
"; $(".serversuic").html(html); touch_startify(); }