Добавил еще ведущие нули к миллисекундам, если кому-то еще когда-то этот код понадобится
log = function (text, color, define){ var id, time, thread, logHtml, textLog; define = (typeof define == 'string') ? define.split(/[\s,.|:;]+/g) : define; if(typeof define === 'object' && define !== null){ if(Array.isArray(define)){ id = define.indexOf('id') > -1; time = define.indexOf('time') > -1; thread = define.indexOf('thread') > -1; } else{ id = define.id == true; time = define.time == true; thread = define.thread == true; } } else id = time = thread = true; id = id ? '<a href="action://action' + ScriptWorker.GetCurrentAction() + '" style="color:gray;">[' + ScriptWorker.GetCurrentAction() + ']</a>' : ''; time = time ? ' ' + getTime() : ''; thread = thread ? ' Поток №' + thread_number() : ''; logHtml = (id || time || thread) ? id + '<span style="color: white">' + time + thread + ' : </span>' : ''; logHtml += '<span style="color:' + (color ? color : 'white') + '">' + text + '</span>'; textLog = '[' + ScriptWorker.GetCurrentAction() + ']' + time + thread + ' : ' + text function getTime(){ var checkTime = function(i){ return (i < 10) ? "0" + i : i; }; var checkMilliSeconds = function(ms){ if (ms < 10) { return "00" + ms; } else if (ms < 100) { return "0" + ms; } else { return ms; } }; var d = new Date(); var hh = checkTime(d.getHours()); var mm = checkTime(d.getMinutes()); var ss = checkTime(d.getSeconds()); var ms = checkMilliSeconds(d.getMilliseconds()); return '[' + hh + ':' + mm + ':' + ss + '.' + ms + ']'; }; Logger.WriteHtml(logHtml, textLog); }Использование переменных в "Эмуляции бездействия"
-
Добрый день, генерирую случайные числа для того, чтобы их использовать в последовательности эмуляции бездействия. По умолчанию последовательность выглядит вот так:
[1,1,2,3,3,3,4,4]Когда пишу так:
[[RANDOM_NUMBER1]]Все работает корректно.
Делаю такую конфигурацию:
[[[RANDOM_NUMBER1]],[[RANDOM_NUMBER1]]]Получаю ошибку
[660950941] [12:18:46] Поток №1 : ReferenceError: Can't find variable: VAR_ Номер строки:4 Во время выполнения скрипта { _sa(660950941); IDDLE_EMULATION_END = Date.now() + 1000 * (5) IDDLE_EMULATION_DISTRIBUTION = VAR_[RANDOM_NUMBER1,VAR_RANDOM_NUMBER1] IDDLE_CURSOR_POSITION_X = -1 IDDLE_CURSOR_POSITION_Y = -1 IDDLE_CURSOR_POSITION_WAS_SCROLL = false page().script("window.innerWidth",function(){ IDDLE_CURSOR_POSITION_WIDTH = parseInt(_result()) page().script("window.innerHeight",function(){ IDDLE_CURSOR_POSITION_HEIGHT = parseInt(_result()) _do(function(){ if(Date.now() >= IDDLE_EMULATION_END) _break() IDDLE_EMULATION_CURRENT_ITEM = IDDLE_EMULATION_DISTRIBUTION[Math.floor(Math.random()*IDDLE_EMULATION_DISTRIBUTION.length)] if(_iterator() == 1) IDDLE_EMULATION_CURRENT_ITEM = 2 _if(IDDLE_EMULATION_CURRENT_ITEM == 1, function(){ IDDLE_EMULATION_CURRENT_DIRECTION = (rand(1,2) == 2) ? "<MOUSESCROLLUP>" : "<MOUSESCROLLDOWN>" if(!IDDLE_CURSOR_POSITION_WAS_SCROLL) IDDLE_EMULATION_CURRENT_DIRECTION = "<MOUSESCROLLDOWN>" IDDLE_CURSOR_POSITION_WAS_SCROLL = true IDDLE_EMULATION_CURRENT_NUMBER = rand(1,5) _do(function(){ if(_iterator() >= IDDLE_EMULATION_CURRENT_NUMBER) _break() page().type(IDDLE_EMULATION_CURRENT_DIRECTION,1000,function(){ sleep(rand(300,1000),function(){ })})},function(){ })},function(){ _if(IDDLE_EMULATION_CURRENT_ITEM == 2, function(){ page().script("document.body.scrollLeft",function(){ IDDLE_CURSOR_POSITION_SCROLL_X = parseInt(_result()) page().script("document.body.scrollTop",function(){ IDDLE_CURSOR_POSITION_SCROLL_Y = parseInt(_result()) IDDLE_CURSOR_POSITION_X = rand(1,IDDLE_CURSOR_POSITION_WIDTH) IDDLE_CURSOR_POSITION_Y = rand(1,IDDLE_CURSOR_POSITION_HEIGHT) move(IDDLE_CURSOR_POSITION_SCROLL_X + IDDLE_CURSOR_POSITION_X,IDDLE_CURSOR_POSITION_SCROLL_Y + IDDLE_CURSOR_POSITION_Y,function(){ })})})},function(){ _if(IDDLE_EMULATION_CURRENT_ITEM == 3, function(){ if(IDDLE_CURSOR_POSITION_X < 0 || IDDLE_CURSOR_POSITION_Y < 0) _break() page().script("document.body.scrollLeft",function(){ IDDLE_CURSOR_POSITION_SCROLL_X = parseInt(_result()) page().script("document.body.scrollTop",function(){ IDDLE_CURSOR_POSITION_SCROLL_Y = parseInt(_result()) IDDLE_EMULATION_CURRENT_NUMBER = rand(1,4) _do(function(){ if(_iterator() >= IDDLE_EMULATION_CURRENT_NUMBER) _break() IDDLE_CURSOR_POSITION_X += rand(-50,50) IDDLE_CURSOR_POSITION_Y += rand(-50,50) if(IDDLE_CURSOR_POSITION_X > IDDLE_CURSOR_POSITION_WIDTH) IDDLE_CURSOR_POSITION_X = IDDLE_CURSOR_POSITION_WIDTH if(IDDLE_CURSOR_POSITION_Y > IDDLE_CURSOR_POSITION_HEIGHT) IDDLE_CURSOR_POSITION_Y = IDDLE_CURSOR_POSITION_HEIGHT if(IDDLE_CURSOR_POSITION_X < 0) IDDLE_CURSOR_POSITION_X = 0 if(IDDLE_CURSOR_POSITION_Y < 0) IDDLE_CURSOR_POSITION_Y = 0 move(IDDLE_CURSOR_POSITION_SCROLL_X + IDDLE_CURSOR_POSITION_X,IDDLE_CURSOR_POSITION_SCROLL_Y + IDDLE_CURSOR_POSITION_Y,function(){ _if(rand(1,10) > 3,function(){ sleep(rand(10,300),function(){ })},function(){ })})},function(){ })})})},function(){ _if(IDDLE_EMULATION_CURRENT_ITEM == 4, function(){ sleep(rand(500,5000),function(){ })},function(){ })})})})},function(){ section_start("test", 1,function(){ })})})})}Что я делаю не так, подскажите, пожалуйста?
P.S Видел информацию про модуль idleemulation, но хотел бы реализовать стандартной функцией. -
@romanbiz said in Использование переменных в "Эмуляции бездействия":
[[[RANDOM_NUMBER1]],[[RANDOM_NUMBER1]]]
//Попробуй написать переменные через VAR_ [VAR_RANDOM_NUMBER1, VAR_RANDOM_NUMBER1] //можно еще использовать функцию rand [rand(1,2), rand(1,2), rand(1,3), rand(1,3), rand(1,4)]