C# (SharpDX) Анимация текста при убийстве

C4ke
Начинающий
Статус
Оффлайн
Регистрация
9 Сен 2019
Сообщения
26
Реакции[?]
16
Поинты[?]
0
External анимация текста, о том как пастить эта история проста:

C#:
        const Int32 m_iNumRoundKills = 0x3940;
        const Int32 dwCurrentRound = 0x00000064;
        float transparentValue = 1;
        Random random;
        bool isKilled;
//Таймер
        private void DrawKillTick(object sender, EventArgs e)
        {
            transparentValue -= 0.019f;
        }
//Обычный драв
        private void Update()
        {
            int xx = random.Next(0, 50) > 20 ? -150 : 150;
            int yy = random.Next(0, 50) > 20 ? -150 : 150;

            System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();
            timer.Interval = 1;
            timer.Tick += new EventHandler(DrawKillTick);
            while (true)
            {
                var gfx = _graphics;//Ну тут я использовал библиотеку GameOverlay.Net, но если у вас руки растут откуда нужно, то заменить методы на отрисовку текста не проблема XD
                gfx.BeginScene();
                gfx.ClearScene();
                if (isKilled)
                {
                    if (transparentValue >= 1f)
                    {
                        Globals.Overlay.Invoke(new Action(() => {
                            timer.Start();
                        }));
                    }

                    gfx.DrawText(gfx.CreateFont("Arial", 30, false, false), gfx.CreateSolidBrush(0.94f, 0, 1, transparentValue), (transparentValue * xx) + Globals.ScreenX / 2f, (transparentValue * yy) + Globals.ScreenY / 2f, GetText(countKill));
                    if (transparentValue <= 0f)
                    {
                        Globals.Overlay.Invoke(new Action(() => {
                            timer.Stop();
                        }));
                        isKilled = false;
                        transparentValue = 1f;
                        xx = random.Next(0, 50) > 20 ? -150 : 150;
                        yy = random.Next(0, 50) > 20 ? -150 : 150;
                    }
                }
                RestoreKills(Kills());
            }
        }
//Здесь восстанавливаем значение (для последующих подсчетов)
        void RestoreKills(int kls)
        {

            if (kls > lastKills && Engine.GetLocalPlayer().Health() > 0)
            {
                lastKills = kls;
                isKilled = true;
                ++countKill;
            }
            else
            {
                lastKills = kls;
            }
            if (Engine.GetLocalPlayer().Health() <= 0 || CurrentRound() > lastRounds)
            {
                countKill = 0;
                lastRounds = CurrentRound();
            }
        }
//Получаем текст по кол-во убийств
        string GetText(int countKill)
        {
            switch (countKill)
                {
                    case 1:
                        return "One kill";
                    case 2:
                        return "Double kill";
                    case 3:
                        return "Triple kill";
                    case 4:
                        return "Mega kill";
                    case 5:
                        return "Ultra kill";
                    default:
                        return "WOW!!!";
                }
            }
//Текущее кол-во убийств
        public int Kills() => ReadInt((UInt64)localPlayerBase + m_iNumRoundKills);
//Получаем кол-во раундов
        public static int CurrentRound()
        {
            UInt64 p = ReadPointer(Engine.ClientAddress + Offsets.dwGameRulesProxy);
            return ReadInt(p + dwCurrentRound);
        }
Видео результата
 
Эксперт
Статус
Оффлайн
Регистрация
16 Ноя 2017
Сообщения
1,570
Реакции[?]
1,266
Поинты[?]
4K
Приветик :) Если не секрет, какая база чита у тебя на шарпе? Интересно стало...
 
BIG NONAME
Пользователь
Статус
Оффлайн
Регистрация
2 Янв 2019
Сообщения
326
Реакции[?]
38
Поинты[?]
0
я сначала подумал, что это анимация убийств которые справа вверху, и я тип такой, чёёёё а что такое есть?
но всё равно спасиб за код
 
C4ke
Начинающий
Статус
Оффлайн
Регистрация
9 Сен 2019
Сообщения
26
Реакции[?]
16
Поинты[?]
0
Эксперт
Статус
Оффлайн
Регистрация
16 Ноя 2017
Сообщения
1,570
Реакции[?]
1,266
Поинты[?]
4K
Своя:wink:, могу под тебя переписать, только скинь метод отрисовки у тебя
Какой ты добрый, уже готов под мою базу переписать :D Да не, у меня базы нет никакой, я сам чутка шарп знаю, искал базу под чит для кс на шарпе, и тут ты :)
Окей, спасибо и на этом :)
 
Сверху Снизу