Что нового

Мануал Добавляем Хит-маркер на RedAge (Shadow, Freedom, Alyx и т.п.)

Sochinskiy

Ветеран
LV
0
 
Сообщения
290
R-Коины
12 058
Привет! Сегодня разберем как добавить хит-маркер. Если кто не знает это текст с кол-вом урона которое вы нанесли другому игроку во время перестрелки.
Для начала создаем текстовый файл с расширением .js в папке client_packages/src.
Пример: client_packages/src/hitmarker.js
После создания файла, вставляем туда этот код ⬇️
JavaScript:
global.hitSettings = {
    enable: false,
    font: 2,
    size: 4,
    color: "white",
    deadMarker: false,
    deadText: "УМЕР",
    deadColor: "red",
    deadSound: false,
    headMarker: false,
    headText: "В ГОЛОВУ",
    headColor: "blue",
    headSound: false,
}
class HitObject {
    amount;
    position;
    count = 0;
    constructor(amount, position) {
        this.amount = amount;
        this.position = position;
    }
}
class HitText {
    list = [];
    add(amount, position) {
        if (!hitSettings.enable) return;
        this.list.push(new HitObject(amount, position));
    }
    render() {
        this.list.forEach((element) => {
            mp.game.graphics.drawText(element.amount.toString(), [element.position.x, element.position.y, element.position.z + 1.4], { font: hitSettings.font, color: [255,255,255,255], centre: true, scale: [hitSettings.size / 10, hitSettings.size / 10], outline: true });
            element.count += 3;
            element.position.z += 0.02;
            if (element.count > 155) {
                var find = Hits.list.findIndex(elemen => elemen == element);
                if (find !== -1) Hits.list.splice(find, 1);
            }
        });
    }
}
global.Hits = new HitText();
var hitPreview = {
    Enable: false,
    Text: "-10",
    Color: "red",
    Size: 10,
    Font: 7,
}
mp.events.add("render", () => {
    if (hitPreview.Enable) {
        mp.game.graphics.drawText(`~${hitPreview.Color}~${hitPreview.Text}`, [0.5, 0.5], {
            font: hitPreview.Font,
            color: [255, 255, 255, 255],
            scale: [hitPreview.Size / 10, hitPreview.Size / 10],
            outline: true
        });
    }
    Hits.render();
    // if (hitPreview.Enable) {
    // }
});
if (mp.storage.data.hitSettings == undefined) {
    mp.storage.data.hitSettings = hitSettings;
    mp.storage.flush();
}
else {
    hitSettings = mp.storage.data.hitSettings;
}
После чего обязательно сохраняем наши изменения в файле нажатием CTRL + S

Далее переходим в файл index.js Который находится по пути client_packages/index.js
Ищем там по слову require
Там мы увидим большой список файлов по типу этого.

1675932053169.png

Параметр require отвечает за то, чтобы сервер видел наши js файлы.
В любое место после ; вставляем эту строчку
JavaScript:
require('./src/hitmarker.js');
Вот и все! Запускаем сервер и радуемся!

Никогда раньше не делал мануалы, так что если где то что то пропустил, или написал не понятно, не осуждайте)

Если кто то захочет сказать спасибо за мануал, поддержите коином)
[CHARGE=2]Пасиба[/CHARGE]
Если возникнут какие то вопросы, пишите в дискорд Vahan#6666
 
Привет! Сегодня разберем как добавить хит-маркер. Если кто не знает это текст с кол-вом урона которое вы нанесли другому игроку во время перестрелки.
Для начала создаем текстовый файл с расширением .js в папке client_packages/src.
Пример: client_packages/src/hitmarker.js
После создания файла, вставляем туда этот код ⬇️
JavaScript:
global.hitSettings = {
    enable: false,
    font: 2,
    size: 4,
    color: "white",
    deadMarker: false,
    deadText: "УМЕР",
    deadColor: "red",
    deadSound: false,
    headMarker: false,
    headText: "В ГОЛОВУ",
    headColor: "blue",
    headSound: false,
}
class HitObject {
    amount;
    position;
    count = 0;
    constructor(amount, position) {
        this.amount = amount;
        this.position = position;
    }
}
class HitText {
    list = [];
    add(amount, position) {
        if (!hitSettings.enable) return;
        this.list.push(new HitObject(amount, position));
    }
    render() {
        this.list.forEach((element) => {
            mp.game.graphics.drawText(element.amount.toString(), [element.position.x, element.position.y, element.position.z + 1.4], { font: hitSettings.font, color: [255,255,255,255], centre: true, scale: [hitSettings.size / 10, hitSettings.size / 10], outline: true });
            element.count += 3;
            element.position.z += 0.02;
            if (element.count > 155) {
                var find = Hits.list.findIndex(elemen => elemen == element);
                if (find !== -1) Hits.list.splice(find, 1);
            }
        });
    }
}
global.Hits = new HitText();
var hitPreview = {
    Enable: false,
    Text: "-10",
    Color: "red",
    Size: 10,
    Font: 7,
}
mp.events.add("render", () => {
    if (hitPreview.Enable) {
        mp.game.graphics.drawText(`~${hitPreview.Color}~${hitPreview.Text}`, [0.5, 0.5], {
            font: hitPreview.Font,
            color: [255, 255, 255, 255],
            scale: [hitPreview.Size / 10, hitPreview.Size / 10],
            outline: true
        });
    }
    Hits.render();
    // if (hitPreview.Enable) {
    // }
});
if (mp.storage.data.hitSettings == undefined) {
    mp.storage.data.hitSettings = hitSettings;
    mp.storage.flush();
}
else {
    hitSettings = mp.storage.data.hitSettings;
}
После чего обязательно сохраняем наши изменения в файле нажатием CTRL + S

Далее переходим в файл index.js Который находится по пути client_packages/index.js
Ищем там по слову require
Там мы увидим большой список файлов по типу этого.

Посмотреть вложение 1974

Параметр require отвечает за то, чтобы сервер видел наши js файлы.
В любое место после ; вставляем эту строчку
JavaScript:
require('./src/hitmarker.js');
Вот и все! Запускаем сервер и радуемся!

Никогда раньше не делал мануалы, так что если где то что то пропустил, или написал не понятно, не осуждайте)

Если кто то захочет сказать спасибо за мануал, поддержите коином)
-=Ограниченное содержимое=-
Если возникнут какие то вопросы, пишите в дискорд Vahan#6666
Годно :)
 
Привет! Сегодня разберем как добавить хит-маркер. Если кто не знает это текст с кол-вом урона которое вы нанесли другому игроку во время перестрелки.
Для начала создаем текстовый файл с расширением .js в папке client_packages/src.
Пример: client_packages/src/hitmarker.js
После создания файла, вставляем туда этот код ⬇️
JavaScript:
global.hitSettings = {
    enable: false,
    font: 2,
    size: 4,
    color: "white",
    deadMarker: false,
    deadText: "УМЕР",
    deadColor: "red",
    deadSound: false,
    headMarker: false,
    headText: "В ГОЛОВУ",
    headColor: "blue",
    headSound: false,
}
class HitObject {
    amount;
    position;
    count = 0;
    constructor(amount, position) {
        this.amount = amount;
        this.position = position;
    }
}
class HitText {
    list = [];
    add(amount, position) {
        if (!hitSettings.enable) return;
        this.list.push(new HitObject(amount, position));
    }
    render() {
        this.list.forEach((element) => {
            mp.game.graphics.drawText(element.amount.toString(), [element.position.x, element.position.y, element.position.z + 1.4], { font: hitSettings.font, color: [255,255,255,255], centre: true, scale: [hitSettings.size / 10, hitSettings.size / 10], outline: true });
            element.count += 3;
            element.position.z += 0.02;
            if (element.count > 155) {
                var find = Hits.list.findIndex(elemen => elemen == element);
                if (find !== -1) Hits.list.splice(find, 1);
            }
        });
    }
}
global.Hits = new HitText();
var hitPreview = {
    Enable: false,
    Text: "-10",
    Color: "red",
    Size: 10,
    Font: 7,
}
mp.events.add("render", () => {
    if (hitPreview.Enable) {
        mp.game.graphics.drawText(`~${hitPreview.Color}~${hitPreview.Text}`, [0.5, 0.5], {
            font: hitPreview.Font,
            color: [255, 255, 255, 255],
            scale: [hitPreview.Size / 10, hitPreview.Size / 10],
            outline: true
        });
    }
    Hits.render();
    // if (hitPreview.Enable) {
    // }
});
if (mp.storage.data.hitSettings == undefined) {
    mp.storage.data.hitSettings = hitSettings;
    mp.storage.flush();
}
else {
    hitSettings = mp.storage.data.hitSettings;
}
После чего обязательно сохраняем наши изменения в файле нажатием CTRL + S

Далее переходим в файл index.js Который находится по пути client_packages/index.js
Ищем там по слову require
Там мы увидим большой список файлов по типу этого.

Посмотреть вложение 1974

Параметр require отвечает за то, чтобы сервер видел наши js файлы.
В любое место после ; вставляем эту строчку
JavaScript:
require('./src/hitmarker.js');
Вот и все! Запускаем сервер и радуемся!

Никогда раньше не делал мануалы, так что если где то что то пропустил, или написал не понятно, не осуждайте)

Если кто то захочет сказать спасибо за мануал, поддержите коином)
-=Ограниченное содержимое=-
Если возникнут какие то вопросы, пишите в дискорд Vahan#6666
Это скрипт мерыча, но насколько я помню, в нем ещё привязка к урону есть что отображать и т.п
 
Хоть что то хорошие залили за 2023 год XD :ninja:
 
э вахан ахуел тегеи меня хотя бы в теме
 
что за говно код боже, кто автор этого дерьма? покажите мне его
 
Назад
Верх