Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 2 из 3 ПерваяПервая 1 2 3 ПоследняяПоследняя
Показано с 11 по 20 из 23
  1. #11
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Anton Styazhkin Посмотреть сообщение
    Я-то подумал, что наоборот... Я тупой просто :)

    ---

    А что если создать массив глобальный, потом перехватить все такие функции и просто скрепить инфу в один массив?
    Я именно это и хотел. И даже только что почти написал код для перехвата текстдравов для игроков (осталось лишь написать вывод окончательного варианта в консоль и мне нужно было проверить что означает предпоследнее число. Из-за этого открыл другой файл, а потом закрыл все два Pawno -_-), но закрыл Pawno без сохранения -_- Если никто нормальных вариантов не выложит, завтра либо полноценный инклюд подготовлю, либо просто пример
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  2. #12
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Я именно это и хотел. И даже только что почти написал код для перехвата текстдравов для игроков (осталось лишь написать вывод окончательного варианта в консоль и мне нужно было проверить что означает предпоследнее число. Из-за этого открыл другой файл, а потом закрыл все два Pawno -_-), но закрыл Pawno без сохранения -_- Если никто нормальных вариантов не выложит, завтра либо полноценный инклюд подготовлю, либо просто пример
    Да задрал. Я уже допиливаю на какашке прогу.

  3. Пользователь сказал cпасибо:
    DeimoS (24.03.2016)
  4. #13
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±
    Я сделал.



    PHP код:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    using System.IO;
    using System.Text.RegularExpressions;

    namespace 
    ipleomax
    {
        class 
    Program
        
    {
            public static 
    string iPositionX "0.000000";
            public static 
    string iPositionY "0.000000";
            public static 
    string iLetterX "0.000000";
            public static 
    string iLetterY "0.000000";
            public static 
    string iTextX "0.000000";
            public static 
    string iTextY "0.000000";
            public static 
    string iAlignment "0";
            public static 
    string iColor "0";
            public static 
    string iUsebox "0";
            public static 
    string iBoxcolor "0";
            public static 
    string iShadow "0";
            public static 
    string iOutline "0";
            public static 
    string iBackgroundcolor "0";
            public static 
    string iFont "0";
            public static 
    string iProportion "0";
            public static 
    string iSelectable "0";
            public static 
    string iType "0";
            public static 
    string iText "0";

            static 
    void Main(string[] args)
            {
                
    Console.WriteLine("Enter path to file");
                
    string path Console.ReadLine();

                
    using (StreamReader fRead = new StreamReader(pathEncoding.GetEncoding("windows-1251")))
                {
                    
    using (StreamWriter fWrite = new StreamWriter(path ".result"false))
                    {
                        
    string line string.Empty;

                        
    Regex integer = new Regex(@"\b(\d+)|-\b(\d+)");
                        
    Regex doubles = new Regex(@"(?:\d{1,6})?(?:\.\d{1,6})|-(?:\d{1,6})?(?:\.\d{1,6})");
                        
    Regex quote = new Regex("\"[^\"\\\\]*(?:\\\\.[^\"\\\\]*)*\"");
                        
    Regex bracket = new Regex(@"\(.+\)");

                        
    MatchCollection collection;

                        
    bool key false;

                        while (!
    fRead.EndOfStream)
                        {
                            
    line fRead.ReadLine();

                            if (
    line.Length == 0)
                            {
                                if (
    key == false)
                                    continue;
                                
    string resultLine string.Format("{0}|{1}|{2}|{3}|{4}|{5}|{6}|{7}|{8}|{9}|{10}|{11}|{12}|{13}|{14}|{15}|{16}|{17}",
                                    
    iPositionXiPositionYiLetterX,
                                    
    iLetterYiTextXiTextY,
                                    
    iAlignmentiColoriUsebox,
                                    
    iBoxcoloriShadowiOutline,
                                    
    iBackgroundcoloriFontiProportion,
                                    
    iSelectableiTypeiText );

                                
    fWrite.WriteLine(resultLine);
                                
    Console.WriteLine(resultLine);

                                
    iPositionX "0.000000";
                                
    iPositionY "0.000000";
                                
    iLetterX "0.000000";
                                
    iLetterY "0.000000";
                                
    iTextX "0.000000";
                                
    iTextY "0.000000";
                                
    iAlignment "0";
                                
    iColor "0";
                                
    iUsebox "0";
                                
    iBoxcolor "0";
                                
    iShadow "0";
                                
    iOutline "0";
                                
    iBackgroundcolor "0";
                                
    iFont "0";
                                
    iProportion "0";
                                
    iSelectable "0";
                                
    iType "0";
                                
    iText "0";
                                
    key false;
                            }

                            if (
    line.Contains("TextDrawCreate") || line.Contains("CreatePlayerTextDraw"))
                            {
                                
    key true;
                                
    line bracket.Match(line).Value;
                                
    iText quote.Match(line).Value;
                                
    collection doubles.Matches(line);

                                
    iPositionX collection[0].Value;
                                
    iPositionY collection[1].Value;

                                
    iType = ((line.Contains("playerid") ? "1" "0"));
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawLetterSize") || line.Contains("PlayerTextDrawLetterSize"))
                            {
                                
    line bracket.Match(line).Value;

                                
    collection doubles.Matches(line);

                                
    iLetterX collection[0].Value;
                                
    iLetterY collection[1].Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawTextSize") || line.Contains("PlayerTextDrawTextSize"))
                            {
                                
    line bracket.Match(line).Value;

                                
    collection doubles.Matches(line);

                                
    iTextX collection[0].Value;
                                
    iTextY collection[1].Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawAlignment") || line.Contains("PlayerTextDrawAlignment"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iAlignment integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawColor") || line.Contains("PlayerTextDrawColor"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iColor integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawUseBox") || line.Contains("PlayerTextDrawUseBox"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iUsebox = (line.Contains("true") ? "1" "0");//integer.Match(line).Value;
                                
    continue;
                            }
                            
                            if (
    line.Contains("TextDrawBoxColor") || line.Contains("PlayerTextDrawBoxColor"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iBoxcolor integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetShadow") || line.Contains("PlayerTextDrawSetShadow"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iShadow integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetOutline") || line.Contains("PlayerTextDrawSetOutline"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iOutline integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawBackgroundColor") || line.Contains("PlayerTextDrawBackgroundColor"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iBackgroundcolor integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawFont") || line.Contains("PlayerTextDrawFont"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iFont integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetProportional") || line.Contains("PlayerTextDrawSetProportional"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iProportion integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetSelectable") || line.Contains("PlayerTextDrawSetSelectable"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iSelectable integer.Match(line).Value;
                                continue;
                            }
                        }
                    }
                }
                
    Console.Read();
            }

        }

    http://rghost.ru/6hMRyPWqn

    P.S. ацтаньте. 2 часа ночи. о коде не особо и думаю.
    Последний раз редактировалось Seregamil; 24.03.2016 в 23:49.

  5. Пользователь сказал cпасибо:
    Быдлокодер (25.03.2016)
  6. #14
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Seregamil Посмотреть сообщение
    Я сделал.

      Открыть/закрыть


    PHP код:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    using System.IO;
    using System.Text.RegularExpressions;

    namespace 
    ipleomax
    {
        class 
    Program
        
    {
            public static 
    string iPositionX "0.000000";
            public static 
    string iPositionY "0.000000";
            public static 
    string iLetterX "0.000000";
            public static 
    string iLetterY "0.000000";
            public static 
    string iTextX "0.000000";
            public static 
    string iTextY "0.000000";
            public static 
    string iAlignment "0";
            public static 
    string iColor "0";
            public static 
    string iUsebox "0";
            public static 
    string iBoxcolor "0";
            public static 
    string iShadow "0";
            public static 
    string iOutline "0";
            public static 
    string iBackgroundcolor "0";
            public static 
    string iFont "0";
            public static 
    string iProportion "0";
            public static 
    string iSelectable "0";
            public static 
    string iType "0";
            public static 
    string iText "0";

            static 
    void Main(string[] args)
            {
                
    Console.WriteLine("Enter path to file");
                
    string path Console.ReadLine();

                
    using (StreamReader fRead = new StreamReader(pathEncoding.GetEncoding("windows-1251")))
                {
                    
    using (StreamWriter fWrite = new StreamWriter(path ".result"false))
                    {
                        
    string line string.Empty;

                        
    Regex integer = new Regex(@"\b(\d+)|-\b(\d+)");
                        
    Regex doubles = new Regex(@"(?:\d{1,6})?(?:\.\d{1,6})|-(?:\d{1,6})?(?:\.\d{1,6})");
                        
    Regex quote = new Regex("\"[^\"\\\\]*(?:\\\\.[^\"\\\\]*)*\"");
                        
    Regex bracket = new Regex(@"\(.+\)");

                        
    MatchCollection collection;

                        
    bool key false;

                        while (!
    fRead.EndOfStream)
                        {
                            
    line fRead.ReadLine();

                            if (
    line.Length == 0)
                            {
                                if (
    key == false)
                                    continue;
                                
    string resultLine string.Format("{0}|{1}|{2}|{3}|{4}|{5}|{6}|{7}|{8}|{9}|{10}|{11}|{12}|{13}|{14}|{15}|{16}|{17}",
                                    
    iPositionXiPositionYiLetterX,
                                    
    iLetterYiTextXiTextY,
                                    
    iAlignmentiColoriUsebox,
                                    
    iBoxcoloriShadowiOutline,
                                    
    iBackgroundcoloriFontiProportion,
                                    
    iSelectableiTypeiText );

                                
    fWrite.WriteLine(resultLine);
                                
    Console.WriteLine(resultLine);

                                
    iPositionX "0.000000";
                                
    iPositionY "0.000000";
                                
    iLetterX "0.000000";
                                
    iLetterY "0.000000";
                                
    iTextX "0.000000";
                                
    iTextY "0.000000";
                                
    iAlignment "0";
                                
    iColor "0";
                                
    iUsebox "0";
                                
    iBoxcolor "0";
                                
    iShadow "0";
                                
    iOutline "0";
                                
    iBackgroundcolor "0";
                                
    iFont "0";
                                
    iProportion "0";
                                
    iSelectable "0";
                                
    iType "0";
                                
    iText "0";
                                
    key false;
                            }

                            if (
    line.Contains("TextDrawCreate") || line.Contains("CreatePlayerTextDraw"))
                            {
                                
    key true;
                                
    line bracket.Match(line).Value;
                                
    iText quote.Match(line).Value;
                                
    collection doubles.Matches(line);

                                
    iPositionX collection[0].Value;
                                
    iPositionY collection[1].Value;

                                
    iType = ((line.Contains("playerid") ? "1" "0"));
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawLetterSize") || line.Contains("PlayerTextDrawLetterSize"))
                            {
                                
    line bracket.Match(line).Value;

                                
    collection doubles.Matches(line);

                                
    iLetterX collection[0].Value;
                                
    iLetterY collection[1].Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawTextSize") || line.Contains("PlayerTextDrawTextSize"))
                            {
                                
    line bracket.Match(line).Value;

                                
    collection doubles.Matches(line);

                                
    iTextX collection[0].Value;
                                
    iTextY collection[1].Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawAlignment") || line.Contains("PlayerTextDrawAlignment"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iAlignment integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawColor") || line.Contains("PlayerTextDrawColor"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iColor integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawUseBox") || line.Contains("PlayerTextDrawUseBox"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iUsebox = (line.Contains("true") ? "1" "0");//integer.Match(line).Value;
                                
    continue;
                            }
                            
                            if (
    line.Contains("TextDrawBoxColor") || line.Contains("PlayerTextDrawBoxColor"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iBoxcolor integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetShadow") || line.Contains("PlayerTextDrawSetShadow"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iShadow integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetOutline") || line.Contains("PlayerTextDrawSetOutline"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iOutline integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawBackgroundColor") || line.Contains("PlayerTextDrawBackgroundColor"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iBackgroundcolor integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawFont") || line.Contains("PlayerTextDrawFont"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iFont integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetProportional") || line.Contains("PlayerTextDrawSetProportional"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iProportion integer.Match(line).Value;
                                continue;
                            }
                            
                            if (
    line.Contains("TextDrawSetSelectable") || line.Contains("PlayerTextDrawSetSelectable"))
                            {
                                
    line bracket.Match(line).Value;

                                
    iSelectable integer.Match(line).Value;
                                continue;
                            }
                        }
                    }
                }
                
    Console.Read();
            }

        }



    http://rghost.ru/6hMRyPWqn

    P.S. ацтаньте. 2 часа ночи. о коде не особо и думаю.
    Мог бы прикрутить автоматическую подстановку формата "pwn", если никакой формат не указан. А так же действие, когда указанного файла не найдёт (сейчас, как я понимаю, программу просто крашнет :с)
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  7. #15
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Мог бы прикрутить автоматическую подстановку формата "pwn", если никакой формат не указан. А так же действие, когда указанного файла не найдёт (сейчас, как я понимаю, программу просто крашнет :с)
    Может мне за вами еще задницу подтереть?
    Программа делает свою работу. Остальное меня не волнует. Кому надо - допилит под себя.

  8. #16
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Seregamil Посмотреть сообщение
    Может мне за вами еще задницу подтереть?
    Программа делает свою работу. Остальное меня не волнует. Кому надо - допилит под себя.
    Можешь и подтереть, я не против ;)
    Ну так допилил бы её до приличного состояния и релизнул. Думаю, она бы нашла свою аудиторию, ибо многие текстдравы на Максе рисуют
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  9. #17
    Аватар для Быдлокодер
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.12.2015
    Сообщений
    40
    Репутация:
    0 ±
    Цитата Сообщение от Seregamil Посмотреть сообщение
    Может мне за вами еще задницу подтереть?
    Программа делает свою работу. Остальное меня не волнует. Кому надо - допилит под себя.
    есть способ запустить эту программку на winXP x86 ?

  10. #18
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±
    Скачайте .net framework и поставьте sharpdevelop. Через него скомпилируйте консольное приложение с моим исходным кодом

  11. Пользователь сказал cпасибо:
    Быдлокодер (25.03.2016)
  12. #19
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Сделал бы GUI что ли (простенький, но GUI) и тогда можно было бы использовать Windows API - OpenFileDialog
    Цитата Сообщение от Seregamil Посмотреть сообщение
    Может мне за вами еще задницу подтереть?
    Программа делает свою работу. Остальное меня не волнует. Кому надо - допилит под себя.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  13. #20
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±
    Цитата Сообщение от $continue$ Посмотреть сообщение
    Сделал бы GUI что ли (простенький, но GUI) и тогда можно было бы использовать Windows API - OpenFileDialog
    Иди и делай. Мне это не нужно. Указал путь - получил результат. Всё.

 

 
Страница 2 из 3 ПерваяПервая 1 2 3 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •