Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Развлекательные скрипты [PtokaX] _ Комплименты

Автор: AirKobra45 12.3.2012, 15:49

Название: Комплимент
Автор: AirKobra45
Версия API: API2
Описание скрипта: Выводит комплимент выбранному пользователю из чата.

Как-то в аське увидел такую штуку.. ну мне захотелось тож самое и в ДЦ задуманно - сделано! (ещё год назад)
Вот смотрим комментируем пользуемся!

 Kompliment.lua ( 7.32 килобайт ) : 221
 

Автор: ShadoWx 12.3.2012, 15:50

-- Оформи пост в соответствии с правилами.
Автор, версия, описание ...

Автор: AfLc 12.3.2012, 17:11

В файле кракозябры . Это закрытый код или я неправильной прогой открываю ?

Автор: Saymon21 12.3.2012, 17:21

Действительно, зачем компилировать скрипт то?

Автор: AirKobra45 12.3.2012, 17:25

Цитата(Saymon21 @ 12.3.2012, 23:21) *
Действительно, зачем компилировать скрипт то?

Сейчас перезалью.. не глянул какой выложил
Всё готово!

Автор: Tsd 12.3.2012, 18:58

Непонятно по какому принципу он выбирает ник при отсылке комплимента через меню на вкладке хаба. Может нужно поменять в меню на UserCommand 1 2 ?

Автор: nafig 13.3.2012, 3:17

уж очень глубокое меню получилось. Спасибо за скрипт оставлю. Такие скрипты лучше делать по принципу смены ника и пароля только ник это юзер а в место пороля это пол юзера М или Ж. Подругому походу никак невыйдет.

Автор: AirKobra45 13.3.2012, 7:06

Цитата(Tsd @ 13.3.2012, 0:58) *
Непонятно по какому принципу он выбирает ник при отсылке комплимента через меню на вкладке хаба. Может нужно поменять в меню на UserCommand 1 2 ?

Всё просто!
Код
function OnStartup()
--------------------
sCmd = "compl" --Команда, сокращение, от compliment.
sStartMenu = "Меню хаба\\Действия" --Расположение в Меню
--------------------
sMenu = ""
    for i = 1, #Table do
        sMenu = sMenu.."$UserCommand 1 3 "..sStartMenu.."\\"..Table[i][1].."$<%[mynick]> !"..sCmd.." "..i.." %[nick]||"
    end
--------------------
function UserConnected(tUser)
    Core.SendToUser(tUser, sMenu)
end
OpConnected,RegConnected = UserConnected,UserConnected
end

--И часть таблицы:
Table = {
    --Таблица комплиментов женщине
    {    "Комплимент\\Девушке",-- Вот это (Table[1][1])

получается при отправке Table[i][1] мы отправляем (Table[1][1]) и (Table[2][1])

Ник того на кого ты выбрал добавляется строкой %[nick] и соответственно девушка это или парень индексом i (подтаблица (таблицы Table) 1 - это девушка, 2- парень)


Темперь немного о $UserCommand:
Код
$UserCommand - стандартное начало
1 1 - только на закладке хаба(будет мешаться. Хотя кому как.)
1 2 - в чате, на списке юзеров, но не на закладке хаба.
1 3 - в чате, на списке юзеров и на закладке хаба.


т.е. говоря в личке, я жму на закладку и пользователю в общий чат выводится комплимент. А вообще дело вкуса меняй как тебе нравится

Цитата(nafig @ 13.3.2012, 9:17) *
Такие скрипты лучше делать по принципу смены ника и пароля только ник это юзер а в место пороля это пол юзера М или Ж. Подругому походу никак невыйдет.

Чего ты вообще имел ввиду?
Если то что выводится строка для ввода текста (%[line:название окошка]) и ты пишешь М или Ж... рукописный ввод лишь усложнит всё и конечному пользователю и проверками в скрипте на соответствие введённого тобою. А так навёл выбрал кому прямо в меню (девушке или парню) и вот тебе результат!

Автор: nafig 13.3.2012, 17:46

Уменя работает только если в чате по нику юзера правым кликом мышки жмёш всё ок пишет в чат, а из меню через вкладку хаба пишет мнеже в чат а не юзеру которому адресовано. Нету выбора ника для отправки комплимента.

Автор: AirKobra45 13.3.2012, 18:29

Цитата(nafig @ 13.3.2012, 23:46) *
Уменя работает только если в чате по нику юзера правым кликом мышки жмёш всё ок пишет в чат, а из меню через вкладку хаба пишет мнеже в чат а не юзеру которому адресовано. Нету выбора ника для отправки комплимента.

Не на вкладку хаба а на вкладку пользователя в личке надо жать чтоб ему комплимент в общий чат отправить

Автор: nafig 13.3.2012, 19:32

Неее мне нужно, чтобы был во вкладке хаба тоже выбор. А то когда регятся нажимают туда и получается неурядица с кучей вопросов, а чё мнеже пишет. Тролей и любопытных ты и сам вкурсе больше чем адекватов. Если ДЦ настроить немогут то тут точно непоймут.

Нашёл только один способ как убрать из меню во вкладке "меню" твоего скрипта. Короче в клиенте ДЦ есть в настройках "команда юзера" там прописываешь и получается этоже меню но только при клике по юзеру в чате или в списке неважно. Так проще и хаб ненагружает скриптами.

Автор: Артём 13.3.2012, 20:06

nafig, сам себе геморой нарастил...
Нужно открыть скрипт и сделать как http://mydc.ru/index.html?showtopic=5234&view=findpost&p=43102

Автор: Артём 13.3.2012, 20:31

Цитата
Не я лучше потихонечку буду понимать как лучше. Какие команды должны быть только в ДЦ, какие только для хаба. Лучше понять как правильно всё это разделить на клиента и хаб, а не пичкать хаб скриптами. Снизится в конечном итоге производительность хаба если в него бухать всё , что может сам клиент ДЦ. Нет желания делать из птоки грей линк. Если пользовался им то уже наверное заметил, что внём уже есть хаб но? мини. Типо хаб и клиент в одном интерфейсе. А нужно, чтобы было отдельно ДЦ у пользователя хаб с необходимыми настройками у Админа.

nafig, акстись...

Автор: AirKobra45 14.3.2012, 0:49

Цитата(nafig @ 14.3.2012, 1:32) *
Нашёл только один способ как убрать из меню во вкладке "меню" твоего скрипта. Короче в клиенте ДЦ есть в настройках "команда юзера" там прописываешь и получается этоже меню но только при клике по юзеру в чате или в списке неважно. Так проще и хаб ненагружает скриптами.

Ну ты и правда целый геморрой устроил! Причём тут ХАБ? меню тебе в хабе не мешает! А каждый если хочет себе добавить меню уже в своём клиенте это его дело.
Но специально для тебя:
Тип команды - Чат
Контекст - Меню юзера , Меню хаба
Название - Моё меню\Комплимент\Девушке
Команда - "скобки убери" ( !compl 1 %[userNI])
для парня всё точно также только поменяй 1 на 2!

Автор: nafig 14.3.2012, 0:59

Эт я правильно понял? Допустим если пользоватся грейлинком где есть права админа то сокрощённо получается ADC:(админ паель плюс дц клиент), а если пользоватся ДЦ клиентом и плюс держать свой хаб дапустим птокакс, то получается сокращённо dchub: (ДЦ клиент + софт хаба). А если очень хорошо подумать как это совместить между собой то получется adchub:vasy.poopkin.ru или я, что то не так понимаю?

Автор: CrazyKiller 14.3.2012, 1:26

Сие чюдо переведите пожалуйста под русхаб ))))

Автор: Артём 16.3.2012, 17:38

Цитата(AirKobra45 @ 12.3.2012, 14:49) *
...задуманно - сделано! (ещё год назад)

хм... а у меня он лежит в "хранилище скриптов" с 9.10.2010 big_smile.gif

Автор: AirKobra45 17.3.2012, 11:53

Цитата(Артём @ 16.3.2012, 23:38) *
хм... а у меня он лежит в "хранилище скриптов" с 9.10.2010 big_smile.gif

Не знаю что там у тебя лежит! НО точно не этот скрипт потому что этот скрипт я лично писал и базу брал и переделывал с бота в аське!
Наговариваешь тут!
Бери и сравнивай и смотри что там в том что у тебя лежит!

Автор: Артём 17.3.2012, 11:56

AirKobra45, нет, не наговариваю, я его взял из темы помощи, ты там часто просил помощь по этому скерипту, даже потестить скрипты прикрепрял, вот и взял я его. Скрипт твой, я же не пишу что он чей-то, а ты за свой выдаёшь big_smile.gif

Вот он
Код
--[[
Название:    Генератор комплиментов
Автор:        AirKobra45 (ICQ: 606-519-563; http://mydc.ru)
]]--    
--------------------
sCmd = "compl" --Команда, сокращение, от compliment.
sStartMenu = "Развлечения\\Действия" --Расположение в Меню
--------------------
function OnStartup()
    sMenu = ""
    for i, v in ipairs(Table) do
        sMenu = sMenu.."$UserCommand 1 3 "..sStartMenu.."\\"..v[1].."$<%[mynick]> !"..sCmd.." "..i.." %[nick]||"
    end
end

function ChatArrival(tUser,sData)
    local Cmd,sString = sData:match"^%b<>%s+%p(%S+)%s*(.*)|$"
    if Cmd and Cmd == sCmd then
        local iCmd,toWho = sString:match"^(%d+)%s+(%S+)"
        iCmd = tonumber(iCmd) or 0
        if (iCmd == 1 or iCmd == 2) then
            Core.SendToAll("<"..tUser.sNick.."> "..toWho..": "..ComplGen(iCmd))
        end
        return true
    end
end

function UserConnected(tUser)
    Core.SendToUser(tUser, sMenu)
end
RegConnected = UserConnected
OpConnected = UserConnected

function CGen(iCmd)
    local t = Table[iCmd]
    local Result1 = t[2][math.random(1, #t[2])]
    local Result2 = t[3][math.random(1, #t[3])]
    local Result3 = t[4][math.random(1, #t[4])]
    local Result4 = t[5][math.random(1, #t[5])]
    return Result1.." "..Result2.." "..Result3..""..Result4
end
--------------------
function ComplGen(iCmd)
    return CGen(iCmd).." "..CGen(iCmd).." "..CGen(iCmd)
end
--------------------
    --Таблица комплиментов, и подменю
Table = {
    --Таблица комплиментов женщине
    {    "Комплимент\\Девушке",
    --варианты вводной части
        {    "",
            "дорогая,",
            "так слушай же:",
            "должен признаться тебе, что",
            "любимая,",
            "поздравляю тебя от всей души -",
            "только",
            "говоря откровенно,",
            "солнышко мое,",
            "в этот праздник весны и всеобщего цветения",
            "знай, что",
            "в этот праздник я хочу сказать:",
            "от всей души поздравляю тебя - ",
            "знаешь, ",
        },
    --варианты утверждения
        {    "твоя красота",
            "неиссякающий источник твоего обаяния",
            "неувядающий лепесток твоей нежности",
            "твой прекрасный лик",
            "твой пленительный взгляд",
            "весь твой чарующий облик",
            "тепло твоей души",
            "биение твоего чуткого сердца",
            "согревающий свет твоих глаз",
            "твой образ, не имеющий аналогов в мировой литературе,",
            "струящийся водопад твоих сказочных волос",
            "прекрасная твоя улыбка",
            "таинственный аромат твоих духов",
            "тихий омут твоих глаз, в которых отражается небо,",
            "твой ласковый голос",
            "твое обаяние",
            "неиссякающий источник твоей энергии",
            "твоя неповторимая аура",
            "даже твое молчание",
            "твоя ласковая улыбка",
            "тихий омут твоих глаз, доводящий до головокружения,",
        },
    --варианты предварительного умозаключения
        {    "оставляет во мне глубокий след",
            "наполняет каждый день моего существования особенным смыслом",
            " - это путеводная звезда, которая не дает мне сбиться с пути",
            "требует произнесения соответствующих слов",
            "продлевает мою жизнь",
            "сводит с ума любого, особенно меня",
            "снится мне долгими ночами",
            "очаровывает и притягивает меня",
            "проникает в самые потаенные уголки моей измученной души",
            "согревает мое замерзшее мужское сердце",
            "восхищает",
            "завораживает",
            "чарует, как музыка",
            "кружит и увлекает меня за собой",
            "поражает мое воображение",
            " - это путеводная звезда, которая не дает мне сбиться с дороги",
            "не оставит равнодушным никого",
            "снится мне по ночам",
            "проникает в самые потаенные уголки моего сердца",
            "согревает мою душу",
            "восхищает меня",
            "завораживает меня",
            "чарует меня, как музыка",
        },
    --варианты логического вывода
        {    ".",
            ", наполняя смыслом пустое пространство бытия.",
            ", вызывая желание поздравить тебя.",
            ", давая почувствовать, что я все-таки мужчина!",
            ", возвращая меня к тем временам, когда мужчины были рыцарями!",
            ", вызывая готовность идти на дуэль или на край света.",
            ", поднимая волну нежности и прилив чувств.",
            ", подбадривая меня в трудные минуты.",
            ", помогая выплыть в бурном океане жизни.",
            ", даря надежду на будущее и уверенность в завтрашнем дне!",
            ", когда я думаю о тебе.",
            ", наполняя смыслом мою жизнь.",
            ", вызывая желание сделать для тебя все.",
            " и мне хочется обнять тебя.",
            ", когда я рядом с тобой.",
            "!",
        },
    },
    --Таблица комплиментов парню
    {    "Комплимент\\Парню",
    --варианты вводной части
        {    "мой джентльмен,",
            "дорогой,",
            "в этот праздник я хочу сказать:",
            "мой рыцарь,",
            "любимый,",
            "от всей души поздравляю тебя - ",
            "только",
            "говоря откровенно,",
            "солнце мое,",
            "",
            "мой герой,",
            "знаешь, ",
            "должна признаться тебе, что",
            "так слушай же:",
            "поздравляю тебя от всей души -",
            "знай, что",
        },
    --варианты утверждения
        {    "твое обаяние",
            "неиссякающий источник твоей энергии",
            "твоя уверенность в себе",
            "один твой взгляд",
            "прикосновение твоих сильных и нежных рук",
            "твой мужественный облик",
            "тепло твоей души",
            "биение твоего чуткого сердца",
            "настоящая мужская спина, за которой можно спрятаться,",
            "твоя неповторимая аура",
            "даже твое молчание",
            "твоя ласковая улыбка",
            "крепкое мужское плечо",
            "тихий омут твоих глаз, доводящий до головокружения,",
            "твой ласковый голос",
            "твоя красота",
            "неиссякающий источник твоего обаяния",
            "твой пленительный взгляд",
            "согревающий свет твоих глаз",
            "твой образ, не имеющий аналогов в мировой литературе,",
            "прекрасная твоя улыбка",
        },
    --варианты предварительного умозаключения
        {    "заставляет меня трепетать",
            "наполняет каждый день моего существования особенным смыслом",
            " - это путеводная звезда, которая не дает мне сбиться с дороги",
            "не оставит равнодушным никого",
            "продлевает мою жизнь",
            "сведет с ума любую (тем более меня)",
            "снится мне по ночам",
            "очаровывает и притягивает меня",
            "проникает в самые потаенные уголки моего сердца",
            "согревает мою душу",
            "восхищает меня",
            "завораживает меня",
            "чарует меня, как музыка",
            "кружит и увлекает меня за собой",
            "поражает мое воображение",
            "оставляет во мне глубокий след",
            "- это путеводная звезда, которая не дает мне сбиться с пути",
            "требует произнесения соответствующих слов",
            "сводит с ума любого, особенно меня",
            "снится мне долгими ночами",
            "проникает в самые потаенные уголки моей измученной души",
            "восхищает",
            "завораживает",
            "чарует, как музыка",
        },
    --варианты логического вывода
        {    ".",
            ", наполняя смыслом мою жизнь.",
            ", вызывая желание поздравить тебя.",
            ", не давая забыть о том, что я - слабый пол.",
            ", напоминая о тех временах, когда мужчины были настоящими рыцарями!",
            ", вызывая желание сделать для тебя все.",
            ", захлестывая меня теплой волной чувств и нежности.",
            ", подбадривая меня в трудные минуты.",
            " и мне хочется обнять тебя.",
            ", помогая выплыть в бурном океане жизни.",
            ", даря надежду на будущее и уверенность в завтрашнем дне!",
            ", когда я рядом с тобой.",
            ", наполняя смыслом пустое пространство бытия.",
            ", поднимая волну нежности и прилив чувств.",
            ", когда я думаю о тебе.",
            "!",
        },
    },
}    --Конец таблицы

А http://mydc.ru/topic173s820.html?p=34192&hl=Compliment#entry34192 где я его взял big_smile.gif

Автор: AirKobra45 17.3.2012, 12:00

Цитата(Артём @ 17.3.2012, 17:56) *
AirKobra45, нет, не наговариваю, я его взял из темы помощи, ты там часто просил помощь по этому скерипту, даже потестить скрипты прикрепрял, вот и взял я его

Ну тогда всё понятно! А я думал что у тебя что-то другое нашлось.. значит раньше писал чем год назад... (тогда я только начинал.. естественно не без помощи на этом форуме)