PDA

Просмотр полной версии : [Программа] NoRecoil для любого шутера


mraklbrw
08.01.2018, 17:20
Добрый день.
Разработал небольшую программу - NoRecoil для любого шутера.
Работает по принципу - отслеживаем нажатие мыши - перемещаем мышь вниз. Для пистолетов и автоматов нужны разные настройки. Переключение режимов через F-кнопки, которые задаются в программе.
В данном случае программа настроена для CS 1.6.
Подойдёт для изучения новичкам.


using System;
using System.IO;
using System.Threading;
using System.Windows;
using System.Runtime;
using System.Runtime.InteropServices;
using System.Diagnostics;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Windows.Forms;
using System.Globalization;
using System.Drawing;

namespace CSharp_Console_3
{




class Program
{
[DllImport("User32.dll")]
private static extern short GetAsyncKeyState(System.Windows.Forms.Keys vKey);

static bool multiplyClicks = false;
static DateTime previosClickTime;

static bool rifleNoRecoil = false;
static bool pistolNoRecoil = false;

static void Main(string[] args)
{
previosClickTime = DateTime.Now;

MethodInvoker mi = new MethodInvoker(WaitKey);
mi.BeginInvoke(null, null);





Console.ReadLine();
}

private static void WaitKey()
{
while (true)
{
int resF3 = Convert.ToInt32(GetAsyncKeyState(Keys.F3).ToString ());
if(resF3 != 0) // Activate/Disactive RifleNoRecoil
{
rifleNoRecoil = !rifleNoRecoil;
pistolNoRecoil = false;
Console.Beep();
}

int resF4 = Convert.ToInt32(GetAsyncKeyState(Keys.F4).ToString ());
if (resF4 != 0) // Activate/Disactive PistolNoRecoil
{
rifleNoRecoil = false;
pistolNoRecoil = !pistolNoRecoil;
Console.Beep();
}



if(rifleNoRecoil) // RifleNoRecoilController
{
int res1 = Convert.ToInt32(GetAsyncKeyState(Keys.LButton).ToS tring());
if (res1 != 0)
{
if (DateTime.Now - previosClickTime < TimeSpan.FromMilliseconds(300))
multiplyClicks = true;
else
multiplyClicks = false;
if (!multiplyClicks)
Cursor.Position = new Point(Cursor.Position.X, Cursor.Position.Y + 12);
else
Cursor.Position = new Point(Cursor.Position.X, Cursor.Position.Y + 9);
}
Thread.Sleep(130);
}
else if(pistolNoRecoil) // PistolNoRecoilController
{
int res1 = Convert.ToInt32(GetAsyncKeyState(Keys.LButton).ToS tring());
if (res1 != 0)
{
if (DateTime.Now - previosClickTime < TimeSpan.FromMilliseconds(300))
multiplyClicks = true;
else
multiplyClicks = false;
if (!multiplyClicks)
Cursor.Position = new Point(Cursor.Position.X, Cursor.Position.Y + 5);
else
Cursor.Position = new Point(Cursor.Position.X, Cursor.Position.Y + 8);
}
Thread.Sleep(130);
}


}
}


}
}