Добавил еще ведущие нули к миллисекундам, если кому-то еще когда-то этот код понадобится
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); }Таймер сна в лог
-
Здравствуйте! Подскажите пожалуйста, возможно ли реализовать на BAS подобное:
- скрипт выполняет действия
- уходит на сон рандомное время от 10 мин до 60 мин
- получает это рандомное число
- выводит в лог каждые 5 минут оставшиеся время сна
На сколько понимаю, подобное можно было бы реализовать с помощью цикла, но не нашел как вообще получить доступ к рандомному числу которое генерирует BAS и возможно ли вообще получить доступ к блоку сна.
===========================================================
Ответ:
- Задаем случайное число в переменную
[[VAR1]] - Установить переменную
[[VAR1]] в [[VAR2]] - Создаем условие While
[[VAR2]] >= 0 - Спать 5 мин
- Увеличить переменную
-5 мин в [[VAR2]] - Лог
[[VAR2]]
-
-
@spacerange тут вам через Node наверное надо. Т.к. пока Бас не выполнит действие "Спать", он не будет другие действия выполнять. (все по порядку идет)
Как вариант можно разделить сон на несколько этапов и на каждом этапе писать лог. -
@spacerange да, так можно
-
Добавил решение моего вопроса в шапку, может кому нибудь будет полезно.
