Кибор » Кибор - Интегрированная среда разработки ботов » Готовые скрипты » Функции времени

Страниц (1): [1]
 

1. Zireael - 20 Сентября, 2018 - 06:38:09 - перейти к сообщению
https://drive.google.com/open?id...yFCTkBuCis5rshXN
Скачать dll и закинуть в папку с kibor.exe.

Доступные функции:
TimeStamp - возвращает количество секунд прошедших с 1 января 1970 до текущего времени.
TimeZone - возвращает часовой пояс.
Mktime - возвращает количество секунд прошедших с 1 января 1970 до указаной даты.
TimeAdd - прибавляет/отнимает время. Возвращает результат в массив int в следующем порядке:
Час, Минуты, Секунды, День, Месяц, Год, День недели, Прошло дней с 1 января, Переход на летнее время 0/1.
Strftime - возвращает в массив char отформатированную строку в соответствии с задаными параметрами (https://msdn.microsoft.com/en-us...ry/fe06s4ak.aspx).

Синтаксис:
TimeStamp()
TimeZone()
Mktime(<час>, <минуты>, <секунды>, <день>, <месяц>, <год> )
TimeAdd(<адрес массива int, принимающего результат>, <размер массива>, <время в секундах с 01.01.1970>, <час>, <минуты>, <секунды>, <день>, <месяц>, <год> )
Strftime(<адрес массива char, принимающего результат>, <размер массива>, <строка форматирования>, <час>, <минуты>, <секунды>, <день>, <месяц>, <год> )

Количество секунд прошедших с 01.01.1970 (Отобразить)

Часовой пояс (Отобразить)

Количество секунд прошедших с 01.01.1970 до указанного времени (Отобразить)

Прибавить 3 часа 20 минут к текущему времени (Отобразить)

Отнять от текущего времени 1 день 4 часа 30 минут (Отобразить)

Прибавить 5 дней к текущей дате (Отобразить)

Получить дату/время в виде строки в заданном формате (Отобразить)
2. Zireael - 15 Декабря, 2018 - 04:08:06 - перейти к сообщению
Прибавить дни к указанной дате (Отобразить)
3. ivantu - 06 Января, 2019 - 10:17:12 - перейти к сообщению
А можно вывести просто, текущее время через эту DLL ? Без даты?
4. Zireael - 06 Января, 2019 - 11:12:37 - перейти к сообщению
 Цитата:
А можно вывести просто, текущее время через эту DLL ? Без даты?

Для этого не нужна длл.
CODE:
int Year, Month, DayOfWeek, Day, Hour, Minute, Second, Milliseconds;
getlocaltime(Year, Month, DayOfWeek, Day, Hour, Minute, Second, Milliseconds);

messagebox(f(Hour)+":"+f(Minute)+":"+f(Second));


function f(int x)
{
if(x<10)return "0"+format(x); // если 'x' меньше 10, то допишет 0 вначале
return format(x);
}
5. ivantu - 06 Января, 2019 - 12:56:47 - перейти к сообщению
Спасибо, а то у меня криво выводилось без // если 'x' меньше 10, то допишет 0 вначале
6. 007wan - 05 Мая, 2019 - 05:05:07 - перейти к сообщению
Это правильно? Что для одной переменной используется 2: время и дата. или стоит сделать:
 Цитата:
int Year1, Month1, DayOfWeek1, Day1, Hour1,Minute1, Second1, Milliseconds1;
CODE:
char Time[100];
char Date[100];
int Year, Month, DayOfWeek, Day, Hour, Minute, Second, Milliseconds;

getlocaltime(Year, Month, DayOfWeek, Day, Hour, Minute, Second, Milliseconds);
Strftime(address(#Time[0]), sizearray(Time), "%X", Hour, Minute, Second, Day, Month, Year);
Strftime(address(#Date[0]), sizearray(Date), "%d.%m.%Y", Hour, Minute, Second, Day, Month, Year);



7. Zireael - 05 Мая, 2019 - 10:18:01 - перейти к сообщению
 Цитата:
Это правильно?

Да.
8. Dantes3000 - 28 Июня, 2019 - 16:22:58 - перейти к сообщению
Перевести миллисекунды в формат 0d 00:00:00 (Отобразить)

Перевести миллисекунды в формат 00:00:00 (Отобразить)

(Добавление)
Бывают иногда то ли неправильные значения, то ли баг format или textout...появляются ЭЭЭЭ в строке.

Спойлер (Отобразить)

(Добавление)
Пытался поставить проверку если <0 на каждое значение - почти сразу синий экран вылетел на ноуте
9. Zireael - 28 Июня, 2019 - 17:57:35 - перейти к сообщению
 Цитата:
Перевести миллисекунды в формат 00:00:00

CODE:
external(INT, "wsprintf", "wsprintfA", "User32.dll" );

messagebox(toNormalTime(98784000)); //27 hr. 26 min. 24 sec.

function toNormalTime(int dMillisec)
{
char c[1024];
double dSec = dMillisec / 1000;
int iHour=dSec/3600,
iMin=dSec/60-iHour*60,
iSec=dSec-iHour*3600-iMin*60;

wsprintf(address(#c[0]), "%02d:%02d:%02d", iHour, iMin, iSec);
return format(#c[0]);
}
10. Dantes3000 - 29 Июня, 2019 - 04:17:08 - перейти к сообщению
Да вот эти все ваши externalы...
только ванильные функции, только хардкор А ты думал?

Powered by ExBB FM 1.0 Final