var pre = document.querySelector("pre"); var re = /(>)|([a-z-][a-z0-9 \.,:\(\)-]*[a-z0-9\.:])|(#+)|(\.+)|([+/])|(\$+)|(\^)|(\?)|(=+)|(!)/ig; var str = pre.innerHTML; str = str.replace(re, function(match) { var types = ["", "staircase", "text", "wall", "corridor", "door", "money", "trap", "scroll", "water", "potion"]; for (var i=1; i"; return str; } } return match; }); str = str.replace("YYYY", new Date().getFullYear()); pre.innerHTML = str; var links = { "download": "https://github.com/ondras/rot.js/zipball/master", "github": "https://github.com/ondras/rot.js", "interactive manual": "../manual/", "autogenerated documentation": "../doc/", "ondrej zara": "http://ondras.zarovi.cz/", "libtcod": "http://doryen.eptalys.net/libtcod/", "tests": "../tests/", "tutorial": "http://www.roguebasin.roguelikedevelopment.org/index.php?title=Rot.js_tutorial", "$$$": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=7WXVKF3ZJ9FZE" }; var spans = document.querySelectorAll("span"); for (var i=0;i= random) { sum2 -= random; /* sum2 = index of dot in corridors[i] */ var span = corridors[i]; if (sum2) { var tmp = document.createElement("span"); tmp.className = span.className; tmp.innerHTML = span.innerHTML.substring(0, sum2); span.parentNode.insertBefore(tmp, span); } var node = document.createElement("span"); node.className = monster; node.title = monster; node.innerHTML = p; span.parentNode.insertBefore(node, span); if (sum2 < span.innerHTML.length-1) { var tmp = document.createElement("span"); tmp.className = span.className; tmp.innerHTML = span.innerHTML.substring(sum2+1, span.innerHTML.length); span.parentNode.insertBefore(tmp, span); } span.parentNode.removeChild(span); break; } } }