LUA скрипт [ Spirthack ] Nazi Crosshair

Участник
Статус
Оффлайн
Регистрация
14 Сен 2019
Сообщения
856
Реакции[?]
248
Поинты[?]
2K
Вообщем оплатил себе спирт, было нечего делать, решил луашку переделать.
Просьба не бить палками, впервые к луа прикасаюсь
1635505118287.png

>>
Пожалуйста, авторизуйтесь для просмотра ссылки.
<<

C++:
local function DEG2RAD(x) return x * math.pi / 180 end
local function RAD2DEG(x) return x * 180 / math.pi end
 
local function hsv2rgb(h, s, v, a)
    local r, g, b
 
    local i = math.floor(h * 6);
    local f = h * 6 - i;
    local p = v * (1 - s);
    local q = v * (1 - f * s);
    local t = v * (1 - (1 - f) * s);
 
    i = i % 6
 
    if i == 0 then r, g, b = v, t, p
    elseif i == 1 then r, g, b = q, v, p
    elseif i == 2 then r, g, b = p, v, t
    elseif i == 3 then r, g, b = p, q, v
    elseif i == 4 then r, g, b = t, p, v
    elseif i == 5 then r, g, b = v, p, q
    end
 
    return r * 999, g * 999, b * 999, a * 999
end
 
local rainbow = 0.00
local rotationdegree = 0.000;
 
local function draw_svaston(x, y, size)
    local frametime = GlobalVars.frametime
    local a = size / 60
    local gamma = math.atan(a / a)
    rainbow = rainbow + (frametime * 0.5)
    if rainbow > 1.0 then rainbow = 0.0 end
    if rotationdegree > 89 then rotationdegree = 0 end
 
    for i = 0, 4 do 
        local p_0 = (a * math.sin(DEG2RAD(rotationdegree + (i * 90))))
        local p_1 = (a * math.cos(DEG2RAD(rotationdegree + (i * 90))))
        local p_2 =((a / math.cos(gamma)) * math.sin(DEG2RAD(rotationdegree + (i * 90) + RAD2DEG(gamma))))
        local p_3 =((a / math.cos(gamma)) * math.cos(DEG2RAD(rotationdegree + (i * 90) + RAD2DEG(gamma))))
 
        Render.Line(Vector2.new(x, y), Vector2.new(x + p_0, y - p_1), Color.new(hsv2rgb(rainbow, 1, 1, 1)))
        Render.Line(Vector2.new(x + p_0, y - p_1), Vector2.new(x + p_2, y - p_3), Color.new(hsv2rgb(rainbow, 1, 1, 1)))
    end
    rotationdegree = rotationdegree + (frametime * 150)
end
 
local sieg_heil = Menu.Switch("Crosshair", "Toggle", false)
local crossalpha = CVar.FindVar("cl_crosshairalpha"):GetString()
 
local function on_paint()
  local screen = EngineClient:GetScreenSize()
 
  if not EngineClient.IsConnected() then
    return
  end
 
  if(sieg_heil:Get()) then
        CVar.FindVar("cl_crosshairalpha"):SetInt(0)
        draw_svaston(screen.x / 2, screen.y / 2, screen.y /2)
  else
        EngineClient.ExecuteClientCmd("cl_crosshairalpha " .. crossalpha)
  end
end
 
cheat.RegisterCallback("draw", on_paint)
Cheat.RegisterCallback("destroy", function()
    EngineClient.ExecuteClientCmd("cl_crosshairalpha " .. crossalpha)
end)
 
Последнее редактирование:
NE CORMULEC
Пользователь
Статус
Оффлайн
Регистрация
3 Апр 2020
Сообщения
401
Реакции[?]
33
Поинты[?]
1K
Вообщем оплатил себе спирт, было нечего делать, решил луашку переделать.
Просьба не бить палками, впервые к луа прикасаюсь

>>
Пожалуйста, авторизуйтесь для просмотра ссылки.
<<

C++:
local function DEG2RAD(x) return x * math.pi / 180 end
local function RAD2DEG(x) return x * 180 / math.pi end

local function hsv2rgb(h, s, v, a)
    local r, g, b

    local i = math.floor(h * 6);
    local f = h * 6 - i;
    local p = v * (1 - s);
    local q = v * (1 - f * s);
    local t = v * (1 - (1 - f) * s);

    i = i % 6

    if i == 0 then r, g, b = v, t, p
    elseif i == 1 then r, g, b = q, v, p
    elseif i == 2 then r, g, b = p, v, t
    elseif i == 3 then r, g, b = p, q, v
    elseif i == 4 then r, g, b = t, p, v
    elseif i == 5 then r, g, b = v, p, q
    end

    return r * 999, g * 999, b * 999, a * 999
end

local rainbow = 0.00
local rotationdegree = 0.000;
local crossalpha = CVar.FindVar("cl_crosshairalpha"):GetString()

local function draw_svaston(x, y, size)
    local frametime = GlobalVars.frametime
    local a = size / 60
    local gamma = math.atan(a / a)
    rainbow = rainbow + (frametime * 0.5)
    if rainbow > 1.0 then rainbow = 0.0 end
    if rotationdegree > 89 then rotationdegree = 0 end

    for i = 0, 4 do
        local p_0 = (a * math.sin(DEG2RAD(rotationdegree + (i * 90))))
        local p_1 = (a * math.cos(DEG2RAD(rotationdegree + (i * 90))))
        local p_2 =((a / math.cos(gamma)) * math.sin(DEG2RAD(rotationdegree + (i * 90) + RAD2DEG(gamma))))
        local p_3 =((a / math.cos(gamma)) * math.cos(DEG2RAD(rotationdegree + (i * 90) + RAD2DEG(gamma))))

        Render.Line(Vector2.new(x, y), Vector2.new(x + p_0, y - p_1), Color.new(hsv2rgb(rainbow, 1, 1, 1)))
        Render.Line(Vector2.new(x + p_0, y - p_1), Vector2.new(x + p_2, y - p_3), Color.new(hsv2rgb(rainbow, 1, 1, 1)))
    end
    rotationdegree = rotationdegree + (frametime * 150)
end

local sieg_heil = Menu.Switch("Crosshair", "Toggle", false)

local function on_paint()
  local screen = EngineClient:GetScreenSize()

  if not EngineClient.IsConnected() then
    return
  end

  if(sieg_heil:Get()) then
        EngineClient.ExecuteClientCmd("cl_crosshairalpha 0")
        draw_svaston(screen.x / 2, screen.y / 2, screen.y /2)
  else
        EngineClient.ExecuteClientCmd("cl_crosshairalpha " .. crossalpha)
  end
end

cheat.RegisterCallback("draw", on_paint)
Cheat.RegisterCallback("destroy", function()
    EngineClient.ExecuteClientCmd("cl_crosshairalpha " .. crossalpha)
end)
nice фашист, держи :roflanPominki:
 
Эксперт
Статус
Оффлайн
Регистрация
10 Фев 2021
Сообщения
1,739
Реакции[?]
559
Поинты[?]
2K
nice фашист, держи :roflanPominki:
захотелось кинуть плотную зигу, но одумался.
Вообщем оплатил себе спирт, было нечего делать, решил луашку переделать.
Просьба не бить палками, впервые к луа прикасаюсь

>>
Пожалуйста, авторизуйтесь для просмотра ссылки.
<<

C++:
local function DEG2RAD(x) return x * math.pi / 180 end
local function RAD2DEG(x) return x * 180 / math.pi end

local function hsv2rgb(h, s, v, a)
    local r, g, b

    local i = math.floor(h * 6);
    local f = h * 6 - i;
    local p = v * (1 - s);
    local q = v * (1 - f * s);
    local t = v * (1 - (1 - f) * s);

    i = i % 6

    if i == 0 then r, g, b = v, t, p
    elseif i == 1 then r, g, b = q, v, p
    elseif i == 2 then r, g, b = p, v, t
    elseif i == 3 then r, g, b = p, q, v
    elseif i == 4 then r, g, b = t, p, v
    elseif i == 5 then r, g, b = v, p, q
    end

    return r * 999, g * 999, b * 999, a * 999
end

local rainbow = 0.00
local rotationdegree = 0.000;
local crossalpha = CVar.FindVar("cl_crosshairalpha"):GetString()

local function draw_svaston(x, y, size)
    local frametime = GlobalVars.frametime
    local a = size / 60
    local gamma = math.atan(a / a)
    rainbow = rainbow + (frametime * 0.5)
    if rainbow > 1.0 then rainbow = 0.0 end
    if rotationdegree > 89 then rotationdegree = 0 end

    for i = 0, 4 do
        local p_0 = (a * math.sin(DEG2RAD(rotationdegree + (i * 90))))
        local p_1 = (a * math.cos(DEG2RAD(rotationdegree + (i * 90))))
        local p_2 =((a / math.cos(gamma)) * math.sin(DEG2RAD(rotationdegree + (i * 90) + RAD2DEG(gamma))))
        local p_3 =((a / math.cos(gamma)) * math.cos(DEG2RAD(rotationdegree + (i * 90) + RAD2DEG(gamma))))

        Render.Line(Vector2.new(x, y), Vector2.new(x + p_0, y - p_1), Color.new(hsv2rgb(rainbow, 1, 1, 1)))
        Render.Line(Vector2.new(x + p_0, y - p_1), Vector2.new(x + p_2, y - p_3), Color.new(hsv2rgb(rainbow, 1, 1, 1)))
    end
    rotationdegree = rotationdegree + (frametime * 150)
end

local sieg_heil = Menu.Switch("Crosshair", "Toggle", false)

local function on_paint()
  local screen = EngineClient:GetScreenSize()

  if not EngineClient.IsConnected() then
    return
  end

  if(sieg_heil:Get()) then
        EngineClient.ExecuteClientCmd("cl_crosshairalpha 0")
        draw_svaston(screen.x / 2, screen.y / 2, screen.y /2)
  else
        EngineClient.ExecuteClientCmd("cl_crosshairalpha " .. crossalpha)
  end
end

cheat.RegisterCallback("draw", on_paint)
Cheat.RegisterCallback("destroy", function()
    EngineClient.ExecuteClientCmd("cl_crosshairalpha " .. crossalpha)
end)
Кста нах делать функции DEGTORAD и RADTODEG если оно есть в math?
local sieg_heil = Menu.Switch("Crosshair", "Toggle", false)
патриотично)))0)0)
 
Hentaiware top 1
Начинающий
Статус
Оффлайн
Регистрация
31 Июл 2020
Сообщения
56
Реакции[?]
9
Поинты[?]
1K
Это же мельница, ну а так дефолт прицел как по мне :D
 
Эксперт
Статус
Оффлайн
Регистрация
10 Фев 2021
Сообщения
1,739
Реакции[?]
559
Поинты[?]
2K
EngineClient.ExecuteClientCmd("cl_crosshairalpha 0")
и зачем постоянно вводить альфу? это кушает фпс, можно же сделать
CVar.FindVar("cl_crosshairalpha"):SetInt(0) (если не ошибаюсь, ибо то апи не до конца знаю)
 
Участник
Статус
Оффлайн
Регистрация
14 Сен 2019
Сообщения
856
Реакции[?]
248
Поинты[?]
2K
и зачем постоянно вводить альфу? это кушает фпс, можно же сделать
CVar.FindVar("cl_crosshairalpha"):SetInt(0) (если не ошибаюсь, ибо то апи не до конца знаю)
Кста нах делать функции DEGTORAD и RADTODEG если оно есть в math?
Вопросы не ко мне, а к создателю луашки. Я всего лишь переписал.
Могу переделать, но у меня просадок не наблюдалось
 
Участник
Статус
Оффлайн
Регистрация
14 Сен 2019
Сообщения
856
Реакции[?]
248
Поинты[?]
2K
и зачем постоянно вводить альфу? это кушает фпс, можно же сделать
CVar.FindVar("cl_crosshairalpha"):SetInt(0) (если не ошибаюсь, ибо то апи не до конца знаю)
Вообщем сделал так, остальное не знаю. В math я ещё не лез
Да и не буду скорее всего. Просто переделал для юзеров скрипт
 
Сверху Снизу