Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local scene = storyboard.newScene()
- local mAbs = math.abs
- local mSqrt = math.sqrt
- local mFloor = math.floor
- local tRemove = table.remove
- function scene:createScene (event)
- local group = self.view
- self.steps = 0
- self.lastx = 0
- self.lasty = 0
- self.lastz = 0
- self.lastdiff = 0
- self.lastdot = 0
- self.delta = 0.3
- end
- function scene:accelerometer (event)
- local lastx, lasty, lastz, x, y, z = self.lastx, self.lasty, self.lastz, event.xInstant, event.yInstant, event.zInstant
- local dot = mAbs(lastx * x + lasty * y + lastz * z)
- local diff = self.lastdot - dot
- -- Условие опрделения тряски, self.delta - пороговое значение
- -- self.delta determines sensivity
- if mAbs(diff) > self.delta then
- if not self.lastStep then
- event.isStep = true
- self.lastStep = true
- end
- else
- self.lastStep = false
- end
- self.lastdot = dot
- self.lastdiff = diff
- self.lastx = x
- self.lasty = y
- self.lastz = z
- if event.isStep == true then
- -- Здесь идёт код, который должен выполнится на тряску
- -- Shake event code is here
- print('Shake it!')
- end
- end
- function scene:enterScene (event)
- system.setAccelerometerInterval(10)
- Runtime:addEventListener('accelerometer', self)
- end
- function scene:exitScene (event)
- Runtime:removeEventListener('accelerometer', self)
- end
- scene:addEventListener('createScene', scene)
- scene:addEventListener('enterScene', scene)
- scene:addEventListener('exitScene', scene)
- return scene
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement