Ejemplo n.º 1
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     // ≈сли в данном методе обрабатываетс¤ разрыв соединени¤ (например,
     // дл¤ сброса флага ¬Ѕою), то не забывайте вызывать метод базового
     // класса, так в нем выполн¤етс¤ закрытие журнала.
     return base.ќбработать—троку(строка, статусна¤—трока);
 }
Ejemplo n.º 2
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     // ≈сли в данном методе обрабатываетс¤ разрыв соединени¤ (например,
     // дл¤ сброса флага ¬Ѕою), то не забывайте вызывать метод базового
     // класса, так в нем выполн¤етс¤ закрытие журнала.
     return(base.ќбработать—троку(строка, статусна¤—трока));
 }
 public void  ачать‘ормированиеЌовогоЁха()
 {
     lock (this)
     {
         эхо = null;
     }
 }
Ejemplo n.º 4
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     Match match;
     string значение = строка.ToString();
     if (значение == "Select one :")
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return "2";
     }
     if (значение.StartsWith("* ¬ св¤зи с проблемами перевода"))
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return ";кто¤;счет";
     }
     if (значение.StartsWith("ѕересоедин¤емс¤") || значение.StartsWith("¬аша душа вновь вернулась в тело"))
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return "кто¤;счет";
     }
     match = Regex.Match(значение, @"^ѕадежи : (\w+)/\w+/\w+/\w+/\w+/\w+$");
     if (match.Success)
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (ѕеременные.»м¤ == "")
         {
             ѕеременные.»м¤ = match.Groups[1].Value;
             «агрузитьѕеременные();
         }
         return null;
     }
     match = Regex.Match(значение, @"^¬ы .* \(.+, .+, .+, (.+) \d+ уровн¤\)\.$");
     if (match.Success && требуетс¤«агрузкаѕрофил¤)
     {
         Ёлемент¬ывода.ƒобавить(строка);
         требуетс¤«агрузкаѕрофил¤ = false;
         return match.Result("#выполнить $1");
     }
     if (значение.IndexOf('>') != -1 && статусна¤—трока)
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (!Ёлемент¬ывода.∆урналќткрыт && !требуетс¤«агрузкаѕрофил¤)
             Ёлемент¬ывода.ќткрыть∆урнал(ѕеременные.»м¤, true);
         return null;
     }
     if (значение == "### —оединение утер¤но." || значение == "### —оединение разорвано пользователем.")
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (Ёлемент¬ывода.∆урналќткрыт)
             Ёлемент¬ывода.«акрыть∆урнал();
         —охранитьѕеременные();
         if (ѕеременные. оличество > 0)
             ѕеременные.ќчистить();
         ѕеременные.»м¤ = "";
         требуетс¤«агрузкаѕрофил¤ = true;
         return null;
     }
     return base.ќбработать—троку(строка, статусна¤—трока);
 }
Ejemplo n.º 5
0
    public —трока  опировать(int начало, int длина)
    {
        —имвол[] символы = new —имвол[длина];
        CopyTo(начало, символы, 0, длина);
        —трока результат = new —трока();

        результат.ƒобавить(символы);
        return(результат);
    }
Ejemplo n.º 6
0
 public virtual string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     Ёлемент¬ывода.ƒобавить(строка);
     if (строка.ƒлина > 0)
     {
         return(“риггеры[строка.ToString()]);
     }
     return(null);
 }
 public void ќчистить()
 {
     строки.ќчистить();
     дополнительные—троки = new List <—трока>(256);
     полосаѕрокрутки.¬осстановить();
     начальные оординаты”казател¤ = new Point(-1, -1);
     выделенный“екст = new StringBuilder();
     Cursor          = Cursors.Arrow;
     эхо             = null;
     Invalidate();
 }
Ejemplo n.º 8
0
 public void ¬ывести“аблицу÷ветов()
 {
     for (byte i = 0; i < 16; i++)
     {
         —трока строка = new —трока(32);
         for (byte j = 0; j < 16; j++)
         {
             строка.ƒобавить(i.ToString("X") + j.ToString("X"), j, i);
         }
         Ёлемент¬ывода.ƒобавить(строка);
     }
 }
Ejemplo n.º 9
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     Match match;
     string значение = строка.ToString();
     if (значение.StartsWith(" ровушка стынет в жилах"))
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (ѕеременные["Ћ”“"] != null)
             return "вз¤т все;вз¤т все все.труп;брос все.труп";
         return null;
     }
     return base.ќбработать—троку(строка, статусна¤—трока);
 }
 public void ƒобавитьЁхо(string команда)
 {
     lock (this)
     {
         if (эхо == null)
         {
             эхо = new —трока(64);
             ƒобавить(эхо);
         }
         эхо.ƒобавить("[", 2);
         эхо.ƒобавить(команда, 3);
         эхо.ƒобавить("]", 2);
     }
 }
Ejemplo n.º 11
0
    public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
    {
        Match  match;
        string значение = строка.ToString();

        if (значение.StartsWith(" ровушка стынет в жилах"))
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (ѕеременные["Ћ”“"] != null)
            {
                return("вз¤т все;вз¤т все все.труп;брос все.труп");
            }
            return(null);
        }
        return(base.ќбработать—троку(строка, статусна¤—трока));
    }
Ejemplo n.º 12
0
 public void ¬ывести“аблицу÷ветов()
 {
     for (byte i = 0; i < 16; i++)
     {
         —трока строка = new —трока(32);
         for (byte j = 0; j < 16; j++)
             строка.ƒобавить(i.ToString("X") + j.ToString("X"), j, i);
         Ёлемент¬ывода.ƒобавить(строка);
     }
 }
Ejemplo n.º 13
0
    public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
    {
        Match  match;
        string значение = строка.ToString();

        if (значение == "Select one :")
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return("2");
        }
        if (значение.StartsWith("* ¬ св¤зи с проблемами перевода"))
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return(";кто¤;счет");
        }
        if (значение.StartsWith("ѕересоедин¤емс¤") || значение.StartsWith("¬аша душа вновь вернулась в тело"))
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return("кто¤;счет");
        }
        match = Regex.Match(значение, @"^ѕадежи : (\w+)/\w+/\w+/\w+/\w+/\w+$");
        if (match.Success)
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (ѕеременные.»м¤ == "")
            {
                ѕеременные.»м¤ = match.Groups[1].Value;
                «агрузитьѕеременные();
            }
            return(null);
        }
        match = Regex.Match(значение, @"^¬ы .* \(.+, .+, .+, (.+) \d+ уровн¤\)\.$");
        if (match.Success && требуетс¤«агрузкаѕрофил¤)
        {
            Ёлемент¬ывода.ƒобавить(строка);
            требуетс¤«агрузкаѕрофил¤ = false;
            return(match.Result("#выполнить $1"));
        }
        if (значение.IndexOf('>') != -1 && статусна¤—трока)
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (!Ёлемент¬ывода.∆урналќткрыт && !требуетс¤«агрузкаѕрофил¤)
            {
                Ёлемент¬ывода.ќткрыть∆урнал(ѕеременные.»м¤, true);
            }
            return(null);
        }
        if (значение == "### —оединение утер¤но." || значение == "### —оединение разорвано пользователем.")
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (Ёлемент¬ывода.∆урналќткрыт)
            {
                Ёлемент¬ывода.«акрыть∆урнал();
            }
            —охранитьѕеременные();
            if (ѕеременные. оличество > 0)
            {
                ѕеременные.ќчистить();
            }
            ѕеременные.»м¤           = "";
            требуетс¤«агрузкаѕрофил¤ = true;
            return(null);
        }
        return(base.ќбработать—троку(строка, статусна¤—трока));
    }
Ejemplo n.º 14
0
 public virtual void ќбработатьѕолученный“екст(—трока[] строки)
 {
     foreach (—трока строка in строки)
         строка.”братьѕробелы¬ онце();
     Ёлемент¬ывода.¬ывести(строки);
 }
Ejemplo n.º 15
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     строка.ѕерекрасить("с севера", 0x0A);
     строка.ѕерекрасить("с юга", 0x0A);
     строка.ѕерекрасить("с запада", 0x0A);
     строка.ѕерекрасить("с востока", 0x0A);
     строка.ѕерекрасить("сверху", 0x0A);
     строка.ѕерекрасить("снизу", 0x0A);
     строка.«аменить("поплелись", "направили свой путь");
     строка.«аменить("¬ас", "¬ј—", 0x0B);
     Match match;
     string значение = строка.ToString();
     match = Regex.Match(значение, @"^ѕадежи : (\w+)/\w+/\w+/\w+/\w+/\w+$");
     if (match.Success && ѕеременные.»м¤ == "")
     {
         Ёлемент¬ывода.ƒобавить(строка);
         ѕеременные.»м¤ = match.Result("$1");
         Ёлемент¬ывода.ќткрыть∆урнал(ѕеременные.»м¤, true);
         return null;
     }
     if (значение.StartsWith("* ¬ св¤зи с проблемами перевода"))
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return ";кто¤";
     }
     if (значение.StartsWith("ѕересоедин¤емс¤") || значение.StartsWith("¬аша душа вновь вернулась в тело"))
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return "кто¤";
     }
     match = Regex.Match(значение, @"^\S+ сказал.? ¬ам : '.*'$");
     if (match.Success)
     {
         Ёлемент¬ывода.ƒобавить(строка);
          онструктор.√лавноеќкно.Ёлемент¬ывода.¬ывести(строка);
         return null;
     }
     match = Regex.Match(значение, @"\[.+:.+\] >$");
     if (match.Success && статусна¤—трока)
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (!вЅою)
         {
             вЅою = true;
             return "автоуклонение";
         }
         return null;
     }
     match = Regex.Match(значение, @">$");
     if (match.Success && статусна¤—трока)
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (вЅою)
             вЅою = false;
         return null;
     }
     if (значение == "   „его ¬аша душа желает ?" && статусна¤—трока) // при гибели персонажа
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (вЅою)
             вЅою = false;
         return null;
     }
     if (значение.StartsWith("### ") && статусна¤—трока) // при подключении и отключении
     {
         Ёлемент¬ывода.ƒобавить(строка);
         if (вЅою)
             вЅою = false;
         if (значение == "### —оединение утер¤но." || значение == "### —оединение разорвано пользователем.")
         {
             ѕеременные.»м¤ = "";
             Ёлемент¬ывода.«акрыть∆урнал();
             return null;
         }
         return null;
     }
     match = Regex.Match(значение, @"^### (¬ерси¤ MCCP| оэффициент сжати¤): (.+)\.");
     if (match.Success)
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return match.Result("эмо : $1 = $2");
     }
     if (значение == "### —жатие отсутствует.")
     {
         Ёлемент¬ывода.ƒобавить(строка);
         return "эмо : —жатие отсутствует";
     }
     if (значение == "ћинул час.")
     {
         Ёлемент¬ывода.ƒобавить(new —трока("----- ћ»Ќ”Ћ „ј— -----", 0x09));
         return "петь;ик";
     }
     if (значение.StartsWith("Ћед¤ной щит"))
         return null;
     if (значение.StartsWith("¬оздушный щит"))
         return null;
     if (значение.StartsWith("¬ам лучше встать"))
     {
         строка.ѕерекрасить(0x9F);
         Ёлемент¬ывода.ƒобавить(строка);
         return null;
     }
     return base.ќбработать—троку(строка, статусна¤—трока);
 }
Ejemplo n.º 16
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     return base.ќбработать—троку(строка, статусна¤—трока);
 }
Ejemplo n.º 17
0
 public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
 {
     return(base.ќбработать—троку(строка, статусна¤—трока));
 }
Ejemplo n.º 18
0
    public override string ќбработать—троку(—трока строка, bool статусна¤—трока)
    {
        строка.ѕерекрасить("с севера", 0x0A);
        строка.ѕерекрасить("с юга", 0x0A);
        строка.ѕерекрасить("с запада", 0x0A);
        строка.ѕерекрасить("с востока", 0x0A);
        строка.ѕерекрасить("сверху", 0x0A);
        строка.ѕерекрасить("снизу", 0x0A);
        строка.«аменить("поплелись", "направили свой путь");
        строка.«аменить("¬ас", "¬ј—", 0x0B);
        Match  match;
        string значение = строка.ToString();

        match = Regex.Match(значение, @"^ѕадежи : (\w+)/\w+/\w+/\w+/\w+/\w+$");
        if (match.Success && ѕеременные.»м¤ == "")
        {
            Ёлемент¬ывода.ƒобавить(строка);
            ѕеременные.»м¤ = match.Result("$1");
            Ёлемент¬ывода.ќткрыть∆урнал(ѕеременные.»м¤, true);
            return(null);
        }
        if (значение.StartsWith("* ¬ св¤зи с проблемами перевода"))
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return(";кто¤");
        }
        if (значение.StartsWith("ѕересоедин¤емс¤") || значение.StartsWith("¬аша душа вновь вернулась в тело"))
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return("кто¤");
        }
        match = Regex.Match(значение, @"^\S+ сказал.? ¬ам : '.*'$");
        if (match.Success)
        {
            Ёлемент¬ывода.ƒобавить(строка);
             онструктор.√лавноеќкно.Ёлемент¬ывода.¬ывести(строка);
            return(null);
        }
        match = Regex.Match(значение, @"\[.+:.+\] >$");
        if (match.Success && статусна¤—трока)
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (!вЅою)
            {
                вЅою = true;
                return("автоуклонение");
            }
            return(null);
        }
        match = Regex.Match(значение, @">$");
        if (match.Success && статусна¤—трока)
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (вЅою)
            {
                вЅою = false;
            }
            return(null);
        }
        if (значение == "   „его ¬аша душа желает ?" && статусна¤—трока)         // при гибели персонажа
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (вЅою)
            {
                вЅою = false;
            }
            return(null);
        }
        if (значение.StartsWith("### ") && статусна¤—трока)         // при подключении и отключении
        {
            Ёлемент¬ывода.ƒобавить(строка);
            if (вЅою)
            {
                вЅою = false;
            }
            if (значение == "### —оединение утер¤но." || значение == "### —оединение разорвано пользователем.")
            {
                ѕеременные.»м¤ = "";
                Ёлемент¬ывода.«акрыть∆урнал();
                return(null);
            }
            return(null);
        }
        match = Regex.Match(значение, @"^### (¬ерси¤ MCCP| оэффициент сжати¤): (.+)\.");
        if (match.Success)
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return(match.Result("эмо : $1 = $2"));
        }
        if (значение == "### —жатие отсутствует.")
        {
            Ёлемент¬ывода.ƒобавить(строка);
            return("эмо : —жатие отсутствует");
        }
        if (значение == "ћинул час.")
        {
            Ёлемент¬ывода.ƒобавить(new —трока("----- ћ»Ќ”Ћ „ј— -----", 0x09));
            return("петь;ик");
        }
        if (значение.StartsWith("Ћед¤ной щит"))
        {
            return(null);
        }
        if (значение.StartsWith("¬оздушный щит"))
        {
            return(null);
        }
        if (значение.StartsWith("¬ам лучше встать"))
        {
            строка.ѕерекрасить(0x9F);
            Ёлемент¬ывода.ƒобавить(строка);
            return(null);
        }
        return(base.ќбработать—троку(строка, статусна¤—трока));
    }