lib/my_scripts/scripts/wake.rb in my_scripts-0.1.3 vs lib/my_scripts/scripts/wake.rb in my_scripts-0.1.5
- old
+ new
@@ -7,28 +7,35 @@
class Wake < Script
SLEEP_TIME = 4 * 60 # seconds
def initialize( name, argv, cli )
require 'win/gui/input'
+ require 'win/error'
self.class.send(:include, Win::Gui::Input)
super
end
def move_mouse_randomly
x, y = get_cursor_pos
- x1, y1 = x + rand(3) - 1, y + rand(3) - 1
- mouse_event(MOUSEEVENTF_ABSOLUTE, x1, y1, 0, 0)
- puts "Cursor positon set to #{x1}, #{y1}"
+
+ # For some reason, x or y returns as nil sometimes
+ if x && y
+ x1, y1 = x + rand(3) - 1, y + rand(3) - 1
+ mouse_event(MOUSEEVENTF_ABSOLUTE, x1, y1, 0, 0)
+ puts "Cursor positon set to #{x1}, #{y1}"
+ else
+ puts "X: #{x}, Y: #{y}, last error: #{Win::Error::get_last_error}"
+ end
end
def run
case @argv.size
when 0
sleep_time = SLEEP_TIME
when 1
sleep_time = @argv.first.to_f * 60
else
- usage "[minutes] - prevents screen auto lock-up by moving mouse pointer every (4) [minutes]"
+ usage "[minutes] - prevents screen auto lock-up by moving mouse pointer every [(4) minutes]"
end
loop do
move_mouse_randomly
sleep sleep_time
\ No newline at end of file