57 lines
2.1 KiB
C#
57 lines
2.1 KiB
C#
using System;
|
|
using EFT;
|
|
using EFT.UI;
|
|
using stupid.solutions.Data;
|
|
using stupid.solutions.stupid.solutions.Data;
|
|
using stupid.solutions.Utils;
|
|
using UnityEngine;
|
|
|
|
namespace stupid.solutions.Features;
|
|
|
|
public class BulletMovement
|
|
{
|
|
public bool MagicBullet_Hook(Vector3 prevPosition, Vector3 nextPosition)
|
|
{
|
|
Aimbot.BulletMovementHook.Unhook();
|
|
bool result = false;
|
|
try
|
|
{
|
|
if (Settings.MagicBullet && Input.GetMouseButton(0))
|
|
{
|
|
GamePlayer target = Aimbot.Target;
|
|
OnlineGamePlayer oTarget = Aimbot.OTarget;
|
|
if (target != null)
|
|
{
|
|
Vector3 zero = Vector3.zero;
|
|
WildSpawnType role = target.Player.Profile.Info.Settings.Role;
|
|
zero = ((role == WildSpawnType.infectedAssault || role == WildSpawnType.infectedCivil || role == WildSpawnType.infectedLaborant || role == WildSpawnType.infectedPmc) ? GameUtils.GetBonePosByID(target.Player, Aimbot.zombiebone) : GameUtils.GetBonePosByID(target.Player, Settings.Aimbone));
|
|
Vector3 normalized = (Main.LocalPlayer.Fireport.position - zero).normalized;
|
|
prevPosition = zero + normalized * 0.1f;
|
|
nextPosition = zero;
|
|
}
|
|
else if (oTarget != null)
|
|
{
|
|
Vector3 zero2 = Vector3.zero;
|
|
WildSpawnType wildSpawnType = WildSpawnType.pmcUSEC;
|
|
zero2 = ((wildSpawnType == WildSpawnType.infectedAssault || wildSpawnType == WildSpawnType.infectedCivil || wildSpawnType == WildSpawnType.infectedLaborant || wildSpawnType == WildSpawnType.infectedPmc) ? GameUtils.GetBonePosByIDO(oTarget.Player, Aimbot.zombiebone) : GameUtils.GetBonePosByIDO(oTarget.Player, Settings.Aimbone));
|
|
Vector3 normalized2 = (Main.LocalPlayer.Fireport.position - zero2).normalized;
|
|
prevPosition = zero2 + normalized2 * 0.1f;
|
|
nextPosition = zero2;
|
|
}
|
|
}
|
|
result = (bool)Aimbot.BulletMovementHook.OriginalMethod.Invoke(this, new object[2] { prevPosition, nextPosition });
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ConsoleScreen.Log("Exception in hook method:");
|
|
ConsoleScreen.Log($"Exception Type: {ex.GetType()}");
|
|
ConsoleScreen.Log("Exception Message: " + ex.Message);
|
|
ConsoleScreen.Log("Stack Trace: " + ex.StackTrace);
|
|
}
|
|
finally
|
|
{
|
|
Aimbot.BulletMovementHook.Hook();
|
|
}
|
|
return result;
|
|
}
|
|
}
|