LUA скрипт [GS] paranoia

Главный модератор
Главный Модератор
Главный Модератор
Статус
Оффлайн
Регистрация
1 Фев 2020
Сообщения
1,302
Реакции
502
всем привет. некоторые люди помнят, что я делал скрипт "script on pui". там я буквально учился (вот с самого нуля) писать многофункциональный скрипт (ну и делал на библиотеке от enQ). время идёт, а научиться писать как-то отлично код я так и не научился... поэтому решил опять начать всё с самого начала.

=).png
( нажмите на картинку )

любая адекватная критика, которая будет относиться к скрипту (скудный функционал, неправильная работа функций, проблемы с оптимизацией), приветствуется!​
 
и как запустить если никакой комбобокс даже не появляется
 
оно всё в LUA табе..
1745746549306.png

ничего нету
 
всем привет. некоторые люди помнят, что я делал скрипт "script on pui". там я буквально учился (вот с самого нуля) писать многофункциональный скрипт (ну и делал на библиотеке от enQ). время идёт, а научиться писать как-то отлично код я так и не научился... поэтому решил опять начать всё с самого начала.
любая адекватная критика, которая будет относиться к скрипту (скудный функционал, неправильная работа функций, проблемы с оптимизацией), приветствуется!

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


это уже второй раз... дай Бог я тут опять какую-то фигню не вытворил...
пока добавил базовые вещи, которые в будущем будут видоизменяться

название бомбовое
я не умею пользоваться гитхабом поэтому здесь напишу фиксы для скрипта

я заметил что есть ошибки когда используешь Interpolate и crosshair (именно рендер кроссхейера) в меню
[gamesense] [DEBUG] error in callback "paint_ui": .\paranoia.lua:2157: attempt to index local 'weapon_name' (a nil value)
[gamesense] .\paranoia.lua:496: attempt to index local 'self_index' (a nil value)

поэтому вот фиксы которые я сделал

2157:
Код:
Expand Collapse Copy
function crosshair:render()
    if not menu.general.visuals.widgets.crosshair:get() then
        return
    end

    if context.local_player == nil then
        return
    end

    if context.weapon == nil then
        return
    end

    local weapon_name = entity.get_classname(context.weapon)
    if weapon_name == nil then
        return
    end

    local r, g, b, a = menu.general.visuals.widgets.crosshair_color:get()
    local better_render = render.new()

    local screen = vector(context.screen_size.x() / 2, context.screen_size.y() / 2)

    local is_scoped = entity.get_prop(context.local_player, 'm_bIsScoped') == 1
    local is_grenade = weapon_name and weapon_name:match('Grenade') ~= nil

    local target_offset = is_scoped and 50 or 0
    local target_alpha = is_grenade and 150 or a

    self.data.offset = motion.lerp(self.data.offset, target_offset, globals.frametime() * 8)
    self.data.alpha = motion.lerp(self.data.alpha, target_alpha, globals.frametime() * 8)

    if self.data.alpha < 1 then
        return
    end
end

496:
Код:
Expand Collapse Copy
function animation_fix:apply_interpolated_state(state1, state2, t)
    local animations_select = menu.general.animations.player:get()
    if array_string(animations_select, 'Interpolate') == nil then
        return
    end

    if not context.local_player then
        return
    end

    local self_index = c_entity(context.local_player)
    if not self_index then
        return
    end

    for layer_idx, _ in pairs(self.data.layers) do
        local layer = self_index:get_anim_overlay(layer_idx)
        if layer and state1.layers[layer_idx] and state2.layers[layer_idx] then
            local layer1 = state1.layers[layer_idx]
            local layer2 = state2.layers[layer_idx]

            -- if the layer is the same as the previous one, don't interpolate
            layer.cycle = (layer1.cycle == layer2.cycle) and layer2.cycle or self:lerp(layer1.cycle, layer2.cycle, t)
            layer.weight = (layer1.weight == layer2.weight) and layer2.weight or self:lerp(layer1.weight, layer2.weight, t)
            layer.playback_rate = (layer1.playback_rate == layer2.playback_rate) and layer2.playback_rate or self:lerp(layer1.playback_rate, layer2.playback_rate, t)
            layer.sequence = (layer1.sequence == layer2.sequence) and layer2.sequence or self:lerp(layer1.sequence, layer2.sequence, t)
        end
    end
end
 
за пуи -10 баллов
 
всем привет. некоторые люди помнят, что я делал скрипт "script on pui". там я буквально учился (вот с самого нуля) писать многофункциональный скрипт (ну и делал на библиотеке от enQ). время идёт, а научиться писать как-то отлично код я так и не научился... поэтому решил опять начать всё с самого начала.
любая адекватная критика, которая будет относиться к скрипту (скудный функционал, неправильная работа функций, проблемы с оптимизацией), приветствуется!

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


это уже второй раз... дай Бог я тут опять какую-то фигню не вытворил...
пока добавил базовые вещи, которые в будущем будут видоизменяться

название бомбовое
Здорова, планируешь как серьёзный проект?
 
всем привет. некоторые люди помнят, что я делал скрипт "script on pui". там я буквально учился (вот с самого нуля) писать многофункциональный скрипт (ну и делал на библиотеке от enQ). время идёт, а научиться писать как-то отлично код я так и не научился... поэтому решил опять начать всё с самого начала.
любая адекватная критика, которая будет относиться к скрипту (скудный функционал, неправильная работа функций, проблемы с оптимизацией), приветствуется!

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


это уже второй раз... дай Бог я тут опять какую-то фигню не вытворил...
пока добавил базовые вещи, которые в будущем будут видоизменяться

название бомбовое
интересная задумка, удачи и нервов тебе
 
+rep nice release:grinning:
 
всем привет!
если вы хоть немного разбираетесь в LUA или имеете опыт работы с SourceEngine, и у вас есть свободное время, которое вы готовы потратить на бесплатный проект, пожалуйста, напишите мне в личные сообщения....

дополнение: ещё нужны люди, которые разбираются в дизайне ( формулировка странная, но надеюсь понятно )
 

Похожие темы

Назад
Сверху Снизу