Ищу Скрипт Приветствий |
Здравствуйте, гость ( Вход | Регистрация )
Ищу Скрипт Приветствий |
25.6.2008, 14:29
Сообщение
#1
|
|
Начинающий Группа: Пользователи Сообщений: 22 Регистрация: 22.6.2008 Из: Мелеуз Пользователь №: 55 Спасибо сказали: 7 раз |
Выложите у ково есть токой скрипт Который приведствует каждый профель
типо того [Bot]PtokaX ••• Поприветствуем Оператора хаба "Nik"••• |
|
|
25.6.2008, 15:45
Сообщение
#2
|
|
Освоившийся участник Группа: Администраторы Сообщений: 344 Регистрация: 2.6.2008 Из: RB,Ufa Пользователь №: 8 Спасибо сказали: 106 раз |
Выложите у ково есть токой скрипт Который приведствует каждый профель типо того [Bot]PtokaX ••• Поприветствуем Оператора хаба "Nik"••• Подобного рода скрипт можно и самому написать. Ничего сложного нет. Объясню пошагово как же написать свой первы скрипт (Лучше начинать с приветствий) Шаг 1. Задаем имя бота. Допустим Код sBot = "Ваше_имя_бота" либо если хотите чтоб ваш бот имел имя вашего системного бота Код sBot = frmHub:GetHubBotName() frmHub: - обращение к вашему хабу GetHubBotName - Что именно вам надо (Тем кто хоть чуть знает английский думаю проблем разобраться с API PtokaX не составит проблем) Шаг 2. Теперь нужно отыскать нужную нам функцию. Итак лезем в папке с PtokaX.exe и открываем Scripting-Interface.txt находим раздел Functions смотрим дальше. NewUserConnected(tUser) - вот что нам надо. Функция выполняется при коннекте юзера к хабу. Итак записываем Код function NewUserConnected(User) tUser - таблица с информацией о подключившемся пользователе. Имеет вид: tUser = { "sNick" = Ник "sIP" = ip-адрес итп } Шаг 3. Итак теперь нам надо разграничить т.е. "кому что отсылать". Обычно различные сообщения отсылаются в зависимотси от профиля зашедшего юзера. Чтож не будем менять традицию =) Создаем таблицу с сообщениями. Каждому профилю присваивается свое сообщение. Код sProfMessages = { [0] = "Приветствую мастер", [1] = "Приветствую ОПератор", [2] = "Приветствую ВИП", } [0] - индекс, "Приветствую мастер" - его значение. И не забывайте после каждого значения ставить "," Шаг 4. Теперь надо чтобы хаб различил какой у вас профиль и отослал соответствующее сообщение. Пишем Код sProfMes = sProfMessages[tUser.iProfile] sProfMes - произвольная переменная sProfMessages - таблица содержащая сообщения профилей. tUser.iProfile - ваш профиль. Допустим вы мастер. Ваш профиль = 0 (по дефолту) Получается запись вида sProfMessages[0] что равно "Приветствую мастер" т.е. по индексу мы присваиваем переменной sProfMes значение индекса [0] Шаг 5. Теперь это сообщение надо отправить. Код if sProfMes then tUser:SendData(sBot,""..sProfMes.." "..tUser.sName.."") SendToAll(sBot,""..sProfMes.." "..tUser.sName.."") end tUser:SendData - отправить юзеру в чат (tUser:SendPM - в личку) SendToAll - Отправить всем if sProfMes then -- проверяем существует ли сообщение которые мы собираемся отправить юзеру. Если допустим будет подключаться регистр. юзеро профль у которого = 3 (по дефолту) то не имея это проверки бот выдаст ошибку потому что в таблице sProfMessages нет сообщения для профиля = 3 В PtolaX так же есть функция которая срабатывает при подключении оператора (OpConnected). Чем отличается оператор от простого пользователя. Для нас оператор - юзер с полномочиями для хаба оператор - юзер с "ключиком". Он выделяется среди всех прочих (цветом и местоположением в списке юзеров в клиенте DC++) К чем все это? Да к тому что в нынешнем состоянии скрипт будет отправлять сообщение только ВИПам (профиль == 2) потому что они не имеют ключика с функция срабатывает при их подключении. Для того чтобы наш скрипт работал полноценно приравняем Код OpConnected = NewUserConnected Только так и никак иначе. Ибо функция NewUserConnected уже описана и содержит определенные действия. Написав NewUserConnected = OpConnected мы при заходе випа регюзера и гостя будем выполнять функция OpConnecyted которая у нас в скрипте не описана. в конце концов получаем Код sBot = frmHub:GetHubBotName() sProfMessages = { [0] = "Приветствую мастер", [1] = "Приветствую ОПератор", [2] = "Приветствую ВИП", } function NewUserConnected(tUser) sProfMes = sProfMessages[tUser.iProfile] if sProfMes then tUser:SendData(sBot,""..sProfMes.." "..tUser.sName.."") SendToAll(sBot,""..sProfMes.." "..tUser.sName.."") end end OpConnected = NewUserConnected -------------------------------------------------------------------------------------------------------------------------------------------------------------------- Все описанное выше - результаты моего самообучения Lua. Я не профессионал и не могу утверждать что мои "приемы" идеальны. Я действую в общепринятых рамках. В данном мануале могут содержаться неточности и грубости. Прошу не судите строго я всего лишь хочу поделиться тем что сам понял и знаю. |
|
|
25.6.2008, 18:11
Сообщение
#3
|
|
Начинающий Группа: Пользователи Сообщений: 22 Регистрация: 22.6.2008 Из: Мелеуз Пользователь №: 55 Спасибо сказали: 7 раз |
Спосиба большое я понел с первого раза))0
|
|
|
4.11.2008, 16:01
Сообщение
#4
|
|
Освоившийся участник Группа: Пользователи Сообщений: 314 Регистрация: 13.10.2008 Пользователь №: 791 Спасибо сказали: 9 раз |
Jaska, спасибо!
а можно тоже самое но только под АПИ2? |
|
|
8.11.2008, 9:43
Сообщение
#5
|
|
Постоялец Группа: Пользователи Сообщений: 454 Регистрация: 17.10.2008 Из: Новосибирск Пользователь №: 825 Спасибо сказали: 90 раз |
Есть старый-престарый скрипт Инфо пользователя от Semjon, 2005 года.
Я его немного подредактировал, приветствие у меня выглядит примерно так: Цитата [12:04:23] Baш IP: **.**.**.** Baш клиeнт: ApexDC++ , вepcия: 1.1.0 Bы нa 1 xaбax и y вac oткpытo 10 cлoтoв Baшa шapa: 241.38 Gb., Baшe oпиcaниe: ... Baш пpoфиль: Master Oбщaя шapa xaбa: 19.327 Tb. Ceйчac нa xaбe: 64 пoceтитeлeй. [12:04:23] <БoтПpoщaйMoлoдocть> Пpивeтcтвyю, [INT]district, paд видeть в дoбpoм здpaвии! :-) Дописал строчку по желанию автора топика: Код SendToAll(Bot, "Пришел "..v[2].." "..user.sName..", ура, товарищи! :-)") Изменяйте под свои потребности, хотя по мне, так эта мельтешня с ивещениями в чате совсем ни к чему. (У меня такой строчки нет ) :-)
Прикрепленные файлы
|
|
|
Похожие темы
|
Сейчас: 23.11.2024, 18:56 |