Окна... Не только Windows 9x.

1) mIRC32 а-ля Photoshop 6.0

Как то раз, часа в 2 ночи, на IRC залетает какой-то чел и начинает судорожно у всех спрашивать, как в мирке... РИСОВАТЬ? Ну все,
естественно, его посылают или дают нелепые советы, типа, набери "/quit" или "/run con/con" и прочую лабуду.
Но несмотря на глупость, к моему удивлению, mIRC32 позволяет рисовать различные фигуры, сохранять или загружать их в bmp-файлах и многое другое.

Рассмотрим банальный пример. Нарисуем обычный домик %) в отдельном окне, которое назовем @domik.
Для этого добавим небольшой скрипт в раздел Aliases (Alt+A):

dl {
window -kap @domik
drawrect -f @domik 1 5 240 150 180 300
drawline @domik 1 5 242 150 330 5
drawline @domik 1 5 330 5 416 150
drawrect -f @domik 0 5 295 250 70 90 
drawline @domik 1 5 330 250 330 340
drawline @domik 1 5 295 280 330 280
drawtext @domik 1 277 100 Happy new year
}

и выполним команду "/dl". Перед вами предстанет произведение
искусства %) А теперь подробнее, что означают странные цифры и команды:
1. window -kap @domik - Создаем графическое (-p) окно @domik, активизируем его (-a) и скрываем символ собаки перед именем окна для красоты 😉 (-k).
2. drawrect -f @domik 1 5 240 150 180 300 - Рисуем большой прямоугольник и заливаем его черным цветом
3.drawline @domik 1 5 242 150 330 5
drawline @domik 1 5 330 5 416 150
drawrect -f @domik 0 5 295 250 70 90 
drawline @domik 1 5 330 250 330 340
drawline @domik 1 5 295 280 330 280 - Рисуем остальные части домика
4. drawtext @domik 1 277 100 Happy new year - Поздравление с новым годом 😉

Вот, собственно, и все, что нужно для начинающего художника... А теперь
сохраним свой эскиз в bmp файле, набрав "/drawsave @domik
c:\dom.bmp", и рисунок успешно сохранится у тебя на винте.

2) Ох уж эти окна

Еще немного об окнах. Окна бывают не только графические, но и текстовые, с возможностью выбрать что-либо из списка (как окна, вызываемые при "/list" или "/links") и другие.

Для примера сделаем небольшую программу-калькулятор, которая будет выполнять элементарные действия над числами 😉

Перейдем в меню "Remote" (Alt+R) и напишем туда следующее:

menu @calculator {
dclick: cproc
}

Этим скриптом мы создали сценарий на дабл-клик в окне @calculator.

Далее пишем снова в "Aliases":

calc {
window -kla @calculator
aline 2 @calculator 1. Сложение
aline 3 @calculator 2. Вычитание
aline 4 @calculator 3. Умножение
aline 5 @calculator 4. Деление
}

Этим алиасом создаем окошко-список @calculator (-l) и добавляем в него строчки (названия операций) командой "/aline [цвет] <окно> <текст>". Особо любопытные могут сохранить скрипт и запустить команду "/calc", но mIRC будет ругаться при попытке выбрать что-либо, что нет такой команды "cproc". Вот ее-то мы сейчас и создадим (также в "Aliases"):

cproc {
dline @calculator 5
if ($sline(@calculator,1).ln == 1) {
set %coper +
goto oper

if ($sline(@calculator,1).ln == 2) {
set %coper -
goto oper

if ($sline(@calculator,1).ln == 3) {
set %coper *
goto oper

if ($sline(@calculator,1).ln == 4) {
set %coper /
goto oper
}

:oper
set %ca $$?="Первое число"
set %cb $$?="Второе число"
set %cres $calc(%ca %coper %cb)
if (%cres == $null) { aline 4 @calculator Недопустимая операция! | halt } 
aline @calculator %ca %coper %cb = %cres

}

Сам скрипт состоит из 2-х частей. В первой - инициализация переменной %coper (что делать-то с числами?), предварительно стираем строку с будущим результатом.
Переменная $sline с ключом ln показывает номер выбранной строки, он-то нам и нужен.
После определения операции переходим ко второй части, непосредственно, запроса 2-х чисел и подсчета результата, который будет аккуратно вписан в 5-ю строку. Если вместо чисел вы введете буквы или разделите на 0, то будет выведена строка "Недопустимая операция!", и скрипт завершит работу.

Вот, собственно, и все... Конечно, про окна можно писать мегабайты информации, т.к. существует туча опций и переменных для работы с ними + куча сценариев и выпадающих меню...

Об этом и многом другом я напишу в следующих частях этой интересной рубрики.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии