JS-скрипт [otc] Skyline Cord

Забаненный
Статус
Оффлайн
Регистрация
4 Май 2021
Сообщения
19
Реакции[?]
9
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
JavaScript:
var default_color = [158, 168, 255]
var default_color_a = [158, 168, 255, 255]
UI.AddHotkey("Damage Override", "DMG Override");
UI.AddSliderInt("Damage Override ", 0, 130)
UI.AddHotkey("Hitchance Override", "Hitchance Override");
UI.AddSliderInt("Hitchance Override ", 0, 130)
UI.AddHotkey("Dormant Aim", "Dormant Aimbot");

UI.AddCheckbox("Alternative fake-lags");
UI.AddCheckbox("Better auto-peek");
UI.AddCheckbox("Better double-tap");
UI.AddCheckbox("DMG override");
UI.AddCheckbox("Hitchance override  ");
UI.AddCheckbox("Slow-walk low-delta");
UI.AddCheckbox("R8 DT teleport");
UI.AddCheckbox("Dormant Aimbot Beta");
UI.AddCheckbox("Indicators");
UI.AddCheckbox("Small text size");
UI.AddCheckbox("Grenade warning");
UI.AddCheckbox("Grenade warning OOF");
UI.AddCheckbox("Grenade warning line");
UI.AddCheckbox("Revolver 100 DMG helper");
UI.AddCheckbox("Hitmarker");
UI.AddCheckbox("ESP Grenades");
UI.AddCheckbox("Local bullet tracer");
UI.AddCheckbox("Leg fucker");
UI.AddCheckbox("Static legs in air");
//UI.AddCheckbox("Script items", "Clantag")
Cheat.Print("----------------------------------\n")
Cheat.Print("--Skyline Cord [Coded by WendoX]--\n")
Cheat.Print("-----discord -> WendoX#0297-------\n")
Cheat.Print("-vk -> https://vk.com/retry_later-\n")
Cheat.Print("----------------------------------\n")
Cheat.Print("discord server -> https://discord.gg/3AfcqnTb4A\n")
Cheat.Print("----------------------------------\n")

var particles = []
var helper_dist = 50

var wep2tab = {
    "usp s": "USP",
    "glock 18": "Glock",
    "dual berettas": "Dualies",
    "r8 revolver": "Revolver",
    "desert eagle": "Deagle",
    "p250": "P250",
    "tec 9": "Tec-9",
    "mp9": "MP9",
    "mac 10": "Mac10",
    "pp bizon": "PP-Bizon",
    "ump 45": "UMP45",
    "ak 47": "AK47",
    "sg 553": "SG553",
    "aug": "AUG",
    "m4a1 s": "M4A1-S",
    "m4a4": "M4A4",
    "ssg 08": "SSG08",
    "awp": "AWP",
    "g3sg1": "G3SG1",
    "scar 20": "SCAR20",
    "xm1014": "XM1014",
    "mag 7": "MAG7",
    "m249": "M249",
    "negev": "Negev",
    "p2000": "General",
    "famas": "FAMAS",
    "five seven": "Five Seven",
    "mp7": "MP7",
    "ump 45": "UMP45",
    "p90": "P90",
    "cz75 auto": "CZ-75",
    "mp5 sd": "MP5",
    "galil ar": "GALIL",
    "sawed off": "Sawed off"
};
const trace_type = 0x1 | 0x4000 | 0x2 | 0x2000000 | 0x8 | 0x80000
//var tab_names = ["General", "USP", "Glock", "Five Seven", "Tec-9", "Deagle", "Revolver", "Dualies", "P250", "CZ-75", "Mac10", "P90", "MP5", "MP7", "MP9", "UMP45", "PP-Bizon", "M4A1-S", "M4A4", "AK47", "AUG", "SG553", "FAMAS", "GALIL", "AWP", "SSG08", "SCAR20", "G3SG1", "M249", "XM1014", "MAG7", "Negev", "Sawed off"];

var scout_autostop = UI.GetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode");
var awp_autostop = UI.GetValue("Rage", "AWP", "Accuracy", "Auto stop mode");
var r8_autostop = UI.GetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode");

var scout_sp = UI.GetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point");
var awp_sp = UI.GetValue("Rage", "AWP", "Accuracy",  "Prefer safe point");
var r8_sp = UI.GetValue("Rage", "HEAVY PISTOL", "Accuracy",  "Prefer safe point");
var lines = []
var hits = []
var pmolotov = []
var tracer_lines = []
var altfakelag = 0;
var setid = "m_nForceBone"
var name = "m_nBody"
var name2 = "CBaseCSGrenadeProjectile"


var hotkeys = []
const indicator = {
    name: "",
    fade: 0,
    draw: function(x, y) {},
    enabled: function() {
        return true
    },
    color: function() {
        return default_color
    },
    centered: 0
}
init()
Render.Arc = function(x, y, radius, radius_inner, start_angle, end_angle, segments, color) {
    while (360 % segments != 0) {
        segments++;
    }
    segments = 360 / segments;
    for (var i = start_angle; i < start_angle + end_angle; i = i + segments) {
        var rad = i * Math.PI / 180;
        var rad2 = (i + segments) * Math.PI / 180;
        var rad_cos = Math.cos(rad);
        var rad_sin = Math.sin(rad);
        var rad2_cos = Math.cos(rad2);
        var rad2_sin = Math.sin(rad2);
        var x1_outer = x + rad_cos * radius;
        var y1_outer = y + rad_sin * radius;
        var x2_outer = x + rad2_cos * radius;
        var y2_outer = y + rad2_sin * radius;
        var x1_inner = x + rad_cos * radius_inner;
        var y1_inner = y + rad_sin * radius_inner;
        var x2_inner = x + rad2_cos * radius_inner;
        var y2_inner = y + rad2_sin * radius_inner;
        Render.Polygon([
            [x1_outer, y1_outer],
            [x2_outer, y2_outer],
            [x1_inner, y1_inner]
        ], color);
        Render.Polygon([
            [x1_inner, y1_inner],
            [x2_outer, y2_outer],
            [x2_inner, y2_inner]
        ], color);
    }
}
Math.clamp = function(num, min, max) {
    return num <= min ? min : num >= max ? max : num;
}

const vectorDistance = function(vec, vec2) {
    dx = vec[0] - vec2[0]
    dy = vec[1] - vec2[1]
    dz = vec[2] - vec2[2]
    return Math.abs(Math.sqrt(dx * dx + dy * dy + dz * dz));
}

function check_revolver_distance(victim) {
    player = Entity.GetLocalPlayer()
    if (player == null || victim == null)
        return;

    const weap = Entity.GetWeapon(player)
    if (weap == null)
        return;

    const player_origin = Entity.GetRenderOrigin(player)
    const victim_origin = Entity.GetRenderOrigin(victim)

    const units = vectorDistance(player_origin, victim_origin)
    const no_kevlar = Entity.GetProp(victim, "CCSPlayerResource", "m_iArmor") == 0

    if (Entity.GetName(weap) != "r8 revolver" || !no_kevlar)
        return false


    if (units < 585 && units > 511)
        return true

    else if (units < 511)
        return true
    else
        return false
}
var recharge
var r8dt

function hurt() {
    if (UI.GetValue("Script items", "Hitmarker")) {
        attacker = Event.GetInt("attacker");
        index = Entity.GetEntityFromUserID(attacker);
        user_id = Event.GetInt("userid");
        user = Entity.GetEntityFromUserID(user_id);
        if (index == Entity.GetLocalPlayer() && index != user) {
            var pos = Entity.GetHitboxPosition(user, Event.GetInt("hitgroup"))
            if (pos == undefined) {
                pos = Entity.GetRenderOrigin(user)
                pos[2] = pos[2] + 30
            }
            pos[0] = (pos[0] - 10) + (Math.random() * 20)
            pos[1] = (pos[1] - 10) + (Math.random() * 20)
            pos[2] = (pos[2] - 15) + (Math.random() * 30)
            particles.push([pos, Globals.Tickcount() + 350, Event.GetInt("dmg_health")])
        }
    }
}

function babletap() {
    if (UI.GetValue("Script items", "Better double-tap")) {
        var exploitCharge = Exploit.GetCharge();
        Exploit[(1 != exploitCharge ? "Enable" : "Disable") + "Recharge"](), Exploit.OverrideMaxProcessTicks(19), Exploit.OverrideShift(19)
        Exploit.OverrideTolerance(0), can_shift_shot(12) && 1 != exploitCharge && (Exploit.DisableRecharge(), Exploit.Recharge())
    } else {
        Exploit.EnableRecharge(), Exploit.OverrideShift(12), Exploit.OverrideTolerance(3)
    }
}

var frame = 0;
var dir = -24
function tick() {
    UI.GetValue("Script items", "Leg fucker") && (trufalse = 10 * Math.abs(Math.sin(64 * Globals.Realtime())), trufalse > 5 && UI.SetValue("Misc", "GENERAL", "Movement", "Slide walk", 0), trufalse < 5 && UI.SetValue("Misc", "GENERAL", "Movement", "Slide walk", 1))

    if (isr8() && UI.GetValue("Script items", "R8 DT teleport")) {
        if (r8dt && recharge + 20 == Globals.Tickcount()) {
            UI.ToggleHotkey("Rage", "GENERAL", "Exploits", "Doubletap")
            r8dt = false
        }
    }
    if (UI.GetValue("Script items", "Alternative fake-lags")) {
        frame++;
        if (frame == 45) {
            frame = 1
        };
        if (frame >= 15 && frame <= 45) {
            UI.SetValue('Anti-Aim', 'Fake-Lag', 'Enabled', true)
        } else {
            UI.SetValue('Anti-Aim', 'Fake-Lag', 'Enabled', false)
        }
    }
    if (UI.GetValue("Script items", "Hitmarker")) {
        for (var i = 0; i < particles.length; i++) {
            object = particles[i]
            var delta = object[1] - Globals.Tickcount()
            if (delta > 0) {
                object[0][2] += 0.3
            }
        }
    }
    if (UI.IsHotkeyActive("Anti-Aim", "Extra", "Slow walk")) {
        if (UI.GetValue("Script items", "Slow-walk low-delta")) {
            AntiAim.SetOverride(1);
            AntiAim.SetRealOffset(dir)
            AntiAim.SetFakeOffset(0)
        }
    } else {
        if (UI.GetValue("Script items", "Slow-walk low-delta")) {
            AntiAim.SetOverride(0);
        }
    }
    if (UI.GetValue("Script items", "Better auto-peek")) {
        if (UI.IsHotkeyActive("Misc", "GENERAL", "Movement", "Auto peek") && UI.IsHotkeyActive("Script items", "Damage Override") && UI.IsHotkeyActive("Rage", "Exploits", "Doubletap")) {
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "AWP", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Rage", "AWP", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Anti-Aim", "Rage Anti-Aim", "Auto direction", 1);
        } else {
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode", scout_autostop);
            UI.SetValue("Rage", "AWP", "Accuracy", "Auto stop mode", awp_autostop);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode", r8_autostop);
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point", scout_sp);
            UI.SetValue("Rage", "AWP", "Accuracy", "Prefer safe point", awp_sp);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Prefer safe point", r8_sp);
            UI.SetValue("Anti-Aim", "Rage Anti-Aim", "Auto direction", 0);
        }
    }

    if (UI.GetValue("Script items", "Indicators")) {
        update_indicators()
    }
    if (UI.IsHotkeyActive("Script items", "Damage Override") && UI.GetValue("Script items", "DMG override")) {
        var override = UI.GetValue("Script items", "Damage Override ");

        var target = Entity.GetEnemies();
        for (var i in target) {
            Ragebot.ForceTargetMinimumDamage(target[i], override)
        }
    }
    if (UI.IsHotkeyActive("Script items", "Hitchance Override") && UI.GetValue("Script items", "Hitchance override  ")) {
        var override1 = UI.GetValue("Script items", "Hitchance Override ");
        
        var target = Entity.GetEnemies();
        for (var i in target) {
            Ragebot.ForceTargetHitchance(target[i], override1);
        }
    }
    if (UI.GetValue("Script items", "Revolver 100 DMG helper")) {
        enemies = Entity.GetEnemies();

        for (i = 0; i < enemies.length; i++) {
            if (Entity.IsAlive(enemies[i])) {
                if (check_revolver_distance(enemies[i])) {
                    Entity.DrawFlag(enemies[i], "R8 100 DMG", [158, 168, 255, 255])
                }
            }
        }
    }
    var buttons = UserCMD.GetButtons()
    const check = function(v) {
        return !(buttons & v)
    }
    if(check(1) && check(32) && check(16777216) && check(8192) && check(2048) && check(4) && !check(2) && UI.GetValue("Script items", "Static legs in air")) {
        UserCMD.SetButtons(512)
    }
}
function dtr(degress) {
    return degress * Math.PI / 180.0;
}

function rtd(radians) {
    return radians * 180 / Math.PI
}

function deg(vec1, vec2) {
    x = vec2[0] - vec1[0]
    z = vec2[1] - vec1[1]
    y = vec1[2] - vec2[2]
    return [rtd(Math.atan2(z, x)), rtd(Math.atan2(y, Math.sqrt(x * x + z * z)))]
}

function dormant_aim() {
    if (UI.IsHotkeyActive("Script items", "Dormant Aim") && UI.GetValue("Script items", "Dormant Aimbot Beta")) {
        enemies = Entity.GetEnemies();
        for (i = 0; i < enemies.length; i++) {
            if (Entity.IsAlive(enemies[i]) && Entity.IsDormant(enemies[i])) {
                var startPos = Entity.GetHitboxPosition(Entity.GetLocalPlayer(), 0)
                var endPos = Entity.GetRenderOrigin(enemies[i])
                endPos[2] = endPos[2] + 38
                var trace_result = Trace.Bullet(Entity.GetLocalPlayer(), enemies[i], startPos, endPos);
                if (trace_result[1] > 0) {
                    var arr = deg(startPos, endPos);
                    var yaw = arr[0]
                    var pitch = arr[1]
                    if (Local.GetInaccuracy() < 0.01) {
                        UserCMD.SetAngles([pitch, yaw, 0])
                        Cheat.ExecuteCommand("+attack");
                        da_shot = true;
                    }
                }
            }
        }
    }
}

function dormant_aim_shot() {
    if (da_shot) {
        Cheat.ExecuteCommand("-attack");
        da_shot = false;
    }
}

function swap() {
    var rand = Math.random()
    if (rand > 0.0 && rand < 0.5) {
        dir = -28
    }
    if (rand > 0.5 && rand < 1) {
        dir = 0
    }
    if ((Entity.GetEntityFromUserID(Event.GetInt("userid")) != Entity.GetLocalPlayer()) || !isr8()) return;
    recharge = Globals.Tickcount();
    if (UI.IsHotkeyActive("Rage", "Exploits", "Doubletap") && UI.GetValue("Script items", "R8 DT teleport")) {
        UI.ToggleHotkey("Rage", "Exploits", "Doubletap")
        r8dt = true;
    }
}

function can_shift_shot(ticks_to_shift) {
    var me = Entity.GetLocalPlayer();
    var wpn = Entity.GetWeapon(me);

    if (me == null || wpn == null)
        return false;

    var tickbase = Entity.GetProp(me, "CCSPlayer", "m_nTickBase");
    var curtime = Globals.TickInterval() * (tickbase - ticks_to_shift)

    if (curtime < Entity.GetProp(me, "CCSPlayer", "m_flNextAttack"))
        return false;

    if (curtime < Entity.GetProp(wpn, "CBaseCombatWeapon", "m_flNextPrimaryAttack"))
        return false;

    return true;
}

function calcDist(local, target) {
    var lx = local[0];
    var ly = local[1];
    var lz = local[2];
    var tx = target[0];
    var ty = target[1];
    var tz = target[2];
    var dx = lx - tx;
    var dy = ly - ty;
    var dz = lz - tz;
    return Math.sqrt(dx * dx + dy * dy + dz * dz);
}

function isr8() {
    return Entity.GetName(Entity.GetWeapon(Entity.GetLocalPlayer())) == "r8 revolver"
}


function angle_to_vec(pitch, yaw) {
    var p = degreesToRadians(pitch);
    var y = degreesToRadians(yaw)
    var sin_p = Math.sin(p);
    var cos_p = Math.cos(p);
    var sin_y = Math.sin(y);
    var cos_y = Math.cos(y);
    return [cos_p * cos_y, cos_p * sin_y, -sin_p];
}

function degreesToRadians(degress) {
    return degress * Math.PI / 180.0;
}

function idToStr(name) {
    if (name == "molotov") {
        return "O"
    }
    if (name == "high explosive grenade") {
        return "j"
    }
    if (name == "smoke grenade") {
        return "Z"
    }
    if (name == "incendiary grenade") {
        return "l"
    }
    return "";
}
var lasttime = 0
var setNull

function draw() {
    if(World.GetServerString() == "") {
        hits = []
        lines = []
        particles = []
        tracer_lines = []
        pmolotov = []
    }
    enemies = Entity.GetEnemies();
    for (i = 0; i < enemies.length; i++) {
        if (Entity.IsAlive(enemies[i]) && !Entity.IsDormant(enemies[i]) && UI.GetValue("Script items", "ESP Grenades")) {
            var pos = Entity.GetRenderBox(enemies[i])
            var x = (pos[3] - pos[1]) / 2
            x += pos[1]
            str = ""
            for (var b = 0; b < Entity.GetWeapons(enemies[i]).length; b++) {
                str += idToStr(Entity.GetName(Entity.GetWeapons(enemies[i])[b]))
            }
            var font_nade = Render.AddFont("weaponicons", 18, 0);
            Render.StringCustom(x - 1, pos[2] - 34, 1, str, [25, 25, 25, 255], font_nade)
            Render.StringCustom(x, pos[2] - 33, 1, str, [255, 255, 255, 255], font_nade)
        }
    }
    var local = Entity.GetLocalPlayer();
    if (UI.IsHotkeyActive("Visual", "WORLD", "View", "Thirdperson") && UI.GetValue("Script items", "Local bullet tracer")) {
        for (var i = 0; i < tracer_lines.length; i++) {
            object = tracer_lines[i]
            var delta = object[2] - Globals.Tickcount()
            var xz1 = Render.WorldToScreen(object[0])
            var xz2 = Render.WorldToScreen(object[1])
            if (delta > 0) {
                size = Render.GetScreenSize()
                delta = delta * 5
                if (delta > 255) {
                    delta = 255
                }
                Render.Line(xz1[0], xz1[1], xz2[0], xz2[1], [158, 168, 255, delta])
                Render.FilledCircle(xz2[0], xz2[1], 3, [158, 168, 255, delta])
            }
        }
    }
    if (Entity.IsAlive(local)) {
        if (UI.GetValue("Script items", "Indicators")) {
            draw_indicators()
            var desync_delta = Math.clamp(Math.abs(Math.round(Local.GetRealYaw() - Local.GetFakeYaw())), 0, 58)
            Render.GradientRect((Global.GetScreenSize()[0] / 2 + -desync_delta * 2) + desync_delta + 2, Global.GetScreenSize()[1] / 2 + 26, desync_delta, 2.5, 1, [158, 168, 255, 0], [158, 168, 255, 255]);
            Render.GradientRect((Global.GetScreenSize()[0] / 2 + -desync_delta * 2) + (desync_delta * 2), Global.GetScreenSize()[1] / 2 + 26, desync_delta, 2.5, 1, [158, 168, 255, 255], [158, 168, 255, 0]);
            var fonT = UI.GetValue("Script items", "Small text size") ? porter(9) : small(13)
            var comp = (UI.GetValue("Script items", "Small text size") ? 2 : 0)
            Render.StringCustom(resolution[0] / 2, resolution[1] / 2 + 12 - comp, 1, desync_delta + "", [25, 25, 25, 255], fonT)
            Render.StringCustom(resolution[0] / 2, resolution[1] / 2 + 11 - comp, 1, desync_delta + "", [158, 168, 255, 255], fonT)
        }
        if (UI.GetValue("Script items", "Revolver 100 DMG helper")) {
            size = Render.GetScreenSize()
            enemies = Entity.GetEnemies();
            for (i = 0; i < enemies.length; i++) {
                if (Entity.IsAlive(enemies[i])) {
                    origin = Entity.GetHitboxPosition(enemies[i], 0);
                    if (origin) {
                        xz = Render.WorldToScreen(origin)
                        if (check_revolver_distance(enemies[i])) {
                            Render.Line(size[0] / 2, size[1], xz[0], xz[1], [158, 168, 255, 255]);
                        }
                    }
                }
            }
        }
        if (UI.GetValue("Script items", "Hitmarker")) {
            for (var i = 0; i < particles.length; i++) {
                pos = Render.WorldToScreen(particles[i][0])
                var timer = particles[i][1] - Globals.Tickcount()
                if (timer > 255) {
                    timer = 255
                }
                if (!(timer < 0)) {
                    if (pos != undefined) {
                        Render.StringCustom(pos[0], pos[1], 1, particles[i][2].toString(), [158, 168, 255, timer], small(14))
                    }
                }
            }
        }
    } else {
        hits = []
        particles = []
        lines = []
        pmolotov = []
    }
}

function draw_indicators() {
    resolution = Render.GetScreenSize()
    var m = 0
    var down = 23
    for (var i = 0; i < hotkeys.length; i++) {
        var ind = hotkeys[i]
        if (ind.fade > 0) {
            var comp = (UI.GetValue("Script items", "Small text size") ? 4 : 0)
            Render.StringCustom(resolution[0] / 2 + 1 - ind.centered, resolution[1] / 2 + 10 + (m * 13.5) + down - comp, 1, ind.name, [25, 25, 25, ind.fade * 10], porter(11))
            Render.StringCustom(resolution[0] / 2 - ind.centered, resolution[1] / 2 + 9 + (m * 13.5) + down - comp, 1, ind.name, [ind.color()[0], ind.color()[1], ind.color()[2], ind.fade * 10], porter(11))
            ind.draw(resolution[0] / 2, resolution[1] / 2 + 9 + (m * 13.5) + down, ind.fade * 10)
            m++
        }
    }
}


function update_indicators() {
    for (var i = 0; i < hotkeys.length; i++) {
        var ind = hotkeys[i]
        if (ind.enabled()) {
            ind.fade = ind.fade + 2
            ind.fade = Math.clamp(ind.fade, 0, 25)
        } else {
            ind.fade = ind.fade - 2
            ind.fade = Math.clamp(ind.fade, 0, 25)
        }
    }
}
function getLocal() {
    return Entity.GetRenderOrigin(Entity.GetLocalPlayer());
}
function porter(size) {
    if (UI.GetValue("Script items", "Small text size")) {
        return Render.AddFont("Verdana", size, 0);
    }
    return Render.AddFont("porter", size, 0);
}

function small(size) {
    return Render.AddFont("samson", size, 0);
}

function debug(value) {
    Cheat.PrintColor([255, 255, 255, 255], value.toString() + "\n")
}

function init() {
    dt = Object.create(indicator)
    dt.name = "DT"
    dt.enabled = function() {
        return UI.IsHotkeyActive("Rage", "Exploits", "Doubletap")
    }
    dt.color = function() {
        return [158, 168, 255, 255]
    }
    dt.draw = function(x, y, fade) {
        var charg = Math.clamp(charge() - 0.2, 0, 1)
        if (charg < 0.1)
            charg = 0
        Render.Arc(x + 13.5, y + 5.8, 6, 4, 0, 360, 128, [20, 20, 20, fade])
        Render.Arc(x + 12.5, y + 4.8, 6, 4, 0, charg * 440, 128, [158, 168, 255, fade])
    }
    dt.centered = 4
    hide = Object.create(indicator)
    hide.name = "HIDE"
    hide.enabled = function() {
        return UI.IsHotkeyActive("Rage", "Exploits", "Hide shots");
    }
    safe = Object.create(indicator)
    safe.name = "SAFE"
    safe.enabled = function() {
        return UI.IsHotkeyActive("Rage", "GENERAL", "General", "Force safe point");
    }
    low_delta = Object.create(indicator)
    low_delta.name = "LOW-DELTA"
    low_delta.enabled = function() {
        return UI.IsHotkeyActive("Anti-Aim", "Extra", "Slow walk") && UI.GetValue("Script items", "Slow-walk low-delta")
    }
    dmg = Object.create(indicator)
    dmg.name = "DMG"
    dmg.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Damage Override") && UI.GetValue("Script items", "DMG override")
    }
    hc = Object.create(indicator)
    hc.name = "HC"
    hc.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Hitchance Override") && UI.GetValue("Script items", "Hitchance override")
    }
    da = Object.create(indicator)
    da.name = "DA"
    da.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Dormant Aim") && UI.GetValue("Script items", "Dormant Aimbot Beta")
    }
    hotkeys.push(dt)
    hotkeys.push(dmg)
    hotkeys.push(hc)
    hotkeys.push(hide)
    hotkeys.push(safe)
    hotkeys.push(low_delta)
    hotkeys.push(da)
}

function charge() {
    return Exploit.GetCharge()
}

function on_player_connect() {
    lines = []
    hits = []
    pmolotov = []
}
var id = 1

function grenade_warning_tick() {
    entities = Entity.GetEntitiesByClassID(9).concat(Entity.GetEntitiesByClassID(114));
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, name2, name, Entity.GetProp(entity, name2, name) + 1)
        }
    }
    if (entities.length == 0) {
        hits = []
        lines = []
        pmolotov = []
    }
    entities = Entity.GetEntitiesByClassID(9)
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        var vel = Entity.GetProp(entity, 'CBaseGrenade', 'm_vecVelocity');
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime') != Math.round(vel[0]) && Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, 'CBaseCSGrenade', 'm_flAnimTime', Math.round(vel[0]))
            var mx = vel[0] * 0.015
            var my = vel[2] * 0.015
            var mz = vel[1] * 0.015
            Entity.SetProp(entity, 'CBaseCSGrenadeProjectile', setid, id)
            id++
            var x = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[0]
            var y = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[2]
            var z = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[1]
            var hittable = false
            for (var i = 0; i < 109 - Entity.GetProp(entity, name2, name); i++) {
                my = my - 0.0712
                var hit = []
                var hitbox = [
                    [
                        [x - 2, z - 2, y - 2],
                        [x + mx - 2, z + mz - 2, y + my - 2]
                    ],
                    [
                        [x - 2, z - 2, y + 2],
                        [x + mx - 2, z + mz - 2, y + my + 2]
                    ],
                    [
                        [x + 2, z + 2, y - 2],
                        [x + mx + 2, z + mz + 2, y + my - 2]
                    ],
                    [
                        [x + 2, z + 2, y + 2],
                        [x + mx + 2, z + mz + 2, y + my + 2]
                    ]
                ]
                for (var v = 0; v < hitbox.length; v++) {
                    var h = hitbox[v]
                    var res = 0
                    res = Trace.Line(entity, h[0], h[1])[1]
                    if (res != 1) {
                        var ny = h[0][2] + 10
                        var nx = h[1][0]
                        var nz = h[1][1]
                        var fny = h[0][2]
                        var fnx = h[1][0]
                        var fnz = h[1][1]
                        vres = Trace.Line(entity, [fnx, fnz, fny], [nx, nz, ny])[1]
                        var start = [x, z, y]
                        var end = [x - mx, z - mz, y - 30]
                        vres1 = Trace.Line(entity, start, end)[1]
                        if (vres == 1 && vres1 == 1) {
                            hittable = true
                            hit = [x + mx * (res), z + mz * (res), y + my * (res)]
                            break;
                        } else {
                            my = my * -0.45
                            mx = mx * 0.45
                            mz = mz * 0.45
                            break
                        }
                    }
                }
                if (hit.length > 1) {
                    hits.push([
                        [hit[0], hit[1], hit[2]], Globals.Tickcount() + i, false, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                    ])
                    break;
                }
                if (i % (UI.GetValue("Script items", "Grenade warning line") ? 1 : 2) == 0) {
                    lines.push([
                        [x, z, y],
                        [x + mx, z + mz, y + my], Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                    ])
                }
                x = x + mx
                y = y + my
                z = z + mz
            }
            if (!hittable) {
                hits.push([
                    [x, z, y], Globals.Tickcount() + i, false, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                ])
            }
        }
    }
    entities = Entity.GetEntitiesByClassID(114)
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]

        var vel = Entity.GetProp(entity, 'CBaseGrenade', 'm_vecVelocity');
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime') != Math.round(vel[0]) && Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, 'CBaseCSGrenade', 'm_flAnimTime', Math.round(vel[0]))
            var mx = vel[0] * 0.015
            var my = vel[2] * 0.015
            var mz = vel[1] * 0.015
            Entity.SetProp(entity, 'CBaseCSGrenadeProjectile', setid, id)
            id++
            var predicted
            var x = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[0]
            var y = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[2]
            var z = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[1]
            var hittable = false
            for (var i = 0; i < 130 - Entity.GetProp(entity, name2, name); i++) {
                my = my - 0.0712
                var hit = []
                var hitbox = [
                    [
                        [x - 2, z - 2, y - 2],
                        [x + mx - 2, z + mz - 2, y + my - 2]
                    ],
                    [
                        [x - 2, z - 2, y + 2],
                        [x + mx - 2, z + mz - 2, y + my + 2]
                    ],
                    [
                        [x + 2, z + 2, y - 2],
                        [x + mx + 2, z + mz + 2, y + my - 2]
                    ],
                    [
                        [x + 2, z + 2, y + 2],
                        [x + mx + 2, z + mz + 2, y + my + 2]
                    ]
                ]
                for (var v = 0; v < hitbox.length; v++) {
                    var h = hitbox[v]
                    var res = 0
                    res = Trace.Line(entity, h[0], h[1])[1]
                    if (res != 1) {
                        var ny = h[0][2] + 10
                        var nx = h[1][0]
                        var nz = h[1][1]
                        var fny = h[0][2]
                        var fnx = h[1][0]
                        var fnz = h[1][1]
                        vres = Trace.Line(entity, [fnx, fnz, fny], [nx, nz, ny])[1]
                        var start = [x, z, y]
                        var end = [x - mx, z - mz, y - 20]
                        vres1 = Trace.Line(entity, start, end)[1]
                        if (vres == 1 && vres1 == 1) {
                            hittable = true
                            hit = [x + mx * (res), z + mz * (res), y + my * (res)]
                            break;
                        } else {
                            if (vres1 != 1) {
                                pmolotov.push([
                                    [x, z, y], Globals.Tickcount(), Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                                ])
                                hits.push([
                                    [x, z, y], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                                ])
                                return
                            }
                            my = my * -0.45
                            mx = mx * 0.45
                            mz = mz * 0.45
                            break
                        }
                    }
                }
                if (hit.length > 1) {
                    hits.push([
                        [hit[0], hit[1], hit[2]], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                    ])
                    break;
                }
                if (UI.GetValue("Script items", "Grenade warning line")) {
                    lines.push([
                        [x, z, y],
                        [x + mx, z + mz, y + my], Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                    ])
                }
                x = x + mx
                y = y + my
                z = z + mz
            }
            if (!hittable) {
                hits.push([
                    [x, z, y], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                ])
            }
        }
    }
    const contains = function(arr, contain) {
        for (var i = 0; i < arr.length; i++) {
            var object = arr[i]
            if (object == contain) {
                return true
            }
        }
        return false;
    }
    entities = Entity.GetEntitiesByClassID(9).concat(Entity.GetEntitiesByClassID(114));
    var array = []
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            array.push(Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'))
        }
    }
    for (var i = 0; i < hits.length; i++) {
        var object = hits[i]
        if (!contains(array, object[3])) {
            hits[i][1] = 0;
        }
    }
    for (var i = 0; i < lines.length; i++) {
        var object = lines[i]
        if (!contains(array, object[3])) {
            lines[i][2] = 0;
        }
    }
    for (var i = 0; i < pmolotov.length; i++) {
        var object = pmolotov[i]
        if (!contains(array, object[3])) {
            pmolotov[i][2] = 1;
            pmolotov[i][1] = -5;
        }
    }
}

function draw_warning(xzy) {
    //var font_nade = Render.AddFont("weaponicons", 26, 0);
    const draw_ind = function(x, y, alpha, str, oof, xzy) {
        Render.Circle(x, y, oof ? (18 + Globals.Tickcount() / 7 % 5) : 20, [155, 155, 155, alpha])
        Render.String(x + 1, y - 18, 1, str, [255, 255, 255, alpha], 5);
        var distance = Math.round(vectorDistance(getLocal(), xzy) / 50)
        Render.StringCustom(x + 1, y + 7, 1, distance + " m", [255, 255, 255, alpha], small(8));
    }
    var x = Render.WorldToScreen(xzy[0])[0]
    var y = Render.WorldToScreen(xzy[0])[1]
    var str = xzy[2] ? "K" : "I";
    var alpha = (xzy[1] - Globals.Tickcount()) * 2
    if (alpha < 1)
        return;
    size = Render.GetScreenSize()
    if (x < 0 || x > size[0] || y > size[1] || y < 0) {
        if (UI.GetValue("Script items", "Grenade warning OOF")) {
            var yaw = (Local.GetViewAngles()[1])
            var myorig = getLocal()
            var orig = xzy[0]
            var x = orig[0] - myorig[0]
            var z = orig[1] - myorig[1]
            var atan = Math.atan2(z, x)
            var deg = atan * (180 / Math.PI);
            deg -= yaw + 90;
            atan = deg / 180 * Math.PI;
            var cos = Math.cos(atan) * -1
            var sin = Math.sin(atan)
            draw_ind(size[0] / 2 + cos * 150, size[1] / 2 + sin * 150, 255, str, true, xzy[0])
        }
    } else {
        draw_ind(x, y, 255, str, false, xzy[0])
    }
}

function grenade_warning_draw() {
    if (UI.GetValue("Script items", "Grenade warning")) {
        for (var i = 0; i < lines.length; i++) {
            var line = lines[i]
            var alpha = (line[2] - Globals.Tickcount())
            if (alpha > 0) {
                size = Render.GetScreenSize()
                if (Render.WorldToScreen(line[1])[1] > 0 && Render.WorldToScreen(line[0])[1] > 0 && Render.WorldToScreen(line[1])[1] < size[1] && Render.WorldToScreen(line[0])[1] < size[1]) {
                    Render.Line(Render.WorldToScreen(line[0])[0], Render.WorldToScreen(line[0])[1], Render.WorldToScreen(line[1])[0], Render.WorldToScreen(line[1])[1], [158, 168, 255, 255])
                }
            }
        }
        for (var i = 0; i < hits.length; i++) {
            var line = hits[i]
            draw_warning(line)
        }
        for (var i = 0; i < pmolotov.length; i++) {
            var molotov = pmolotov[i]
            var xzy = molotov[0]
            var start_timer = molotov[1]
            var end_timer = molotov[2]
            var curr = Globals.Tickcount()
            var max = end_timer - start_timer
            var cur = end_timer - curr
            var proc = cur / max * 300
            if (proc > 0)
                draw_circle_3d(xzy[0], xzy[1], xzy[2], 130, 360, proc, 30, default_color_a, true, [255, 255, 255, 20])
        }
    }
}

function draw_circle_3d(x, y, z, radius, degrees, degrees_outline, start_at, clr, filled, fill_clr) {
    var accuracy = 5;
    var old_x, old_y;
    start_at = start_at + 1
    for (rot = start_at; rot < degrees + start_at + 1; rot += accuracy) {
        rot_r = rot * (Math.PI / 180)
        line_x = radius * Math.cos(rot_r) + x, line_y = radius * Math.sin(rot_r) + y
        var curr = Render.WorldToScreen([line_x, line_y, z]),
            cur = Render.WorldToScreen([x, y, z]);
        if (cur[0] != null && curr[0] != null && old_x != null) {
            if (filled) Render.Polygon([
                [curr[0], curr[1]],
                [old_x, old_y],
                [cur[0], cur[1]]
            ], fill_clr)
        }
        old_x = curr[0], old_y = curr[1];
    }
    for (rot = start_at; rot < degrees_outline + start_at + 1; rot += accuracy) {
        rot_r = rot * (Math.PI / 180)
        line_x = radius * Math.cos(rot_r) + x, line_y = radius * Math.sin(rot_r) + y
        var curr = Render.WorldToScreen([line_x, line_y, z]),
            cur = Render.WorldToScreen([x, y, z]);
        if (cur[0] != null && curr[0] != null && old_x != null) {
            Render.Line(curr[0], curr[1], old_x, old_y, clr)
        }
        old_x = curr[0], old_y = curr[1];
    }
}

function round_start() {
    hits = []
    lines = []
    particles = []
    tracer_lines = []
    pmolotov = []
}

function bullet_impact() {
    player = Event.GetInt("userid");
    player_index = Entity.GetEntityFromUserID(player);
    if (Entity.GetLocalPlayer() == player_index) {
        tracer_lines.push([Entity.GetEyePosition(Entity.GetLocalPlayer()), [Event.GetFloat("x"), Event.GetFloat("y"), Event.GetFloat("z")], Globals.Tickcount() + 90])
    }
}
Cheat.RegisterCallback("bullet_impact", "bullet_impact");
Cheat.RegisterCallback("player_connect_full", "on_player_connect")
Cheat.RegisterCallback("weapon_fire", "swap")
Cheat.RegisterCallback("CreateMove", "dormant_aim")
Cheat.RegisterCallback("CreateMove", "babletap")
Cheat.RegisterCallback("weapon_fire", "dormant_aim_shot");
Cheat.RegisterCallback("round_start", "round_start")
Cheat.RegisterCallback("CreateMove", "tick")
Cheat.RegisterCallback("Draw", "draw")
Cheat.RegisterCallback('Draw', 'grenade_warning_draw')
Cheat.RegisterCallback('CreateMove', 'grenade_warning_tick')
Cheat.RegisterCallback("player_hurt", "hurt")
 
#include <brain>
Забаненный
Статус
Оффлайн
Регистрация
29 Сен 2020
Сообщения
588
Реакции[?]
99
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Так это джска не на кряк а на в4 ку
 
Забаненный
Статус
Оффлайн
Регистрация
22 Авг 2019
Сообщения
26
Реакции[?]
2
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
измени шапку
 
Забаненный
Статус
Оффлайн
Регистрация
4 Май 2021
Сообщения
19
Реакции[?]
9
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
10 Июн 2021
Сообщения
76
Реакции[?]
26
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
4 Май 2021
Сообщения
19
Реакции[?]
9
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
#include <brain>
Забаненный
Статус
Оффлайн
Регистрация
29 Сен 2020
Сообщения
588
Реакции[?]
99
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
4 Май 2021
Сообщения
19
Реакции[?]
9
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
10 Июн 2021
Сообщения
76
Реакции[?]
26
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
#include <brain>
Забаненный
Статус
Оффлайн
Регистрация
29 Сен 2020
Сообщения
588
Реакции[?]
99
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Продам киру
Начинающий
Статус
Оффлайн
Регистрация
14 Дек 2019
Сообщения
311
Реакции[?]
25
Поинты[?]
0
JavaScript:
var default_color = [158, 168, 255]
var default_color_a = [158, 168, 255, 255]
UI.AddHotkey("Damage Override", "DMG Override");
UI.AddSliderInt("Damage Override ", 0, 130)
UI.AddHotkey("Hitchance Override", "Hitchance Override");
UI.AddSliderInt("Hitchance Override ", 0, 130)
UI.AddHotkey("Dormant Aim", "Dormant Aimbot");

UI.AddCheckbox("Alternative fake-lags");
UI.AddCheckbox("Better auto-peek");
UI.AddCheckbox("Better double-tap");
UI.AddCheckbox("DMG override");
UI.AddCheckbox("Hitchance override  ");
UI.AddCheckbox("Slow-walk low-delta");
UI.AddCheckbox("R8 DT teleport");
UI.AddCheckbox("Dormant Aimbot Beta");
UI.AddCheckbox("Indicators");
UI.AddCheckbox("Small text size");
UI.AddCheckbox("Grenade warning");
UI.AddCheckbox("Grenade warning OOF");
UI.AddCheckbox("Grenade warning line");
UI.AddCheckbox("Revolver 100 DMG helper");
UI.AddCheckbox("Hitmarker");
UI.AddCheckbox("ESP Grenades");
UI.AddCheckbox("Local bullet tracer");
UI.AddCheckbox("Leg fucker");
UI.AddCheckbox("Static legs in air");
//UI.AddCheckbox("Script items", "Clantag")
Cheat.Print("----------------------------------\n")
Cheat.Print("--Skyline Cord [Coded by WendoX]--\n")
Cheat.Print("-----discord -> WendoX#0297-------\n")
Cheat.Print("-vk -> https://vk.com/retry_later-\n")
Cheat.Print("----------------------------------\n")
Cheat.Print("discord server -> https://discord.gg/3AfcqnTb4A\n")
Cheat.Print("----------------------------------\n")

var particles = []
var helper_dist = 50

var wep2tab = {
    "usp s": "USP",
    "glock 18": "Glock",
    "dual berettas": "Dualies",
    "r8 revolver": "Revolver",
    "desert eagle": "Deagle",
    "p250": "P250",
    "tec 9": "Tec-9",
    "mp9": "MP9",
    "mac 10": "Mac10",
    "pp bizon": "PP-Bizon",
    "ump 45": "UMP45",
    "ak 47": "AK47",
    "sg 553": "SG553",
    "aug": "AUG",
    "m4a1 s": "M4A1-S",
    "m4a4": "M4A4",
    "ssg 08": "SSG08",
    "awp": "AWP",
    "g3sg1": "G3SG1",
    "scar 20": "SCAR20",
    "xm1014": "XM1014",
    "mag 7": "MAG7",
    "m249": "M249",
    "negev": "Negev",
    "p2000": "General",
    "famas": "FAMAS",
    "five seven": "Five Seven",
    "mp7": "MP7",
    "ump 45": "UMP45",
    "p90": "P90",
    "cz75 auto": "CZ-75",
    "mp5 sd": "MP5",
    "galil ar": "GALIL",
    "sawed off": "Sawed off"
};
const trace_type = 0x1 | 0x4000 | 0x2 | 0x2000000 | 0x8 | 0x80000
//var tab_names = ["General", "USP", "Glock", "Five Seven", "Tec-9", "Deagle", "Revolver", "Dualies", "P250", "CZ-75", "Mac10", "P90", "MP5", "MP7", "MP9", "UMP45", "PP-Bizon", "M4A1-S", "M4A4", "AK47", "AUG", "SG553", "FAMAS", "GALIL", "AWP", "SSG08", "SCAR20", "G3SG1", "M249", "XM1014", "MAG7", "Negev", "Sawed off"];

var scout_autostop = UI.GetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode");
var awp_autostop = UI.GetValue("Rage", "AWP", "Accuracy", "Auto stop mode");
var r8_autostop = UI.GetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode");

var scout_sp = UI.GetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point");
var awp_sp = UI.GetValue("Rage", "AWP", "Accuracy",  "Prefer safe point");
var r8_sp = UI.GetValue("Rage", "HEAVY PISTOL", "Accuracy",  "Prefer safe point");
var lines = []
var hits = []
var pmolotov = []
var tracer_lines = []
var altfakelag = 0;
var setid = "m_nForceBone"
var name = "m_nBody"
var name2 = "CBaseCSGrenadeProjectile"


var hotkeys = []
const indicator = {
    name: "",
    fade: 0,
    draw: function(x, y) {},
    enabled: function() {
        return true
    },
    color: function() {
        return default_color
    },
    centered: 0
}
init()
Render.Arc = function(x, y, radius, radius_inner, start_angle, end_angle, segments, color) {
    while (360 % segments != 0) {
        segments++;
    }
    segments = 360 / segments;
    for (var i = start_angle; i < start_angle + end_angle; i = i + segments) {
        var rad = i * Math.PI / 180;
        var rad2 = (i + segments) * Math.PI / 180;
        var rad_cos = Math.cos(rad);
        var rad_sin = Math.sin(rad);
        var rad2_cos = Math.cos(rad2);
        var rad2_sin = Math.sin(rad2);
        var x1_outer = x + rad_cos * radius;
        var y1_outer = y + rad_sin * radius;
        var x2_outer = x + rad2_cos * radius;
        var y2_outer = y + rad2_sin * radius;
        var x1_inner = x + rad_cos * radius_inner;
        var y1_inner = y + rad_sin * radius_inner;
        var x2_inner = x + rad2_cos * radius_inner;
        var y2_inner = y + rad2_sin * radius_inner;
        Render.Polygon([
            [x1_outer, y1_outer],
            [x2_outer, y2_outer],
            [x1_inner, y1_inner]
        ], color);
        Render.Polygon([
            [x1_inner, y1_inner],
            [x2_outer, y2_outer],
            [x2_inner, y2_inner]
        ], color);
    }
}
Math.clamp = function(num, min, max) {
    return num <= min ? min : num >= max ? max : num;
}

const vectorDistance = function(vec, vec2) {
    dx = vec[0] - vec2[0]
    dy = vec[1] - vec2[1]
    dz = vec[2] - vec2[2]
    return Math.abs(Math.sqrt(dx * dx + dy * dy + dz * dz));
}

function check_revolver_distance(victim) {
    player = Entity.GetLocalPlayer()
    if (player == null || victim == null)
        return;

    const weap = Entity.GetWeapon(player)
    if (weap == null)
        return;

    const player_origin = Entity.GetRenderOrigin(player)
    const victim_origin = Entity.GetRenderOrigin(victim)

    const units = vectorDistance(player_origin, victim_origin)
    const no_kevlar = Entity.GetProp(victim, "CCSPlayerResource", "m_iArmor") == 0

    if (Entity.GetName(weap) != "r8 revolver" || !no_kevlar)
        return false


    if (units < 585 && units > 511)
        return true

    else if (units < 511)
        return true
    else
        return false
}
var recharge
var r8dt

function hurt() {
    if (UI.GetValue("Script items", "Hitmarker")) {
        attacker = Event.GetInt("attacker");
        index = Entity.GetEntityFromUserID(attacker);
        user_id = Event.GetInt("userid");
        user = Entity.GetEntityFromUserID(user_id);
        if (index == Entity.GetLocalPlayer() && index != user) {
            var pos = Entity.GetHitboxPosition(user, Event.GetInt("hitgroup"))
            if (pos == undefined) {
                pos = Entity.GetRenderOrigin(user)
                pos[2] = pos[2] + 30
            }
            pos[0] = (pos[0] - 10) + (Math.random() * 20)
            pos[1] = (pos[1] - 10) + (Math.random() * 20)
            pos[2] = (pos[2] - 15) + (Math.random() * 30)
            particles.push([pos, Globals.Tickcount() + 350, Event.GetInt("dmg_health")])
        }
    }
}

function babletap() {
    if (UI.GetValue("Script items", "Better double-tap")) {
        var exploitCharge = Exploit.GetCharge();
        Exploit[(1 != exploitCharge ? "Enable" : "Disable") + "Recharge"](), Exploit.OverrideMaxProcessTicks(19), Exploit.OverrideShift(19)
        Exploit.OverrideTolerance(0), can_shift_shot(12) && 1 != exploitCharge && (Exploit.DisableRecharge(), Exploit.Recharge())
    } else {
        Exploit.EnableRecharge(), Exploit.OverrideShift(12), Exploit.OverrideTolerance(3)
    }
}

var frame = 0;
var dir = -24
function tick() {
    UI.GetValue("Script items", "Leg fucker") && (trufalse = 10 * Math.abs(Math.sin(64 * Globals.Realtime())), trufalse > 5 && UI.SetValue("Misc", "GENERAL", "Movement", "Slide walk", 0), trufalse < 5 && UI.SetValue("Misc", "GENERAL", "Movement", "Slide walk", 1))

    if (isr8() && UI.GetValue("Script items", "R8 DT teleport")) {
        if (r8dt && recharge + 20 == Globals.Tickcount()) {
            UI.ToggleHotkey("Rage", "GENERAL", "Exploits", "Doubletap")
            r8dt = false
        }
    }
    if (UI.GetValue("Script items", "Alternative fake-lags")) {
        frame++;
        if (frame == 45) {
            frame = 1
        };
        if (frame >= 15 && frame <= 45) {
            UI.SetValue('Anti-Aim', 'Fake-Lag', 'Enabled', true)
        } else {
            UI.SetValue('Anti-Aim', 'Fake-Lag', 'Enabled', false)
        }
    }
    if (UI.GetValue("Script items", "Hitmarker")) {
        for (var i = 0; i < particles.length; i++) {
            object = particles[i]
            var delta = object[1] - Globals.Tickcount()
            if (delta > 0) {
                object[0][2] += 0.3
            }
        }
    }
    if (UI.IsHotkeyActive("Anti-Aim", "Extra", "Slow walk")) {
        if (UI.GetValue("Script items", "Slow-walk low-delta")) {
            AntiAim.SetOverride(1);
            AntiAim.SetRealOffset(dir)
            AntiAim.SetFakeOffset(0)
        }
    } else {
        if (UI.GetValue("Script items", "Slow-walk low-delta")) {
            AntiAim.SetOverride(0);
        }
    }
    if (UI.GetValue("Script items", "Better auto-peek")) {
        if (UI.IsHotkeyActive("Misc", "GENERAL", "Movement", "Auto peek") && UI.IsHotkeyActive("Script items", "Damage Override") && UI.IsHotkeyActive("Rage", "Exploits", "Doubletap")) {
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "AWP", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Rage", "AWP", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Anti-Aim", "Rage Anti-Aim", "Auto direction", 1);
        } else {
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode", scout_autostop);
            UI.SetValue("Rage", "AWP", "Accuracy", "Auto stop mode", awp_autostop);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode", r8_autostop);
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point", scout_sp);
            UI.SetValue("Rage", "AWP", "Accuracy", "Prefer safe point", awp_sp);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Prefer safe point", r8_sp);
            UI.SetValue("Anti-Aim", "Rage Anti-Aim", "Auto direction", 0);
        }
    }

    if (UI.GetValue("Script items", "Indicators")) {
        update_indicators()
    }
    if (UI.IsHotkeyActive("Script items", "Damage Override") && UI.GetValue("Script items", "DMG override")) {
        var override = UI.GetValue("Script items", "Damage Override ");

        var target = Entity.GetEnemies();
        for (var i in target) {
            Ragebot.ForceTargetMinimumDamage(target[i], override)
        }
    }
    if (UI.IsHotkeyActive("Script items", "Hitchance Override") && UI.GetValue("Script items", "Hitchance override  ")) {
        var override1 = UI.GetValue("Script items", "Hitchance Override ");
       
        var target = Entity.GetEnemies();
        for (var i in target) {
            Ragebot.ForceTargetHitchance(target[i], override1);
        }
    }
    if (UI.GetValue("Script items", "Revolver 100 DMG helper")) {
        enemies = Entity.GetEnemies();

        for (i = 0; i < enemies.length; i++) {
            if (Entity.IsAlive(enemies[i])) {
                if (check_revolver_distance(enemies[i])) {
                    Entity.DrawFlag(enemies[i], "R8 100 DMG", [158, 168, 255, 255])
                }
            }
        }
    }
    var buttons = UserCMD.GetButtons()
    const check = function(v) {
        return !(buttons & v)
    }
    if(check(1) && check(32) && check(16777216) && check(8192) && check(2048) && check(4) && !check(2) && UI.GetValue("Script items", "Static legs in air")) {
        UserCMD.SetButtons(512)
    }
}
function dtr(degress) {
    return degress * Math.PI / 180.0;
}

function rtd(radians) {
    return radians * 180 / Math.PI
}

function deg(vec1, vec2) {
    x = vec2[0] - vec1[0]
    z = vec2[1] - vec1[1]
    y = vec1[2] - vec2[2]
    return [rtd(Math.atan2(z, x)), rtd(Math.atan2(y, Math.sqrt(x * x + z * z)))]
}

function dormant_aim() {
    if (UI.IsHotkeyActive("Script items", "Dormant Aim") && UI.GetValue("Script items", "Dormant Aimbot Beta")) {
        enemies = Entity.GetEnemies();
        for (i = 0; i < enemies.length; i++) {
            if (Entity.IsAlive(enemies[i]) && Entity.IsDormant(enemies[i])) {
                var startPos = Entity.GetHitboxPosition(Entity.GetLocalPlayer(), 0)
                var endPos = Entity.GetRenderOrigin(enemies[i])
                endPos[2] = endPos[2] + 38
                var trace_result = Trace.Bullet(Entity.GetLocalPlayer(), enemies[i], startPos, endPos);
                if (trace_result[1] > 0) {
                    var arr = deg(startPos, endPos);
                    var yaw = arr[0]
                    var pitch = arr[1]
                    if (Local.GetInaccuracy() < 0.01) {
                        UserCMD.SetAngles([pitch, yaw, 0])
                        Cheat.ExecuteCommand("+attack");
                        da_shot = true;
                    }
                }
            }
        }
    }
}

function dormant_aim_shot() {
    if (da_shot) {
        Cheat.ExecuteCommand("-attack");
        da_shot = false;
    }
}

function swap() {
    var rand = Math.random()
    if (rand > 0.0 && rand < 0.5) {
        dir = -28
    }
    if (rand > 0.5 && rand < 1) {
        dir = 0
    }
    if ((Entity.GetEntityFromUserID(Event.GetInt("userid")) != Entity.GetLocalPlayer()) || !isr8()) return;
    recharge = Globals.Tickcount();
    if (UI.IsHotkeyActive("Rage", "Exploits", "Doubletap") && UI.GetValue("Script items", "R8 DT teleport")) {
        UI.ToggleHotkey("Rage", "Exploits", "Doubletap")
        r8dt = true;
    }
}

function can_shift_shot(ticks_to_shift) {
    var me = Entity.GetLocalPlayer();
    var wpn = Entity.GetWeapon(me);

    if (me == null || wpn == null)
        return false;

    var tickbase = Entity.GetProp(me, "CCSPlayer", "m_nTickBase");
    var curtime = Globals.TickInterval() * (tickbase - ticks_to_shift)

    if (curtime < Entity.GetProp(me, "CCSPlayer", "m_flNextAttack"))
        return false;

    if (curtime < Entity.GetProp(wpn, "CBaseCombatWeapon", "m_flNextPrimaryAttack"))
        return false;

    return true;
}

function calcDist(local, target) {
    var lx = local[0];
    var ly = local[1];
    var lz = local[2];
    var tx = target[0];
    var ty = target[1];
    var tz = target[2];
    var dx = lx - tx;
    var dy = ly - ty;
    var dz = lz - tz;
    return Math.sqrt(dx * dx + dy * dy + dz * dz);
}

function isr8() {
    return Entity.GetName(Entity.GetWeapon(Entity.GetLocalPlayer())) == "r8 revolver"
}


function angle_to_vec(pitch, yaw) {
    var p = degreesToRadians(pitch);
    var y = degreesToRadians(yaw)
    var sin_p = Math.sin(p);
    var cos_p = Math.cos(p);
    var sin_y = Math.sin(y);
    var cos_y = Math.cos(y);
    return [cos_p * cos_y, cos_p * sin_y, -sin_p];
}

function degreesToRadians(degress) {
    return degress * Math.PI / 180.0;
}

function idToStr(name) {
    if (name == "molotov") {
        return "O"
    }
    if (name == "high explosive grenade") {
        return "j"
    }
    if (name == "smoke grenade") {
        return "Z"
    }
    if (name == "incendiary grenade") {
        return "l"
    }
    return "";
}
var lasttime = 0
var setNull

function draw() {
    if(World.GetServerString() == "") {
        hits = []
        lines = []
        particles = []
        tracer_lines = []
        pmolotov = []
    }
    enemies = Entity.GetEnemies();
    for (i = 0; i < enemies.length; i++) {
        if (Entity.IsAlive(enemies[i]) && !Entity.IsDormant(enemies[i]) && UI.GetValue("Script items", "ESP Grenades")) {
            var pos = Entity.GetRenderBox(enemies[i])
            var x = (pos[3] - pos[1]) / 2
            x += pos[1]
            str = ""
            for (var b = 0; b < Entity.GetWeapons(enemies[i]).length; b++) {
                str += idToStr(Entity.GetName(Entity.GetWeapons(enemies[i])[b]))
            }
            var font_nade = Render.AddFont("weaponicons", 18, 0);
            Render.StringCustom(x - 1, pos[2] - 34, 1, str, [25, 25, 25, 255], font_nade)
            Render.StringCustom(x, pos[2] - 33, 1, str, [255, 255, 255, 255], font_nade)
        }
    }
    var local = Entity.GetLocalPlayer();
    if (UI.IsHotkeyActive("Visual", "WORLD", "View", "Thirdperson") && UI.GetValue("Script items", "Local bullet tracer")) {
        for (var i = 0; i < tracer_lines.length; i++) {
            object = tracer_lines[i]
            var delta = object[2] - Globals.Tickcount()
            var xz1 = Render.WorldToScreen(object[0])
            var xz2 = Render.WorldToScreen(object[1])
            if (delta > 0) {
                size = Render.GetScreenSize()
                delta = delta * 5
                if (delta > 255) {
                    delta = 255
                }
                Render.Line(xz1[0], xz1[1], xz2[0], xz2[1], [158, 168, 255, delta])
                Render.FilledCircle(xz2[0], xz2[1], 3, [158, 168, 255, delta])
            }
        }
    }
    if (Entity.IsAlive(local)) {
        if (UI.GetValue("Script items", "Indicators")) {
            draw_indicators()
            var desync_delta = Math.clamp(Math.abs(Math.round(Local.GetRealYaw() - Local.GetFakeYaw())), 0, 58)
            Render.GradientRect((Global.GetScreenSize()[0] / 2 + -desync_delta * 2) + desync_delta + 2, Global.GetScreenSize()[1] / 2 + 26, desync_delta, 2.5, 1, [158, 168, 255, 0], [158, 168, 255, 255]);
            Render.GradientRect((Global.GetScreenSize()[0] / 2 + -desync_delta * 2) + (desync_delta * 2), Global.GetScreenSize()[1] / 2 + 26, desync_delta, 2.5, 1, [158, 168, 255, 255], [158, 168, 255, 0]);
            var fonT = UI.GetValue("Script items", "Small text size") ? porter(9) : small(13)
            var comp = (UI.GetValue("Script items", "Small text size") ? 2 : 0)
            Render.StringCustom(resolution[0] / 2, resolution[1] / 2 + 12 - comp, 1, desync_delta + "", [25, 25, 25, 255], fonT)
            Render.StringCustom(resolution[0] / 2, resolution[1] / 2 + 11 - comp, 1, desync_delta + "", [158, 168, 255, 255], fonT)
        }
        if (UI.GetValue("Script items", "Revolver 100 DMG helper")) {
            size = Render.GetScreenSize()
            enemies = Entity.GetEnemies();
            for (i = 0; i < enemies.length; i++) {
                if (Entity.IsAlive(enemies[i])) {
                    origin = Entity.GetHitboxPosition(enemies[i], 0);
                    if (origin) {
                        xz = Render.WorldToScreen(origin)
                        if (check_revolver_distance(enemies[i])) {
                            Render.Line(size[0] / 2, size[1], xz[0], xz[1], [158, 168, 255, 255]);
                        }
                    }
                }
            }
        }
        if (UI.GetValue("Script items", "Hitmarker")) {
            for (var i = 0; i < particles.length; i++) {
                pos = Render.WorldToScreen(particles[i][0])
                var timer = particles[i][1] - Globals.Tickcount()
                if (timer > 255) {
                    timer = 255
                }
                if (!(timer < 0)) {
                    if (pos != undefined) {
                        Render.StringCustom(pos[0], pos[1], 1, particles[i][2].toString(), [158, 168, 255, timer], small(14))
                    }
                }
            }
        }
    } else {
        hits = []
        particles = []
        lines = []
        pmolotov = []
    }
}

function draw_indicators() {
    resolution = Render.GetScreenSize()
    var m = 0
    var down = 23
    for (var i = 0; i < hotkeys.length; i++) {
        var ind = hotkeys[i]
        if (ind.fade > 0) {
            var comp = (UI.GetValue("Script items", "Small text size") ? 4 : 0)
            Render.StringCustom(resolution[0] / 2 + 1 - ind.centered, resolution[1] / 2 + 10 + (m * 13.5) + down - comp, 1, ind.name, [25, 25, 25, ind.fade * 10], porter(11))
            Render.StringCustom(resolution[0] / 2 - ind.centered, resolution[1] / 2 + 9 + (m * 13.5) + down - comp, 1, ind.name, [ind.color()[0], ind.color()[1], ind.color()[2], ind.fade * 10], porter(11))
            ind.draw(resolution[0] / 2, resolution[1] / 2 + 9 + (m * 13.5) + down, ind.fade * 10)
            m++
        }
    }
}


function update_indicators() {
    for (var i = 0; i < hotkeys.length; i++) {
        var ind = hotkeys[i]
        if (ind.enabled()) {
            ind.fade = ind.fade + 2
            ind.fade = Math.clamp(ind.fade, 0, 25)
        } else {
            ind.fade = ind.fade - 2
            ind.fade = Math.clamp(ind.fade, 0, 25)
        }
    }
}
function getLocal() {
    return Entity.GetRenderOrigin(Entity.GetLocalPlayer());
}
function porter(size) {
    if (UI.GetValue("Script items", "Small text size")) {
        return Render.AddFont("Verdana", size, 0);
    }
    return Render.AddFont("porter", size, 0);
}

function small(size) {
    return Render.AddFont("samson", size, 0);
}

function debug(value) {
    Cheat.PrintColor([255, 255, 255, 255], value.toString() + "\n")
}

function init() {
    dt = Object.create(indicator)
    dt.name = "DT"
    dt.enabled = function() {
        return UI.IsHotkeyActive("Rage", "Exploits", "Doubletap")
    }
    dt.color = function() {
        return [158, 168, 255, 255]
    }
    dt.draw = function(x, y, fade) {
        var charg = Math.clamp(charge() - 0.2, 0, 1)
        if (charg < 0.1)
            charg = 0
        Render.Arc(x + 13.5, y + 5.8, 6, 4, 0, 360, 128, [20, 20, 20, fade])
        Render.Arc(x + 12.5, y + 4.8, 6, 4, 0, charg * 440, 128, [158, 168, 255, fade])
    }
    dt.centered = 4
    hide = Object.create(indicator)
    hide.name = "HIDE"
    hide.enabled = function() {
        return UI.IsHotkeyActive("Rage", "Exploits", "Hide shots");
    }
    safe = Object.create(indicator)
    safe.name = "SAFE"
    safe.enabled = function() {
        return UI.IsHotkeyActive("Rage", "GENERAL", "General", "Force safe point");
    }
    low_delta = Object.create(indicator)
    low_delta.name = "LOW-DELTA"
    low_delta.enabled = function() {
        return UI.IsHotkeyActive("Anti-Aim", "Extra", "Slow walk") && UI.GetValue("Script items", "Slow-walk low-delta")
    }
    dmg = Object.create(indicator)
    dmg.name = "DMG"
    dmg.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Damage Override") && UI.GetValue("Script items", "DMG override")
    }
    hc = Object.create(indicator)
    hc.name = "HC"
    hc.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Hitchance Override") && UI.GetValue("Script items", "Hitchance override")
    }
    da = Object.create(indicator)
    da.name = "DA"
    da.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Dormant Aim") && UI.GetValue("Script items", "Dormant Aimbot Beta")
    }
    hotkeys.push(dt)
    hotkeys.push(dmg)
    hotkeys.push(hc)
    hotkeys.push(hide)
    hotkeys.push(safe)
    hotkeys.push(low_delta)
    hotkeys.push(da)
}

function charge() {
    return Exploit.GetCharge()
}

function on_player_connect() {
    lines = []
    hits = []
    pmolotov = []
}
var id = 1

function grenade_warning_tick() {
    entities = Entity.GetEntitiesByClassID(9).concat(Entity.GetEntitiesByClassID(114));
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, name2, name, Entity.GetProp(entity, name2, name) + 1)
        }
    }
    if (entities.length == 0) {
        hits = []
        lines = []
        pmolotov = []
    }
    entities = Entity.GetEntitiesByClassID(9)
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        var vel = Entity.GetProp(entity, 'CBaseGrenade', 'm_vecVelocity');
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime') != Math.round(vel[0]) && Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, 'CBaseCSGrenade', 'm_flAnimTime', Math.round(vel[0]))
            var mx = vel[0] * 0.015
            var my = vel[2] * 0.015
            var mz = vel[1] * 0.015
            Entity.SetProp(entity, 'CBaseCSGrenadeProjectile', setid, id)
            id++
            var x = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[0]
            var y = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[2]
            var z = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[1]
            var hittable = false
            for (var i = 0; i < 109 - Entity.GetProp(entity, name2, name); i++) {
                my = my - 0.0712
                var hit = []
                var hitbox = [
                    [
                        [x - 2, z - 2, y - 2],
                        [x + mx - 2, z + mz - 2, y + my - 2]
                    ],
                    [
                        [x - 2, z - 2, y + 2],
                        [x + mx - 2, z + mz - 2, y + my + 2]
                    ],
                    [
                        [x + 2, z + 2, y - 2],
                        [x + mx + 2, z + mz + 2, y + my - 2]
                    ],
                    [
                        [x + 2, z + 2, y + 2],
                        [x + mx + 2, z + mz + 2, y + my + 2]
                    ]
                ]
                for (var v = 0; v < hitbox.length; v++) {
                    var h = hitbox[v]
                    var res = 0
                    res = Trace.Line(entity, h[0], h[1])[1]
                    if (res != 1) {
                        var ny = h[0][2] + 10
                        var nx = h[1][0]
                        var nz = h[1][1]
                        var fny = h[0][2]
                        var fnx = h[1][0]
                        var fnz = h[1][1]
                        vres = Trace.Line(entity, [fnx, fnz, fny], [nx, nz, ny])[1]
                        var start = [x, z, y]
                        var end = [x - mx, z - mz, y - 30]
                        vres1 = Trace.Line(entity, start, end)[1]
                        if (vres == 1 && vres1 == 1) {
                            hittable = true
                            hit = [x + mx * (res), z + mz * (res), y + my * (res)]
                            break;
                        } else {
                            my = my * -0.45
                            mx = mx * 0.45
                            mz = mz * 0.45
                            break
                        }
                    }
                }
                if (hit.length > 1) {
                    hits.push([
                        [hit[0], hit[1], hit[2]], Globals.Tickcount() + i, false, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                    ])
                    break;
                }
                if (i % (UI.GetValue("Script items", "Grenade warning line") ? 1 : 2) == 0) {
                    lines.push([
                        [x, z, y],
                        [x + mx, z + mz, y + my], Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                    ])
                }
                x = x + mx
                y = y + my
                z = z + mz
            }
            if (!hittable) {
                hits.push([
                    [x, z, y], Globals.Tickcount() + i, false, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                ])
            }
        }
    }
    entities = Entity.GetEntitiesByClassID(114)
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]

        var vel = Entity.GetProp(entity, 'CBaseGrenade', 'm_vecVelocity');
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime') != Math.round(vel[0]) && Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, 'CBaseCSGrenade', 'm_flAnimTime', Math.round(vel[0]))
            var mx = vel[0] * 0.015
            var my = vel[2] * 0.015
            var mz = vel[1] * 0.015
            Entity.SetProp(entity, 'CBaseCSGrenadeProjectile', setid, id)
            id++
            var predicted
            var x = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[0]
            var y = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[2]
            var z = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[1]
            var hittable = false
            for (var i = 0; i < 130 - Entity.GetProp(entity, name2, name); i++) {
                my = my - 0.0712
                var hit = []
                var hitbox = [
                    [
                        [x - 2, z - 2, y - 2],
                        [x + mx - 2, z + mz - 2, y + my - 2]
                    ],
                    [
                        [x - 2, z - 2, y + 2],
                        [x + mx - 2, z + mz - 2, y + my + 2]
                    ],
                    [
                        [x + 2, z + 2, y - 2],
                        [x + mx + 2, z + mz + 2, y + my - 2]
                    ],
                    [
                        [x + 2, z + 2, y + 2],
                        [x + mx + 2, z + mz + 2, y + my + 2]
                    ]
                ]
                for (var v = 0; v < hitbox.length; v++) {
                    var h = hitbox[v]
                    var res = 0
                    res = Trace.Line(entity, h[0], h[1])[1]
                    if (res != 1) {
                        var ny = h[0][2] + 10
                        var nx = h[1][0]
                        var nz = h[1][1]
                        var fny = h[0][2]
                        var fnx = h[1][0]
                        var fnz = h[1][1]
                        vres = Trace.Line(entity, [fnx, fnz, fny], [nx, nz, ny])[1]
                        var start = [x, z, y]
                        var end = [x - mx, z - mz, y - 20]
                        vres1 = Trace.Line(entity, start, end)[1]
                        if (vres == 1 && vres1 == 1) {
                            hittable = true
                            hit = [x + mx * (res), z + mz * (res), y + my * (res)]
                            break;
                        } else {
                            if (vres1 != 1) {
                                pmolotov.push([
                                    [x, z, y], Globals.Tickcount(), Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                                ])
                                hits.push([
                                    [x, z, y], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                                ])
                                return
                            }
                            my = my * -0.45
                            mx = mx * 0.45
                            mz = mz * 0.45
                            break
                        }
                    }
                }
                if (hit.length > 1) {
                    hits.push([
                        [hit[0], hit[1], hit[2]], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                    ])
                    break;
                }
                if (UI.GetValue("Script items", "Grenade warning line")) {
                    lines.push([
                        [x, z, y],
                        [x + mx, z + mz, y + my], Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                    ])
                }
                x = x + mx
                y = y + my
                z = z + mz
            }
            if (!hittable) {
                hits.push([
                    [x, z, y], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                ])
            }
        }
    }
    const contains = function(arr, contain) {
        for (var i = 0; i < arr.length; i++) {
            var object = arr[i]
            if (object == contain) {
                return true
            }
        }
        return false;
    }
    entities = Entity.GetEntitiesByClassID(9).concat(Entity.GetEntitiesByClassID(114));
    var array = []
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            array.push(Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'))
        }
    }
    for (var i = 0; i < hits.length; i++) {
        var object = hits[i]
        if (!contains(array, object[3])) {
            hits[i][1] = 0;
        }
    }
    for (var i = 0; i < lines.length; i++) {
        var object = lines[i]
        if (!contains(array, object[3])) {
            lines[i][2] = 0;
        }
    }
    for (var i = 0; i < pmolotov.length; i++) {
        var object = pmolotov[i]
        if (!contains(array, object[3])) {
            pmolotov[i][2] = 1;
            pmolotov[i][1] = -5;
        }
    }
}

function draw_warning(xzy) {
    //var font_nade = Render.AddFont("weaponicons", 26, 0);
    const draw_ind = function(x, y, alpha, str, oof, xzy) {
        Render.Circle(x, y, oof ? (18 + Globals.Tickcount() / 7 % 5) : 20, [155, 155, 155, alpha])
        Render.String(x + 1, y - 18, 1, str, [255, 255, 255, alpha], 5);
        var distance = Math.round(vectorDistance(getLocal(), xzy) / 50)
        Render.StringCustom(x + 1, y + 7, 1, distance + " m", [255, 255, 255, alpha], small(8));
    }
    var x = Render.WorldToScreen(xzy[0])[0]
    var y = Render.WorldToScreen(xzy[0])[1]
    var str = xzy[2] ? "K" : "I";
    var alpha = (xzy[1] - Globals.Tickcount()) * 2
    if (alpha < 1)
        return;
    size = Render.GetScreenSize()
    if (x < 0 || x > size[0] || y > size[1] || y < 0) {
        if (UI.GetValue("Script items", "Grenade warning OOF")) {
            var yaw = (Local.GetViewAngles()[1])
            var myorig = getLocal()
            var orig = xzy[0]
            var x = orig[0] - myorig[0]
            var z = orig[1] - myorig[1]
            var atan = Math.atan2(z, x)
            var deg = atan * (180 / Math.PI);
            deg -= yaw + 90;
            atan = deg / 180 * Math.PI;
            var cos = Math.cos(atan) * -1
            var sin = Math.sin(atan)
            draw_ind(size[0] / 2 + cos * 150, size[1] / 2 + sin * 150, 255, str, true, xzy[0])
        }
    } else {
        draw_ind(x, y, 255, str, false, xzy[0])
    }
}

function grenade_warning_draw() {
    if (UI.GetValue("Script items", "Grenade warning")) {
        for (var i = 0; i < lines.length; i++) {
            var line = lines[i]
            var alpha = (line[2] - Globals.Tickcount())
            if (alpha > 0) {
                size = Render.GetScreenSize()
                if (Render.WorldToScreen(line[1])[1] > 0 && Render.WorldToScreen(line[0])[1] > 0 && Render.WorldToScreen(line[1])[1] < size[1] && Render.WorldToScreen(line[0])[1] < size[1]) {
                    Render.Line(Render.WorldToScreen(line[0])[0], Render.WorldToScreen(line[0])[1], Render.WorldToScreen(line[1])[0], Render.WorldToScreen(line[1])[1], [158, 168, 255, 255])
                }
            }
        }
        for (var i = 0; i < hits.length; i++) {
            var line = hits[i]
            draw_warning(line)
        }
        for (var i = 0; i < pmolotov.length; i++) {
            var molotov = pmolotov[i]
            var xzy = molotov[0]
            var start_timer = molotov[1]
            var end_timer = molotov[2]
            var curr = Globals.Tickcount()
            var max = end_timer - start_timer
            var cur = end_timer - curr
            var proc = cur / max * 300
            if (proc > 0)
                draw_circle_3d(xzy[0], xzy[1], xzy[2], 130, 360, proc, 30, default_color_a, true, [255, 255, 255, 20])
        }
    }
}

function draw_circle_3d(x, y, z, radius, degrees, degrees_outline, start_at, clr, filled, fill_clr) {
    var accuracy = 5;
    var old_x, old_y;
    start_at = start_at + 1
    for (rot = start_at; rot < degrees + start_at + 1; rot += accuracy) {
        rot_r = rot * (Math.PI / 180)
        line_x = radius * Math.cos(rot_r) + x, line_y = radius * Math.sin(rot_r) + y
        var curr = Render.WorldToScreen([line_x, line_y, z]),
            cur = Render.WorldToScreen([x, y, z]);
        if (cur[0] != null && curr[0] != null && old_x != null) {
            if (filled) Render.Polygon([
                [curr[0], curr[1]],
                [old_x, old_y],
                [cur[0], cur[1]]
            ], fill_clr)
        }
        old_x = curr[0], old_y = curr[1];
    }
    for (rot = start_at; rot < degrees_outline + start_at + 1; rot += accuracy) {
        rot_r = rot * (Math.PI / 180)
        line_x = radius * Math.cos(rot_r) + x, line_y = radius * Math.sin(rot_r) + y
        var curr = Render.WorldToScreen([line_x, line_y, z]),
            cur = Render.WorldToScreen([x, y, z]);
        if (cur[0] != null && curr[0] != null && old_x != null) {
            Render.Line(curr[0], curr[1], old_x, old_y, clr)
        }
        old_x = curr[0], old_y = curr[1];
    }
}

function round_start() {
    hits = []
    lines = []
    particles = []
    tracer_lines = []
    pmolotov = []
}

function bullet_impact() {
    player = Event.GetInt("userid");
    player_index = Entity.GetEntityFromUserID(player);
    if (Entity.GetLocalPlayer() == player_index) {
        tracer_lines.push([Entity.GetEyePosition(Entity.GetLocalPlayer()), [Event.GetFloat("x"), Event.GetFloat("y"), Event.GetFloat("z")], Globals.Tickcount() + 90])
    }
}
Cheat.RegisterCallback("bullet_impact", "bullet_impact");
Cheat.RegisterCallback("player_connect_full", "on_player_connect")
Cheat.RegisterCallback("weapon_fire", "swap")
Cheat.RegisterCallback("CreateMove", "dormant_aim")
Cheat.RegisterCallback("CreateMove", "babletap")
Cheat.RegisterCallback("weapon_fire", "dormant_aim_shot");
Cheat.RegisterCallback("round_start", "round_start")
Cheat.RegisterCallback("CreateMove", "tick")
Cheat.RegisterCallback("Draw", "draw")
Cheat.RegisterCallback('Draw', 'grenade_warning_draw')
Cheat.RegisterCallback('CreateMove', 'grenade_warning_tick')
Cheat.RegisterCallback("player_hurt", "hurt")
дт прикольный
 
Продам киру
Начинающий
Статус
Оффлайн
Регистрация
14 Дек 2019
Сообщения
311
Реакции[?]
25
Поинты[?]
0
JavaScript:
var default_color = [158, 168, 255]
var default_color_a = [158, 168, 255, 255]
UI.AddHotkey("Damage Override", "DMG Override");
UI.AddSliderInt("Damage Override ", 0, 130)
UI.AddHotkey("Hitchance Override", "Hitchance Override");
UI.AddSliderInt("Hitchance Override ", 0, 130)
UI.AddHotkey("Dormant Aim", "Dormant Aimbot");

UI.AddCheckbox("Alternative fake-lags");
UI.AddCheckbox("Better auto-peek");
UI.AddCheckbox("Better double-tap");
UI.AddCheckbox("DMG override");
UI.AddCheckbox("Hitchance override  ");
UI.AddCheckbox("Slow-walk low-delta");
UI.AddCheckbox("R8 DT teleport");
UI.AddCheckbox("Dormant Aimbot Beta");
UI.AddCheckbox("Indicators");
UI.AddCheckbox("Small text size");
UI.AddCheckbox("Grenade warning");
UI.AddCheckbox("Grenade warning OOF");
UI.AddCheckbox("Grenade warning line");
UI.AddCheckbox("Revolver 100 DMG helper");
UI.AddCheckbox("Hitmarker");
UI.AddCheckbox("ESP Grenades");
UI.AddCheckbox("Local bullet tracer");
UI.AddCheckbox("Leg fucker");
UI.AddCheckbox("Static legs in air");
//UI.AddCheckbox("Script items", "Clantag")
Cheat.Print("----------------------------------\n")
Cheat.Print("--Skyline Cord [Coded by WendoX]--\n")
Cheat.Print("-----discord -> WendoX#0297-------\n")
Cheat.Print("-vk -> https://vk.com/retry_later-\n")
Cheat.Print("----------------------------------\n")
Cheat.Print("discord server -> https://discord.gg/3AfcqnTb4A\n")
Cheat.Print("----------------------------------\n")

var particles = []
var helper_dist = 50

var wep2tab = {
    "usp s": "USP",
    "glock 18": "Glock",
    "dual berettas": "Dualies",
    "r8 revolver": "Revolver",
    "desert eagle": "Deagle",
    "p250": "P250",
    "tec 9": "Tec-9",
    "mp9": "MP9",
    "mac 10": "Mac10",
    "pp bizon": "PP-Bizon",
    "ump 45": "UMP45",
    "ak 47": "AK47",
    "sg 553": "SG553",
    "aug": "AUG",
    "m4a1 s": "M4A1-S",
    "m4a4": "M4A4",
    "ssg 08": "SSG08",
    "awp": "AWP",
    "g3sg1": "G3SG1",
    "scar 20": "SCAR20",
    "xm1014": "XM1014",
    "mag 7": "MAG7",
    "m249": "M249",
    "negev": "Negev",
    "p2000": "General",
    "famas": "FAMAS",
    "five seven": "Five Seven",
    "mp7": "MP7",
    "ump 45": "UMP45",
    "p90": "P90",
    "cz75 auto": "CZ-75",
    "mp5 sd": "MP5",
    "galil ar": "GALIL",
    "sawed off": "Sawed off"
};
const trace_type = 0x1 | 0x4000 | 0x2 | 0x2000000 | 0x8 | 0x80000
//var tab_names = ["General", "USP", "Glock", "Five Seven", "Tec-9", "Deagle", "Revolver", "Dualies", "P250", "CZ-75", "Mac10", "P90", "MP5", "MP7", "MP9", "UMP45", "PP-Bizon", "M4A1-S", "M4A4", "AK47", "AUG", "SG553", "FAMAS", "GALIL", "AWP", "SSG08", "SCAR20", "G3SG1", "M249", "XM1014", "MAG7", "Negev", "Sawed off"];

var scout_autostop = UI.GetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode");
var awp_autostop = UI.GetValue("Rage", "AWP", "Accuracy", "Auto stop mode");
var r8_autostop = UI.GetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode");

var scout_sp = UI.GetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point");
var awp_sp = UI.GetValue("Rage", "AWP", "Accuracy",  "Prefer safe point");
var r8_sp = UI.GetValue("Rage", "HEAVY PISTOL", "Accuracy",  "Prefer safe point");
var lines = []
var hits = []
var pmolotov = []
var tracer_lines = []
var altfakelag = 0;
var setid = "m_nForceBone"
var name = "m_nBody"
var name2 = "CBaseCSGrenadeProjectile"


var hotkeys = []
const indicator = {
    name: "",
    fade: 0,
    draw: function(x, y) {},
    enabled: function() {
        return true
    },
    color: function() {
        return default_color
    },
    centered: 0
}
init()
Render.Arc = function(x, y, radius, radius_inner, start_angle, end_angle, segments, color) {
    while (360 % segments != 0) {
        segments++;
    }
    segments = 360 / segments;
    for (var i = start_angle; i < start_angle + end_angle; i = i + segments) {
        var rad = i * Math.PI / 180;
        var rad2 = (i + segments) * Math.PI / 180;
        var rad_cos = Math.cos(rad);
        var rad_sin = Math.sin(rad);
        var rad2_cos = Math.cos(rad2);
        var rad2_sin = Math.sin(rad2);
        var x1_outer = x + rad_cos * radius;
        var y1_outer = y + rad_sin * radius;
        var x2_outer = x + rad2_cos * radius;
        var y2_outer = y + rad2_sin * radius;
        var x1_inner = x + rad_cos * radius_inner;
        var y1_inner = y + rad_sin * radius_inner;
        var x2_inner = x + rad2_cos * radius_inner;
        var y2_inner = y + rad2_sin * radius_inner;
        Render.Polygon([
            [x1_outer, y1_outer],
            [x2_outer, y2_outer],
            [x1_inner, y1_inner]
        ], color);
        Render.Polygon([
            [x1_inner, y1_inner],
            [x2_outer, y2_outer],
            [x2_inner, y2_inner]
        ], color);
    }
}
Math.clamp = function(num, min, max) {
    return num <= min ? min : num >= max ? max : num;
}

const vectorDistance = function(vec, vec2) {
    dx = vec[0] - vec2[0]
    dy = vec[1] - vec2[1]
    dz = vec[2] - vec2[2]
    return Math.abs(Math.sqrt(dx * dx + dy * dy + dz * dz));
}

function check_revolver_distance(victim) {
    player = Entity.GetLocalPlayer()
    if (player == null || victim == null)
        return;

    const weap = Entity.GetWeapon(player)
    if (weap == null)
        return;

    const player_origin = Entity.GetRenderOrigin(player)
    const victim_origin = Entity.GetRenderOrigin(victim)

    const units = vectorDistance(player_origin, victim_origin)
    const no_kevlar = Entity.GetProp(victim, "CCSPlayerResource", "m_iArmor") == 0

    if (Entity.GetName(weap) != "r8 revolver" || !no_kevlar)
        return false


    if (units < 585 && units > 511)
        return true

    else if (units < 511)
        return true
    else
        return false
}
var recharge
var r8dt

function hurt() {
    if (UI.GetValue("Script items", "Hitmarker")) {
        attacker = Event.GetInt("attacker");
        index = Entity.GetEntityFromUserID(attacker);
        user_id = Event.GetInt("userid");
        user = Entity.GetEntityFromUserID(user_id);
        if (index == Entity.GetLocalPlayer() && index != user) {
            var pos = Entity.GetHitboxPosition(user, Event.GetInt("hitgroup"))
            if (pos == undefined) {
                pos = Entity.GetRenderOrigin(user)
                pos[2] = pos[2] + 30
            }
            pos[0] = (pos[0] - 10) + (Math.random() * 20)
            pos[1] = (pos[1] - 10) + (Math.random() * 20)
            pos[2] = (pos[2] - 15) + (Math.random() * 30)
            particles.push([pos, Globals.Tickcount() + 350, Event.GetInt("dmg_health")])
        }
    }
}

function babletap() {
    if (UI.GetValue("Script items", "Better double-tap")) {
        var exploitCharge = Exploit.GetCharge();
        Exploit[(1 != exploitCharge ? "Enable" : "Disable") + "Recharge"](), Exploit.OverrideMaxProcessTicks(19), Exploit.OverrideShift(19)
        Exploit.OverrideTolerance(0), can_shift_shot(12) && 1 != exploitCharge && (Exploit.DisableRecharge(), Exploit.Recharge())
    } else {
        Exploit.EnableRecharge(), Exploit.OverrideShift(12), Exploit.OverrideTolerance(3)
    }
}

var frame = 0;
var dir = -24
function tick() {
    UI.GetValue("Script items", "Leg fucker") && (trufalse = 10 * Math.abs(Math.sin(64 * Globals.Realtime())), trufalse > 5 && UI.SetValue("Misc", "GENERAL", "Movement", "Slide walk", 0), trufalse < 5 && UI.SetValue("Misc", "GENERAL", "Movement", "Slide walk", 1))

    if (isr8() && UI.GetValue("Script items", "R8 DT teleport")) {
        if (r8dt && recharge + 20 == Globals.Tickcount()) {
            UI.ToggleHotkey("Rage", "GENERAL", "Exploits", "Doubletap")
            r8dt = false
        }
    }
    if (UI.GetValue("Script items", "Alternative fake-lags")) {
        frame++;
        if (frame == 45) {
            frame = 1
        };
        if (frame >= 15 && frame <= 45) {
            UI.SetValue('Anti-Aim', 'Fake-Lag', 'Enabled', true)
        } else {
            UI.SetValue('Anti-Aim', 'Fake-Lag', 'Enabled', false)
        }
    }
    if (UI.GetValue("Script items", "Hitmarker")) {
        for (var i = 0; i < particles.length; i++) {
            object = particles[i]
            var delta = object[1] - Globals.Tickcount()
            if (delta > 0) {
                object[0][2] += 0.3
            }
        }
    }
    if (UI.IsHotkeyActive("Anti-Aim", "Extra", "Slow walk")) {
        if (UI.GetValue("Script items", "Slow-walk low-delta")) {
            AntiAim.SetOverride(1);
            AntiAim.SetRealOffset(dir)
            AntiAim.SetFakeOffset(0)
        }
    } else {
        if (UI.GetValue("Script items", "Slow-walk low-delta")) {
            AntiAim.SetOverride(0);
        }
    }
    if (UI.GetValue("Script items", "Better auto-peek")) {
        if (UI.IsHotkeyActive("Misc", "GENERAL", "Movement", "Auto peek") && UI.IsHotkeyActive("Script items", "Damage Override") && UI.IsHotkeyActive("Rage", "Exploits", "Doubletap")) {
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "AWP", "Accuracy", "Auto stop mode", 2);
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Rage", "AWP", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Prefer safe point", 1);
            UI.SetValue("Anti-Aim", "Rage Anti-Aim", "Auto direction", 1);
        } else {
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Auto stop mode", scout_autostop);
            UI.SetValue("Rage", "AWP", "Accuracy", "Auto stop mode", awp_autostop);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Auto stop mode", r8_autostop);
            UI.SetValue("Rage", "SCOUT", "Accuracy", "Prefer safe point", scout_sp);
            UI.SetValue("Rage", "AWP", "Accuracy", "Prefer safe point", awp_sp);
            UI.SetValue("Rage", "HEAVY PISTOL", "Accuracy", "Prefer safe point", r8_sp);
            UI.SetValue("Anti-Aim", "Rage Anti-Aim", "Auto direction", 0);
        }
    }

    if (UI.GetValue("Script items", "Indicators")) {
        update_indicators()
    }
    if (UI.IsHotkeyActive("Script items", "Damage Override") && UI.GetValue("Script items", "DMG override")) {
        var override = UI.GetValue("Script items", "Damage Override ");

        var target = Entity.GetEnemies();
        for (var i in target) {
            Ragebot.ForceTargetMinimumDamage(target[i], override)
        }
    }
    if (UI.IsHotkeyActive("Script items", "Hitchance Override") && UI.GetValue("Script items", "Hitchance override  ")) {
        var override1 = UI.GetValue("Script items", "Hitchance Override ");
       
        var target = Entity.GetEnemies();
        for (var i in target) {
            Ragebot.ForceTargetHitchance(target[i], override1);
        }
    }
    if (UI.GetValue("Script items", "Revolver 100 DMG helper")) {
        enemies = Entity.GetEnemies();

        for (i = 0; i < enemies.length; i++) {
            if (Entity.IsAlive(enemies[i])) {
                if (check_revolver_distance(enemies[i])) {
                    Entity.DrawFlag(enemies[i], "R8 100 DMG", [158, 168, 255, 255])
                }
            }
        }
    }
    var buttons = UserCMD.GetButtons()
    const check = function(v) {
        return !(buttons & v)
    }
    if(check(1) && check(32) && check(16777216) && check(8192) && check(2048) && check(4) && !check(2) && UI.GetValue("Script items", "Static legs in air")) {
        UserCMD.SetButtons(512)
    }
}
function dtr(degress) {
    return degress * Math.PI / 180.0;
}

function rtd(radians) {
    return radians * 180 / Math.PI
}

function deg(vec1, vec2) {
    x = vec2[0] - vec1[0]
    z = vec2[1] - vec1[1]
    y = vec1[2] - vec2[2]
    return [rtd(Math.atan2(z, x)), rtd(Math.atan2(y, Math.sqrt(x * x + z * z)))]
}

function dormant_aim() {
    if (UI.IsHotkeyActive("Script items", "Dormant Aim") && UI.GetValue("Script items", "Dormant Aimbot Beta")) {
        enemies = Entity.GetEnemies();
        for (i = 0; i < enemies.length; i++) {
            if (Entity.IsAlive(enemies[i]) && Entity.IsDormant(enemies[i])) {
                var startPos = Entity.GetHitboxPosition(Entity.GetLocalPlayer(), 0)
                var endPos = Entity.GetRenderOrigin(enemies[i])
                endPos[2] = endPos[2] + 38
                var trace_result = Trace.Bullet(Entity.GetLocalPlayer(), enemies[i], startPos, endPos);
                if (trace_result[1] > 0) {
                    var arr = deg(startPos, endPos);
                    var yaw = arr[0]
                    var pitch = arr[1]
                    if (Local.GetInaccuracy() < 0.01) {
                        UserCMD.SetAngles([pitch, yaw, 0])
                        Cheat.ExecuteCommand("+attack");
                        da_shot = true;
                    }
                }
            }
        }
    }
}

function dormant_aim_shot() {
    if (da_shot) {
        Cheat.ExecuteCommand("-attack");
        da_shot = false;
    }
}

function swap() {
    var rand = Math.random()
    if (rand > 0.0 && rand < 0.5) {
        dir = -28
    }
    if (rand > 0.5 && rand < 1) {
        dir = 0
    }
    if ((Entity.GetEntityFromUserID(Event.GetInt("userid")) != Entity.GetLocalPlayer()) || !isr8()) return;
    recharge = Globals.Tickcount();
    if (UI.IsHotkeyActive("Rage", "Exploits", "Doubletap") && UI.GetValue("Script items", "R8 DT teleport")) {
        UI.ToggleHotkey("Rage", "Exploits", "Doubletap")
        r8dt = true;
    }
}

function can_shift_shot(ticks_to_shift) {
    var me = Entity.GetLocalPlayer();
    var wpn = Entity.GetWeapon(me);

    if (me == null || wpn == null)
        return false;

    var tickbase = Entity.GetProp(me, "CCSPlayer", "m_nTickBase");
    var curtime = Globals.TickInterval() * (tickbase - ticks_to_shift)

    if (curtime < Entity.GetProp(me, "CCSPlayer", "m_flNextAttack"))
        return false;

    if (curtime < Entity.GetProp(wpn, "CBaseCombatWeapon", "m_flNextPrimaryAttack"))
        return false;

    return true;
}

function calcDist(local, target) {
    var lx = local[0];
    var ly = local[1];
    var lz = local[2];
    var tx = target[0];
    var ty = target[1];
    var tz = target[2];
    var dx = lx - tx;
    var dy = ly - ty;
    var dz = lz - tz;
    return Math.sqrt(dx * dx + dy * dy + dz * dz);
}

function isr8() {
    return Entity.GetName(Entity.GetWeapon(Entity.GetLocalPlayer())) == "r8 revolver"
}


function angle_to_vec(pitch, yaw) {
    var p = degreesToRadians(pitch);
    var y = degreesToRadians(yaw)
    var sin_p = Math.sin(p);
    var cos_p = Math.cos(p);
    var sin_y = Math.sin(y);
    var cos_y = Math.cos(y);
    return [cos_p * cos_y, cos_p * sin_y, -sin_p];
}

function degreesToRadians(degress) {
    return degress * Math.PI / 180.0;
}

function idToStr(name) {
    if (name == "molotov") {
        return "O"
    }
    if (name == "high explosive grenade") {
        return "j"
    }
    if (name == "smoke grenade") {
        return "Z"
    }
    if (name == "incendiary grenade") {
        return "l"
    }
    return "";
}
var lasttime = 0
var setNull

function draw() {
    if(World.GetServerString() == "") {
        hits = []
        lines = []
        particles = []
        tracer_lines = []
        pmolotov = []
    }
    enemies = Entity.GetEnemies();
    for (i = 0; i < enemies.length; i++) {
        if (Entity.IsAlive(enemies[i]) && !Entity.IsDormant(enemies[i]) && UI.GetValue("Script items", "ESP Grenades")) {
            var pos = Entity.GetRenderBox(enemies[i])
            var x = (pos[3] - pos[1]) / 2
            x += pos[1]
            str = ""
            for (var b = 0; b < Entity.GetWeapons(enemies[i]).length; b++) {
                str += idToStr(Entity.GetName(Entity.GetWeapons(enemies[i])[b]))
            }
            var font_nade = Render.AddFont("weaponicons", 18, 0);
            Render.StringCustom(x - 1, pos[2] - 34, 1, str, [25, 25, 25, 255], font_nade)
            Render.StringCustom(x, pos[2] - 33, 1, str, [255, 255, 255, 255], font_nade)
        }
    }
    var local = Entity.GetLocalPlayer();
    if (UI.IsHotkeyActive("Visual", "WORLD", "View", "Thirdperson") && UI.GetValue("Script items", "Local bullet tracer")) {
        for (var i = 0; i < tracer_lines.length; i++) {
            object = tracer_lines[i]
            var delta = object[2] - Globals.Tickcount()
            var xz1 = Render.WorldToScreen(object[0])
            var xz2 = Render.WorldToScreen(object[1])
            if (delta > 0) {
                size = Render.GetScreenSize()
                delta = delta * 5
                if (delta > 255) {
                    delta = 255
                }
                Render.Line(xz1[0], xz1[1], xz2[0], xz2[1], [158, 168, 255, delta])
                Render.FilledCircle(xz2[0], xz2[1], 3, [158, 168, 255, delta])
            }
        }
    }
    if (Entity.IsAlive(local)) {
        if (UI.GetValue("Script items", "Indicators")) {
            draw_indicators()
            var desync_delta = Math.clamp(Math.abs(Math.round(Local.GetRealYaw() - Local.GetFakeYaw())), 0, 58)
            Render.GradientRect((Global.GetScreenSize()[0] / 2 + -desync_delta * 2) + desync_delta + 2, Global.GetScreenSize()[1] / 2 + 26, desync_delta, 2.5, 1, [158, 168, 255, 0], [158, 168, 255, 255]);
            Render.GradientRect((Global.GetScreenSize()[0] / 2 + -desync_delta * 2) + (desync_delta * 2), Global.GetScreenSize()[1] / 2 + 26, desync_delta, 2.5, 1, [158, 168, 255, 255], [158, 168, 255, 0]);
            var fonT = UI.GetValue("Script items", "Small text size") ? porter(9) : small(13)
            var comp = (UI.GetValue("Script items", "Small text size") ? 2 : 0)
            Render.StringCustom(resolution[0] / 2, resolution[1] / 2 + 12 - comp, 1, desync_delta + "", [25, 25, 25, 255], fonT)
            Render.StringCustom(resolution[0] / 2, resolution[1] / 2 + 11 - comp, 1, desync_delta + "", [158, 168, 255, 255], fonT)
        }
        if (UI.GetValue("Script items", "Revolver 100 DMG helper")) {
            size = Render.GetScreenSize()
            enemies = Entity.GetEnemies();
            for (i = 0; i < enemies.length; i++) {
                if (Entity.IsAlive(enemies[i])) {
                    origin = Entity.GetHitboxPosition(enemies[i], 0);
                    if (origin) {
                        xz = Render.WorldToScreen(origin)
                        if (check_revolver_distance(enemies[i])) {
                            Render.Line(size[0] / 2, size[1], xz[0], xz[1], [158, 168, 255, 255]);
                        }
                    }
                }
            }
        }
        if (UI.GetValue("Script items", "Hitmarker")) {
            for (var i = 0; i < particles.length; i++) {
                pos = Render.WorldToScreen(particles[i][0])
                var timer = particles[i][1] - Globals.Tickcount()
                if (timer > 255) {
                    timer = 255
                }
                if (!(timer < 0)) {
                    if (pos != undefined) {
                        Render.StringCustom(pos[0], pos[1], 1, particles[i][2].toString(), [158, 168, 255, timer], small(14))
                    }
                }
            }
        }
    } else {
        hits = []
        particles = []
        lines = []
        pmolotov = []
    }
}

function draw_indicators() {
    resolution = Render.GetScreenSize()
    var m = 0
    var down = 23
    for (var i = 0; i < hotkeys.length; i++) {
        var ind = hotkeys[i]
        if (ind.fade > 0) {
            var comp = (UI.GetValue("Script items", "Small text size") ? 4 : 0)
            Render.StringCustom(resolution[0] / 2 + 1 - ind.centered, resolution[1] / 2 + 10 + (m * 13.5) + down - comp, 1, ind.name, [25, 25, 25, ind.fade * 10], porter(11))
            Render.StringCustom(resolution[0] / 2 - ind.centered, resolution[1] / 2 + 9 + (m * 13.5) + down - comp, 1, ind.name, [ind.color()[0], ind.color()[1], ind.color()[2], ind.fade * 10], porter(11))
            ind.draw(resolution[0] / 2, resolution[1] / 2 + 9 + (m * 13.5) + down, ind.fade * 10)
            m++
        }
    }
}


function update_indicators() {
    for (var i = 0; i < hotkeys.length; i++) {
        var ind = hotkeys[i]
        if (ind.enabled()) {
            ind.fade = ind.fade + 2
            ind.fade = Math.clamp(ind.fade, 0, 25)
        } else {
            ind.fade = ind.fade - 2
            ind.fade = Math.clamp(ind.fade, 0, 25)
        }
    }
}
function getLocal() {
    return Entity.GetRenderOrigin(Entity.GetLocalPlayer());
}
function porter(size) {
    if (UI.GetValue("Script items", "Small text size")) {
        return Render.AddFont("Verdana", size, 0);
    }
    return Render.AddFont("porter", size, 0);
}

function small(size) {
    return Render.AddFont("samson", size, 0);
}

function debug(value) {
    Cheat.PrintColor([255, 255, 255, 255], value.toString() + "\n")
}

function init() {
    dt = Object.create(indicator)
    dt.name = "DT"
    dt.enabled = function() {
        return UI.IsHotkeyActive("Rage", "Exploits", "Doubletap")
    }
    dt.color = function() {
        return [158, 168, 255, 255]
    }
    dt.draw = function(x, y, fade) {
        var charg = Math.clamp(charge() - 0.2, 0, 1)
        if (charg < 0.1)
            charg = 0
        Render.Arc(x + 13.5, y + 5.8, 6, 4, 0, 360, 128, [20, 20, 20, fade])
        Render.Arc(x + 12.5, y + 4.8, 6, 4, 0, charg * 440, 128, [158, 168, 255, fade])
    }
    dt.centered = 4
    hide = Object.create(indicator)
    hide.name = "HIDE"
    hide.enabled = function() {
        return UI.IsHotkeyActive("Rage", "Exploits", "Hide shots");
    }
    safe = Object.create(indicator)
    safe.name = "SAFE"
    safe.enabled = function() {
        return UI.IsHotkeyActive("Rage", "GENERAL", "General", "Force safe point");
    }
    low_delta = Object.create(indicator)
    low_delta.name = "LOW-DELTA"
    low_delta.enabled = function() {
        return UI.IsHotkeyActive("Anti-Aim", "Extra", "Slow walk") && UI.GetValue("Script items", "Slow-walk low-delta")
    }
    dmg = Object.create(indicator)
    dmg.name = "DMG"
    dmg.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Damage Override") && UI.GetValue("Script items", "DMG override")
    }
    hc = Object.create(indicator)
    hc.name = "HC"
    hc.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Hitchance Override") && UI.GetValue("Script items", "Hitchance override")
    }
    da = Object.create(indicator)
    da.name = "DA"
    da.enabled = function() {
        return UI.IsHotkeyActive("Script items", "Dormant Aim") && UI.GetValue("Script items", "Dormant Aimbot Beta")
    }
    hotkeys.push(dt)
    hotkeys.push(dmg)
    hotkeys.push(hc)
    hotkeys.push(hide)
    hotkeys.push(safe)
    hotkeys.push(low_delta)
    hotkeys.push(da)
}

function charge() {
    return Exploit.GetCharge()
}

function on_player_connect() {
    lines = []
    hits = []
    pmolotov = []
}
var id = 1

function grenade_warning_tick() {
    entities = Entity.GetEntitiesByClassID(9).concat(Entity.GetEntitiesByClassID(114));
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, name2, name, Entity.GetProp(entity, name2, name) + 1)
        }
    }
    if (entities.length == 0) {
        hits = []
        lines = []
        pmolotov = []
    }
    entities = Entity.GetEntitiesByClassID(9)
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        var vel = Entity.GetProp(entity, 'CBaseGrenade', 'm_vecVelocity');
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime') != Math.round(vel[0]) && Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, 'CBaseCSGrenade', 'm_flAnimTime', Math.round(vel[0]))
            var mx = vel[0] * 0.015
            var my = vel[2] * 0.015
            var mz = vel[1] * 0.015
            Entity.SetProp(entity, 'CBaseCSGrenadeProjectile', setid, id)
            id++
            var x = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[0]
            var y = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[2]
            var z = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[1]
            var hittable = false
            for (var i = 0; i < 109 - Entity.GetProp(entity, name2, name); i++) {
                my = my - 0.0712
                var hit = []
                var hitbox = [
                    [
                        [x - 2, z - 2, y - 2],
                        [x + mx - 2, z + mz - 2, y + my - 2]
                    ],
                    [
                        [x - 2, z - 2, y + 2],
                        [x + mx - 2, z + mz - 2, y + my + 2]
                    ],
                    [
                        [x + 2, z + 2, y - 2],
                        [x + mx + 2, z + mz + 2, y + my - 2]
                    ],
                    [
                        [x + 2, z + 2, y + 2],
                        [x + mx + 2, z + mz + 2, y + my + 2]
                    ]
                ]
                for (var v = 0; v < hitbox.length; v++) {
                    var h = hitbox[v]
                    var res = 0
                    res = Trace.Line(entity, h[0], h[1])[1]
                    if (res != 1) {
                        var ny = h[0][2] + 10
                        var nx = h[1][0]
                        var nz = h[1][1]
                        var fny = h[0][2]
                        var fnx = h[1][0]
                        var fnz = h[1][1]
                        vres = Trace.Line(entity, [fnx, fnz, fny], [nx, nz, ny])[1]
                        var start = [x, z, y]
                        var end = [x - mx, z - mz, y - 30]
                        vres1 = Trace.Line(entity, start, end)[1]
                        if (vres == 1 && vres1 == 1) {
                            hittable = true
                            hit = [x + mx * (res), z + mz * (res), y + my * (res)]
                            break;
                        } else {
                            my = my * -0.45
                            mx = mx * 0.45
                            mz = mz * 0.45
                            break
                        }
                    }
                }
                if (hit.length > 1) {
                    hits.push([
                        [hit[0], hit[1], hit[2]], Globals.Tickcount() + i, false, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                    ])
                    break;
                }
                if (i % (UI.GetValue("Script items", "Grenade warning line") ? 1 : 2) == 0) {
                    lines.push([
                        [x, z, y],
                        [x + mx, z + mz, y + my], Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                    ])
                }
                x = x + mx
                y = y + my
                z = z + mz
            }
            if (!hittable) {
                hits.push([
                    [x, z, y], Globals.Tickcount() + i, false, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                ])
            }
        }
    }
    entities = Entity.GetEntitiesByClassID(114)
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]

        var vel = Entity.GetProp(entity, 'CBaseGrenade', 'm_vecVelocity');
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime') != Math.round(vel[0]) && Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            Entity.SetProp(entity, 'CBaseCSGrenade', 'm_flAnimTime', Math.round(vel[0]))
            var mx = vel[0] * 0.015
            var my = vel[2] * 0.015
            var mz = vel[1] * 0.015
            Entity.SetProp(entity, 'CBaseCSGrenadeProjectile', setid, id)
            id++
            var predicted
            var x = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[0]
            var y = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[2]
            var z = Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_vecOrigin')[1]
            var hittable = false
            for (var i = 0; i < 130 - Entity.GetProp(entity, name2, name); i++) {
                my = my - 0.0712
                var hit = []
                var hitbox = [
                    [
                        [x - 2, z - 2, y - 2],
                        [x + mx - 2, z + mz - 2, y + my - 2]
                    ],
                    [
                        [x - 2, z - 2, y + 2],
                        [x + mx - 2, z + mz - 2, y + my + 2]
                    ],
                    [
                        [x + 2, z + 2, y - 2],
                        [x + mx + 2, z + mz + 2, y + my - 2]
                    ],
                    [
                        [x + 2, z + 2, y + 2],
                        [x + mx + 2, z + mz + 2, y + my + 2]
                    ]
                ]
                for (var v = 0; v < hitbox.length; v++) {
                    var h = hitbox[v]
                    var res = 0
                    res = Trace.Line(entity, h[0], h[1])[1]
                    if (res != 1) {
                        var ny = h[0][2] + 10
                        var nx = h[1][0]
                        var nz = h[1][1]
                        var fny = h[0][2]
                        var fnx = h[1][0]
                        var fnz = h[1][1]
                        vres = Trace.Line(entity, [fnx, fnz, fny], [nx, nz, ny])[1]
                        var start = [x, z, y]
                        var end = [x - mx, z - mz, y - 20]
                        vres1 = Trace.Line(entity, start, end)[1]
                        if (vres == 1 && vres1 == 1) {
                            hittable = true
                            hit = [x + mx * (res), z + mz * (res), y + my * (res)]
                            break;
                        } else {
                            if (vres1 != 1) {
                                pmolotov.push([
                                    [x, z, y], Globals.Tickcount(), Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                                ])
                                hits.push([
                                    [x, z, y], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                                ])
                                return
                            }
                            my = my * -0.45
                            mx = mx * 0.45
                            mz = mz * 0.45
                            break
                        }
                    }
                }
                if (hit.length > 1) {
                    hits.push([
                        [hit[0], hit[1], hit[2]], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                    ])
                    break;
                }
                if (UI.GetValue("Script items", "Grenade warning line")) {
                    lines.push([
                        [x, z, y],
                        [x + mx, z + mz, y + my], Globals.Tickcount() + i, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime')
                    ])
                }
                x = x + mx
                y = y + my
                z = z + mz
            }
            if (!hittable) {
                hits.push([
                    [x, z, y], Globals.Tickcount() + i, true, Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'), Globals.Tickcount()
                ])
            }
        }
    }
    const contains = function(arr, contain) {
        for (var i = 0; i < arr.length; i++) {
            var object = arr[i]
            if (object == contain) {
                return true
            }
        }
        return false;
    }
    entities = Entity.GetEntitiesByClassID(9).concat(Entity.GetEntitiesByClassID(114));
    var array = []
    for (var i = 0; i < entities.length; i++) {
        entity = entities[i]
        if (Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_nExplodeEffectTickBegin') == 0) {
            array.push(Entity.GetProp(entity, 'CBaseCSGrenadeProjectile', 'm_flAnimTime'))
        }
    }
    for (var i = 0; i < hits.length; i++) {
        var object = hits[i]
        if (!contains(array, object[3])) {
            hits[i][1] = 0;
        }
    }
    for (var i = 0; i < lines.length; i++) {
        var object = lines[i]
        if (!contains(array, object[3])) {
            lines[i][2] = 0;
        }
    }
    for (var i = 0; i < pmolotov.length; i++) {
        var object = pmolotov[i]
        if (!contains(array, object[3])) {
            pmolotov[i][2] = 1;
            pmolotov[i][1] = -5;
        }
    }
}

function draw_warning(xzy) {
    //var font_nade = Render.AddFont("weaponicons", 26, 0);
    const draw_ind = function(x, y, alpha, str, oof, xzy) {
        Render.Circle(x, y, oof ? (18 + Globals.Tickcount() / 7 % 5) : 20, [155, 155, 155, alpha])
        Render.String(x + 1, y - 18, 1, str, [255, 255, 255, alpha], 5);
        var distance = Math.round(vectorDistance(getLocal(), xzy) / 50)
        Render.StringCustom(x + 1, y + 7, 1, distance + " m", [255, 255, 255, alpha], small(8));
    }
    var x = Render.WorldToScreen(xzy[0])[0]
    var y = Render.WorldToScreen(xzy[0])[1]
    var str = xzy[2] ? "K" : "I";
    var alpha = (xzy[1] - Globals.Tickcount()) * 2
    if (alpha < 1)
        return;
    size = Render.GetScreenSize()
    if (x < 0 || x > size[0] || y > size[1] || y < 0) {
        if (UI.GetValue("Script items", "Grenade warning OOF")) {
            var yaw = (Local.GetViewAngles()[1])
            var myorig = getLocal()
            var orig = xzy[0]
            var x = orig[0] - myorig[0]
            var z = orig[1] - myorig[1]
            var atan = Math.atan2(z, x)
            var deg = atan * (180 / Math.PI);
            deg -= yaw + 90;
            atan = deg / 180 * Math.PI;
            var cos = Math.cos(atan) * -1
            var sin = Math.sin(atan)
            draw_ind(size[0] / 2 + cos * 150, size[1] / 2 + sin * 150, 255, str, true, xzy[0])
        }
    } else {
        draw_ind(x, y, 255, str, false, xzy[0])
    }
}

function grenade_warning_draw() {
    if (UI.GetValue("Script items", "Grenade warning")) {
        for (var i = 0; i < lines.length; i++) {
            var line = lines[i]
            var alpha = (line[2] - Globals.Tickcount())
            if (alpha > 0) {
                size = Render.GetScreenSize()
                if (Render.WorldToScreen(line[1])[1] > 0 && Render.WorldToScreen(line[0])[1] > 0 && Render.WorldToScreen(line[1])[1] < size[1] && Render.WorldToScreen(line[0])[1] < size[1]) {
                    Render.Line(Render.WorldToScreen(line[0])[0], Render.WorldToScreen(line[0])[1], Render.WorldToScreen(line[1])[0], Render.WorldToScreen(line[1])[1], [158, 168, 255, 255])
                }
            }
        }
        for (var i = 0; i < hits.length; i++) {
            var line = hits[i]
            draw_warning(line)
        }
        for (var i = 0; i < pmolotov.length; i++) {
            var molotov = pmolotov[i]
            var xzy = molotov[0]
            var start_timer = molotov[1]
            var end_timer = molotov[2]
            var curr = Globals.Tickcount()
            var max = end_timer - start_timer
            var cur = end_timer - curr
            var proc = cur / max * 300
            if (proc > 0)
                draw_circle_3d(xzy[0], xzy[1], xzy[2], 130, 360, proc, 30, default_color_a, true, [255, 255, 255, 20])
        }
    }
}

function draw_circle_3d(x, y, z, radius, degrees, degrees_outline, start_at, clr, filled, fill_clr) {
    var accuracy = 5;
    var old_x, old_y;
    start_at = start_at + 1
    for (rot = start_at; rot < degrees + start_at + 1; rot += accuracy) {
        rot_r = rot * (Math.PI / 180)
        line_x = radius * Math.cos(rot_r) + x, line_y = radius * Math.sin(rot_r) + y
        var curr = Render.WorldToScreen([line_x, line_y, z]),
            cur = Render.WorldToScreen([x, y, z]);
        if (cur[0] != null && curr[0] != null && old_x != null) {
            if (filled) Render.Polygon([
                [curr[0], curr[1]],
                [old_x, old_y],
                [cur[0], cur[1]]
            ], fill_clr)
        }
        old_x = curr[0], old_y = curr[1];
    }
    for (rot = start_at; rot < degrees_outline + start_at + 1; rot += accuracy) {
        rot_r = rot * (Math.PI / 180)
        line_x = radius * Math.cos(rot_r) + x, line_y = radius * Math.sin(rot_r) + y
        var curr = Render.WorldToScreen([line_x, line_y, z]),
            cur = Render.WorldToScreen([x, y, z]);
        if (cur[0] != null && curr[0] != null && old_x != null) {
            Render.Line(curr[0], curr[1], old_x, old_y, clr)
        }
        old_x = curr[0], old_y = curr[1];
    }
}

function round_start() {
    hits = []
    lines = []
    particles = []
    tracer_lines = []
    pmolotov = []
}

function bullet_impact() {
    player = Event.GetInt("userid");
    player_index = Entity.GetEntityFromUserID(player);
    if (Entity.GetLocalPlayer() == player_index) {
        tracer_lines.push([Entity.GetEyePosition(Entity.GetLocalPlayer()), [Event.GetFloat("x"), Event.GetFloat("y"), Event.GetFloat("z")], Globals.Tickcount() + 90])
    }
}
Cheat.RegisterCallback("bullet_impact", "bullet_impact");
Cheat.RegisterCallback("player_connect_full", "on_player_connect")
Cheat.RegisterCallback("weapon_fire", "swap")
Cheat.RegisterCallback("CreateMove", "dormant_aim")
Cheat.RegisterCallback("CreateMove", "babletap")
Cheat.RegisterCallback("weapon_fire", "dormant_aim_shot");
Cheat.RegisterCallback("round_start", "round_start")
Cheat.RegisterCallback("CreateMove", "tick")
Cheat.RegisterCallback("Draw", "draw")
Cheat.RegisterCallback('Draw', 'grenade_warning_draw')
Cheat.RegisterCallback('CreateMove', 'grenade_warning_tick')
Cheat.RegisterCallback("player_hurt", "hurt")
ВАПХХВАППХЗВПАХЗАВПХЗ Я С ЭТИМ КОРДОМ ПРОСТО ВСЕХ ХСАЮ, АЧЕ ВСМЫСЛЕ, ПОЧЕМУ
Так в кряке нельзя дт ускорить:D
Я НЕ ЗНАЮ КАК, НО ОН РЕАЛЬНО БЫСТРЕЕ
меня тупо в залаг не попадают
меня тупо в залаг не попадают
 
Посрал
Участник
Статус
Оффлайн
Регистрация
28 Ноя 2020
Сообщения
517
Реакции[?]
152
Поинты[?]
0
ВАПХХВАППХЗВПАХЗАВПХЗ Я С ЭТИМ КОРДОМ ПРОСТО ВСЕХ ХСАЮ, АЧЕ ВСМЫСЛЕ, ПОЧЕМУ

Я НЕ ЗНАЮ КАК, НО ОН РЕАЛЬНО БЫСТРЕЕ
меня тупо в залаг не попадают
меня тупо в залаг не попадают
ЕГО НИКАК НЕЛЬЗЯ УСКОРИТЬ:<. Только через кастом апи
 
Продам киру
Начинающий
Статус
Оффлайн
Регистрация
14 Дек 2019
Сообщения
311
Реакции[?]
25
Поинты[?]
0
Забаненный
Статус
Оффлайн
Регистрация
4 Апр 2021
Сообщения
234
Реакции[?]
132
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Krasava ^^
а теперь помогите мне с GetProcAddress(GetModuleHandle("ntdll.dll"), "NtProtectVirtualMemory")
 
Сверху Снизу