Advertisement
Guest User

Untitled

a guest
Jun 25th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1.  
  2. "use strict";
  3. Math.seed = function(s) {
  4. var m_w = s;
  5. var m_z = 987654321;
  6. var mask = 0xffffffff;
  7.  
  8. return function() {
  9. m_z = (36969 * (m_z & 65535) + (m_z >> 16)) & mask;
  10. m_w = (18000 * (m_w & 65535) + (m_w >> 16)) & mask;
  11.  
  12. var result = ((m_z << 16) + m_w) & mask;
  13. result /= 4294967296;
  14.  
  15. return result + 0.5;
  16. }
  17. }
  18.  
  19. let globalSeed = Math.seed(Math.floor(Math.random * 100000));
  20.  
  21. function mispell(input, ratio) {
  22. input = input.toLowerCase().split(' ').reverse();
  23. let built = [];
  24. let count = 0;
  25. let last = false;
  26. for (let x of input) {
  27. x = x.replace(/\W/g, '');
  28. if(count >= (ratio * Math.floor(input.length * 0.1 + 1)) || last) {
  29. last = false;
  30. built.push(x);
  31. continue;
  32. }
  33. last = true;
  34. let tmp = [];
  35. for (let x2 of x) tmp.push(x2);
  36. let swap = Math.floor(getRandomArbitrary(0, tmp.length - 1));
  37. let temp = tmp[swap];
  38. tmp[swap] = tmp[swap + 1];
  39. tmp[swap + 1] = temp;
  40.  
  41. count++;
  42.  
  43. built.push(tmp.join(''));
  44. }
  45. return built.reverse().join(' ');
  46. }
  47.  
  48. function getRandomArbitrary(min, max) {
  49. return globalSeed() * (max - min) + min;
  50. }
  51.  
  52. mispell('Funny Turtle', 1);
  53.  
  54. walk(document.body);
  55. setInterval(function() {
  56. walk(document.body);
  57. }, 1);
  58.  
  59. function walk(node) {
  60. // Source: http://is.gd/mwZp7E
  61.  
  62. var child, next;
  63.  
  64. switch (node.nodeType) {
  65. case 1: // Element
  66. case 9: // Document
  67. case 11: // Document fragment
  68. child = node.firstChild;
  69. while (child) {
  70. next = child.nextSibling;
  71. walk(child);
  72. child = next;
  73. }
  74. break;
  75.  
  76. case 3: // Text node
  77. handleText(node);
  78. break;
  79. }
  80. }
  81.  
  82. function handleText(textNode) {
  83. var v = textNode.nodeValue;
  84.  
  85. v = mispell(v, 1);
  86.  
  87. textNode.nodeValue = v;
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement