JS [ weave ] Custom HitMark

  • Acrados
  • Дурашка, ты что делаешь?)
  • 208
  • 39
Контакты для связи отсутствуют.
Ну типа кастом хитмарк...
Мб есть баги или отрисовка не совсем где надо, лень уже чекать.
Из минусов:
- Отрисовывается только одна хитмарка.
- Джс писал я...


ezgif.com-gif-maker (4).gif
JS:
var is_fire = false;
var fireIn;
register_callback("ragebot_fire", function(){
    is_fire = true;
    fireIn = current_event.get_int("player_index");
});

var hitPos,hitmarkWTS;
var lasttime = 0;
function hitmark_pos(){
    if(!is_fire) return;
    lasttime = global_vars.curtime();
    var hitX = current_event.get_float('x'),
    hitY = current_event.get_float('y'),
    hitZ = current_event.get_float('z');

    var targetOrigin = entity.get_origin(fireIn),
    hitOrigin = [hitX, hitY, hitZ];
    var OriginDifference = Math.sqrt((targetOrigin[0]-hitOrigin[0])**2+(targetOrigin[1]-hitOrigin[1])**2).toFixed(0)
    //
    if (OriginDifference < 40) {  // т.к. ивент bullet_impact выводит и прострелы то на мнужно задетектить тот что попал в енеми. Метод гавно но не хочу переписывать
        hitPos = hitOrigin;
        is_fire = false;
    }

}

function hitmarker(){
    var picterSize = [364/10, 299/10]; // размер пички
    if (global_vars.curtime() - lasttime < 3) // 3 - время "жизни" хитмарка
    {
     
        hitmarkWTS = render.world_to_screen(hitPos);  // определяем где рендерить исходя из координат
        render.picture("C:/hitmark.png", [hitmarkWTS[0]-picterSize[0]/2,hitmarkWTS[1]-picterSize[1]/2], picterSize, 255);  // сам рендер хитмарка
    }
 
}
register_callback("render", hitmarker)
register_callback("bullet_impact", hitmark_pos)
 

Вложения

  • hitmark.png
    hitmark.png
    5.3 KB · Просмотры: 160
Последнее редактирование:
Сверху Снизу