Skip to content

azoyan/ShakeDetectorLua

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 

Repository files navigation

Shake Detector Lua

It is porting of shake.js library to Lua.

The module is designed to be compatible with any Lua engine that can get delta-time between update cycles and accelerometer data.

Example of usage with Love2d (free 2d Game Engine):

main.lua

function love.load()
    shakeDetector = require "shakeDetector"
    local joysticks = love.joystick.getJoysticks()
    joystick = joysticks[#joysticks]    
end

function love.update(dt)    
    local x, y, z = joystick:getAxes()
    shakeDetector:update(dt, x, y, z)
end

function love.draw()
    love.graphics.print(shakeDetector.count)
end

API

Update shake detector

update(dt, x, y, z) arguments: delta-time between update cycles, accelerometer data x-axis, y-axis, z-axis

Get shakes count

local shakesCount = shakeDetector.count

Changing threshold and timeout:

shakeDetector:reset()         -- reset to defaults (threshold = 0.5, timeout = 0.25)
shakeDetector:reset(0.6, 0.3) -- set threshold to 0.6 and timeout to 0.3
shakeDetector:reset(nil, 0.4) -- set threshold to default (0.5) and timeout to 0.4
shakeDetector:reset(0.2, nil) -- set threshold to 0.2 and timeout to default (0.25)

Releases

No releases published

Packages

No packages published

Languages