Basic Mouse Aimbot
local function get_closest_player()
local cursor_pos = vector(input.cursor_position())
local closest_distance = math.huge
local closest_player = 0
local players = entity.get_players(true)
for _, player in next, players do
local head_pos = vector(player:bone_position("Head"))
if (head_pos:is_zero()) then goto continue end
local screen_pos = vector(utility.world_to_screen(head_pos:unpack()))
if (screen_pos:is_zero()) then goto continue end
local delta = vector(screen_pos.x - cursor_pos.x, screen_pos.y - cursor_pos.y, 0)
local distance = delta:length()
if (distance < closest_distance) then
closest_distance = distance
closest_player = player
end
::continue::
end
return closest_player
end
local function on_update()
local cursor_pos = vector(input.cursor_position())
local player = get_closest_player()
local root_pos = vector(player:bone_position("Head"))
if (root_pos:is_zero()) then return end
local screen_pos = vector(utility.world_to_screen(root_pos:unpack()))
if (screen_pos:is_zero()) then return end
local delta = vector(screen_pos.x - cursor_pos.x, screen_pos.y - cursor_pos.y, 0):scale(0.3);
input.mouse_move(delta.x, delta.y)
end
cheat.set_callback("update", on_update)
Last updated