|
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
![]()
Сообщение
#21
|
|
![]() Developer ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 541 Регистрация: 11.11.2008 Пользователь №: 1 075 Спасибо сказали: 244 раза ![]() |
Код local sCmd = sData:match"%b<>%s+[!+*](%S+)" if sCmd == "команда" or sCmd == "команда2" or sCmd == "команда3" then Ошибка была в регулярном выражении. |
|
|
![]()
Сообщение
#22
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
И так тоже никак.
|
|
|
![]()
Сообщение
#23
|
|
![]() Developer ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 541 Регистрация: 11.11.2008 Пользователь №: 1 075 Спасибо сказали: 244 раза ![]() |
Код function ChatArrival(user, sData)
local sData = string.sub(sData,1,-2) local sCmd = sData:match"%b<>%s+[!+*](%S+)" if sCmd == "test" or sCmd == "stats" or sCmd == "команда3" then ... return true end end |
|
|
![]()
Сообщение
#24
|
|
![]() RusHub team lead ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз ![]() |
вместо этого:
Код local sData = string.sub(sData,1,-2) local sCmd = sData:match"%b<>%s+[!+*](%S+)" лучше писать так: Код local sCmd = sData:match"%b<>%s+[!+*](%S+)|$"
|
|
|
![]()
Сообщение
#25
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
Вопрос таковой, как сделать сохранение данных - юзеров, шары в txt файл что бы потом вывести на сайт???
|
|
|
![]()
Сообщение
#26
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
Предыдущий вопрос решёл. Спасибо Nickolya.
Сейчас вопрос такой: В некоторых скриптах видел подобную функцию. Пример. "Отсылать ли сообщение в приват или в главный чат? пишем true Отсылается сообщение в чат Пишем false - отсылается сообщение в приват." "Дублировать ли важные сообщения? (Отсылать в лс и в чат) Пишем true - Отсылается и в приват и в гл чат Пишем false Сообщение идёт только в приват." Попробовал выдернуть из других скриптов не получилось. Скажите пожалуйста как написать такую функцию. Зарание спасибо. |
|
|
![]()
Сообщение
#27
|
|
![]() Продвинутый участник ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 153 Регистрация: 21.9.2008 Из: Челябинск Пользователь №: 574 Спасибо сказали: 54 раза ![]() |
Код If bFlag == true then Core.SendToAll("сообщение всем") elseif bFlag == false then Core.SendPmToNick(tUser.sNick, sBot,"сообщение в приват") end Ну и аналогично второе... bFlag - параметр который будет настраиваться и проверяться. tUser.sNick - адресат (юзер с ником в параметре sNick) sBot - отправитель |
|
|
![]()
Сообщение
#28
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
Код if sCmd == sCmd.MainStat then Core.SendToUser(user,""..sLine.."\r\n\t\t\tИнформация о вас\r\n\n".. "\t[::] Ваш ник: "..user.sNick.."\t [::] Ваш IP: "..user.sIP.."\t \r\n".. "\t[::] Ваша шара: "..GetNormalShare(Core.GetUserValue(user,16)).."\t [::] Ваш режим: "..ModeRec(user).."\r\n".. "\t[::] Местоположение: "..tostring(IP2Country.GetCountryName(user)).." \r\n".. "\t"..sLine.."\r\n") return true end sPrefix = "+" sCmd = { MainStat = "mystat", } Вот как бы сижу рисую, пробую всё и понемногу ![]() Не пойму в чём у меня тут ошибка? В птоке ошибка: attempt to index global 'sCmd' (a nil value) |
|
|
![]()
Сообщение
#29
|
|
![]() Продвинутый участник ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 153 Регистрация: 21.9.2008 Из: Челябинск Пользователь №: 574 Спасибо сказали: 54 раза ![]() |
А как может таблица быть равна одному из полей таблицы?
По-моему тебе надо изменить название переменной для захвата команды или имя таблицы с набором возможных команд. |
|
|
![]()
Сообщение
#30
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
что то не то, и не могу понять что... не работают так команды
![]() Раскрывающийся текст Код if sCmd == "..sCmd.MainStat.." then Core.SendToUser(user,""..sLine.."\r\n\t\t\tИнформация о вас\r\n\n".. "\t[::] Ваш ник: "..user.sNick.."\t [::] Ваш IP: "..user.sIP.."\t \r\n".. "\t[::] Ваша шара: "..GetNormalShare(Core.GetUserValue(user,16)).."\t [::] Ваш режим: "..ModeRec(user).."\r\n".. "\t[::] Местоположение: "..tostring(IP2Country.GetCountryName(user)).." \r\n".. "\t"..sLine.."\r\n") return true end if sCmd == "..sCmd.Hub.." then Core.SendToUser(user,""..sLine.."\r\n".. "\t\t\tО хабе\r\n\n".. "\t[::] Местоположение хаба:\r\n\t[::] Страна: "..Country..",\t Регион: "..Republic..",\tГород: "..City..".\r\n".. "\t[::] Главный бот хаба: "..sBot..", E-Mail: "..BotMail.."\r\n".. "\t[::] Топик хаба: "..sTopic.."\r\n".. "\t[::] Описание хаба: "..HubDescription.."\r\n".. "\t[::] Время непрерывной работы хаба: "..GetNormalTime(Core.GetUpTime()).."\r\n".. "\t"..sLine.."") return true end sPrefix = "+" --Префикс команд sCmd = { MainStat = "mystat", Hub = "hub", } |
|
|
![]()
Сообщение
#31
|
|
![]() Продвинутый участник ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 153 Регистрация: 21.9.2008 Из: Челябинск Пользователь №: 574 Спасибо сказали: 54 раза ![]() |
не видно функции ChatArrival в которой производился бы захват какой-либо команды.
Ну и ещё перечитай мой предыдущий пост. Ты все ещё пытаешься сравнить таблицу с одним из её полей. |
|
|
![]()
Сообщение
#32
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
В скрипте написан код
Код function UserConnected(tUser) Core.SendToUser(tUser, "\r\n".. "\t\t\tДобро пожаловать, "..tUser.sNick..", на "..HubName.." г. "..City..".\r\n".. "\t\t\t\t "..HubDescription.."\r\n".. "\t\t\t\t"..DecText.."\r\n".. "\t\t\t"..sLine.."\r\n".. "\t\t\tВаш ник: "..tUser.sNick..", IP-Адрес: "..tUser.sIP..", Ваша шара: "..GetNormalShare(Core.GetUserValue(tUser,16)).."") end OpConnected = UserConnected RegConnected = UserConnected function GetNormalShare(s) s=tonumber(s) or 0 if s>=1099511627776 then return string.format("%.2f",(math.floor(1000*s/1099511627776)/1000)).." TБ" elseif s>=1073741824 then return string.format("%.3f",(math.floor(1000*s/1073741824)/1000)).." ГБ" elseif s>=1048576 then return (math.floor(1000*s/1048576)/1000).." МБ" elseif s>=1024 then return (math.floor(1000*s/1024)/1000).." КБ" else return s.." Б" end end Шара юзера отображается нормально. а если заменить function UserConnected(tUser) на function ValidateNickArrival(tUser, sData) то шара юзера отображается 0Б. В чём может быть причина и как можно исправить? |
|
|
![]()
Сообщение
#33
|
|
![]() RusHub team lead ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз ![]() |
Это никак не исправить. На стадии валидации ника определён только ip адрес и ник, больше ничего не определено, так как пользователь ещё не отослал на хаб MyINFO строку.
|
|
|
![]()
Сообщение
#34
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
Подскажите пожалуйста что не так в коде? Ошибка attempt to call global 'Send' (a nil value)
Код function ChatArrival(user, sData)
local cmd = sData:match"%b<>%s+(%S+).*|" if cmd == "+dcmagnet" then Send(sData) if SendMsg == Pm then Core.SendPmToUser(user, sData, "<"..Bot.."> "..msg) elseif SendMsg == Main then Core.SendToUser(user, sData, "<"..Bot.."> "..msg) end end return true end SendMsg = Pm --Куда отсылать сообщение |
|
|
![]()
Сообщение
#35
|
|
![]() Самый главный активист :-D ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз ![]() |
вот в этой строчке
Код Send(sData) скрипт пытается вызвать глобальную функцию Send которая видимо не определена в скрипте... |
|
|
![]()
Сообщение
#36
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
А как сделать надо будет?
|
|
|
![]()
Сообщение
#37
|
|
![]() Самый главный активист :-D ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз ![]() |
ты понимаешь что такое функция?
чтобы ошибка пропала достаточно написать Код function Send(sData) end а вот что делать должна эта функция хз.... думаю надо скрипт приложить тогда можно будет посмотреть))) |
|
|
![]()
Сообщение
#38
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
А всё сделал, Спасибо Wariner
![]() щас ещё кое что поправлю
Прикрепленные файлы
|
|
|
![]()
Сообщение
#39
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
Вот на некоторых хабах видел такую функцию
\\история чата\\посылать при входе (да или нет) Меню сделать не проблема, ![]() вот как написать функцию которая позволит чтобы юзер сам мог выбирать посылать ли ему сообщение при входе или нет? |
|
|
![]()
Сообщение
#40
|
|
![]() Самый главный активист :-D ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз ![]() |
1) пишешь меню с командой.
2) отлавливаешь эту команду в чате + ник писавшего и его решение ( типо 1 - посыдать; 0 - не посылать) 3) записываешь в таблицу ник = решение (можно и не в таблицу но я вот как то к ним не ровно дышу) 4) при входе проверяешь условие если 1 посылаешь если нет то нет))) |
|
|
![]() ![]() |
Похожие темы
![]() |
Сейчас: 17.2.2025, 8:12 |