F*CK THE LIKE LIKE LIKE

Mattix

:3
Сообщения
20 968
Лайки
128 692
Смотри я убрал постинг и вместо while поставил for
Ответ в логе консоли
Код:
function ScrydeAutoMessage() {
  var ranmin = 0;
  var ran1 = 11;
  var ran2 = 5;
  var ran3 = 9;
  var ran4 = 16;
  var i;
  var sum = 0;
  var messx = [' Все итемы успешно заточены, поздравляем! ']
  var item = [0,0,0,0,0,0,0,0,0,0];
  for(var j = 0; j < 1000; j++) {
    sum = 0;
    var random1 = Math.floor(Math.random() * (ran1  - ranmin + 1)) + ranmin ;
    var random2 = Math.floor(Math.random() * (ran2  - ranmin + 1)) + ranmin ;
    var random3 = Math.floor(Math.random() * (ran3  - ranmin + 1)) + ranmin ;
    var random4 = Math.floor(Math.random() * (ran4  - ranmin + 1)) + ranmin ;
    if (random2 == 0) {
       if (item[random3]!=16) item[random3]=0;
    }
    else {
       item[random3]= item[random3]+1;
    }

    for ( i = 0; i < 10; i++) {
           sum = sum+item[i];
    }
    if (sum > 100) {
       log(sum);
       break;
    }
    }
}


function log(msg) {
    setTimeout(function() {
        throw new Error(msg);
    }, 0);
}

ScrydeAutoMessage();
Т.е пашет норм ,нужно только заменить for на что-то что будет делать паузы.
Не, опять что-то не то
Крч вот рабочий код
Код:
function ScrydeAutoMessage() {
  var chance = 60;
  var itemEnchants = [];
  var fullEnchant = false;
  var messxSent = false;
  var messx = ['Все итемы успешно заточены, поздравляем!'];
  var mess1 = ['Фелозан ', 'Фрея ', 'LxT ', 'Classic ', 'Марвин ', 'Муня ', 'Ражита ', 'Laurie ', 'Meigen ', 'Saber je ', 'fat ', 'Скрэпи '];
  var mess2 = [' сломал(а) ', ' заточил(а) '];
  var mess3 = [' валенок ', ' утюг ', ' коромысло ', ' весло ', ' корыто ', ' карася ', ' полено ', ' огурец ', ' качан ', ' ведро ', ];

  for (var i = 0; i < mess3.length; i++) {
    itemEnchants.push(0); //изначально все итемы заточены на 0
  }

  setInterval(function(){
    if (!fullEnchant) { //если все итемы еще не заточены на 16
      var random1 = Math.floor(Math.random() * ((mess1.length-1)  - 0 + 1)) + 0; //случайный ник
      var random2 = Math.random(); //заточил\не заточил
      var random3 = Math.floor(Math.random() * ((mess3.length-1)  - 0 + 1)) + 0; //случайное название итема
     
      if (itemEnchants[random3] >= 16) { //если выбранный итем уже заточен на 16, то удаляем его из массива и генерируем новое случайное число
        var spliceIndex = parseInt(random3);
        mess3.splice(spliceIndex, 1);
        itemEnchants.splice(spliceIndex, 1);
        random3 = Math.floor(Math.random() * ((mess3.length-1)  - 0 + 1)) + 0
      }

      if (random2 > chance/100) { //если заточка фейл
        var curEnchant = itemEnchants[random3] + 1; //на какой заточке сфейлилось (текущая + 1)
        var $iframe = $('.redactor_MessageEditor');
        $iframe.ready(function () {
          $iframe.contents().find("body").html('');
          $iframe.contents().find("body").append('' + mess1[random1] + mess2[0] + mess3[random3] + ' на +' +curEnchant);
        });
        $('.quickReply .submitUnit input[value=Ответить]').click();

      } else {// если успешная заточка
        itemEnchants[random3] = parseInt(itemEnchants[random3]) + 1; //сохраняем новое значение
        var $iframe = $('.redactor_MessageEditor');
        $iframe.ready(function () {
          $iframe.contents().find("body").html('');
          $iframe.contents().find("body").append('' + mess1[random1] + mess2[1] + mess3[random3] + ' на +' + itemEnchants[random3]);
        });
        $('.quickReply .submitUnit input[value=Ответить]').click();
      }

      if (mess3.length == 0) { //если массив с итемами пуст, значит все заточено
        fullEnchant = true;
      }else {
        fullEnchant = false;
      }
    }else { //выводим сообщение об успешной заточке всех итемов
      if (!messxSent) {//отправляем только 1 раз
        var $iframe = $('.redactor_MessageEditor');
        $iframe.ready(function () {
          $iframe.contents().find("body").html('');
          $iframe.contents().find("body").append(' ' + messx + ' ');
        });
        messxSent = true;
        console.log(messx)
        $('.quickReply .submitUnit input[value=Ответить]').click();
      }
    }
  }, 20*1000);
}

ScrydeAutoMessage();
 
Верх