AimbotFormtxt
AimbotFormtxt
using System.Text;
using GameOverlay.Drawing;
using GameOverlay.Windows;
using SharpDX;
using Point = GameOverlay.Drawing.Point;
using Color = GameOverlay.Drawing.Color;
using Rectangle = GameOverlay.Drawing.Rectangle;
using RawVector2 = SharpDX.Mathematics.Interop.RawVector2;
using ShpVector3 = SharpDX.Vector3;
using ShpVector2 = SharpDX.Vector2;
using System.Windows.Forms;
namespace PUBGMESP
{
public interface IAimbotForm
{
void Initialize();
void Update();
}
public class AimTarget
{
public ShpVector2 Screen2D;
public float CrosshairDistance;
public int uniqueID;
}
public class AimbotForm : IAimbotForm
{
public readonly OverlayWindow _window;
private readonly Graphics _graphics;
private readonly GameMemSearch _ueSearch;
// offset
private int actorOffset, boneOffset, tmpOffset;
_window.SizeChanged += _window_SizeChanged;
// offset
actorOffset = 320;
boneOffset = 1408;
tmpOffset = 776;
}
~AimbotForm()
{
_graphics.Dispose();
_window.Dispose();
}
_graphics.WindowHandle = _window.Handle;
_graphics.Setup();
if (Settings.ShowMenu)
{
try
{
_boxBrush = _randomBrush[player.TeamID % 7];
}
catch (IndexOutOfRangeException)
{
_boxBrush = _green;
}
//DrawShadowText(gfx,_font, _green, new Point((x -
playerScreen.Z / 4) - 3, y - 15), player.Pose.ToString());
// Adjust Box
if (player.Pose == 1114636288)
{
y = playerScreen.Y + playerScreen.Z / 5;
h -= playerScreen.Z / 5;
}
if (player.Pose == 1112014848 || player.Status == 7)
{
y = playerScreen.Y + playerScreen.Z / 4;
h -= playerScreen.Z / 4;
}
if (Settings.aimEnabled)
{
long tmpAddv = Mem.ReadMemory<int>(player.Address +
tmpOffset);
long bodyAddv = tmpAddv + actorOffset;
long boneAddv = Mem.ReadMemory<int>(tmpAddv +
boneOffset) + 48;
ShpVector3 headPos =
Algorithms.GetBoneWorldPosition(bodyAddv, boneAddv + 5 * 48);
headPos.Z += 7;
if (BestTargetUniqID == -1)
{
if (Algorithms.isInside(ScreenCenterX,
ScreenCenterY, Settings.bFovArray[Settings.bFovInt], AimTargets[i].Screen2D.X,
AimTargets[i].Screen2D.Y))
{
fClosestDist = AimTargets[i].CrosshairDistance;
BestTargetUniqID = AimTargets[i].uniqueID;
}
}
if
(MainForm.GetAsyncKeyState(Settings.bAimKeys[Settings.bAimKeyINT]))
{
if (BestTargetUniqID != -1)
{
var best = FindAimTargetByUniqueID(AimTargets,
BestTargetUniqID);
if (best != null)
{
{
var roundPos = new
ShpVector2((float)Math.Round(best.Screen2D.X), (float)Math.Round(best.Screen2D.Y));
AimAtPosV2(roundPos.X, roundPos.Y,
_window.Width, _window.Height, false);
}
}
}
}
else
{
BestTargetUniqID = -1;
}
}
if (Settings.bDrawFow)
{
gfx.DrawCircle(_red, ScreenCenterX, ScreenCenterY,
Settings.bFovArray[Settings.bFovInt], 2);
}
}
}
gfx.EndScene();
}
}
//X Axis
if (x != 0)
{
if (x > ScreenCenterX)
{
TargetX = -(ScreenCenterX - x);
TargetX /= AimSpeed;
if (TargetX + ScreenCenterX > ScreenCenterX * 2) TargetX = 0;
}
if (x < ScreenCenterX)
{
TargetX = x - ScreenCenterX;
TargetX /= AimSpeed;
if (TargetX + ScreenCenterX < 0) TargetX = 0;
}
}
//Y Axis
if (y != 0)
{
if (y > ScreenCenterY)
{
TargetY = -(ScreenCenterY - y);
TargetY /= AimSpeed;
if (TargetY + ScreenCenterY > ScreenCenterY * 2) TargetY = 0;
}
if (y < ScreenCenterY)
{
TargetY = y - ScreenCenterY;
TargetY /= AimSpeed;
if (TargetY + ScreenCenterY < 0) TargetY = 0;
}
}
if (!smooth)
{
MainForm.mouse_event(1, (int)TargetX, (int)(TargetY), 0,
UIntPtr.Zero);
return;
}
TargetX /= 10;
TargetY /= 10;
if (Math.Abs(TargetX) < 1)
{
if (TargetX > 0)
{
TargetX = 1;
}
if (TargetX < 0)
{
TargetX = -1;
}
}
if (Math.Abs(TargetY) < 1)
{
if (TargetY > 0)
{
TargetY = 1;
}
if (TargetY < 0)
{
TargetY = -1;
}
}
MainForm.mouse_event(1, (int)TargetX, (int)(TargetY), 0, UIntPtr.Zero);
}
if (_graphics.IsInitialized)
{
_graphics.Resize(e.Width, e.Height);
}
else
{
_graphics.Width = e.Width;
_graphics.Height = e.Height;
}
}
}
private void DrawShadowText(Graphics gfx, Font font, float fontSize, IBrush
brush, Point pt, string txt)
{
var bpPt = new Point();
bpPt.X = pt.X - 1;
bpPt.Y = pt.Y + 1;
gfx.DrawText(font, fontSize, _txtBrush, bpPt, txt);
gfx.DrawText(font, fontSize, brush, pt, txt);
}
}