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