JS-скрипт [NOT RELEASE] Battlefield hud for otc

Nike.lua
Олдфаг
Статус
Оффлайн
Регистрация
13 Окт 2020
Сообщения
2,747
Реакции[?]
1,465
Поинты[?]
2K
Чисто по(пИТ) приколу сделал данный скрипт, худ довольно красивый

В коде есть пару мемов, но я думаю, все более менее хорошо)
И да, шрифтик установите, я в архиве там прикрепил :da:
Ну а на сегодня я думаю все, я пошел в глубокую депрессию, всем добра и позитива.

JavaScript:
var screen = Render.GetScreenSize()
function renderPlayerState() {
    if (!Entity.IsAlive(Entity.GetLocalPlayer()) || !Entity.IsValid(Entity.GetLocalPlayer())) return
    const health = Entity.GetProp(Entity.GetLocalPlayer(), 'CBasePlayer', 'm_iHealth')
    const armor = Entity.GetProp(Entity.GetLocalPlayer(), 'CCSPlayerResource', 'm_iArmor')
    const helmet = Entity.GetProp(Entity.GetLocalPlayer(), 'CCSPlayer', 'm_bHasHelmet')
    const icons = Render.AddFont('undefeated', 19, 100)
    const font = Render.AddFont('Tahoma bold', 14, 100)
    Render.Line(screen[0] / 2, screen[1] / 2 + 404, screen[0] / 2, screen[1] / 2 + 424, [255,255,255,255])
    //WARNING! CODE = CRINGE
    if (health >= 100) { hdd = 45 } 
    if (health < 100) { hdd = 40 }
    if (health < 10) { hdd = 35 }
    if (armor >= 100) { add = 45 } 
    if (armor < 100) { add = 40 }
    if (armor < 10) { add = 35 }
    //WARNING! CODE = CRINGE
    Render.Outline(screen[0] / 2 + 15, screen[1] /2 + 396, 1, '+', [255,255,255,255], [0,0,0,255], Render.AddFont('Verdana', 20, 100))
    Render.Outline(screen[0] / 2 + hdd, screen[1] /2 + 402, 1, health.toString(), [255,255,255,255], [0,0,0,255], font)
    Render.Outline(screen[0] / 2 - 13, screen[1] /2 + 402, 1, helmet ? 'q' : 'p', [255,255,255,255], [0,0,0,255], icons)
    Render.Outline(screen[0] / 2 - add, screen[1] /2 + 403, 1, armor.toString(), [255,255,255,255], [0,0,0,255], font)
}
Cheat.RegisterCallback('Draw', 'renderPlayerState')
var background = [ [0,0,0,200], [0,0,0,200], [0,0,0,200], [0,0,0,200] ] 
var numbers_background = [ [255,255,255,255], [255,255,255,255], [255,255,255,255], [255,255,255,255] ]
var numbers = [ [0,0,0,255], [0,0,0,255], [0,0,0,255], [0,0,0,255] ]
var icons = [ [255,255,255,255], [255,255,255,255], [255,255,255,255], [255,255,255,255] ]
const mainWeapons = ['ak 47', 'aug', 'awp', 'famas', 'g3sg1', 'galil ar', 'm4a1 s', 'm4a4', 'scar 20', 'sg 553', 'ssg 08', 'mac 10', 'mp5 sd', 'mp7', 'mp9', 'pp bizon', 'p90', 'ump 45', 'mag 7', 'nova', 'sawed off',
'xm1014']
const pistols = ['cz75 auto', 'desert eagle', 'dual berettas', 'five seven', 'glock 18', 'p2000', 'p250', 'r8 revolver', 'tec 9', 'usp s']
const knifes = ['nomad knife', 'skeleton knife', 'survival knife', 'paracord knife', 'classic knife', 'bayonet', 'bowie knife', 'butterfly knife', 'falchion knife', 'flip knife', 'gut knife', 'huntsman knife',
'karambit', 'm9 bayonet', 'navaja knife', 'shadow daggers', 'stiletto knife', 'talon knife', 'ursus knife']
const grenades = ['high explosive grenade', 'incendiary grenade', 'decoy grenade', 'smoke grenade', 'flashbang', 'molotov']
const mainWeaponsIcons = {'ssg 08': 'a', 'xm1014': 'b', 'sawed off': 'c', 'mag 7': 'd', 'nova': 'e', 'negev': 'f', 'm249': 'g', 'mac 10': 'K', 'ump 45': 'L', 'pp bizon': 'M', 'mp7': 'N', 'mp9': 'O', 'p90': 'P', 
'galil ar': 'Q', 'famas': 'R', 'm4a4': 'S', 'm4a1 s': 'T', 'aug': 'U', 'sg 553': 'V', 'ak 47': 'W', 'g3sg1': 'X', 'scar 20': 'Y', 'awp': 'Z' }
const pistolsIcons = {'desert eagle': 'A', 'dual berettas': 'B', 'five seven': 'C', 'glock 18': 'D', 'p2000': 'E', 'p250': 'F', 'usp s': 'G', 'tec 9': 'H', 'cz75 auto': 'I', 'r8 revolver': 'J'}
const knifesIcons = {'knife': 'G', 'bayonet': '1', 'flip knife': '2', 'gut knife': '3', 'karambit': '4', 'm9 bayonet': '5', 'huntsman knife': '6', 'bowie knife': '7', 'butterfly knife': '8', 'shadow daggers': '9', 'falchion knife': '0'}
const grenadesIcons = {'high explosive grenade': 'j', 'incendiary grenade': 'n', 'decoy grenade': 'm', 'smoke grenade': 'k', 'flashbang': 'i', 'molotov': 'l'}
function setReverseColor() {
    if (Entity.GetName(Entity.GetWeapon(Entity.GetLocalPlayer())) == 'zeus x27') knifes.push('zeus x27') 
    set = [mainWeapons, pistols, knifes, grenades]
    for (var s in set) {
        inverseColor(set[s], Entity.GetName(Entity.GetWeapon(Entity.GetLocalPlayer())))
    }
}
Cheat.RegisterCallback('CreateMove', 'setReverseColor')
function renderWeaponHud() {
    var gRender = []
    if (!Entity.IsAlive(Entity.GetLocalPlayer()) || !Entity.IsValid(Entity.GetLocalPlayer())) return
    setPos = {
        background: {
            mainY: screen[1] /2 + 120,
            pistolY: screen[1] /2 + 184,
            knifeY: screen[1] /2 + 248,
            grenadeY: screen[1] /2 + 312
        },
        icons: {
            mainY: screen[1] /2 + 123,
            pistolY: screen[1] /2 + 190,
            knifeY: screen[1] /2 + 254,
            grenadeY: screen[1] /2 + 314
        },
        numbers_background: {
            mainY: screen[1] /2 + 140,
            pistolY: screen[1] /2 + 204,
            knifeY: screen[1] /2 + 269,
            grenadeY: screen[1] /2 + 332
        },
        numbers: {
            mainY: screen[1] /2 + 139,
            pistolY: screen[1] /2 + 203,
            knifeY: screen[1] /2 + 268,
            grenadeY: screen[1] /2 + 332
        },
        bulletsCount: {
    
        }
    }
    font = Render.AddFont('Tahoma bold', 14, 100)
    playerWeapons = Entity.GetWeapons(Entity.GetLocalPlayer())
    iconsFont = Render.AddFont('undefeated', 40, 100)
    knifeIcon = knifesIcons[Entity.GetName(playerWeapons[0])]
    if (knifeIcon == undefined) knifeIcon = '4'
    if (Entity.GetName(Entity.GetWeapon(Entity.GetLocalPlayer())) == 'zeus x27') knifeIcon = 'h' 
    for (var inc in playerWeapons) {
        for (var m in mainWeapons) {
            if (Entity.GetName(playerWeapons[inc]).includes(mainWeapons[m])) {
                mainWeaponIcon = mainWeaponsIcons[mainWeapons[m]]
                Render.FilledRect(screen[0] /2 + 725, setPos.background.mainY, 230, 60, background[0])
                Render.StringCustom(screen[0] /2 + 740, setPos.icons.mainY, 0, mainWeaponIcon, icons[0], iconsFont)
                Render.FilledRect(screen[0] /2 + 920, setPos.numbers_background.mainY, 20, 20, numbers_background[0])
                Render.StringCustom(screen[0] /2 + 926, setPos.numbers.mainY, 0, '1', numbers[0], font)
            }
        }
        for (var p in pistols) {
            if (Entity.GetName(playerWeapons[inc]).includes(pistols[p])) {
                pistolIcon = pistolsIcons[pistols[p]]
                Render.FilledRect(screen[0] /2 + 725, setPos.background.pistolY, 230, 60, background[1])
                Render.StringCustom(screen[0] /2 + 740, setPos.icons.pistolY, 0, pistolIcon, icons[1], iconsFont)
                Render.FilledRect(screen[0] /2 + 920, setPos.numbers_background.pistolY, 20, 20, numbers_background[1])
                Render.StringCustom(screen[0] /2 + 926, setPos.numbers.pistolY, 0, '2', numbers[1], font)
            }
        }      
        for (var k in knifes) {
            if(Entity.GetName(playerWeapons[inc]).includes(knifes[k])) {
                Render.FilledRect(screen[0] /2 + 725, setPos.background.knifeY, 230, 60, background[2])
                Render.StringCustom(screen[0] /2 + 740, setPos.icons.knifeY, 0, knifeIcon, icons[2], iconsFont)
                Render.FilledRect(screen[0] /2 + 920, setPos.numbers_background.knifeY, 20, 20, numbers_background[2])
                Render.StringCustom(screen[0] /2 + 926, setPos.numbers.knifeY, 0, '3', numbers[2], font)
            }
        }
        
        for (var g in grenades) {
            if(Entity.GetName(playerWeapons[inc]).includes(grenades[g])) {
                gRender.push(grenades[g])
                Render.FilledRect(screen[0] /2 + 725, setPos.background.grenadeY, 230, 60, background[3])
                for (var gr in gRender) {
                    grenadeIcon = grenadesIcons[gRender[gr]]
                    Render.StringCustom(screen[0] /2 + 750 + (35 * gr), setPos.icons.grenadeY, 1, grenadeIcon, icons[3], Render.AddFont('undefeated', 40, 100))
                }
                Render.FilledRect(screen[0] /2 + 920, setPos.numbers_background.grenadeY, 20, 20, numbers_background[3])
                Render.StringCustom(screen[0] /2 + 926, setPos.numbers.grenadeY, 0, '4', numbers[3], font)
            }
        }
    }
}
Cheat.RegisterCallback('Draw', 'renderWeaponHud')
Render.Outline = function(x, y, a, t, c, oc, f) {
    Render.StringCustom(x + 1, y + 1, a, t, oc, f)
    Render.StringCustom(x - 1, y - 1, a, t, oc, f)
    Render.StringCustom(x - 1, y + 1, a, t, oc, f)
    Render.StringCustom(x + 1, y - 1, a, t, oc, f)
    Render.StringCustom(x, y, a, t, c, f)
}
function inverseColor(arr, obj) {
    function inc() {
        for (var i = 0; i < arr.length; i++) {
            if (arr[i] == obj) return true;
        }
    }
    if (arr == mainWeapons) index = 0;
    if (arr == pistols) index = 1;
    if (arr == knifes) index = 2;
    if (arr == grenades) index = 3;
    if (inc()) {
        background[index] = [255,255,255,200]
        numbers_background[index] = [0,0,0,255]
        numbers[index] = [255,255,255,255]
        icons[index] = [0,0,0,255]
    } else {
        background[index] = [0,0,0,200]
        numbers_background[index] = [255,255,255,255]
        numbers[index] = [0,0,0,255]
        icons[index] = [255,255,255,255]
    }
}
function include(array, element) {
    for (var i = 0; i < array.length; i++) {
        if (array[i] == element) {
            return true
        } else {
            return false
        }
    }
}
Cheat.ExecuteCommand('cl_draw_only_deathnotices 1')
Cheat.ExecuteCommand('cl_drawhud_force_radar 1')

function unload() {
    Cheat.ExecuteCommand('cl_draw_only_deathnotices 0')
}
Cheat.RegisterCallback('Unload', 'unload')
(Если будет время - допишу, а так пока что юзайте то что есть)
Сразу скажу, есть пару приколов, например если ты выбросишь пистолет, то у тебя может пропасть иконка основного оружия и/или гранат :FeelsBadMan:
 

Вложения

Последнее редактирование:
Nike.lua
Олдфаг
Статус
Оффлайн
Регистрация
13 Окт 2020
Сообщения
2,747
Реакции[?]
1,465
Поинты[?]
2K
Начинающий
Статус
Оффлайн
Регистрация
30 Окт 2019
Сообщения
111
Реакции[?]
19
Поинты[?]
0
Так его изи сделать
Ну так я не умею, я бублик нахуй с дыркой. Прошу у тех кто умеет, но они не хотят. Говорят им лень, а потом вижу они делают говно-корд, и селлят его. Нет блять, чтобы что то крутое сделать
 
Nike.lua
Олдфаг
Статус
Оффлайн
Регистрация
13 Окт 2020
Сообщения
2,747
Реакции[?]
1,465
Поинты[?]
2K
Ну так я не умею, я бублик нахуй с дыркой. Прошу у тех кто умеет, но они не хотят. Говорят им лень, а потом вижу они делают говно-корд, и селлят его. Нет блять, чтобы что то крутое сделать
Я делаю уже, правда я тут подумал, смогу ли я получить оружие, хп, армор и т.д. если человек находится в дорманте? Сделаем - узнаем :roflanEbalo:
 
Начинающий
Статус
Оффлайн
Регистрация
30 Окт 2019
Сообщения
111
Реакции[?]
19
Поинты[?]
0
Я делаю уже, правда я тут подумал, смогу ли я получить оружие, хп, армор и т.д. если человек находится в дорманте? Сделаем - узнаем :roflanEbalo:
Бля, отвечаю я где то видел на ютубе у eu чела, что он сделал что то похожее. Возможно оно не правильно показывало, но это хотя бы намного лучше выглядит чем дефолт дормант в кряке
 
Пользователь
Статус
Оффлайн
Регистрация
21 Дек 2019
Сообщения
228
Реакции[?]
101
Поинты[?]
0
Забаненный
Статус
Оффлайн
Регистрация
16 Ноя 2020
Сообщения
287
Реакции[?]
36
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Забаненный
Статус
Оффлайн
Регистрация
16 Ноя 2020
Сообщения
287
Реакции[?]
36
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
30 Окт 2019
Сообщения
111
Реакции[?]
19
Поинты[?]
0
Nike.lua
Олдфаг
Статус
Оффлайн
Регистрация
13 Окт 2020
Сообщения
2,747
Реакции[?]
1,465
Поинты[?]
2K
1624643400773.png
Ну я, если делаю скрипт меньше 3 дней, это не я. Пока что украинский девелопер помог мне разработать такую штуку. Релиз завтра-послезавтра если не буду лениться :kappa:
 
Начинающий
Статус
Оффлайн
Регистрация
30 Окт 2019
Сообщения
111
Реакции[?]
19
Поинты[?]
0
Посмотреть вложение 157019
Ну я, если делаю скрипт меньше 3 дней, это не я. Пока что украинский девелопер помог мне разработать такую штуку. Релиз завтра-послезавтра если не буду лениться :kappa:
Как выложишь обязательно пни меня. Ещё когда сделаешь, я попрошу разрешения на пост этого скрипта на другой форум
 
Nike.lua
Олдфаг
Статус
Оффлайн
Регистрация
13 Окт 2020
Сообщения
2,747
Реакции[?]
1,465
Поинты[?]
2K
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
30 Окт 2019
Сообщения
111
Реакции[?]
19
Поинты[?]
0
Все что делаю я принадлежит обществу, главное не продавайте это, в остальных ситуациях можете хоть выдавать код за свой.
Ты практически единственный человек который ещё делает хорошие JS на кряк. Остальные делают хуйню которую спастили с другой джс. Я тебе благодарен
 
Пользователь
Статус
Оффлайн
Регистрация
21 Дек 2019
Сообщения
228
Реакции[?]
101
Поинты[?]
0
life is cheap, death is free!
Эксперт
Статус
Оффлайн
Регистрация
9 Дек 2019
Сообщения
1,603
Реакции[?]
517
Поинты[?]
2K
Сверху Снизу