BRUNHYLDE

lewd code OG

Sep 30th, 2020
619
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. // code is shit
  3. // what do you expect
  4.  
  5. var m_w = 123456789;
  6. var m_z = 987654321;
  7. var mask = 0xffffffff;
  8.  
  9. // Takes any integer
  10. function seed(i) {
  11.     m_w = i;
  12.     m_z = 987654321;
  13. }
  14.  
  15. String.prototype.hashCode = function() {
  16.   var hash = 0, i, chr;
  17.   if (this.length === 0) return hash;
  18.   for (i = 0; i < this.length; i++) {
  19.     chr   = this.charCodeAt(i);
  20.     hash  = ((hash << 5) - hash) + chr;
  21.     hash |= 0; // Convert to 32bit integer
  22.   }
  23.   return hash;
  24. };
  25.  
  26. // Returns number between 0 (inclusive) and 1.0 (exclusive),
  27. // just like random().
  28. function random()
  29. {
  30.     m_z = (36969 * (m_z & 65535) + (m_z >> 16)) & mask;
  31.     m_w = (18000 * (m_w & 65535) + (m_w >> 16)) & mask;
  32.     var result = ((m_z << 16) + m_w) & mask;
  33.     result /= 4294967296;
  34.     return result + 0.5;
  35. }
  36.  
  37. function randomInt(min, max) {
  38.     return ((random() * (max - min + 1)) + min) << 0;
  39. }
  40.  
  41. function randomFrom(list) {
  42.   return list[Math.floor((random()*list.length))];
  43. }
  44.  
  45. function shuffle(a) {
  46.     var j, x, i;
  47.     for (i = a.length - 1; i > 0; i--) {
  48.         j = Math.floor(random() * (i + 1));
  49.         x = a[i];
  50.         a[i] = a[j];
  51.         a[j] = x;
  52.     }
  53.     return a;
  54. }
  55.  
  56. var blacked_percent;
  57.  
  58. function blackedRand() {
  59.     return (blacked_percent + 2.0 * random()) / 3.0;
  60. }
  61.  
  62. function blackedProb(p) {
  63.     return blackedRand() > (1.0 - p);
  64. }
  65.  
  66. function blackedMin(rolls) {
  67.     var r = 3.0;
  68.     while(rolls-- > 0)
  69.         r = Math.min(r, Math.floor(blackedRand() * 4.0));
  70.     return r;
  71. }
  72.  
  73. function blackedMax(rolls) {
  74.     var r = 0.0;
  75.     while(rolls-- > 0)
  76.         r = Math.max(r, Math.floor(blackedRand() * 4.0));
  77.     return Math.min(r, 5);
  78. }
  79.  
  80. function gen(girlname, photo) {
  81.     var sname = girlname.replace(/\s+/g, '').toLowerCase();
  82.     sname.replace("princess", "");
  83.     sname.replace("chan", "");
  84.     seed(sname.hashCode());
  85.    
  86.     for(var z = 0; z < 500; ++z)
  87.         random();
  88.  
  89.     var dat = {
  90.         vaginal: 0,
  91.         oral: 0,
  92.         swallow: 0,
  93.         rim: 0,
  94.         anal: 0,
  95.         dp: 0,
  96.         creampie: 0,
  97.         pregnant: 0,
  98.         humil: 0,
  99.     };
  100.  
  101.     var prefs = {
  102.         dildos: false,
  103.         clothes: false,
  104.         tattoo: false,
  105.     };
  106.  
  107.     var result;
  108.  
  109.     blacked_percent = Math.max(0.6, 0.3 + random());
  110.    
  111.     var sluts = [
  112.         "asuka",
  113.         "mercy",
  114.         "2b",
  115.         "d.",
  116.         "samus",
  117.         "tennyson",
  118.         "saber",
  119.         "hilda",
  120.         "misty",
  121.         "lockh",
  122.         "tohsaka",
  123.         "zelda",
  124.         "gremory",
  125.         "asuna",
  126.         "littner",
  127.         "dawn",
  128.         "may",
  129.         "mei",
  130.         "juri",
  131.         "croft",
  132.         "hatsune",
  133.         "takamaki",
  134.     ];
  135.  
  136.     for(var k = 0; k < sluts.length; ++k) {
  137.         if(sname.includes(sluts[k])) {
  138.             blacked_percent += 0.3;
  139.             break;
  140.         }
  141.     }
  142.  
  143.     if(sname.includes("galko"))
  144.         blacked_percent = 3.0;
  145.  
  146.     dat.vaginal = Math.max(2, blackedMax(2));
  147.  
  148.     dat.oral = Math.max(2, blackedMax(2));
  149.  
  150.     if(blackedProb((dat.vaginal + dat.oral) * 0.1))
  151.         dat.anal = Math.min(blackedMax(1), dat.vaginal);
  152.  
  153.     for(var i = 0; i < 100; ++i)
  154.         console.log(Math.min(blackedMax(1), dat.vaginal));
  155.  
  156.     var blacked = (dat.vaginal + dat.oral + dat.anal) >= 5;
  157.  
  158.     var insemen = blackedProb(dat.vaginal * 0.20);
  159.  
  160.     if(insemen && blacked && dat.vaginal >= 1)
  161.         dat.creampie = Math.min(dat.vaginal+1, blackedMax(2));
  162.  
  163.     if(insemen && blacked && dat.creampie >= 1)
  164.         dat.pregnant = Math.min(dat.creampie, blackedMax(2));
  165.  
  166.     if(blackedProb(dat.oral * 0.50) || insemen)
  167.         dat.swallow = Math.min(dat.oral + 1, blackedMax(3));
  168.  
  169.     if(blacked && dat.swallow >= 1 && blackedProb(0.5))
  170.         dat.rim = blackedMin(2);
  171.  
  172.     if(dat.anal >= 1 && dat.vaginal >= 1 && (dat.anal + dat.vaginal) >= 4)
  173.         dat.dp = Math.floor((dat.anal + dat.vaginal + 0.5) / 2);
  174.  
  175.     prefs.tattoo = blackedProb(0.8);
  176.  
  177.     prefs.dildos = true;
  178.  
  179.     prefs.clothes = blackedProb(0.8);
  180.  
  181.     for(var p in dat)
  182.         dat[p] = Math.min(3, dat[p]);
  183.  
  184.     var count = 0;
  185.     for(var p in dat)
  186.         count += dat[p];
  187.  
  188.     var titles = [
  189.         "Still Pure" ,
  190.         "Mostly Pure" ,
  191.         "Experimenting" ,
  192.         "Beginner Slut" ,
  193.         "Freshly BLACKED" ,
  194.         "Certifiably BLACKED" ,
  195.         "BBC Snowbunny" ,
  196.         "Black Queen" ];
  197.  
  198.     function setId(id, str) {
  199.         if(!document.getElementById(id))
  200.             return;
  201.         var el = document.getElementById(id);
  202.         el.innerHTML = str;
  203.     }
  204.  
  205.     var grade = Math.min(Math.floor(count / 3), titles.length - 1);
  206.  
  207.     if(count >= 21) {
  208.         prefs.tattoo = true;
  209.         prefs.clothes = true;
  210.         prefs.dildos = true;
  211.     }
  212.  
  213.     setId("title", count >= 24 ? "Mind-Broken Slave" : titles[grade]);
  214.     setId("name", girlname);
  215.  
  216.     if(photo)
  217.         document.getElementById("photo").src = photo;
  218.  
  219.     if(count < 9)
  220.         setId("wdick", "Maybe?");
  221.  
  222.  
  223.     var votes = Math.max(Math.floor(blackedRand() * blackedRand() * blackedRand() * 40), 1);
  224.     if(count == 0)
  225.         votes = 0;
  226.     setId("grade", votes);
  227.  
  228.     var rating = 0;
  229.     for(var i = 0; i < votes; ++i)
  230.         rating += randomInt(4, 5);
  231.     if(votes > 0)
  232.         rating /= votes;
  233.     rating = Math.round(rating * 100) / 100;
  234.  
  235.     function setBox(id) {
  236.         var el = document.getElementById(id);
  237.         if(!el)
  238.             return;
  239.  
  240.         el.innerHTML = "";
  241.         var i = 0;
  242.         var img;
  243.         for(i = 0; i < dat[id]; ++i) {
  244.             img = document.createElement("img");
  245.             img.setAttribute('src', 'bspade.png');
  246.             el.appendChild(img);
  247.         }
  248.         for(; i < 3; ++i) {
  249.             img = document.createElement("img");
  250.             img.setAttribute('src', 'wspade.png');
  251.             el.appendChild(img);
  252.         }
  253.     }
  254.  
  255.     function setPref(id) {
  256.         var el = document.getElementById(id);
  257.         if(!el)
  258.             return;
  259.         el.innerHTML = prefs[id] ? "YES!" : "&nbsp;";
  260.     }
  261.  
  262.     for(var p in dat)
  263.         setBox(p);
  264.  
  265.     for(var p in prefs)
  266.         setPref(p);
  267.  
  268.     var digits = [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ];
  269.     var bid = '';
  270.     for(var i = 0; i < 8; ++i)
  271.         bid += randomFrom(digits);
  272.  
  273.     setId("barcodeid", bid);
  274. }
  275.  
  276. function submit() {
  277.     gen(
  278.         document.getElementById("wname").value,
  279.         document.getElementById("wimage").value);
  280.  
  281.     document.getElementById("intro").style.display = "none";
  282.     document.getElementById("card").style.display = "flex";
  283. }
  284.  
RAW Paste Data