как задетектит скорлл мышки

leekyrave

Известный
Автор темы
420
224
Версия MoonLoader
.026-beta
ку, нужно задетектить скролл мышки, неважно каким образом.
Пытаюсь через onwindow message - получаю шляпу, т.к на скролл вверх и вниз получаю одинаковые сообщения, подскажите, друзья
 

Fott

Простреленный
3,450
2,318
Делал такое, а потом узнал что есть муновская функа. Но если ты не ищешь лёгких путей, то ща дойду до ноута и скину (отредачу это сообщение)

upd:
Lua:
local wm = require 'windows.message'
local ffi = require 'ffi'


local splitsigned = function(n) --  нагло спизженно с гита WINAPI.lua
    n = tonumber(n)
    local x, y = bit.band(n, 0xffff), bit.rshift(n, 16)
    if x >= 0x8000 then x = x-0xffff end
    if y >= 0x8000 then y = y-0xffff end
    return x, y
end


addEventHandler("onWindowMessage", function (msg, wparam, lparam)
    if msg == wm.WM_MOUSEWHEEL then
        local button, delta = splitsigned(ffi.cast('int32_t', wparam))
        if delta > 0 then
            sampAddChatMessage('Ты прокрутил вверх', -1)
        elseif delta < 0 then
            sampAddChatMessage('Ты прокрутил вниз', -1)
        end
    end
end)