На ваш бан.
-
Автор темы
- #1
Пытаюсь написать луа, но если загрузить находясь на серве то работает, если ливнуть и снова зайти значения нетваров(оффсетов) ломаются(становятся просто неадекватными), то же самое и если загрузить луашку не находясь на серве. Как это фиксить?
Вот код, может скажете что тут неправильно сделано, на других по образцу думаю справлюсь, главное понять почему так происходит и как исправлять
Если что engine.is_connected() ничем не помогает
Закрыто, проблема решена. Ответ вот такой если у кого-нибудь возникнет такая же проблема: Ломаются абсолютно не нетвары и нет никакой разницы где как и когда они будут вызываться, проблема в local player'е, его получение нужно делать внутри каллбека(функции), ибо его значение при пере-заходе на сервер меняется.
Вот код, может скажете что тут неправильно сделано, на других по образцу думаю справлюсь, главное понять почему так происходит и как исправлять
Код:
local slowWalkActive = ui.get_key_bind("antihit_extra_slowwalk_bind")
local roll_aa = ui.get_slider_int("antihit_antiaim_desync_roll")
local localPlayer = entitylist.get_local_player()
local air_roll
local standing_roll
local swking_roll
local m_vecVelocity = {
[0] = se.get_netvar("DT_BasePlayer", "m_vecVelocity[0]"),
[1] = se.get_netvar("DT_BasePlayer", "m_vecVelocity[1]")
}
local exp_roll = ui.add_check_box("Disable Roll AA on exploits", "ya_prosto_ebu_sobak", false)
local def_value = ui.add_slider_int("Default value", "default_value_roll_aa", 0, 90, math.abs(roll_aa:get_value()))
local override_air = ui.add_check_box("Override Air", "override_air", false)
local in_air = ui.add_slider_int("In air override", "in_air_ya_ebu_sobak", 0, 90, math.abs(roll_aa:get_value()))
local override_standing = ui.add_check_box("Override Standing", "override_standing", false)
local standing = ui.add_slider_int("Standing override", "standing_ya_ebu_sobak", 0, 90, math.abs(roll_aa:get_value()))
local override_swking = ui.add_check_box("Override Slowwalk", "override_swking", false)
local swking = ui.add_slider_int("Slowwalk override", "swking_ya_ebu_sobak", 0, 90, math.abs(roll_aa:get_value()))
local function roll()
if exp_roll:get_value() then
if ui.get_key_bind("rage_active_exploit_bind"):is_active() and ui.get_combo_box("rage_active_exploit"):get_value() ~= 0 then
return 0
end
end
m_hGroundEntity = localPlayer:get_prop_int(se.get_netvar("DT_BasePlayer", "m_hGroundEntity"))
if m_hGroundEntity == -1 or client.is_key_pressed(32) then
return in_air:get_value()
end
if slowWalkActive:is_active() then
return swking:get_value()
end
velocity = math.sqrt(localPlayer:get_prop_float(m_vecVelocity[0]) ^ 2 + localPlayer:get_prop_float(m_vecVelocity[1]) ^ 2)
if velocity <= 5 then
return standing:get_value()
end
return def_value:get_value()
end
local function visible()
if override_air:get_value() then
if f then
in_air:set_value(air_roll)
f = false
end
in_air:set_visible(true)
else
if def_value:get_value() ~= in_air:get_value() then
air_roll = in_air:get_value()
f = true
end
in_air:set_visible(false)
in_air:set_value(def_value:get_value())
end
if override_standing:get_value() then
if f1 then
standing:set_value(standing_roll)
f1 = false
end
standing:set_visible(true)
else
if def_value:get_value() ~= standing:get_value() then
standing_roll = standing:get_value()
f1 = true
end
standing:set_visible(false)
standing:set_value(def_value:get_value())
end
if override_swking:get_value() then
if f2 then
swking:set_value(swking_roll)
f2 = false
end
swking:set_visible(true)
else
if def_value:get_value() ~= swking:get_value() then
swking_roll = swking:get_value()
f2 = true
end
swking:set_visible(false)
swking:set_value(def_value:get_value())
end
end
local function main()
if ui.get_key_bind("antihit_antiaim_flip_bind"):is_active() then
roll_aa:set_value(roll())
else
roll_aa:set_value(-roll())
end
end
client.register_callback("paint", visible)
client.register_callback("create_move", main)
Закрыто, проблема решена. Ответ вот такой если у кого-нибудь возникнет такая же проблема: Ломаются абсолютно не нетвары и нет никакой разницы где как и когда они будут вызываться, проблема в local player'е, его получение нужно делать внутри каллбека(функции), ибо его значение при пере-заходе на сервер меняется.
Последнее редактирование: