Diamond
-
Автор темы
- #1
Как обяснить Eu челику что резольвер на невелуз через луа это не возможно так как соуфив запретил с помощю луа что-то менять с анимациями рейджа и темболее сделать резольвер блять.Я за луа не шарю но он написал типо вот луа на резольвер и она работает я в кодинге тупой пиздец можете обяснить что это луа делает
Код:
local vmt_hook = require("neverlose/vmt_hook")
ffi.cdef[[
typedef void*(__thiscall* get_client_entity_t)(void*, int);
]]
local uintptr_t = ffi.typeof("uintptr_t**")
local this_call = function(call_function, parameters)
return function(...)
return call_function(parameters, ...)
end
end
local entity_list_003 = ffi.cast(uintptr_t, utils.create_interface("client.dll", "VClientEntityList003"))
local get_entity_address = this_call(ffi.cast("get_client_entity_t", entity_list_003[0][3]), entity_list_003)
to_resolve_degrees = {}
resolve_degree = 45 -- тут пишите резольв угл
resolver_update = function()
local local_player = entity.get_local_player()
entity.get_players(true, false, function(i)
local to_resolve = to_resolve_degrees[i:get_index()]
if to_resolve == nil then to_resolve_degrees[i:get_index()] = resolve_degree to_resolve = resolve_degree end
local resolve_angles = (1 - to_resolve / 60) / 2
if not i:is_alive() then return end
if i:is_bot() then return end
-- "E" PICK FIX
if i.m_flPoseParameter[12] > 0.2 and i.m_flPoseParameter[12] < 0.8 then resolve_angles = 0.5 end
i.m_flPoseParameter[11] = resolve_angles
end)
end
hooked_function = nil
inside_updateCSA = function(thisptr, edx)
hooked_function(thisptr, edx)
if entity.get_local_player() == nil or ffi.cast('uintptr_t**', thisptr) == nil then return end
resolver_update()
end
update_hook = function()
local self = entity.get_local_player()
if not self or not self:is_alive() then
return
end
local self_index = self:get_index()
local self_address = get_entity_address(self_index)
if not self_address or hooked_function then
return
end
local new_point = vmt_hook.new(self_address)
hooked_function = new_point.hook("void(__fastcall*)(void*, void*)", inside_updateCSA, 224)
end
events.createmove_run:set(function(cmd)
update_hook()
end)
Сори я плохо знаю русский и пишу тоже так себе,надеюсь в поняли что я хотел написатьКак обяснить Eu челику что резольвер на невелуз через луа это не возможно так как соуфив запретил с помощю луа что-то менять с анимациями рейджа и темболее сделать резольвер блять.Я за луа не шарю но он написал типо вот луа на резольвер и она работает я в кодинге тупой пиздец можете обяснить что это луа делает
Код:local vmt_hook = require("neverlose/vmt_hook") ffi.cdef[[ typedef void*(__thiscall* get_client_entity_t)(void*, int); ]] local uintptr_t = ffi.typeof("uintptr_t**") local this_call = function(call_function, parameters) return function(...) return call_function(parameters, ...) end end local entity_list_003 = ffi.cast(uintptr_t, utils.create_interface("client.dll", "VClientEntityList003")) local get_entity_address = this_call(ffi.cast("get_client_entity_t", entity_list_003[0][3]), entity_list_003) to_resolve_degrees = {} resolve_degree = 45 -- тут пишите резольв угл resolver_update = function() local local_player = entity.get_local_player() entity.get_players(true, false, function(i) local to_resolve = to_resolve_degrees[i:get_index()] if to_resolve == nil then to_resolve_degrees[i:get_index()] = resolve_degree to_resolve = resolve_degree end local resolve_angles = (1 - to_resolve / 60) / 2 if not i:is_alive() then return end if i:is_bot() then return end -- "E" PICK FIX if i.m_flPoseParameter[12] > 0.2 and i.m_flPoseParameter[12] < 0.8 then resolve_angles = 0.5 end i.m_flPoseParameter[11] = resolve_angles end) end hooked_function = nil inside_updateCSA = function(thisptr, edx) hooked_function(thisptr, edx) if entity.get_local_player() == nil or ffi.cast('uintptr_t**', thisptr) == nil then return end resolver_update() end update_hook = function() local self = entity.get_local_player() if not self or not self:is_alive() then return end local self_index = self:get_index() local self_address = get_entity_address(self_index) if not self_address or hooked_function then return end local new_point = vmt_hook.new(self_address) hooked_function = new_point.hook("void(__fastcall*)(void*, void*)", inside_updateCSA, 224) end events.createmove_run:set(function(cmd) update_hook() end)