myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
 
Ответить в данную темуНачать новую тему

> Переменные, Переменные и их значения

Рейтинг 5 V
Теги
Нет тегов для показа
DrakonSP
сообщение 10.2.2010, 14:13
Сообщение #1


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Здравствуйте!
Для информации: имееться скрипт антрекламы + антимат (антимат я убрал, т.к. нафиг не нужет big_smile1.gif)
В этом скрипте имееться самая обычныя big_smile1.gif переменная:
Код
RekBanTime=1440            -- Время бана за рекламу (в минутах)

Вообщем вопрос в следующем...
Дело в том что я хочу что бы эта переменая выводилась пользователю при бане, мл:
Цитата
Вы забанены на 1440 минут

Хочеться что бы это как то переводилось в дни, ну или хотя бы в часы.
Типо как то так...
Цитата
Вы забанены на 1 день

Цитата
Вы забанены на 24 часа

Как это реализовать? (Всмысле перевод переменой в другое значение (минуты в часы или минуты в дни))
Спасибо!
Go to the top of the page
+Quote Post
Accelerator
сообщение 10.2.2010, 14:56
Сообщение #2


Developer
******

Группа: Модераторы
Сообщений: 541
Регистрация: 11.11.2008
Пользователь №: 1 075
Спасибо сказали: 244 раза




Перевод в часы/минуты/дни/месяца
Код
function GetNormalTime(s)
    s=tonumber(s) or 0
    local r=""
    if s>=31104000 then r=math.floor(s/31104000).." лет " s=math.fmod(s,31104000) end
    if s>=2592000 then r=r..math.floor(s/2592000).." месяцев " s=math.fmod(s,2592000) end
    if s>=86400 then r=r..math.floor(s/86400).." дней " s=math.fmod(s,86400) end
    if s>=3600 then r=r..math.floor(s/3600).." часов " s=math.fmod(s,3600) end
    if s>=60 then r=r..math.floor(s/60).." минут " s=math.fmod(s,60) end
    return r..s.." секунд"
end
Отсылка сообщения
Код
Core.SendToUser(tUser, "<"..sBot.."> Вы забанены на "..GetNormalTime(RekBanTime))

А вообще, надо прикладывать скрипт.


Спасибо сказали:
Go to the top of the page
+Quote Post
DrakonSP
сообщение 10.2.2010, 15:00
Сообщение #3


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Простите ни как не врублюсь как же мне это всё впихнуть в скрипт?
Прикрепленный файл  Janus_HS_light_API2.lua ( 4.48 килобайт ) Кол-во скачиваний: 5
Go to the top of the page
+Quote Post
Accelerator
сообщение 10.2.2010, 15:04
Сообщение #4


Developer
******

Группа: Модераторы
Сообщений: 541
Регистрация: 11.11.2008
Пользователь №: 1 075
Спасибо сказали: 244 раза




Прикрепленный файл  Janus_HS_light_API2.lua ( 5.16 килобайт ) Кол-во скачиваний: 9


Спасибо сказали:
Go to the top of the page
+Quote Post
DrakonSP
сообщение 10.2.2010, 16:07
Сообщение #5


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Спасибо всё я разобрался =))
Просто по началу ошибку выдавало, но там моя тупость
И сообщение мне надо было в другое место пихнуть
Вообщем всё работает

вот тока функция GetNormalTime(s) нагло врёт
Бан вешаеться на 1440 минут (т.е 24 часа, т.е 1 день)
А отображает: Вы забанены на 24 минут 0 секунд

А как сделать так что бы переменая "RekBanTime" была не в минутах а в сек?
Go to the top of the page
+Quote Post
Accelerator
сообщение 10.2.2010, 16:53
Сообщение #6


Developer
******

Группа: Модераторы
Сообщений: 541
Регистрация: 11.11.2008
Пользователь №: 1 075
Спасибо сказали: 244 раза




Код
function GetNormalTime(s)
    s=tonumber(s) or 0
    local r=""
    if s>=1440 then r=r..math.floor(s/1440).." дней " s=math.fmod(s,1440) end
    if s>=60 then r=r..math.floor(s/60).." часов " s=math.fmod(s,60) end
    return r..s.." минут"
end
Go to the top of the page
+Quote Post
DrakonSP
сообщение 10.2.2010, 17:15
Сообщение #7


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




А как сделать так что бы переменая "RekBanTime" была не в минутах а в часах?
Т.е.
RekBanTime=24 -- Время бана за рекламу (в часах)
Go to the top of the page
+Quote Post
Setuper
сообщение 10.2.2010, 17:26
Сообщение #8


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




То в минутах, то в часах, - ты уж определись.
В функцию GetNormalTime подставляются секунды. Неужели нельзя догадаться перевести минуты в секунды или часы в секунды
Код
RekBanTime=1440            -- Время бана за рекламу (в минутах)
GetNormalTime(RekBanTime * 60) -- RekBanTime в минутах


Код
RekBanTime=24            -- Время бана за рекламу (в часах)
GetNormalTime(RekBanTime * 3600) -- RekBanTime в часах
Go to the top of the page
+Quote Post
DrakonSP
сообщение 10.2.2010, 17:51
Сообщение #9


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Да я не про это
Я про то что в переменой RekBanTime я указываю 1440 и это в минутах
При использовании функции GetNormalTime я могу сделать так, что бы написало хоть 1 год, хоть 10 лет,
а банит то всё равно на 1440 минут
Надо что то тут менять тогда!
Код
BanMan.TempBan(user,RekBanTime,Reason,NameBot,false)

Либо в наименовании самой переменной.
Кароч я чё то не догоняю =))
Мне как всегда надо потупить =))
Go to the top of the page
+Quote Post
Setuper
сообщение 10.2.2010, 18:18
Сообщение #10


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Код
BanMan.TempBan(user,RekBanTime,Reason,NameBot,false) -- RekBanTime в минутах

Код
BanMan.TempBan(user,RekBanTime*60,Reason,NameBot,false) -- RekBanTime в часах

Чего тут сложного?
Go to the top of the page
+Quote Post
DrakonSP
сообщение 10.2.2010, 18:35
Сообщение #11


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Всё блин допёр =))
ппц я тупил сорри
Котёл не варит сегодня вообще =))
Go to the top of the page
+Quote Post

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Сейчас: 23.11.2024, 6:07