Вопрос Обновите луашку пж

  • Автор темы Автор темы x0x308
  • Дата начала Дата начала
Забаненный
Забаненный
Статус
Оффлайн
Регистрация
22 Окт 2021
Сообщения
16
Реакции
8
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код:
Expand Collapse Copy
--PREDICTION LUA V2
local checkhitbox = {0,11,12,13,14}
local username = cheat.GetCheatUserName()
local ideal_yaw
local right_side
local left_side
local dt_charging
print("" .. username .. " if you have any questions feel free to dm kib1336#1030")
print("" .. username .. " if you have any suggestion or found any bug feel free to join our discord! : https://discord.gg/pJ5WpMV")
local version = "1643"

local ffi = require('ffi')

ffi.cdef[[
    void* CreateFileA(
        const char*                lpFileName,
        unsigned long                 dwDesiredAccess,
        unsigned long                 dwShareMode,
        unsigned long lpSecurityAttributes,
        unsigned long                 dwCreationDisposition,
        unsigned long                 dwFlagsAndAttributes,
        void*                hTemplateFile
        );
    bool ReadFile(
            void*       hFile,
            char*       lpBuffer,
            unsigned long        nNumberOfBytesToRead,
            unsigned long*      lpNumberOfBytesRead,
            int lpOverlapped
          );
    bool WriteFile(
            void*       hFile,
            char*      lpBuffer,
            unsigned long        nNumberOfBytesToWrite,
            unsigned long*      lpNumberOfBytesWritten,
            int lpOverlapped
        );

    unsigned long GetFileSize(
        void*  hFile,
        unsigned long* lpFileSizeHigh
    );
    bool CloseHandle(void* hFile);

    typedef unsigned long ULONG_PTR;
    typedef unsigned long DWORD;
    typedef unsigned short WORD;

    typedef struct tagKEYBDINPUT {
        WORD      wVk;
        WORD      wScan;
        DWORD     dwFlags;
        DWORD     time;
        ULONG_PTR dwExtraInfo;
      } KEYBDINPUT, *PKEYBDINPUT, *LPKEYBDINPUT;

    typedef struct tagMOUSEINPUT {
        long      dx;
        long      dy;
        DWORD     mouseData;
        DWORD     dwFlags;
        DWORD     time;
        ULONG_PTR dwExtraInfo;
      } MOUSEINPUT, *PMOUSEINPUT, *LPMOUSEINPUT;

      typedef struct tagHARDWAREINPUT {
        DWORD uMsg;
        WORD  wParamL;
        WORD  wParamH;
      } HARDWAREINPUT, *PHARDWAREINPUT, *LPHARDWAREINPUT;

    typedef struct tagINPUT {
        DWORD type;
          MOUSEINPUT    mi;
          KEYBDINPUT    ki;
          HARDWAREINPUT hi;
      } INPUT, *PINPUT, *LPINPUT;
]]

local pfile = ffi.cast("void*", ffi.C.CreateFileA("nl/username.txt", 0xC0000000, 0x00000003, 0, 0x4, 0x80, nil))
--local cfile = ffi.cast("void*", ffi.C.CreateFileA("nl/settings.txt", 0xC0000000, 0x00000003, 0, 0x4, 0x80, nil))

cheat.RegisterCallback("destroy", function()
ffi.C.CloseHandle(pfile)
--ffi.C.CloseHandle(cfile)
end)

local size = ffi.C.GetFileSize(pfile, nil)
local buff = ffi.new("char[" ..(size + 1).. "]")

ffi.C.ReadFile(pfile, buff, size, nil, 0)
buff = ffi.string(buff)
local username = buff

local function initlua()

menu.Text("Prediction LUA V2", "Hello "..username.."!")

local vers = http.Get("https://pastebin.com/raw/bHXD56yW")

local ok = ""
if version == vers then ok = "Version: UP 2 DATE!" else ok = "Version: Outdated!" end

if ok then
    menu.Text("STATUS", ok)
else
    menu.Text("STATUS", "ERROR")
end

cheat.AddNotify("PREDICTION V2", "Welcome to Prediction v2.3.0 " .. username .. " ")

ffi.cdef[[
    typedef uintptr_t (__thiscall* GetClientEntity_4242425_t)(void*, int);
    typedef void (__thiscall* UpdateCSA_t)(void*);
    typedef struct { float id; } poses_t;
    typedef struct
    {
        float x;
        float y;
        float z;
    } Vector_t;
    
    typedef struct
    {
        float            flAnimationTime;        //0x00
        float            flFadeOut;                //0x04
        void*            pStudioHdr;                //0x08
        int                nDispatchedSrc;            //0x0C
        int                nDispatchedDst;            //0x10
        int                iOrder;                    //0x14
        int nSequence;                //0x18
        float            flPrevCycle;            //0x1C
        float            flWeight;                //0x20
        float            flWeightDeltaRate;        //0x24
        float            flPlaybackRate;            //0x28
        float            flCycle;                //0x2C
        void*            pOwner;                    //0x30
        int                nInvalidatePhysicsBits;    //0x34
    } animlayer_t;
    
    typedef struct
    {
        void* pThis;
        char pad2[91];
        void* pBaseEntity; //0x60
        void* pActiveWeapon; //0x64
        void* pLastActiveWeapon; //0x68
        float m_flLastClientSideAnimationUpdateTime; //0x6C
        int m_iLastClientSideAnimationUpdateFramecount; //0x70
        float m_flEyePitch; //0x74
        float m_flEyeYaw; //0x78
        float m_flPitch; //0x7C
        float m_flGoalFeetYaw; //0x80
        float m_flCurrentFeetYaw; //0x84
        float m_flCurrentTorsoYaw; //0x88
        float m_flUnknownVelocityLean; //0x8C //changes when moving/jumping/hitting ground
        float m_flLeanAmount; //0x90
        char pad4[4]; //NaN
        float m_flFeetCycle; //0x98 0 to 1
        float m_flFeetYawRate; //0x9C 0 to 1
        float m_fUnknown2;
        float m_fDuckAmount; //0xA4
        float m_fLandingDuckAdditiveSomething; //0xA8
        float m_fUnknown3; //0xAC
        Vector_t m_vOrigin; //0xB0, 0xB4, 0xB8
        Vector_t m_vLastOrigin; //0xBC, 0xC0, 0xC4
        float m_vVelocityX; //0xC8
        float m_vVelocityY; //0xCC
        char pad5[4];
        float m_flUnknownFloat1; //0xD4 Affected by movement and direction
        char pad6[8];
        float m_flUnknownFloat2; //0xE0 //from -1 to 1 when moving and affected by direction
        float m_flUnknownFloat3; //0xE4 //from -1 to 1 when moving and affected by direction
        float m_unknown; //0xE8
        float speed_2d; //0xEC
        float flUpVelocity; //0xF0
        float m_flSpeedNormalized; //0xF4 //from 0 to 1
        float m_flFeetSpeedForwardsOrSideWays; //0xF8 //from 0 to 2. something  is 1 when walking, 2.something when running, 0.653 when crouch walking
        float m_flFeetSpeedUnknownForwardOrSideways; //0xFC //from 0 to 3. something
        float m_flTimeSinceStartedMoving; //0x100
        float m_flTimeSinceStoppedMoving; //0x104
        unsigned char m_bOnGround; //0x108
        unsigned char m_bInHitGroundAnimation; //0x109
        char pad7[10];
        float m_flLastOriginZ; //0x114
        float m_flHeadHeightOrOffsetFromHittingGroundAnimation; //0x118 from 0 to 1, is 1 when standing
        float m_flStopToFullRunningFraction; //0x11C from 0 to 1, doesnt change when walking or crouching, only running
        char pad8[4]; //NaN
        float m_flUnknownFraction; //0x124 affected while jumping and running, or when just jumping, 0 to 1
        char pad9[4]; //NaN
        float m_flUnknown3;
        char pad10[528];
    } CCSGOPlayerAnimationState_534535_t;
]]

local hitboxesused = {18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,0}

local hitboxes = {
    "Head",
    "Upper Chest",
    "Chest",
    "Body",
    "Stomach",
    "Pelvis",
    "Legs & Feet",
    "Arms"
}

local types = {
    "2D Filled Circle",
    "2D Circle"
}
--VARS
local miss_counter = 0
local menu_invert_side = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Angle", "Inverter")
local menu_left_limit = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Angle", "Left Limit")
local menu_fake_options = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Angle", "LBY Mode")
local menu_right_limit = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Angle", "Right Limit")
local menu_leg_movement = g_Config:FindVar("Aimbot", "Anti Aim", "Misc", "Leg Movement")
local menu_fakelag_limit = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Limit")
local menu_fakelag_enable = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Enable Fake Lag")

local menu_safe_point = g_Config:FindVar("Aimbot", "Ragebot", "Accuracy", "Safe Points")
local menu_fakeduck = g_Config:FindVar("Aimbot", "Anti Aim", "Misc", "Fake Duck")
local menu_antiaim_manual = g_Config:FindVar("Aimbot", "Anti Aim", "Main", "Yaw Base")
local var_arrow_fonts = g_Render:InitFont("Verdana",55)

--VARS END--

--LUA MENU
menu.Text("Anti-Aim", "Anti Bruteforce Customization")
local c_menu_anti_brute = menu.Switch("Anti-Aim", "Anti Brute", false, "Will enable Lua Script Anti-BruteForce!")
local c_menu_anti_brute_fov_slider = menu.SliderFloat("Anti-Aim", "Anti Brute FOV", 175.0, 50.0, 250.0, "Limit FOV between bullet and your modelll (Recomended Default Value)")

local c_menu_anti_brute_debug_mode = menu.Switch("Anti-Aim", "Debug Mode", false, "Will print on console which angle has been overrided etc...")
local c_menu_anti_brute_1stshot = menu.SliderInt("Anti-Aim", "1st shot angle", 45, 0, 60, "Fake Limit for 1st enemy shot (Recomended using default values if you don't know what you're doing!)")
local c_menu_anti_brute_2ndshot = menu.SliderInt("Anti-Aim", "2nd shot angle", 45, 0, 60, "Fake Limit for 2nd enemy shot (Recomended using default values if you don't know what you're doing!)")
local c_menu_anti_brute_3rdshot = menu.SliderInt("Anti-Aim", "3rd shot angle", 5, 0, 60, "Fake Limit for 3rd enemy shot (Recomended using default values if you don't know what you're doing!)")

menu.Text("Anti-Aim", "Body Lean Customization")
local c_menu_custom_body_lean = menu.Switch("Anti-Aim", "Custom Bodylean", false, "Will enable customized BodyLean can be modified using the sliders below!")
local c_menu_body_lean_left = menu.SliderFloat("Anti-Aim", "Body Lean Left", 16.4, -180.0, 180.0, "Adjusts your BodyLean")
local c_menu_body_lean_right = menu.SliderFloat("Anti-Aim", "Body Lean Right", -20.0, -180.0, 180.0, "Adjusts your BodyLean")



menu.Text("FakeLags", "FakeLags Customization")
local c_menu_custom_fakelag = menu.Switch("FakeLags", "Custom Fakelag", false, "Will enable customized Fakelags")
local c_menu_fakelag_modes = menu.Combo("FakeLags", "Modes", {"Adaptive", "Fluctuate"}, 0, "Multiple Fakelag modes!")
local c_menu_fakelag_fluctuate_timing = menu.SliderFloat("FakeLags", "Fluctuate Timing", 12.9, 0.0, 20.0, "Fluctuate timing (Recomended Default values!)!")

menu.Text("Exploits", "Exploits Customization")
local c_menu_doubletap = menu.Switch("Exploits", "Customized Doubletap", true, "")
local c_menu_doubletap_clockcr = menu.Switch("Exploits", "Disable Correction", false, "Will make your DoubleTap innacurate but faster!")
local c_menu_doubletap_modes = menu.Combo("Exploits", "Modes", {"Instant", "Fast", "Slow", "Sonic"}, 0, "Multiple DoubleTap speed modes!")
local c_menu_doubletap_debug_mode = menu.Switch("Exploits", "Debug Mode", false, "Will print info about doubletap, ticks etc...")
local c_menu_doubletap_instant_recharge = menu.Switch("Exploits", "Instant Recharge", false, "Will recharge doubletap as soon as possible (Not recommended tho!)!")

local c_menu_exploits_legs = menu.Switch("Exploits", "Smart Legs", false, "Will swap your model legs between normal/sliding asap!")
local c_menu_air_stuck = menu.Switch("Exploits", "Airstuck", false, "")

menu.Text("Visuals", "Visuals Customization")
local c_menu_text_indicators = menu.Switch("Visuals", "Enable text indicators", false, "Draw Text indicators (Use the multicombo tho!)!")
local c_menu_x = menu.SliderFloat("Visuals", "Text x position", 973.0, 0.0, 2000.0, "x pos")
local c_menu_y = menu.SliderFloat("Visuals", "Text y position", 484.0, 0.0, 2000.0, "y pos")
local c_menu_arrows = menu.Switch("Visuals", "Anti-Aim Arrows", false, "Draw AntiAim direction arrows!")
local c_menu_arrow_color = menu.ColorEdit("Visuals", "Arrow color", Color.new(1,1,1,1), "")
local c_menu_arrows_type = menu.Combo("Visuals", "Arrow Type", {")", ">", "Triangles", "Circle"}, 0, "Multiple Arrow types!")
local c_menu_custom_impacts = menu.Switch("Visuals", "Custom Bullet Impacts", false, "")
local c_menu_visuals_impacts = menu.SliderInt("Visuals", "Bullet Impacts size", 5, 1, 50, "")
local c_menu_visuals_beam_color = menu.ColorEdit("Visuals", "Beam Color", Color.new(1,1,1,1), "")
local c_menu_visuals_impact_color = menu.ColorEdit("Visuals", "Impacts Color", Color.new(1,1,1,1), "")
local c_menu_watermarker = menu.Switch("Visuals", "Watermarker", false, "Enables simple Watermarker!")

menu.Text("Misc", "Miscellaneous")
local c_menu_kill_say = menu.Switch("Misc", "Custom Kill Say", false, "Says something on the chat once you kill someone (Words can be edited on the textbox below!)!")
local c_menu_kill_say_words = menu.TextBox("Misc", "Kill Say Words", 64, "Say something...", "Says something on the chat once you kill someone (If Kill Say checkbox is enabled!)!")
local c_menu_hurt_say = menu.Switch("Misc", "Custom Hurt Say", false, "Says something on the chat once you hurt someone (Words can be edited on the textbox below!)!")
local c_menu_hurt_say_words = menu.TextBox("Misc", "Hurt Say Words", 64, "Say something...", "Says something on the chat once you hurt someone (If Hurt Say checkbox is enabled!)!")

menu.Text("Aimbot", "Advanced Aimbot")
local c_menu_safepoint_hitboxes = menu.MultiCombo("Aimbot", "Safe point Hitboxes", hitboxes, 0, "")
local c_menu_draw_only_priority_hitboxe = menu.SwitchColor("Aimbot", "Draw only priority hitbox", false, Color.new(1.0,1.0,1.0,1.0), "")
local c_menu_circle_customization = menu.Combo("Aimbot", "Circle Customization", types, 0, "")
local c_menu_scale_circle = menu.SliderFloat("Aimbot", "Scale circle", 1, 0, 20, "")
local c_menu_hitboxes_color = menu.ColorEdit("Aimbot", "Intersacted points Color", Color.new(1,1,1,1), "")


local c_menu_anti_aim_helpers = menu.Switch("Anti-Aim", "Auto direction", false, "")
local c_menu_anti_aim_helpers_types = menu.Combo("Anti-Aim", "Auto direction Types", {"Peek with Fake", "Peek with Real"}, 0, "Multiple Auto direction types!")
local c_menu_anti_aim_helpers_desync = menu.Switch("Anti-Aim", "Desync Modifications", false, "")
local c_menu_anti_aim_helpers_desync_mod = menu.Combo("Anti-Aim", "Desync Mods", {"Smart", "Prefer Low Delta", "Multiple"}, 0, "Multiple Auto direction types!")
local menu_freestand_desync = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Angle", "Freestanding Desync")
local menu_fake_option = g_Config:FindVar("Aimbot", "Anti Aim", "Fake Angle", "Fake Options")

--LUA MENU

local function antiaim_helpers()

  if (c_menu_anti_aim_helpers:GetBool()) then
        if (c_menu_anti_aim_helpers_types:GetInt() == 0) then --Peek fake
            menu_freestand_desync:SetInt(1)
        else if (c_menu_anti_aim_helpers_types:GetInt() == 1) then --Peek real
            menu_freestand_desync:SetInt(2)
        end
    end
  end

  local local_idx = g_EngineClient:GetLocalPlayer()
  local local_entity = g_EntityList:GetClientEntity(local_idx)

  if local_entity == nil then
    return
  end
 
  local local_player = local_entity:GetPlayer();
  local speed_x = local_player:GetProp("DT_BasePlayer", "m_vecVelocity[0]")
  local speed_y = local_player:GetProp("DT_BasePlayer", "m_vecVelocity[1]")
  local speed = math.sqrt(speed_x * speed_x + speed_y * speed_y)
  local speed_per_tick = math.sqrt(speed_x * speed_x + speed_y * speed_y) *  g_GlobalVars.interval_per_tick
    if (c_menu_anti_aim_helpers_desync:GetBool()) then

        if (c_menu_anti_aim_helpers_desync_mod:GetInt() == 0) then --smart
            menu_fake_option:SetInt(1)
            menu_freestand_desync:SetInt(2)
            antiaim.OverrideLimit(math.random(45, 80))
              menu_left_limit:SetInt(math.random(30, 80))
              menu_right_limit:SetInt(math.random(30, 80))
          
        
        end
        if (c_menu_anti_aim_helpers_desync_mod:GetInt() == 2) then --Multiple
            menu_fake_option:SetInt(utils.RandomInt(2, 3))
            menu_fake_options:SetInt(utils.RandomInt(1, 2))
              menu_left_limit:SetInt(utils.RandomInt(35, 60))
              menu_right_limit:SetInt(utils.RandomInt(35, 60))
        end
       if (c_menu_anti_aim_helpers_desync_mod:GetInt() == 1) then --prefer low delta
          menu_fake_option:SetInt(1)
          menu_freestand_desync:SetInt(2)
          antiaim.OverrideLimit(math.random(15, 15))
          menu_left_limit:SetInt(math.random(15, 35))
          menu_right_limit:SetInt(math.random(15, 35))
        
        end     
    end
end






--AIMBOT

local safety_hitboxes = {}
local best_hitbox = {}
local best_damage = {}

local predict_ticks = 7
local force_off = false
local force_off_tick = 0

local function normalizeangles(ang)
    if(ang.pitch > 180.0) then ang.pitch = ang.pitch - 360.0 end
    if(ang.yaw > 180.0) then ang.yaw = ang.yaw - 360.0 end
    return ang
end

local function calcangle(src, dst)
    local vecdelta = Vector.new(dst.x - src.x, dst.y - src.y, dst.z - src.z)
    local angles = QAngle.new(math.atan2(-vecdelta.z, vecdelta:Length2D()) * 180.0 / math.pi, (math.atan2(vecdelta.y, vecdelta.x) * 180.0 / math.pi), 0.0)
    angles = normalizeangles(angles)
    return angles
end

local function canseeentity(localplayer, entity)
    if not entity or not localplayer then return false end
    local canhit = false
    for k,v in pairs(checkhitbox) do
        local damage = cheat.FireBullet(localplayer, localplayer:GetEyePosition(), entity:GetPlayer():GetHitboxCenter(v))
        if damage > 0 then
            canhit = true
            break
        end
    end
    return canhit
end

cheat.RegisterCallback("events", function(event)
    if event:GetName() == "player_death" then
      
        if true then
            for i = 1, 64 do
                best_hitbox[i] = -1
                best_damage[i] = 0
            end
        end
    end
end)
local lines = {}
local results = {}

local function impacts_events(event)
    if event:GetName() == "bullet_impact" and event:GetInt("userid") == g_EngineClient:GetPlayerInfo(g_EngineClient:GetLocalPlayer()).userId then
        local localplayer = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
        if localplayer then localplayer = localplayer:GetPlayer() else return end
        local position = localplayer:GetEyePosition()
        local destination = Vector.new(event:GetFloat("x"), event:GetFloat("y"), event:GetFloat("z"))
        table.insert(lines, {pos = position, destination = destination, time = 250, curtime = g_GlobalVars.curtime})
    end

    if event:GetName() == "player_hurt" then
        if event:GetInt("attacker") == g_EngineClient:GetPlayerInfo(g_EngineClient:GetLocalPlayer()).userId then
            for k,v in pairs(lines) do
                if v.curtime == g_GlobalVars.curtime then
                    table.insert(results, lines[k])
                    table.remove(lines, k)
                end
            end
        end
    end
end
local function draw_impacts()
    local localplayer = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
    if localplayer then localplayer = localplayer:GetPlayer() else return end
    local position = localplayer:GetEyePosition()

    for k,v in pairs(results) do
        v.time = v.time - 1
        if g_Render:ScreenPosition(v.pos).x ~= g_Render:ScreenPosition(v.destination).x and g_Render:ScreenPosition(v.pos).y ~= g_Render:ScreenPosition(v.destination).y then
            if g_Render:ScreenPosition(v.pos).x ~= g_Render:ScreenPosition(position).x and g_Render:ScreenPosition(v.pos).y ~= g_Render:ScreenPosition(position).y then
                g_Render:Line(g_Render:ScreenPosition(v.pos), g_Render:ScreenPosition(v.destination), c_menu_visuals_beam_color:GetColor())
            end
        end
        if v.time == 0 then table.remove(results, k) end
    end
    
    for k,v in pairs(results) do
        for i = 1,c_menu_visuals_impacts:GetInt() do
            local position1 = g_Render:ScreenPosition(v.destination)
            local position2 = g_Render:ScreenPosition(v.destination)
            local position3 = g_Render:ScreenPosition(v.destination)
            local position4 = g_Render:ScreenPosition(v.destination)
            position1.x = position1.x+i
            position2.x = position2.x-i
            position3.y = position3.y+i
            position4.y = position4.y-i
            g_Render:Box(position1, position2, c_menu_visuals_impact_color:GetColor())
            g_Render:Box(position3, position4, c_menu_visuals_impact_color:GetColor())
        end
    end
end

function C_BaseEntity:m_iHealth()
    return self:GetProp("DT_BasePlayer", "m_iHealth")
end
function C_BaseEntity:m_vecVelocity()
    return self:GetProp("DT_BasePlayer", "m_vecVelocity")
end

local ENTITY_LIST_POINTER = ffi.cast("void***", utils.CreateInterface("client.dll", "VClientEntityList003")) or error("Failed to find VClientEntityList003!")
local GET_CLIENT_ENTITY_FN = ffi.cast("GetClientEntity_4242425_t", ENTITY_LIST_POINTER[0][3])
local UpdateClientSideAnims = ffi.cast("UpdateCSA_t", utils.PatternScan("client.dll", "55 8B EC 51 56 8B F1 80 BE ? ? ? ? 00 74 ? 8B 06 FF"))

local ffi_helpers = {
get_animstate_offset = function()
    return 14612
end,

get_entity_address = function(entity_index)
    local addr = GET_CLIENT_ENTITY_FN(ENTITY_LIST_POINTER, entity_index)
    return addr
end
}

local original_goal_feet_yaw = {}


local function aimbot(cmd)
    local localplayer = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
    local oldlocalplayer = localplayer
    if localplayer then
        --local entity_animation_state = ffi.cast("int**", ffi_helpers.get_entity_address(2) + 45952)[0]
        --entity_animation_state = 100
        localplayer = localplayer:GetPlayer()
    else
        return
    end

    safety_hitboxes = {}
    for i = 0,10 do
        if c_menu_safepoint_hitboxes:GetBool(i) then
            if i == 0 then table.insert( safety_hitboxes, 0 )
            elseif i == 1 then table.insert( safety_hitboxes, 6 )
            elseif i == 2 then table.insert( safety_hitboxes, 5 )
            elseif i == 3 then table.insert( safety_hitboxes, 4 )
            elseif i == 4 then table.insert( safety_hitboxes, 3 )
            elseif i == 5 then table.insert( safety_hitboxes, 2 )
            elseif i == 6 then
                for i = 7,12 do
                    table.insert( safety_hitboxes, i )
                end
            elseif i == 7 then
                for i = 13,18 do
                    table.insert( safety_hitboxes, i )
                end
            end
        end
    end

    for i = 1,64 do

        local entity = g_EntityList:GetClientEntity(i)
        if not entity then break end
        if entity and entity:GetPlayer():m_iHealth() > 0 and not entity:GetPlayer():IsTeamMate() and canseeentity(localplayer:GetPlayer(), entity:GetPlayer()) then
            
            --UpdateClientSideAnims(ffi.cast("void***", ffi_helpers.get_entity_address(entity:EntIndex())))
            for k,v in pairs(safety_hitboxes) do
                ragebot.ForceHitboxSafety(entity:EntIndex(), v)
            end

            local biggestdamage = 0
            local health = entity:GetPlayer():m_iHealth()
            local besthitboxfound = -1
            for k,v in pairs(hitboxesused) do
                local damage = cheat.FireBullet(localplayer, localplayer:GetEyePosition(), entity:GetPlayer():GetHitboxCenter(v))
                if damage > biggestdamage then
                    biggestdamage = damage
                    besthitboxfound = v
                end

                if damage >= health then
                    biggestdamage = damage
                    besthitboxfound = v
                    break
                end
            end
            
            best_hitbox[entity:EntIndex()] = besthitboxfound
            best_damage[entity:EntIndex()] = biggestdamage

            for i = 1, 18 do
                ragebot.SetHitboxPriority(entity:EntIndex(), i, 1)
            end

            ragebot.SetHitboxPriority(entity:EntIndex(), besthitboxfound, 10000)
        else
            best_damage[entity:EntIndex()] = 0
            best_hitbox[entity:EntIndex()] = -1
        end
    end

    --peeking:handle()
end


function toint(n)
    local s = tostring(n)
    local i, j = s:find('%.')
    if i then
        return tonumber(s:sub(1, i-1))
    else
        return n
    end
end

local function aimbot_draw()   
    local localplayer = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
    if localplayer then
        localplayer = localplayer:GetPlayer()
    else
        return
    end

    if localplayer:m_iHealth() < 1 then
        return
    end


    for i = 1,64 do
        local entity = g_EntityList:GetClientEntity(i)
        local nentity = entity
        if entity then
            entity = entity:GetPlayer()
        end
        if entity and entity:m_iHealth() > 0 and not entity:IsTeamMate() and not entity:IsDormant() then
            for k,v in pairs(hitboxesused) do
                local color = Color.new(1,0,0,1)
                local red = false
                    if best_hitbox[nentity:EntIndex()] == v then
                        color = c_menu_draw_only_priority_hitboxe:GetColor()
                    else
                        color = c_menu_hitboxes_color:GetColor()
                        red = true
                    end
                if c_menu_draw_only_priority_hitboxe:GetBool() and not red then
                    if c_menu_circle_customization:GetInt() == 1 then             
                        g_Render:Circle(g_Render:ScreenPosition(Vector.new(entity:GetHitboxCenter(v).x, entity:GetHitboxCenter(v).y, entity:GetHitboxCenter(v).z)), toint(7*c_menu_scale_circle:GetFloat()), toint(58*c_menu_scale_circle:GetFloat()/4), color)
                    elseif c_menu_circle_customization:GetInt() == 0 then
                        g_Render:CircleFilled(g_Render:ScreenPosition(Vector.new(entity:GetHitboxCenter(v).x, entity:GetHitboxCenter(v).y, entity:GetHitboxCenter(v).z)), toint(7*c_menu_scale_circle:GetFloat()), toint(58*c_menu_scale_circle:GetFloat()/4), color)
                    end
                elseif not c_menu_draw_only_priority_hitboxe:GetBool() then
                    if c_menu_circle_customization:GetInt() == 1 then             
                        g_Render:Circle(g_Render:ScreenPosition(Vector.new(entity:GetHitboxCenter(v).x, entity:GetHitboxCenter(v).y, entity:GetHitboxCenter(v).z)), toint(7*c_menu_scale_circle:GetFloat()), toint(58*c_menu_scale_circle:GetFloat()/4), color)
                    elseif c_menu_circle_customization:GetInt() == 0 then
                        g_Render:CircleFilled(g_Render:ScreenPosition(Vector.new(entity:GetHitboxCenter(v).x, entity:GetHitboxCenter(v).y, entity:GetHitboxCenter(v).z)), toint(7*c_menu_scale_circle:GetFloat()), toint(58*c_menu_scale_circle:GetFloat()/4), color)
                    end
                end
            end
        end
    end
end


--AIMBOT


--PREDICTION CALLBACK FUNCTIONS
local function body_lean()
     local r_right = c_menu_body_lean_right:GetFloat()
     local r_left = c_menu_body_lean_left:GetFloat()

    if (c_menu_custom_body_lean:GetBool()) then
        if (menu_invert_side:GetBool()) then
            antiaim.OverrideYawOffset(r_right)
        else
            antiaim.OverrideYawOffset(r_left)
        end
    end
end
--PREDICTION CALLBACK FUNCTIONS


--EXPLOITS
local function instant_recharge()
    
    if (c_menu_doubletap_instant_recharge:GetBool()) then
        exploits.ForceCharge()
    end

end

local function exploits_func()
        --Speed modes
    local instant = 15
    local fast = 14
    local default = 13

    --Preserve modes
    local insecure = 0
    local secure = 1
    local safe = 2

    local cl_clock_correction = g_CVar:FindVar("cl_clock_correction") --clock correction OOPS: I think soufiw already manages with this but whatever...
    local sv_maxusrcmdprocessticks = g_CVar:FindVar("sv_maxusrcmdprocessticks") --sv_maxusrcmdprocessticks

    if (c_menu_doubletap_clockcr:GetBool()) then
        g_CVar:FindVar("cl_clock_correction"):SetInt(0)
        g_CVar:FindVar("cl_clock_correction_adjustment_max_amount"):SetInt(450)
    end

    if (c_menu_doubletap_modes:GetInt() == 0) then --Instant mode
        exploits.OverrideDoubleTapSpeed(instant)
        exploits.OverrideDoubleTapPreserve(secure)

        if (c_menu_doubletap_debug_mode:GetBool()) then
           print("[DOUBLETAP] TICKS: MAX | PRESERVE: INSECURE | CORRECTION: DISABLED ")
        end

    else if (c_menu_doubletap_modes:GetInt() == 1) then --Fast mode
        exploits.OverrideDoubleTapSpeed(fast)
        exploits.OverrideDoubleTapPreserve(secure)

        if (c_menu_doubletap_debug_mode:GetBool()) then
        print("[DOUBLETAP] TICKS: MAX | PRESERVE: SECURE | CORRECTION: DISABLED ")
        end

    else if (c_menu_doubletap_modes:GetInt() == 2) then --Slow mode
        exploits.OverrideDoubleTapSpeed(default)
        exploits.OverrideDoubleTapPreserve(safe)

        if (c_menu_doubletap_debug_mode:GetBool()) then
        print("[DOUBLETAP] TICKS: 13 | PRESERVE: SAFETY | CORRECTION: ENABLED ")
        end
    else if (c_menu_doubletap_modes:GetInt() == 3) then --Sonic mode
        local localplayer = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
        local getplayer = localplayer:GetPlayer()
        local active_weapon = getplayer:GetActiveWeapon()
        exploits.OverrideDoubleTapPreserve(0)
        exploits.OverrideDoubleTapSpeed(14)
        g_CVar:FindVar("cl_clock_correction"):SetInt(0)
        g_CVar:FindVar("cl_clock_correction_adjustment_max_amount"):SetInt(450)
        if active_weapon:GetProp("DT_BaseAttributableItem", "m_iItemDefinitionIndex") == 38 or active_weapon:GetProp("DT_BaseAttributableItem", "m_iItemDefinitionIndex") == 11 then
            if g_Config:FindVar("Aimbot", "Ragebot", "Exploits", "Double Tap"):GetBool() then g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Enable Fake Lag"):SetBool(false) else g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Enable Fake Lag"):SetBool(true) end
        else
            g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Enable Fake Lag"):SetBool(true)
        end
  
        g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Enable Fake Lag"):SetBool(true)

        if (c_menu_doubletap_debug_mode:GetBool()) then
        print("[DOUBLETAP] TICKS: SONIC | PRESERVE: -1 | CORRECTION: DISABLED ")
        end
    else
        g_Config:FindVar("Aimbot", "Anti Aim", "Fake Lag", "Enable Fake Lag"):SetBool(true)
    end
    end
    end
    end   
end

local function air_stuck(cmd)

    if c_menu_air_stuck:GetBool() then --Air stuck xDDD
        cmd.tick_count = 0x7FFFFFFF
        cmd.command_number = 0x7FFFFFFF
    end

end
--EXPLOITS

--FAKELAG

local function adaptive_fakelag()
    local local_idx = g_EngineClient:GetLocalPlayer()
    local local_entity = g_EntityList:GetClientEntity(local_idx)
    local sent_packets_num = fakelag.SentPackets()
    local oldOrigin
    if local_entity == nil then
      return
    end
    local is_key_pressed = cheat.IsKeyDown(0x45)
    local local_player = local_entity:GetPlayer();
    local wish_ticks = 0
    local adaptive_ticks = 2
    local speed_x = local_player:GetProp("DT_BasePlayer", "m_vecVelocity[0]")
    local GetAbsOrigin = local_player:GetProp("DT_BasePlayer", "m_vecAbsOrigin")
    local speed_y = local_player:GetProp("DT_BasePlayer", "m_vecVelocity[1]")
    local speed_per_tick = math.sqrt(speed_x * speed_x + speed_y * speed_y) *  g_GlobalVars.interval_per_tick
 
    while (wish_ticks * speed_per_tick) <= 68.0 do
        if (((adaptive_ticks - 1) * speed_per_tick) > 68.0) then
          wish_ticks = wish_ticks + 1;
          break
        end
        
        if ((adaptive_ticks * speed_per_tick) > 68.0) then
          wish_ticks = wish_ticks + 2;
          break
        end
        
        if ((adaptive_ticks + 1) * speed_per_tick) > 68.0 then
          wish_ticks = wish_ticks + 3;
          break
        end
        
        if ((adaptive_ticks + 2) * speed_per_tick) > 68.0 then
          wish_ticks = wish_ticks + 4;
          break
        end
        
        adaptive_ticks = adaptive_ticks + 5;
        wish_ticks = wish_ticks + 5;
  
        if adaptive_ticks > 15 then
          break
        end
    end

    local weapon = local_player:GetActiveWeapon();
    if weapon ~= nil then
      if weapon:GetWeaponID() == 64 then
        if wish_ticks > 15  then
          wish_ticks = 15
        end
      end
    end
    if is_key_pressed then
        fakelag.SetState(false)
    end
    if g_ClientState.m_choked_commands < wish_ticks then
      fakelag.SetState(false)
    end
end

local function fluctuate_fakelag()
    
    local random1 = 0
    local random2 = 0
    local used = false

    if used then
        random1 = math.random(1, c_menu_fakelag_fluctuate_timing:GetFloat())
        used = false
    else
        random1 = math.random(1, c_menu_fakelag_fluctuate_timing:GetFloat())
        used = true
    end

    if random1 == 1 then
        menu_fakelag_limit:SetInt(0)
        
    else
        menu_fakelag_limit:SetInt(15)
    end
    
end

local last = 0
local state = true
local function leg_fucker()
    local cur = g_GlobalVars.curtime
    local local_player = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
    local player = local_player:GetPlayer()

    if (c_menu_exploits_legs:GetBool()) then
     menu_leg_movement:SetInt(utils.RandomInt(1, 2))
    end
end

local function fake_lag()
    local local_idx = g_EngineClient:GetLocalPlayer()
    local local_entity = g_EntityList:GetClientEntity(local_idx)
    local local_player = local_entity:GetPlayer();

    if (c_menu_fakelag_modes:GetInt()) == 0 and dt_charging == false then --adaptive fakelag (AIMWARE_PASTED)
        adaptive_fakelag()
    
    else if (c_menu_fakelag_modes:GetInt()) == 1 then --fluctuate fakelag
        fluctuate_fakelag()
    end
end   
end
--FAKELAG

--VISUALS


local font1 = g_Render:InitFont("Verdana", 55)

local get_screen = g_EngineClient:GetScreenSize()
local FPLx = Vector2.new((get_screen.x /2) - 54, (get_screen.y /2) + 30)
local FPLy = Vector2.new((get_screen.x /2) - 30, (get_screen.y /2) + 56)
local FPLz = Vector2.new((get_screen.x /2) - 51, (get_screen.y /2) + 55)
local FPRx = Vector2.new((get_screen.x /2) + 54, (get_screen.y /2) + 30)
local FPRy = Vector2.new((get_screen.x /2) + 30, (get_screen.y /2) + 56)
local FPRz = Vector2.new((get_screen.x /2) + 51, (get_screen.y /2) + 55)
local FPLxx = Vector2.new((get_screen.x /2) - 56, (get_screen.y /2) + 29)
local FPLyy = Vector2.new((get_screen.x /2) - 32, (get_screen.y /2) + 55)
local FPLzz = Vector2.new((get_screen.x /2) - 53, (get_screen.y /2) + 54)
local FPRxx = Vector2.new((get_screen.x /2) + 53, (get_screen.y /2) + 29)
local FPRyy = Vector2.new((get_screen.x /2) + 29, (get_screen.y /2) + 55)
local FPRzz = Vector2.new((get_screen.x /2) + 50, (get_screen.y /2) + 54)
local LPx = Vector2.new((get_screen.x /2) - 43, (get_screen.y /2) + 13)
local LPy = Vector2.new((get_screen.x /2) - 43, (get_screen.y /2) - 7)
local LPz = Vector2.new((get_screen.x /2) - 63, (get_screen.y /2) + 3)
local RPx = Vector2.new((get_screen.x /2) + 42, (get_screen.y /2) + 13)
local RPy = Vector2.new((get_screen.x /2) + 42, (get_screen.y /2) - 7)
local RPz = Vector2.new((get_screen.x /2) + 62, (get_screen.y /2) + 3)
local LPxx = Vector2.new((get_screen.x /2) - 42, (get_screen.y /2) + 14)
local LPyy = Vector2.new((get_screen.x /2) - 42, (get_screen.y /2) - 6)
local LPzz = Vector2.new((get_screen.x /2) - 62, (get_screen.y /2) + 4)
local RPxx = Vector2.new((get_screen.x /2) + 42, (get_screen.y /2) + 14)
local RPyy = Vector2.new((get_screen.x /2) + 42, (get_screen.y /2) - 6)
local RPzz = Vector2.new((get_screen.x /2) + 62, (get_screen.y /2) + 4)
local BPx = Vector2.new((get_screen.x /2) + 9, (get_screen.y /2) + 47)
local BPy = Vector2.new((get_screen.x /2) - 11, (get_screen.y /2) + 47)
local BPz = Vector2.new((get_screen.x /2) - 1, (get_screen.y /2) + 67)
local BPxx = Vector2.new((get_screen.x /2) + 10, (get_screen.y /2) + 48)
local BPyy = Vector2.new((get_screen.x /2) - 10, (get_screen.y /2) + 48)
local BPzz = Vector2.new((get_screen.x /2), (get_screen.y /2) + 68)
local function indicators_visuals()

    local color_inactive2 = Color.new(0 / 255, 0 / 255 ,0 / 255, 150 / 255)
    local get_screen = g_EngineClient:GetScreenSize()
    local pos_start = Vector2.new(1010,get_screen.y -  558)
    local text_size = 35
    local pos_add = Vector2.new(0, text_size)
    local cur_pos = 0
    local pos_start1 = Vector2.new(900,get_screen.y -  558)
    local cur_pos1 = 0
    if (c_menu_arrows_type:GetInt() == 2 and c_menu_arrows:GetBool()) then 

    g_Render:PolyFilled(color_inactive2, LPxx, LPyy, LPzz)
    g_Render:PolyFilled(color_inactive2, RPxx, RPyy, RPzz)
    g_Render:PolyFilled(color_inactive2, BPxx, BPyy, BPzz)

    if (menu_invert_side:GetBool()) then
        g_Render:PolyFilled(c_menu_arrow_color:GetColor(), FPRxx, FPRyy, FPRzz)
    end
    if (not menu_invert_side:GetBool()) then
        g_Render:PolyFilled(c_menu_arrow_color:GetColor(), FPLxx, FPLyy, FPLzz)
    end
    if menu_antiaim_manual:GetInt()==1 then
         g_Render:PolyFilled(c_menu_arrow_color:GetColor(), BPx, BPy, BPz) -- backwards
    elseif  menu_antiaim_manual:GetInt()==2 then
        g_Render:PolyFilled(c_menu_arrow_color:GetColor(), RPx, RPy, RPz) -- right

    elseif  menu_antiaim_manual:GetInt()==3 then
        g_Render:PolyFilled(c_menu_arrow_color:GetColor(), LPx, LPy, LPz) -- left

    end
end
if (c_menu_arrows_type:GetInt() == 3 and c_menu_arrows:GetBool()) then 

g_Render:CirclePart(Vector2.new(960.0, 541), 20.0, 58, Color.new(0, 0, 0, 100 / 255), math.rad(0), math.rad(360), 5.0)
 
if (menu_invert_side:GetBool()) then
    g_Render:CirclePart(Vector2.new(960.0, 541), 20.0, 58, c_menu_arrow_color:GetColor(), math.rad(810.3), math.rad(630.3), 5.0)
end
if (not menu_invert_side:GetBool()) then
    g_Render:CirclePart(Vector2.new(960.0, 541), 20.0, 58, c_menu_arrow_color:GetColor(), math.rad(90), math.rad(270), 5.0)
end
end

  local function GetColorFromBoolArrow(val)
     return val and c_menu_arrow_color:GetColor() or c_menu_arrow_color:GetColor()
  end
 
  local function arrow(str, val)
    g_Render:Text(str, cur_pos,  GetColorFromBoolArrow(val),  text_size, font1)
    cur_pos = cur_pos - pos_add
  end
  local function arrow2(str, val)
    g_Render:Text(str, cur_pos1,  GetColorFromBoolArrow(val),  text_size, font1)
    cur_pos1 = cur_pos1 - pos_add
  end

  cur_pos = pos_start
  cur_pos1 = pos_start1

  if (c_menu_arrows_type:GetInt() == 0) then
  if c_menu_arrows:GetBool() and menu_invert_side:GetBool() then
      arrow(")", c_menu_arrows:GetBool() )
  end
  if c_menu_arrows:GetBool() and not menu_invert_side:GetBool() then
      arrow2("(", c_menu_arrows:GetBool() )
  end
end

if (c_menu_arrows_type:GetInt() == 1) then
    if c_menu_arrows:GetBool() and menu_invert_side:GetBool() then
        arrow(">", c_menu_arrows:GetBool() )
    end
    if c_menu_arrows:GetBool() and not menu_invert_side:GetBool() then
        arrow2("<", c_menu_arrows:GetBool() )
    end
  end
 
end

    

--VISUALS

--MISC


local function kill_say_function(event)

local words_kill = c_menu_kill_say_words:GetString()
local words_hurt = c_menu_hurt_say_words:GetString()

    if event:GetName() == "player_death" then

        local victim = g_EngineClient:GetPlayerForUserId(event:GetInt("userid"))
        local attacker = g_EngineClient:GetPlayerForUserId( event:GetInt("attacker"))

        if victim ~= attacker and attacker == g_EngineClient:GetLocalPlayer() and c_menu_kill_say:GetBool() then
            g_EngineClient:ExecuteClientCmd('say ' .. words_kill)
        end

    else if event:GetName() == "player_hurt" then

        local victim = g_EngineClient:GetPlayerForUserId(event:GetInt("userid"))
        local attacker = g_EngineClient:GetPlayerForUserId( event:GetInt("attacker"))

        if victim ~= attacker and attacker == g_EngineClient:GetLocalPlayer() and c_menu_hurt_say:GetBool() then
            g_EngineClient:ExecuteClientCmd('say ' .. words_hurt)
        end
    end
end
end



--MISC

--ANTIAIM
local function vec_distance(vec_one, vec_two)

    local delta_x, delta_y, delta_z = vec_one.x - vec_two.x, vec_one.y - vec_two.y

    return math.sqrt(delta_x * delta_x + delta_y * delta_y)

end

local function get_closest_enemy()
    local best_dist = c_menu_anti_brute_fov_slider:GetFloat()
    local best_enemy = nil
    local local_player = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
    local local_origin = local_player:GetProp("DT_BaseEntity", "m_vecOrigin")
    local local_screen_orig = g_Render:ScreenPosition(local_origin)
    local screen = g_EngineClient:GetScreenSize()

    for idx = 1, g_GlobalVars.maxClients + 1 do
        local ent = g_EntityList:GetClientEntity(idx)
        if ent and ent:IsPlayer() then
            local player = ent:GetPlayer()
            local health = player:GetProp("DT_BasePlayer", "m_iHealth")

            if not player:IsTeamMate() and health > 0 and not player:IsDormant() then
                local origin = ent:GetProp("DT_BaseEntity", "m_vecOrigin")
                local screen_orig = g_Render:ScreenPosition(origin)
                local temp_dist = vec_distance(Vector2.new(screen.x / 2, screen.y / 2), screen_orig)

                if(temp_dist < best_dist) then
                    best_dist = temp_dist
                    best_enemy = ent
                end
            end
        end
    end

    return best_enemy
end

local function AA_Anti_Brute_Force(e)

      if e:GetName() == "weapon_fire" and c_menu_anti_brute:GetBool() then --Weapon Fire event later we run FOV check so we can make sure the bullet is on our direction!
        local user_id = e:GetInt("userid", -1)
        local user = g_EntityList:GetClientEntity(g_EngineClient:GetPlayerForUserId(user_id)) --Get Enemy Entity
        local local_player = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer()) --Get Local Entity
        local player = local_player:GetPlayer()
        local health = player:GetProp("DT_BasePlayer", "m_iHealth")
      

        if(health > 0) then -- if our local player is alive we run the AntiBrute Logic!
          
            local closest_enemy = get_closest_enemy() --Get Closest enemy based on distance
            if(closest_enemy ~= nil and user:EntIndex() == closest_enemy:EntIndex()) then
              miss_counter = miss_counter + 1 --Basic so we calculate missed shots of enemy also some checks so if we get hit don't run the code!
            
                 if (miss_counter % 3 == 0) then --Logic 1
                  
                    menu_left_limit:SetInt(c_menu_anti_brute_1stshot:GetInt())
                    menu_invert_side:SetBool(true)   
                    left_side = true                   
                    if (c_menu_anti_brute_debug_mode:GetBool()) then
                        print("[ANTI-BRUTE] Angle overrided to (" .. c_menu_anti_brute_1stshot:GetInt() .. ") [INFO: PASST 3RD SIDE | NEXT ANGLE = (" .. c_menu_anti_brute_2ndshot:GetInt() ..") INVERTER:TRUE]" )
                    end
                else if (miss_counter % 3 == 1) then --Logic 2
                    menu_right_limit:SetInt(c_menu_anti_brute_2ndshot:GetInt())
                    menu_invert_side:SetBool(false)
                    right_side = true
                    if (c_menu_anti_brute_debug_mode:GetBool()) then
                        print("[ANTI-BRUTE] Angle overrided to (" .. c_menu_anti_brute_2ndshot:GetInt() .. ") [INFO: PASST 1ST SIDE | NEXT ANGLE = (" .. c_menu_anti_brute_3rdshot:GetInt() ..") INVERTER:FALSE]" )
                    end

                else if (miss_counter % 3 == 2) then --Logic 3
                    menu_right_limit:SetInt(c_menu_anti_brute_3rdshot:GetInt())
                    menu_left_limit:SetInt(c_menu_anti_brute_3rdshot:GetInt())
        
                    ideal_yaw = true
                    if (c_menu_anti_brute_debug_mode:GetBool()) then
                        print("[ANTI-BRUTE] Angle overrided to (" .. c_menu_anti_brute_3rdshot:GetInt() .. ") [INFO: PASST 2ND SIDE | NEXT ANGLE = (" .. c_menu_anti_brute_1stshot:GetInt() ..") INVERTER:TRUE]" )
                    end
                end
                end
                end
            end
        end
    end
end
--ANTIAIM

--IND

local function text_indicators()

    local clr_green = Color.new(146.1, 255.1, 36.1, 0.9)
    local clr_orange = Color.new(255.1, 183.1, 0.1, 0.9)
    local clr_red = Color.new(255, 0, 0)
    local clr_blue = Color.new(36.1, 164.1, 255.1, 255.9)
    local screen = g_EngineClient:GetScreenSize()
    local pos_start = Vector2.new(c_menu_x:GetFloat(),screen.y -  c_menu_y:GetFloat())
    local text_size = 13
    local pos_add = Vector2.new(0, text_size)
    local cur_pos = Vector2.new(0, 0) -- current frame
    
    -------------------------------------------------------------FAKEDUCK
    local function GetColorFromBool(val)
        return val and clr_green or clr_red
    end
    
    local function RenderIndicator(str, val)
        g_Render:Text(str, cur_pos,  GetColorFromBool(val),  text_size, true)
        cur_pos = cur_pos - pos_add
    end
    
    -------------------------------------------------------------DOUBLETAP
    local function dtchargeind(str, r,g,b)
        g_Render:Text(str, cur_pos, Color.new(r,g,b),text_size, true)
        cur_pos = cur_pos - pos_add
    end
    -------------------------------------------------------------------------------

     local ideal_ind_clr = Color.new(230 / 255, 184 / 255, 0 / 255, 0.9)

     local function ideal_indclr(val)
        return val and ideal_ind_clr or ideal_ind_clr
     end

     local function ideal_ind(str, val)
        g_Render:Text(str, cur_pos,  ideal_indclr(val),  text_size, true)
        cur_pos = cur_pos - pos_add
    end

    local function GetColorFromBool1(val)
        return val and clr_red or clr_red
    end
    
    local function RenderIndicator1(str, val)
        g_Render:Text(str, cur_pos,  GetColorFromBool1(val),  text_size, true)
        cur_pos = cur_pos - pos_add
    end
  -------------------------------------------------------------
local prefer_color = Color.new(208 / 255, 187 / 255, 252 / 255, 0.9)
local function prefersafebool(val)
    return val and prefer_color or prefer_color
end

local function prefersafe(str, val)
    g_Render:Text(str, cur_pos,  prefersafebool(val),  text_size)
    cur_pos = cur_pos - pos_add
end
-------------------------------------------------------------------------------
--------------------------------------------------------------------------------
    cur_pos = pos_start
    
    if c_menu_text_indicators:GetBool() then
      

        if exploits.GetCharge() ~= 1  then
            dt_charging = false
           dtchargeind("DT", 255, 0,0)
        else
            dt_charging = true
           dtchargeind("DT", 146 / 255, 255 / 255, 36 / 255, 0.9)
        end
      
        if menu_fakeduck:GetBool()  then --FD
            RenderIndicator("FD", menu_fakeduck:GetBool() )
        end
        if (ideal_yaw == true) then
            ideal_ind("IDEAL YAW")
        end
        
          prefersafe("PREDICTION")

          if (menu_safe_point:GetInt() > 0) then
            prefersafe("SAFETY")
          end
        if not menu_invert_side:GetBool() then
            RenderIndicator1("LEFT")
        end
        if (menu_invert_side:GetBool()) then
            RenderIndicator1("RIGHT")
        end
    end
 end       
    
    
        
    

--IND

local function watermarker()
    g_Render:GradientBoxFilled(Vector2.new(1569.0, 30.0), Vector2.new(1918.0, 2.0), Color.new(0, 0, 0, 2 / 255), Color.new(0, 0, 0, 255 / 255), Color.new(0, 0, 0, 2 / 255), Color.new(0, 0, 0, 255 / 255))
    g_Render:Text("PREDICTION V2", Vector2.new(1820.0, 9.0), Color.new(1.0, 1.0, 1.0, 1.0), 13, false)
    g_Render:Text("Welcome " .. username, Vector2.new(1599.3, 9.0), Color.new(1.0, 1.0, 1.0, 1.0), 14, false)
    g_Render:Text("[DEFAULT BUILD] ", Vector2.new(1705.3, 9.0), Color.new(1.0, 1.0, 1.0, 1.0), 14, false)

end

--CALLBACKS
local function draw()
    local localplayer = g_EntityList:GetClientEntity(g_EngineClient:GetLocalPlayer())
    if localplayer then
        localplayer = localplayer:GetPlayer()
    else
        return
    end
    if (g_EngineClient:IsConnected()) then
        if (c_menu_watermarker:GetBool()) then
            watermarker()
        end

    end
    if localplayer:m_iHealth() > 0 then
        aimbot_draw()
        indicators_visuals()
        text_indicators()
        if (c_menu_custom_impacts:GetBool()) then
            draw_impacts()
        end
    end   


end

local function pre_prediction(cmd)

    
    air_stuck(cmd)
--    aimbot(cmd)
    instant_recharge()
    fake_lag()


end
local function prediction()
    body_lean()
 
end
local function createmove()
    antiaim_helpers()
--    exploits_func()
    leg_fucker()
 

end
local function events(e)
    
    kill_say_function(e)
    AA_Anti_Brute_Force(e)
    impacts_events(e)
 

end

cheat.RegisterCallback("draw", draw)
cheat.RegisterCallback("pre_prediction", pre_prediction)
cheat.RegisterCallback("prediction", prediction)
cheat.RegisterCallback("createmove", createmove)
cheat.RegisterCallback("events", events)

end

if buff == "" then
    local textbox = menu.TextBox("Init", "Username", 64, "", "What username do you want to use?")
    local button = menu.Button("Init", "Confirm")

    --local done

    button:RegisterCallback(function()
        --if done == true then return end
        --done = true
        ffi.C.WriteFile(pfile, ffi.cast("char*", textbox:GetString()), #textbox:GetString(), nil, 0)
        username = textbox:GetString()
        menu.DestroyItem(textbox)
        menu.DestroyItem(button)
        initlua()
    end)
else
    local textbox = menu.TextBox("Init", "Username", 64, "", "What username do you want to use?")
        local button = menu.Button("Init", "Confirm")
        menu.DestroyItem(textbox)
        menu.DestroyItem(button)
    initlua()
end

--CALLBACKS
поиграть хочу просто
 
Пожалуйста, не надо мне опять маркет этим засирать...
Отпустите труп чоки назад на дно...
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Назад
Сверху Снизу